.layout-header{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 1.5rem;background-color:#1a1a2e;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:50}.header-left{display:flex;flex-direction:column;justify-content:center;gap:.125rem}.header-title{font-size:1.25rem;font-weight:600;color:#fff;margin:0;line-height:1.2}.header-breadcrumbs{margin-bottom:.125rem}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;font-size:.75rem}.breadcrumb-link{color:#fff9;text-decoration:none;transition:color .15s ease}.breadcrumb-link:hover{color:#646cff;text-decoration:underline}.breadcrumb-current{color:#fffc;font-weight:500}.breadcrumb-separator{margin:0 .375rem;color:#ffffff4d}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:transparent;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .2s ease;color:#fff;font-size:.875rem}.user-menu-trigger:hover{background-color:#ffffff0d;border-color:#fff3}.user-menu-trigger:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff40}.user-menu-email{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-arrow{font-size:.625rem;color:#fff9;transition:transform .2s ease}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background-color:#252542;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 4px 12px #0000004d;overflow:hidden;z-index:100;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem;background-color:#0003}.user-menu-name{font-size:.875rem;color:#fff;font-weight:500;word-break:break-word}.user-menu-role{font-size:.75rem;color:#fff9}.user-menu-role strong{color:#fffc;text-transform:capitalize}.user-menu-divider{height:1px;background-color:#ffffff1a;margin:0}.user-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background-color:transparent;border:none;color:#fffc;font-size:.875rem;cursor:pointer;transition:all .15s ease;text-align:left}.user-menu-item:focus{outline:none;background-color:#ffffff0d}.user-menu-item-icon{flex-shrink:0;font-size:1rem}@media(prefers-color-scheme:light){.layout-header{background-color:#fff;border-bottom-color:#0000001a}.header-title{color:#1a1a2e}.breadcrumb-link{color:#00000080}.breadcrumb-link:hover{color:#646cff}.breadcrumb-current{color:#000c}.breadcrumb-separator{color:#0000004d}.user-menu-trigger{border-color:#00000026;color:#333}.user-menu-trigger:hover{background-color:#0000000d;border-color:#0003}.user-menu-arrow{color:#00000080}.user-menu-dropdown{background-color:#fff;border-color:#0000001a;box-shadow:0 4px 12px #00000026}.user-menu-header{background-color:#00000008}.user-menu-name{color:#333}.user-menu-role{color:#00000080}.user-menu-role strong{color:#000000b3}.user-menu-divider{background-color:#0000001a}.user-menu-item{color:#000000b3}.user-menu-item:hover{background-color:#0000000d;color:#000}.user-menu-logout:hover{background-color:#ef44441a;color:#dc2626}}@media(max-width:768px){.layout-header{height:56px;padding:0 1rem}.header-title{font-size:1.125rem}.header-breadcrumbs,.user-menu-email{display:none}.user-menu-trigger{padding:.375rem .5rem}}.layout{display:flex;min-height:100vh;width:100%}.layout-sidebar{width:250px;background-color:#1a1a2e;color:#eee;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;z-index:100}.sidebar-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-title{font-size:1.5rem;font-weight:700;margin:0;color:#fff}.sidebar-subtitle{font-size:.875rem;color:#fff9;margin-top:.25rem;display:block}.sidebar-nav{flex:1;overflow-y:auto;padding:1rem 0}.nav-list{list-style:none;padding:0;margin:0}.nav-item{margin:.25rem 0}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;color:#fffc;text-decoration:none;transition:all .2s ease;border-left:3px solid transparent}.nav-link-icon{font-size:1rem;flex-shrink:0}.nav-link-label{flex:1}.nav-link:hover{background-color:#ffffff0d;color:#fff}.nav-link-active{background-color:#646cff26;color:#646cff;border-left-color:#646cff}.sidebar-footer{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);background-color:#0003}.user-info{margin-bottom:.75rem}.user-email{display:block;font-size:.875rem;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{display:block;margin-top:.25rem}.role-badge{display:inline-block;padding:.125rem .5rem;font-size:.75rem;font-weight:500;border-radius:4px;text-transform:capitalize}.role-badge-admin{background-color:#ef444433;color:#f87171}.role-badge-operator{background-color:#eab30833;color:#fbbf24}.role-badge-readonly{background-color:#3b82f633;color:#60a5fa}.logout-button{width:100%;padding:.5rem 1rem;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:.875rem;border-radius:6px;transition:all .2s ease}.logout-button:hover{background-color:#ffffff26;border-color:#ffffff4d}.layout-main{flex:1;margin-left:250px;min-height:100vh;background-color:#0f0f0f;display:flex;flex-direction:column}.layout-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background-color:#1a1a2ef2;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:50}.header-left{display:flex;flex-direction:column;gap:.25rem}.header-breadcrumbs{font-size:.75rem}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:.25rem}.breadcrumb-item{display:flex;align-items:center}.breadcrumb-link{color:#fff9;text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:#646cff}.breadcrumb-separator{color:#ffffff4d;margin:0 .5rem}.breadcrumb-current{color:#fffc}.header-title{font-size:1.5rem;font-weight:600;margin:0;color:#fff}.header-right{display:flex;align-items:center;gap:1rem}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:transparent;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;color:#fff;font-size:.875rem;transition:all .2s ease}.user-menu-trigger:hover{background-color:#ffffff0d;border-color:#ffffff4d}.user-menu-email{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-arrow{font-size:.625rem;opacity:.7}.user-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:220px;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.15);border-radius:8px;box-shadow:0 4px 20px #0000004d;z-index:100;overflow:hidden}.user-menu-header{padding:1rem;background-color:#0003;border-bottom:1px solid rgba(255,255,255,.1)}.user-menu-name{display:block;font-size:.875rem;font-weight:500;color:#fff;word-break:break-all}.user-menu-role{display:block;margin-top:.25rem;font-size:.75rem;color:#fff9}.user-menu-role strong{color:#fff;text-transform:capitalize}.user-menu-divider{height:1px;background-color:#ffffff1a}.user-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background-color:transparent;border:none;color:#fffc;font-size:.875rem;cursor:pointer;text-align:left;transition:all .2s ease}.user-menu-item:hover{background-color:#ffffff0d;color:#fff}.user-menu-logout:hover{background-color:#ef44441a;color:#f87171}.user-menu-item-icon{font-size:1rem}.main-content{padding:2rem;max-width:1400px;flex:1}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fffc}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#646cff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.layout-sidebar{width:100%;height:auto;position:relative}.layout-main{margin-left:0}.layout-header{padding:.75rem 1rem}.header-title{font-size:1.25rem}.user-menu-email{max-width:100px}.user-menu-trigger .role-badge{display:none}}@media(prefers-color-scheme:light){.layout-sidebar{background-color:#f8f9fa;color:#333}.sidebar-title{color:#1a1a2e}.sidebar-subtitle{color:#0009}.sidebar-header,.sidebar-footer{border-color:#0000001a}.nav-link{color:#000000b3}.nav-link:hover{background-color:#0000000d;color:#000}.nav-link-active{background-color:#646cff1a;color:#646cff}.sidebar-footer{background-color:#00000008}.user-email{color:#333}.logout-button{background-color:#0000000d;border-color:#00000026;color:#333}.logout-button:hover{background-color:#0000001a;border-color:#0003}.layout-main{background-color:#fff}.loading-container{color:#000000b3}.loading-spinner{border-color:#0000001a;border-top-color:#646cff}.layout-header{background-color:#f8f9faf2;border-bottom-color:#0000001a}.header-title{color:#1a1a2e}.breadcrumb-link{color:#00000080}.breadcrumb-link:hover{color:#646cff}.breadcrumb-separator{color:#0000004d}.breadcrumb-current{color:#000c}.user-menu-trigger{color:#333;border-color:#00000026}.user-menu-trigger:hover{background-color:#0000000d;border-color:#0003}.user-menu-dropdown{background-color:#fff;border-color:#00000026;box-shadow:0 4px 20px #0000001a}.user-menu-header{background-color:#00000008;border-bottom-color:#0000001a}.user-menu-name{color:#333}.user-menu-role{color:#0009}.user-menu-role strong{color:#333}.user-menu-divider{background-color:#0000001a}.user-menu-item{color:#000000b3}.user-menu-item:hover{background-color:#0000000d;color:#000}.user-menu-logout:hover{background-color:#ef44441a;color:#dc2626}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:6px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;border:1px solid transparent;text-decoration:none;white-space:nowrap}.btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:.375rem .75rem;font-size:.875rem;line-height:1.25rem}.btn-md{padding:.5rem 1rem;font-size:.9375rem;line-height:1.5rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem;line-height:1.5rem}.btn-primary{background-color:#646cff;color:#fff;border-color:#646cff}.btn-primary:hover:not(:disabled){background-color:#535bf2;border-color:#535bf2}.btn-primary:active:not(:disabled){background-color:#4449e6;border-color:#4449e6}.btn-secondary{background-color:#ffffff1a;color:#ffffffde;border-color:#fff3}.btn-secondary:hover:not(:disabled){background-color:#ffffff26;border-color:#ffffff4d}.btn-secondary:active:not(:disabled){background-color:#fff3}.btn-danger{background-color:#dc2626;color:#fff;border-color:#dc2626}.btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-danger:active:not(:disabled){background-color:#991b1b;border-color:#991b1b}.btn-ghost{background-color:transparent;color:#ffffffde;border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:#ffffff1a}.btn-ghost:active:not(:disabled){background-color:#ffffff26}.btn-full-width{width:100%}.btn-loading{position:relative;color:transparent}.btn-loading .btn-text{visibility:hidden}.btn-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.spinner-icon{width:1.25rem;height:1.25rem;animation:spin 1s linear infinite}.spinner-track{opacity:.25}.spinner-head{opacity:.75}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.btn-icon svg{width:1em;height:1em}@media(prefers-color-scheme:light){.btn-secondary{background-color:#0000000d;color:#213547;border-color:#00000026}.btn-secondary:hover:not(:disabled){background-color:#0000001a;border-color:#0003}.btn-secondary:active:not(:disabled){background-color:#00000026}.btn-ghost{color:#213547}.btn-ghost:hover:not(:disabled){background-color:#0000000d}.btn-ghost:active:not(:disabled){background-color:#0000001a}}.input-wrapper{display:flex;flex-direction:column;gap:.375rem;width:100%}.input-label{font-size:.875rem;font-weight:500;color:#ffffffde;display:flex;align-items:center;gap:.25rem}.input-required{color:#dc2626}.input-container{position:relative;display:flex;align-items:center}.input-field{width:100%;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#ffffffde;font-family:inherit;font-size:.9375rem;transition:all .2s ease}.input-field::placeholder{color:#fff6}.input-field:hover:not(:disabled){border-color:#ffffff40}.input-field:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff33}.input-field:disabled{opacity:.6;cursor:not-allowed;background-color:#ffffff05}.input-sm{padding:.375rem .75rem;font-size:.875rem;line-height:1.25rem}.input-md{padding:.5rem .875rem;font-size:.9375rem;line-height:1.5rem}.input-lg{padding:.75rem 1rem;font-size:1rem;line-height:1.5rem}.input-with-left-icon{padding-left:2.5rem}.input-with-right-icon{padding-right:2.5rem}.input-icon{position:absolute;display:flex;align-items:center;justify-content:center;color:#ffffff80;pointer-events:none}.input-icon svg{width:1.25rem;height:1.25rem}.input-icon-left{left:.75rem}.input-icon-right{right:.75rem}.input-password-toggle{pointer-events:auto;cursor:pointer;background:none;border:none;padding:.25rem;margin:0;color:#ffffff80;transition:color .2s ease}.input-password-toggle:hover{color:#fffc}.input-password-toggle:focus{outline:none}.input-error{border-color:#dc2626}.input-error:hover:not(:disabled){border-color:#dc2626}.input-error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc262633}.input-error-message{font-size:.8125rem;color:#ef4444;display:flex;align-items:center;gap:.25rem}.input-helper-text{font-size:.8125rem;color:#ffffff80}@media(prefers-color-scheme:light){.input-label{color:#213547}.input-field{background-color:#fff;border-color:#00000026;color:#213547}.input-field::placeholder{color:#0006}.input-field:hover:not(:disabled){border-color:#00000040}.input-field:disabled{background-color:#00000005}.input-icon,.input-password-toggle{color:#00000080}.input-password-toggle:hover{color:#000c}.input-helper-text{color:#00000080}}.card{background-color:#ffffff0d;border-radius:8px;overflow:hidden}.card-padding{padding:0}.card-default{border:1px solid rgba(255,255,255,.08)}.card-bordered{border:1px solid rgba(255,255,255,.15)}.card-elevated{border:none;box-shadow:0 4px 6px -1px #0003,0 2px 4px -2px #0000001a}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.card-title{font-size:1.125rem;font-weight:600;color:#fffffff2;margin:0;line-height:1.4}.card-description{font-size:.875rem;color:#fff9;margin:.375rem 0 0;line-height:1.5}.card-content{padding:1.5rem}.card-footer{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}@media(prefers-color-scheme:light){.card{background-color:#fff}.card-default{border-color:#00000014}.card-bordered{border-color:#00000026}.card-elevated{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000000d}.card-header{border-bottom-color:#00000014}.card-title{color:#213547}.card-description{color:#0009}.card-footer{border-top-color:#00000014}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#0f0f0f;padding:1.5rem}.login-container{width:100%;max-width:420px}.login-card{width:100%}.login-card-header{text-align:center;padding:2rem 1.5rem 1.5rem;border-bottom:none}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:linear-gradient(135deg,#646cff,#535bf2);border-radius:16px;margin-bottom:1.25rem;color:#fff}.login-logo svg{width:36px;height:36px}.login-title{font-size:1.75rem;font-weight:700;margin-bottom:.375rem}.login-subtitle{font-size:.9375rem;margin-top:.375rem}.login-form{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem 0}.login-submit-btn{margin-top:.5rem}.login-alert{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;border-radius:6px;font-size:.875rem;line-height:1.5}.login-alert svg{flex-shrink:0;margin-top:.125rem}.login-alert-error{background-color:#dc26261a;border:1px solid rgba(220,38,38,.2);color:#fca5a5}.login-alert-error svg{color:#ef4444}.login-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#fff9}.login-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#646cff;border-radius:50%;animation:loginSpin 1s linear infinite}@keyframes loginSpin{to{transform:rotate(360deg)}}.login-footer-text{text-align:center;font-size:.8125rem;color:#fff6;margin-top:1.5rem}@media(prefers-color-scheme:light){.login-page{background-color:#f0f2f5}.login-alert-error{background-color:#dc26260d;border-color:#dc262626;color:#991b1b}.login-alert-error svg{color:#dc2626}.login-loading{color:#00000080}.login-spinner{border-color:#0000001a;border-top-color:#646cff}.login-footer-text{color:#0006}}@media(max-width:480px){.login-page{padding:1rem}.login-card-header{padding:1.5rem 1rem 1rem}.login-logo{width:64px;height:64px}.login-logo svg{width:32px;height:32px}.login-title{font-size:1.5rem}}.stats-card{transition:transform .15s ease,box-shadow .15s ease}.stats-card-clickable{cursor:pointer}.stats-card-clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stats-card-clickable:focus-visible{outline:2px solid #646cff;outline-offset:2px}.stats-card-content{padding:1.25rem 1.5rem}.stats-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.stats-card-title{font-size:.875rem;font-weight:500;color:#fff9;text-transform:uppercase;letter-spacing:.025em}.stats-card-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;color:#ffffff80}.stats-card-icon svg{width:1.25rem;height:1.25rem}.stats-card-value{font-size:2.5rem;font-weight:700;line-height:1.2;color:#fffffff2;margin-bottom:.75rem}.stats-card-sub{display:flex;flex-wrap:wrap;gap:1rem}.stats-card-sub-item{display:flex;align-items:center;gap:.25rem;font-size:.875rem}.stats-card-sub-value{font-weight:600}.stats-card-sub-label{color:#ffffff80}.stats-card-sub-success .stats-card-sub-value{color:#22c55e}.stats-card-sub-warning .stats-card-sub-value{color:#f59e0b}.stats-card-sub-danger .stats-card-sub-value{color:#ef4444}.stats-card-sub-info .stats-card-sub-value{color:#3b82f6}.stats-card-sub-muted .stats-card-sub-value{color:#ffffff80}.stats-card-loading{display:flex;flex-direction:column;gap:.75rem}.stats-card-skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.stats-card-skeleton-title{width:40%;height:1rem}.stats-card-skeleton-value{width:60%;height:2.5rem}.stats-card-skeleton-sub{width:80%;height:1rem}@media(prefers-color-scheme:light){.stats-card-title{color:#00000080}.stats-card-icon{color:#0006}.stats-card-value{color:#213547}.stats-card-sub-label,.stats-card-sub-muted .stats-card-sub-value{color:#00000080}.stats-card-skeleton{background:linear-gradient(90deg,#0000000d 25%,#0000001a,#0000000d 75%);background-size:200% 100%}.stats-card-clickable:hover{box-shadow:0 4px 12px #0000001a}}.dashboard{padding:0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.dashboard-title{font-size:1.75rem;font-weight:600;margin:0}.dashboard-error{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#fca5a5;font-size:.875rem}.dashboard-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff}.dashboard-error-retry{margin-left:.5rem;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);color:#fca5a5;cursor:pointer;transition:background-color .2s}.dashboard-error-retry:hover{background-color:#ef44444d}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem}.dashboard-activity{margin-top:1rem}.dashboard-activity-content{padding:0}.dashboard-activity-loading{padding:1rem}.dashboard-activity-empty{padding:2rem;text-align:center;color:#ffffff80}.activity-list{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto}.activity-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06);font-size:.875rem;transition:background-color .15s}.activity-item:last-child{border-bottom:none}.activity-item:hover{background-color:#ffffff05}.activity-icon{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background-color:#ffffff14;border-radius:4px;font-size:.75rem;font-weight:700;color:#fff9}.activity-time{min-width:4rem;color:#fff6;font-size:.75rem}.activity-user{color:#646cff;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-action{color:#fffc;text-transform:capitalize}.activity-item-skeleton{display:flex;align-items:center;gap:1rem;padding:1rem 0}.activity-skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.activity-skeleton-time{width:4rem;height:1rem}.activity-skeleton-text{flex:1;height:1rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:768px){.dashboard-stats{grid-template-columns:1fr}.activity-user{max-width:100px}.activity-action{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-color-scheme:light){.dashboard-error{background-color:#ef44440d;color:#b91c1c}.dashboard-error-retry{background-color:#ef44441a;color:#b91c1c}.dashboard-activity-empty{color:#00000080}.activity-item{border-bottom-color:#0000000f}.activity-item:hover{background-color:#00000005}.activity-icon{background-color:#0000000f;color:#00000080}.activity-time{color:#0006}.activity-action{color:#000c}.activity-skeleton{background:linear-gradient(90deg,#0000000d 25%,#0000001a,#0000000d 75%);background-size:200% 100%}}.table-wrapper{width:100%;overflow-x:auto;border:1px solid rgba(255,255,255,.08);border-radius:8px}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table-head{background-color:#ffffff08}.table-header{padding:.875rem 1rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#fff9;border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}.table-header-content{display:inline-flex;align-items:center;gap:.375rem}.table-header-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.table-header-sortable:hover{color:#ffffffe6}.table-header-sortable:focus-visible{outline:2px solid #646cff;outline-offset:-2px}.table-sort-icon{display:inline-flex;width:1rem;height:1rem;opacity:.5}.table-header-sortable:hover .table-sort-icon{opacity:1}.table-sort-icon svg{width:100%;height:100%}.table-body{background-color:transparent}.table-row{transition:background-color .15s ease;border-bottom:1px solid rgba(255,255,255,.04)}.table-row:last-child{border-bottom:none}.table-row:hover{background-color:#ffffff05}.table-row-clickable{cursor:pointer}.table-row-clickable:hover{background-color:#ffffff0a}.table-row-selected{background-color:#646cff1a}.table-row-selected:hover{background-color:#646cff26}.table-cell{padding:.875rem 1rem;color:#ffffffde;vertical-align:middle}.table-align-left{text-align:left}.table-align-center{text-align:center}.table-align-right{text-align:right}.table-skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:table-shimmer 1.5s infinite;border-radius:4px}.table-skeleton-header{height:.75rem;width:60%}.table-skeleton-cell{height:1rem;width:80%}@keyframes table-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.table-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.table-empty-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;margin-bottom:1rem;background-color:#ffffff0d;border-radius:50%;color:#fff6}.table-empty-icon svg{width:1.5rem;height:1.5rem}.table-empty-message{margin:0 0 1rem;font-size:.9375rem;color:#ffffff80}.table-empty-action{margin-top:.5rem}@media(max-width:640px){.table-header,.table-cell{padding:.75rem}}@media(prefers-color-scheme:light){.table-wrapper{border-color:#0000001a}.table-head{background-color:#00000005}.table-header{color:#00000080;border-bottom-color:#0000001a}.table-header-sortable:hover{color:#000c}.table-row{border-bottom-color:#0000000d}.table-row:hover{background-color:#00000003}.table-row-clickable:hover{background-color:#00000005}.table-row-selected{background-color:#646cff14}.table-row-selected:hover{background-color:#646cff1f}.table-cell{color:#213547}.table-skeleton{background:linear-gradient(90deg,#0000000d 25%,#0000001a,#0000000d 75%);background-size:200% 100%}.table-empty-icon{background-color:#0000000d;color:#0006}.table-empty-message{color:#00000080}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease-out}.modal{position:relative;display:flex;flex-direction:column;max-height:calc(100vh - 2rem);background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s ease-out}.modal-sm{width:100%;max-width:400px}.modal-md{width:100%;max-width:500px}.modal-lg{width:100%;max-width:700px}.modal-xl{width:100%;max-width:900px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.modal-title{margin:0;font-size:1.125rem;font-weight:600;color:#fffffff2}.modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background:transparent;border:none;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.modal-close:hover{background-color:#ffffff1a;color:#ffffffe6}.modal-close:focus-visible{outline:2px solid #646cff;outline-offset:2px}.modal-close svg{width:1.25rem;height:1.25rem}.modal-close-absolute{position:absolute;top:.75rem;right:.75rem}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.08)}@media(max-width:640px){.modal-overlay{padding:.5rem;align-items:flex-end}.modal{max-height:calc(100vh - 1rem);border-bottom-left-radius:0;border-bottom-right-radius:0}.modal-sm,.modal-md,.modal-lg,.modal-xl{max-width:none}}@media(prefers-color-scheme:light){.modal-overlay{background-color:#0006}.modal{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.modal-header{border-bottom-color:#00000014}.modal-title{color:#213547}.modal-close{color:#0006}.modal-close:hover{background-color:#0000000d;color:#000c}.modal-footer{border-top-color:#00000014}}.node-modal-form{display:flex;flex-direction:column;gap:1.25rem}.node-modal-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#fca5a5;font-size:.875rem}.node-modal-field{display:flex;flex-direction:column;gap:.5rem}.node-modal-label{font-size:.875rem;font-weight:500;color:#ffffffde}.node-modal-required{color:#ef4444;margin-left:.25rem}.node-modal-error-text{font-size:.75rem;color:#fca5a5}.node-modal-mode-options{display:flex;flex-direction:column;gap:.75rem}.node-modal-radio{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .15s ease}.node-modal-radio:hover{background-color:#ffffff0d;border-color:#ffffff26}.node-modal-radio:has(input:checked){background-color:#646cff1a;border-color:#646cff4d}.node-modal-radio input[type=radio]{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem;accent-color:#646cff}.node-modal-radio-label{display:flex;flex-direction:column;gap:.125rem;font-size:.9375rem}.node-modal-radio-label strong{color:#fffffff2}.node-modal-radio-description{font-size:.8125rem;color:#ffffff80}.node-modal-plesk-section{display:flex;flex-direction:column;gap:1rem;padding:1rem;background-color:#646cff0d;border:1px solid rgba(100,108,255,.15);border-radius:8px}.node-modal-section-title{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff9;margin-bottom:.25rem}.node-modal-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .15s ease}.node-modal-checkbox:hover{background-color:#ffffff0d;border-color:#ffffff26}.node-modal-checkbox:has(input:checked){background-color:#22c55e1a;border-color:#22c55e4d}.node-modal-checkbox input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem;accent-color:#22c55e}.node-modal-checkbox-label{display:flex;flex-direction:column;gap:.125rem;font-size:.875rem}.node-modal-checkbox-label strong{color:#fffffff2}.node-modal-checkbox-description{font-size:.8125rem;color:#ffffff80}.node-modal-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem 0}.node-modal-success-icon{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;margin-bottom:1rem;background-color:#22c55e26;border-radius:50%;color:#22c55e}.node-modal-success-icon svg{width:1.75rem;height:1.75rem}.node-modal-success-text{margin:0 0 1.5rem;font-size:.9375rem;color:#ffffffde}.node-modal-token-section{width:100%;text-align:left}.node-modal-token-label{margin:0 0 .75rem;font-size:.8125rem;color:#fff9}.node-modal-token-wrapper{display:flex;align-items:stretch;gap:.5rem}.node-modal-token{flex:1;padding:.75rem 1rem;background-color:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.8125rem;color:#f0f0f0;word-break:break-all;text-align:left}.node-modal-test-connection{display:flex;flex-direction:column;gap:.75rem}.node-modal-test-result{padding:.75rem 1rem;border-radius:6px;font-size:.8125rem}.node-modal-test-result.success{background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e}.node-modal-test-result.error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.node-modal-test-success,.node-modal-test-error{display:flex;align-items:flex-start;gap:.5rem}.node-modal-test-icon{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem}@media(prefers-color-scheme:light){.node-modal-error{background-color:#ef44440d;color:#b91c1c}.node-modal-label{color:#213547}.node-modal-error-text{color:#dc2626}.node-modal-radio{background-color:#00000005;border-color:#0000001a}.node-modal-radio:hover{background-color:#0000000a;border-color:#00000026}.node-modal-radio:has(input:checked){background-color:#646cff14;border-color:#646cff40}.node-modal-radio-label strong{color:#213547}.node-modal-radio-description{color:#00000080}.node-modal-plesk-section{background-color:#646cff08;border-color:#646cff1a}.node-modal-section-title{color:#00000080}.node-modal-checkbox{background-color:#00000005;border-color:#0000001a}.node-modal-checkbox:hover{background-color:#0000000a;border-color:#00000026}.node-modal-checkbox:has(input:checked){background-color:#22c55e14;border-color:#22c55e40}.node-modal-checkbox-label strong{color:#213547}.node-modal-checkbox-description{color:#00000080}.node-modal-success-text{color:#213547}.node-modal-token-label{color:#0009}.node-modal-token{background-color:#0000000d;border-color:#0000001a;color:#213547}.node-modal-test-result.success{background-color:#22c55e14;border-color:#22c55e33;color:#15803d}.node-modal-test-result.error{background-color:#ef44440d;border-color:#ef444433;color:#dc2626}}.nodes-page{padding:0}.nodes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.nodes-header-left{display:flex;align-items:baseline;gap:.75rem}.nodes-title{font-size:1.75rem;font-weight:600;margin:0}.nodes-count{font-size:.875rem;color:#ffffff80}.nodes-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.nodes-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.nodes-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:4px;color:#fca5a5;cursor:pointer;transition:background-color .2s}.nodes-error-retry:hover{background-color:#ef44444d}.nodes-name-cell{display:flex;flex-direction:column;gap:.125rem}.nodes-name{font-weight:500;color:#fffffff2}.nodes-hostname{font-size:.8125rem;color:#ffffff80}.nodes-ip{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.8125rem;padding:.25rem .5rem;background-color:#ffffff0d;border-radius:4px}.nodes-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.nodes-status-dot{width:.5rem;height:.5rem;border-radius:50%}.status-online .nodes-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.status-online{color:#4ade80}.status-offline .nodes-status-dot{background-color:#ef4444}.status-offline{color:#f87171}.status-degraded .nodes-status-dot{background-color:#f59e0b;animation:pulse 2s infinite}.status-degraded{color:#fbbf24}.nodes-mode{display:inline-block;padding:.25rem .625rem;font-size:.75rem;font-weight:500;text-transform:capitalize;border-radius:999px}.nodes-mode-managed{background-color:#646cff26;color:#a5b4fc}.nodes-mode-standalone{background-color:#ffffff14;color:#ffffffb3}.nodes-type{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500;border-radius:999px}.nodes-type-nginx{background-color:#22c55e26;color:#4ade80}.nodes-type-plesk{background-color:#646cff26;color:#a5b4fc}.nodes-dns-badge{font-size:.625rem;padding:.125rem .375rem;background-color:#fbbf2433;color:#fbbf24;border-radius:3px;text-transform:uppercase;font-weight:600;letter-spacing:.05em}.nodes-services{display:flex;align-items:center;gap:.75rem}.nodes-service-indicator{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;letter-spacing:.02em}.nodes-service-indicator:before{content:"";display:inline-block;width:.5rem;height:.5rem;border-radius:50%}.nodes-service-ok{color:#4ade80}.nodes-service-ok:before{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.nodes-service-off{color:#ffffff59}.nodes-service-off:before{background-color:#fff3}.nodes-heartbeat{font-size:.8125rem;color:#fff9}.nodes-actions{display:flex;justify-content:flex-end;gap:.375rem}.nodes-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.nodes-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.nodes-action-btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.nodes-action-btn:disabled{opacity:.4;cursor:not-allowed}.nodes-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.nodes-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease-out}.nodes-confirm-dialog{width:100%;max-width:400px;padding:1.5rem;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s ease-out}.nodes-confirm-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#fffffff2}.nodes-confirm-message{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.nodes-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.nodes-header{flex-direction:column;align-items:flex-start}.nodes-name-cell{max-width:150px}.nodes-name,.nodes-hostname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-color-scheme:light){.nodes-count{color:#00000080}.nodes-error{background-color:#ef44440d;color:#b91c1c}.nodes-error-retry{background-color:#ef44441a;color:#b91c1c}.nodes-name{color:#213547}.nodes-hostname{color:#00000080}.nodes-ip{background-color:#0000000d;color:#213547}.status-online{color:#16a34a}.status-offline{color:#dc2626}.status-degraded{color:#d97706}.nodes-mode-managed{background-color:#646cff1a;color:#5a5fd3}.nodes-mode-standalone{background-color:#0000000d;color:#000000b3}.nodes-type-nginx{background-color:#22c55e1a;color:#16a34a}.nodes-type-plesk{background-color:#646cff1a;color:#5a5fd3}.nodes-dns-badge{background-color:#fbbf2426;color:#b45309}.nodes-service-ok{color:#16a34a}.nodes-service-off{color:#0000004d}.nodes-service-off:before{background-color:#00000026}.nodes-heartbeat{color:#00000080}.nodes-action-btn{color:#0006}.nodes-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.nodes-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.nodes-confirm-dialog{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.nodes-confirm-title{color:#213547}.nodes-confirm-message{color:#0009}}.nodes-plesk-modal{width:100%;max-width:700px;max-height:80vh;display:flex;flex-direction:column;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 20px 25px -5px #00000080;overflow:hidden}.nodes-plesk-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.nodes-plesk-modal-title{margin:0;font-size:1.125rem;font-weight:600;color:#fffffff2}.nodes-plesk-modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:none;border-radius:4px;color:#ffffff80;font-size:1.5rem;cursor:pointer;transition:all .15s ease}.nodes-plesk-modal-close:hover{background-color:#ffffff1a;color:#ffffffe6}.nodes-plesk-modal-info{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;background-color:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05)}.nodes-plesk-modal-count{font-weight:600;color:#ffffffe6}.nodes-plesk-modal-cached{font-size:.875rem;color:#ffffff80}.nodes-plesk-modal-content{flex:1;overflow-y:auto;padding:1rem 1.25rem;min-height:200px;max-height:400px}.nodes-plesk-modal-loading,.nodes-plesk-modal-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:150px;color:#ffffff80;font-size:.9375rem}.nodes-plesk-domains-table{width:100%;border-collapse:collapse;font-size:.875rem}.nodes-plesk-domains-table th,.nodes-plesk-domains-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.05)}.nodes-plesk-domains-table th{font-weight:600;color:#ffffffb3;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.nodes-plesk-domains-table td{color:#ffffffd9}.nodes-plesk-domains-table code{font-family:JetBrains Mono,Fira Code,monospace;font-size:.8125rem}.nodes-plesk-modal-footer{display:flex;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.1)}@media(prefers-color-scheme:light){.nodes-plesk-modal{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.nodes-plesk-modal-header{border-bottom-color:#0000001a}.nodes-plesk-modal-title{color:#213547}.nodes-plesk-modal-close{color:#0006}.nodes-plesk-modal-close:hover{background-color:#0000000d;color:#000c}.nodes-plesk-modal-info{background-color:#00000005;border-bottom-color:#0000000d}.nodes-plesk-modal-count{color:#213547}.nodes-plesk-modal-cached,.nodes-plesk-modal-loading,.nodes-plesk-modal-empty,.nodes-plesk-domains-table th{color:#00000080}.nodes-plesk-domains-table td{color:#213547}.nodes-plesk-domains-table th,.nodes-plesk-domains-table td{border-bottom-color:#0000000d}.nodes-plesk-modal-footer{border-top-color:#0000001a}}.domain-modal-form{display:flex;flex-direction:column;gap:1.25rem}.domain-modal-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#fca5a5;font-size:.875rem}.domain-modal-field{display:flex;flex-direction:column;gap:.5rem}.domain-modal-label{font-size:.875rem;font-weight:500;color:#ffffffde}.domain-modal-required{color:#ef4444;margin-left:.25rem}.domain-modal-helper{font-size:.75rem;color:#ffffff80}.domain-modal-readonly{padding:.625rem .875rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9375rem;color:#ffffffb3}.domain-modal-select{width:100%;padding:.625rem 2.5rem .625rem .875rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.9375rem;color:#ffffffde;cursor:pointer;transition:border-color .15s ease,background-color .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5rem}.domain-modal-select:hover:not(:disabled){background-color:#ffffff14;border-color:#fff3}.domain-modal-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.domain-modal-select:disabled{opacity:.5;cursor:not-allowed}.domain-modal-select option{background-color:#1a1a2e;color:#ffffffde;padding:.5rem}.domain-modal-select-error{border-color:#ef4444}.domain-modal-select-error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef444426}.domain-modal-field-error{font-size:.75rem;color:#fca5a5}.domain-modal-origin-info{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem;background-color:#646cff14;border-radius:6px;font-size:.8125rem}.domain-modal-origin-detail{color:#ffffffb3}.domain-modal-origin-detail strong{color:#ffffffde}.domain-modal-origin-badge{padding:.125rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase}.domain-modal-origin-badge-tls{background-color:#3b82f633;color:#93c5fd}.domain-modal-origin-badge-healthy{background-color:#22c55e33;color:#86efac}.domain-modal-origin-badge-unhealthy{background-color:#ef444433;color:#fca5a5}.domain-modal-helper-warning{color:#fbbf24}.domain-modal-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .15s ease}.domain-modal-checkbox:hover{background-color:#ffffff0d;border-color:#ffffff26}.domain-modal-checkbox:has(input:checked){background-color:#646cff1a;border-color:#646cff4d}.domain-modal-checkbox input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem;accent-color:#646cff}.domain-modal-checkbox-label{display:flex;flex-direction:column;gap:.125rem;font-size:.9375rem}.domain-modal-checkbox-label strong{color:#fffffff2}.domain-modal-checkbox-description{font-size:.8125rem;color:#ffffff80}.domain-modal-www-option{border-color:#3b82f633}.domain-modal-www-option:has(input:checked){background-color:#3b82f61a;border-color:#3b82f64d}.domain-modal-www-dns-status{display:flex;align-items:center;padding:.375rem .75rem;margin-top:.25rem}.domain-modal-www-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;background-color:#22c55e26;border-radius:4px;font-size:.75rem;font-weight:500;color:#86efac}.domain-modal-www-badge:before{content:"";display:inline-block;width:6px;height:6px;background-color:#22c55e;border-radius:50%}.domain-modal-node-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:6px}.domain-modal-no-nodes{padding:1rem;text-align:center;color:#ffffff80;font-size:.875rem}.domain-modal-node-checkbox{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background-color:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;transition:all .15s ease}.domain-modal-node-checkbox:hover{background-color:#ffffff0d;border-color:#ffffff26}.domain-modal-node-checkbox:has(input:checked){background-color:#646cff1a;border-color:#646cff4d}.domain-modal-node-checkbox input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;accent-color:#646cff}.domain-modal-node-info{display:flex;flex-direction:column;gap:.125rem;overflow:hidden}.domain-modal-node-name{font-size:.875rem;font-weight:500;color:#ffffffde}.domain-modal-node-ip{font-size:.75rem;color:#ffffff80;font-family:SF Mono,Monaco,Consolas,monospace}.domain-modal-node-status{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.domain-modal-status-dot{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;border-radius:3px;cursor:default}.domain-modal-status-dot:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.domain-modal-status-ok{color:#86efac}.domain-modal-status-ok:before{background-color:#22c55e}.domain-modal-status-missing{color:#ffffff59}.domain-modal-status-missing:before{background-color:#fff3}.domain-modal-node-row{display:flex;align-items:center;gap:.5rem}.domain-modal-node-row .domain-modal-node-checkbox{flex:1}.domain-modal-setup-btn{flex-shrink:0;padding:.25rem .625rem;font-size:.75rem;font-weight:500;color:#646cff;background-color:#646cff1a;border:1px solid rgba(100,108,255,.3);border-radius:4px;cursor:pointer;transition:all .15s ease}.domain-modal-setup-btn:hover{background-color:#646cff33;border-color:#646cff80}.domain-modal-import-btn{flex-shrink:0;padding:.25rem .625rem;font-size:.75rem;font-weight:500;color:#22c55e;background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:4px;cursor:pointer;transition:all .15s ease}.domain-modal-import-btn:hover{background-color:#22c55e33;border-color:#22c55e80}.domain-modal-reimport-btn{flex-shrink:0;padding:.25rem .625rem;font-size:.75rem;font-weight:500;color:#ffffff80;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:4px;cursor:pointer;transition:all .15s ease}.domain-modal-reimport-btn:hover{color:#ffffffb3;background-color:#ffffff1a;border-color:#ffffff40}.domain-modal-setup-loading{flex-shrink:0;font-size:.75rem;color:#ffffff80;animation:pulse 1.5s infinite}.domain-modal-setup-result{flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;border-radius:3px}.domain-modal-setup-success{background-color:#22c55e33;color:#86efac}.domain-modal-setup-partial{background-color:#fbbf2433;color:#fde047}.domain-modal-setup-error{flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;border-radius:3px;background-color:#ef444433;color:#fca5a5;cursor:help}.domain-modal-setup-summary{margin-top:.75rem;padding:.75rem;background-color:#646cff0d;border:1px solid rgba(100,108,255,.15);border-radius:6px;font-size:.8125rem}.domain-modal-setup-summary-item{padding:.25rem 0;color:#ffffffb3}.domain-modal-setup-summary-item strong{color:#ffffffde}.domain-modal-setup-error-text{color:#fca5a5;font-size:.75rem}@media(prefers-color-scheme:light){.domain-modal-error{background-color:#ef44440d;color:#b91c1c}.domain-modal-label{color:#213547}.domain-modal-helper{color:#00000080}.domain-modal-readonly{background-color:#00000005;border-color:#0000001a;color:#000000b3}.domain-modal-select{background-color:#fff;border-color:#00000026;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.domain-modal-select:hover:not(:disabled){background-color:#f5f5f5;border-color:#0003}.domain-modal-select option{background-color:#fff;color:#213547}.domain-modal-checkbox{background-color:#00000005;border-color:#0000001a}.domain-modal-checkbox:hover{background-color:#0000000a;border-color:#00000026}.domain-modal-checkbox:has(input:checked){background-color:#646cff14;border-color:#646cff40}.domain-modal-checkbox-label strong{color:#213547}.domain-modal-checkbox-description{color:#00000080}.domain-modal-node-list{background-color:#00000005;border-color:#0000001a}.domain-modal-no-nodes{color:#00000080}.domain-modal-node-checkbox{background-color:#00000005;border-color:#00000014}.domain-modal-node-checkbox:hover{background-color:#0000000a;border-color:#00000026}.domain-modal-node-checkbox:has(input:checked){background-color:#646cff14;border-color:#646cff40}.domain-modal-node-name{color:#213547}.domain-modal-node-ip{color:#00000080}.domain-modal-status-ok{color:#15803d}.domain-modal-status-missing{color:#0000004d}.domain-modal-status-missing:before{background-color:#00000026}.domain-modal-setup-loading{color:#00000080}.domain-modal-setup-success{background-color:#22c55e26;color:#15803d}.domain-modal-setup-partial{background-color:#fbbf2426;color:#a16207}.domain-modal-setup-error{background-color:#ef44441a;color:#b91c1c}.domain-modal-setup-summary{background-color:#646cff08;border-color:#646cff1a}.domain-modal-setup-summary-item{color:#000000b3}.domain-modal-setup-summary-item strong{color:#213547}.domain-modal-setup-error-text{color:#b91c1c}.domain-modal-www-option{border-color:#3b82f626}.domain-modal-www-option:has(input:checked){background-color:#3b82f614;border-color:#3b82f640}.domain-modal-www-badge{background-color:#22c55e1a;color:#15803d}}.domains-page{padding:0}.domains-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.domains-header-left{display:flex;align-items:baseline;gap:.75rem}.domains-title{font-size:1.75rem;font-weight:600;margin:0}.domains-count{font-size:.875rem;color:#ffffff80}.domains-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.domains-search{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;max-width:300px;padding:0 .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff80}.domains-search:focus-within{border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.domains-search-input{flex:1;padding:.5rem 0;background:transparent;border:none;font-size:.875rem;color:#ffffffde}.domains-search-input::placeholder{color:#fff6}.domains-search-input:focus{outline:none}.domains-filter-select{padding:.5rem 2rem .5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .375rem center;background-repeat:no-repeat;background-size:1.25rem}.domains-filter-select:hover{background-color:#ffffff14;border-color:#fff3}.domains-filter-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.domains-clear-filters{padding:.5rem .75rem;background-color:transparent;border:none;font-size:.8125rem;color:#646cff;cursor:pointer;transition:color .15s ease}.domains-clear-filters:hover{color:#7a82ff;text-decoration:underline}.domains-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.domains-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.domains-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:4px;color:#fca5a5;cursor:pointer;transition:background-color .2s}.domains-error-retry:hover{background-color:#ef44444d}.domains-name-cell{display:flex;flex-direction:column;gap:.125rem}.domains-name{font-weight:500;color:#fffffff2}.domains-origin{font-size:.8125rem;color:#ffffff80;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.domains-node{font-size:.8125rem;color:#ffffffb3}.domains-ssl{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.domains-ssl-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem}.domains-ssl-valid{color:#4ade80}.domains-ssl-pending{color:#fbbf24}.domains-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.domains-status-dot{width:.5rem;height:.5rem;border-radius:50%}.status-active .domains-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.status-pending .domains-status-dot{background-color:#f59e0b;animation:pulse 2s infinite}.status-error .domains-status-dot{background-color:#ef4444}.domains-actions{display:flex;justify-content:flex-end;gap:.375rem}.domains-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.domains-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.domains-action-btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.domains-action-btn:disabled{opacity:.4;cursor:not-allowed}.domains-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.domains-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease-out}.domains-confirm-dialog{width:100%;max-width:400px;padding:1.5rem;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s ease-out}.domains-confirm-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#fffffff2}.domains-confirm-message{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.domains-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}.domains-validation-dialog{max-width:500px}.domains-validation-content{margin-bottom:1.5rem}.domains-validation-status{display:inline-block;padding:.375rem .75rem;margin-bottom:1rem;border-radius:4px;font-size:.875rem;font-weight:600}.domains-validation-status.status-success{background-color:#22c55e26;color:#4ade80}.domains-validation-status.status-error{background-color:#ef444426;color:#f87171}.domains-validation-error{padding:.75rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;font-size:.875rem;color:#fca5a5}.domains-validation-row{margin-bottom:.75rem;font-size:.875rem;color:#ffffffb3}.domains-validation-row strong{display:block;margin-bottom:.25rem;color:#ffffffe6}.domains-validation-row code{display:inline-block;padding:.25rem .5rem;background-color:#ffffff1a;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem}.domains-validation-records{display:flex;flex-direction:column;gap:.375rem;margin-top:.375rem}.domains-validation-records code.record-match{background-color:#22c55e33;color:#4ade80}.domains-validation-records code.record-mismatch{background-color:#ef444426;color:#fca5a5}.domains-validation-hint{padding:.75rem;margin-top:1rem;background-color:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:6px;font-size:.8125rem;color:#fbbf24;line-height:1.5}.domains-validation-hint code{padding:.125rem .375rem;background-color:#fbbf2433;border-radius:3px}@media(max-width:768px){.domains-header{flex-direction:column;align-items:flex-start}.domains-filters{flex-direction:column;align-items:stretch}.domains-search{max-width:none}.domains-filter-select{width:100%}.domains-name-cell{max-width:150px}.domains-name,.domains-origin{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-color-scheme:light){.domains-count{color:#00000080}.domains-search{background-color:#fff;border-color:#00000026;color:#00000080}.domains-search-input{color:#213547}.domains-search-input::placeholder{color:#0006}.domains-filter-select{background-color:#fff;border-color:#00000026;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.domains-filter-select:hover{background-color:#f5f5f5;border-color:#0003}.domains-error{background-color:#ef44440d;color:#b91c1c}.domains-error-retry{background-color:#ef44441a;color:#b91c1c}.domains-name{color:#213547}.domains-origin{color:#00000080}.domains-node{color:#0009}.domains-ssl-valid{color:#16a34a}.domains-ssl-pending{color:#d97706}.status-active{color:#16a34a}.status-pending{color:#d97706}.status-error{color:#dc2626}.domains-action-btn{color:#0006}.domains-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.domains-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.domains-confirm-dialog{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.domains-confirm-title{color:#213547}.domains-confirm-message{color:#0009}.domains-validation-status.status-success{background-color:#22c55e1a;color:#16a34a}.domains-validation-status.status-error{background-color:#ef44441a;color:#dc2626}.domains-validation-error{background-color:#ef44440d;color:#b91c1c}.domains-validation-row{color:#0009}.domains-validation-row strong{color:#213547}.domains-validation-row code{background-color:#0000000d;color:#213547}.domains-validation-records code.record-match{background-color:#22c55e26;color:#16a34a}.domains-validation-records code.record-mismatch{background-color:#ef44441a;color:#dc2626}.domains-validation-hint{background-color:#fbbf2414;border-color:#d977064d;color:#b45309}.domains-validation-hint code{background-color:#fbbf2426}}.origin-group-modal-form{display:flex;flex-direction:column;gap:1rem}.origin-group-modal-tabs{display:flex;gap:.25rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem}.origin-group-modal-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.875rem;color:#fff9;cursor:pointer;transition:all .15s ease}.origin-group-modal-tab:hover{color:#ffffffde}.origin-group-modal-tab.active{color:#646cff;border-bottom-color:#646cff}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .375rem;background-color:#646cff33;border-radius:10px;font-size:.75rem;font-weight:500;color:#646cff}.origin-group-modal-section{display:flex;flex-direction:column;gap:1rem}.origin-group-modal-row{display:flex;gap:1rem;align-items:flex-start}.origin-group-modal-row>*{flex:1}.origin-group-modal-subheading{font-size:.875rem;font-weight:500;color:#ffffffde;margin-top:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.origin-group-modal-checkboxes{display:flex;flex-direction:column;gap:.75rem}.origin-group-modal-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.origin-group-modal-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#646cff;cursor:pointer}.origin-group-modal-help{font-size:.8125rem;color:#ffffff80;margin:0;line-height:1.5}.origin-group-modal-error{padding:.75rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#f87171;font-size:.875rem}.origin-group-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);margin-top:.5rem}.upstream-members-list{display:flex;flex-direction:column;gap:1rem}.upstream-member-item{padding:1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px}.upstream-member-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.upstream-member-number{font-size:.8125rem;font-weight:500;color:#ffffffb3}.upstream-member-remove{padding:.25rem .5rem;background:transparent;border:1px solid rgba(239,68,68,.3);border-radius:4px;font-size:.75rem;color:#ef4444;cursor:pointer}.upstream-member-remove:hover{background-color:#ef44441a}.upstream-member-row{display:flex;gap:.75rem;align-items:flex-end;margin-bottom:.75rem}.upstream-member-row:last-child{margin-bottom:0}.upstream-member-row>*{flex:1}.upstream-member-checkbox{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;cursor:pointer;white-space:nowrap;min-width:auto;flex:0 0 auto;padding-bottom:.5rem}.upstream-member-checkbox input[type=checkbox]{width:14px;height:14px;accent-color:#646cff;cursor:pointer}@media(prefers-color-scheme:light){.origin-group-modal-tabs{border-bottom-color:#0000001a}.origin-group-modal-tab{color:#00000080}.origin-group-modal-tab:hover{color:#000c}.origin-group-modal-subheading{color:#213547;border-bottom-color:#0000001a}.origin-group-modal-help{color:#00000080}.origin-group-modal-error{background-color:#ef44440d;color:#b91c1c}.origin-group-modal-actions{border-top-color:#0000001a}.upstream-member-item{background-color:#00000005;border-color:#0000001a}.upstream-member-number{color:#0009}.upstream-member-remove{border-color:#ef44444d;color:#dc2626}.upstream-member-remove:hover{background-color:#ef44440d}}@media(max-width:640px){.origin-group-modal-row{flex-direction:column}.upstream-member-row{flex-wrap:wrap}.upstream-member-row>*{min-width:calc(50% - .375rem)}.upstream-member-checkbox{padding-bottom:0}}.origin-groups-page{padding:0}.origin-groups-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.origin-groups-header-left{display:flex;align-items:baseline;gap:.75rem}.origin-groups-title{font-size:1.75rem;font-weight:600;margin:0}.origin-groups-count{font-size:.875rem;color:#ffffff80}.origin-groups-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.origin-groups-search{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;max-width:300px;padding:0 .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff80}.origin-groups-search:focus-within{border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.origin-groups-search-input{flex:1;padding:.5rem 0;background:transparent;border:none;font-size:.875rem;color:#ffffffde}.origin-groups-search-input::placeholder{color:#fff6}.origin-groups-search-input:focus{outline:none}.origin-groups-filter-select{padding:.5rem 2rem .5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .375rem center;background-repeat:no-repeat;background-size:1.25rem}.origin-groups-filter-select:hover{background-color:#ffffff14;border-color:#fff3}.origin-groups-filter-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.origin-groups-clear-filters{padding:.5rem .75rem;background:transparent;border:none;font-size:.875rem;color:#ffffff80;cursor:pointer;text-decoration:underline}.origin-groups-clear-filters:hover{color:#ffffffde}.origin-groups-error{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;margin-bottom:1rem;color:#f87171}.origin-groups-error-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:#ef4444;color:#fff;font-size:.75rem;font-weight:700;border-radius:50%}.origin-groups-error-retry{margin-left:auto;padding:.25rem .5rem;background:transparent;border:1px solid rgba(239,68,68,.5);border-radius:4px;font-size:.75rem;color:#f87171;cursor:pointer}.origin-groups-error-retry:hover{background-color:#ef44441a}.origin-group-name{display:flex;flex-direction:column;gap:.25rem}.origin-group-name-text{font-weight:500}.origin-group-description{font-size:.75rem;color:#ffffff80;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.origin-group-address{font-family:monospace;font-size:.8125rem;background-color:#ffffff0d;padding:.25rem .5rem;border-radius:4px}.origin-group-domain-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:.125rem .5rem;background-color:#ffffff1a;border-radius:12px;font-size:.75rem;font-weight:500}.origin-health{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.origin-health-dot{width:6px;height:6px;border-radius:50%}.health-healthy{background-color:#22c55e1a;color:#22c55e}.health-healthy .origin-health-dot{background-color:#22c55e}.health-unhealthy{background-color:#ef44441a;color:#ef4444}.health-unhealthy .origin-health-dot{background-color:#ef4444}.health-unknown{background-color:#ffffff1a;color:#fff9}.health-unknown .origin-health-dot{background-color:#fff6}.origin-tls{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.origin-tls-enabled{background-color:#22c55e1a;color:#22c55e}.origin-tls-disabled{background-color:#ffffff1a;color:#fff9}.origin-group-actions{display:flex;gap:.5rem;justify-content:flex-end}.origin-group-action{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .15s ease}.origin-group-action:hover:not(:disabled){background-color:#ffffff1a;border-color:#fff3;color:#ffffffe6}.origin-group-action:disabled{opacity:.3;cursor:not-allowed}.origin-group-action-danger:hover:not(:disabled){background-color:#ef44441a;border-color:#ef44444d;color:#ef4444}.origin-group-action-loading{animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.origin-groups-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background-color:#000000bf;z-index:1000}.origin-groups-dialog{background-color:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;max-width:400px;width:90%}.origin-groups-dialog-title{font-size:1.125rem;font-weight:600;margin:0 0 .75rem}.origin-groups-dialog-text{color:#ffffffb3;font-size:.875rem;margin:0 0 1.5rem;line-height:1.5}.origin-groups-dialog-actions{display:flex;justify-content:flex-end;gap:.75rem}.origin-groups-test-result{background-color:#ffffff0d;border-radius:8px;padding:1rem;margin-bottom:1rem}.origin-groups-test-result p{margin:0 0 .5rem;font-size:.875rem}.origin-groups-test-result p:last-child{margin-bottom:0}.test-success{color:#22c55e;font-weight:500}.test-failure{color:#ef4444;font-weight:500}@media(prefers-color-scheme:light){.origin-groups-count{color:#00000080}.origin-groups-search{background-color:#00000008;border-color:#0000001a;color:#00000080}.origin-groups-search:focus-within{border-color:#646cff}.origin-groups-search-input{color:#213547}.origin-groups-search-input::placeholder{color:#0006}.origin-groups-filter-select{background-color:#00000008;border-color:#0000001a;color:#213547}.origin-groups-filter-select:hover{background-color:#0000000d;border-color:#0003}.origin-groups-clear-filters{color:#00000080}.origin-groups-clear-filters:hover{color:#000c}.origin-group-description{color:#00000080}.origin-group-address{background-color:#0000000d}.origin-group-domain-count{background-color:#00000014}.origin-group-action{background-color:#00000008;border-color:#0000001a;color:#00000080}.origin-group-action:hover:not(:disabled){background-color:#00000014;border-color:#0003;color:#000c}.origin-group-action-danger:hover:not(:disabled){background-color:#ef44441a;border-color:#ef44444d;color:#dc2626}.origin-groups-dialog{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.origin-groups-dialog-text{color:#000000b3}.origin-groups-test-result{background-color:#00000008}}@media(max-width:768px){.origin-groups-header{flex-direction:column;align-items:flex-start}.origin-groups-filters{flex-direction:column;align-items:stretch}.origin-groups-search{max-width:none}.origin-groups-filter-select{width:100%}}.cert-details-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:certFadeIn .15s ease-out}@keyframes certFadeIn{0%{opacity:0}to{opacity:1}}.cert-details-modal{width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:certSlideIn .2s ease-out}@keyframes certSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.cert-details-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.cert-details-title{margin:0;font-size:1.125rem;font-weight:600;color:#fffffff2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cert-details-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:none;border-radius:4px;color:#ffffff80;font-size:1.5rem;cursor:pointer;transition:all .15s ease;flex-shrink:0}.cert-details-close:hover{background-color:#ffffff1a;color:#ffffffe6}.cert-details-key-status-bar{padding:.75rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1);background-color:#0003}.cert-details-key-status{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;font-weight:500}.cert-details-key-status.has-key{background-color:#10b98126;color:#34d399}.cert-details-key-status.no-key{background-color:#6b728026;color:#9ca3af}.cert-details-key-status svg{width:14px;height:14px}.cert-details-tabs{display:flex;gap:0;padding:0 1.25rem;border-bottom:1px solid rgba(255,255,255,.1);background-color:#0000001a}.cert-details-tab{padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:#ffffff80;cursor:pointer;transition:all .15s ease}.cert-details-tab:hover{color:#fffc}.cert-details-tab.active{color:#646cff;border-bottom-color:#646cff}.cert-details-body{flex:1;overflow-y:auto;padding:1.25rem}.cert-details-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;color:#ffffff80}.cert-details-spinner{width:2rem;height:2rem;border:2px solid rgba(100,108,255,.3);border-top-color:#646cff;border-radius:50%;animation:certSpin .8s linear infinite}@keyframes certSpin{to{transform:rotate(360deg)}}.cert-details-error{display:flex;align-items:center;justify-content:center;padding:2rem;color:#f87171;font-size:.9375rem}.cert-details-info-section{display:flex;flex-direction:column;gap:1.25rem}.cert-details-section-title{margin:0 0 .75rem;padding-bottom:.5rem;font-size:1rem;font-weight:600;color:#fffffff2;border-bottom:1px solid rgba(255,255,255,.1)}.cert-details-group{padding:1rem;background-color:#0003;border-radius:8px}.cert-details-group-title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff6}.cert-details-field{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.cert-details-field:last-child{margin-bottom:0}.cert-details-label{flex:0 0 180px;font-size:.8125rem;color:#ffffff80}.cert-details-value{flex:1;min-width:200px;font-size:.8125rem;color:#ffffffe6}.cert-details-mono{font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem}.cert-details-wrap{word-break:break-all}.cert-details-status{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.cert-details-status.valid{background-color:#22c55e26;color:#4ade80}.cert-details-status.warning{background-color:#fbbf2426;color:#fbbf24}.cert-details-status.expired{background-color:#ef444426;color:#f87171}.cert-details-badge{display:inline-flex;align-items:center;margin-top:.5rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.cert-details-badge-warning{background-color:#fbbf2426;color:#fbbf24}.cert-details-list{display:flex;flex-wrap:wrap;gap:.375rem}.cert-details-list-item{padding:.25rem .5rem;background-color:#646cff1a;border-radius:4px;font-size:.75rem;font-family:JetBrains Mono,Fira Code,monospace;color:#ffffffe6}.cert-details-tags{display:flex;flex-wrap:wrap;gap:.375rem}.cert-details-tag{padding:.25rem .5rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;font-size:.75rem;color:#ffffffb3}.cert-details-fingerprint{display:flex;align-items:flex-start;gap:.5rem;flex:1;min-width:200px}.cert-details-fingerprint .cert-details-value{flex:1}.cert-details-copy-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;font-size:.75rem;color:#fff9;cursor:pointer;transition:all .15s ease;flex-shrink:0}.cert-details-copy-btn:hover{background-color:#ffffff1a;color:#ffffffe6}.cert-details-copy-btn svg{flex-shrink:0}.cert-details-pem-section{display:flex;flex-direction:column;gap:1.25rem}.cert-details-pem-block{display:flex;flex-direction:column;gap:.5rem}.cert-details-pem-header{display:flex;justify-content:space-between;align-items:center}.cert-details-pem-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80}.cert-details-pem{margin:0;padding:.75rem 1rem;background-color:#0000004d;border-radius:6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.6875rem;line-height:1.5;color:#ffffffd9;overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:300px}.cert-details-chain-section{display:flex;flex-direction:column;gap:1.5rem}.cert-details-footer{display:flex;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.1)}@media(max-width:768px){.cert-details-modal{max-height:95vh;margin:0;border-radius:12px 12px 0 0}.cert-details-field{flex-direction:column;gap:.25rem}.cert-details-label{flex:none}.cert-details-value{min-width:0}}@media(prefers-color-scheme:light){.cert-details-modal{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.cert-details-header{border-bottom-color:#0000001a}.cert-details-title{color:#213547}.cert-details-close{color:#0006}.cert-details-close:hover{background-color:#0000000d;color:#000c}.cert-details-key-status-bar{border-bottom-color:#0000001a;background-color:#00000005}.cert-details-key-status.has-key{background-color:#10b9811a;color:#059669}.cert-details-key-status.no-key{background-color:#6b72801a;color:#6b7280}.cert-details-tabs{border-bottom-color:#0000001a;background-color:#00000005}.cert-details-tab{color:#00000080}.cert-details-tab:hover{color:#000000b3}.cert-details-tab.active{color:#646cff}.cert-details-loading{color:#00000080}.cert-details-error{color:#dc2626}.cert-details-section-title{color:#213547;border-bottom-color:#0000001a}.cert-details-group{background-color:#00000005}.cert-details-group-title{color:#0006}.cert-details-label{color:#00000080}.cert-details-value{color:#213547}.cert-details-status.valid{background-color:#22c55e1a;color:#16a34a}.cert-details-status.warning{background-color:#fbbf241a;color:#d97706}.cert-details-status.expired{background-color:#ef44441a;color:#dc2626}.cert-details-badge-warning{background-color:#fbbf241a;color:#d97706}.cert-details-list-item{background-color:#646cff14;color:#213547}.cert-details-tag{background-color:#00000008;border-color:#0000001a;color:#000000b3}.cert-details-copy-btn{background-color:#00000008;border-color:#0000001a;color:#00000080}.cert-details-copy-btn:hover{background-color:#0000000d;color:#000c}.cert-details-pem{background-color:#00000008;color:#213547}.cert-details-footer{border-top-color:#0000001a}}.certs-page{padding:0}.certs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.certs-header-left{display:flex;align-items:baseline;gap:.75rem}.certs-header-actions{display:flex;align-items:center;gap:.5rem}.certs-title{font-size:1.75rem;font-weight:600;margin:0}.certs-count{font-size:.875rem;color:#ffffff80}.certs-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.certs-search{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;max-width:300px;padding:0 .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff80}.certs-search:focus-within{border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.certs-search-input{flex:1;padding:.5rem 0;background:transparent;border:none;font-size:.875rem;color:#ffffffde}.certs-search-input::placeholder{color:#fff6}.certs-search-input:focus{outline:none}.certs-filter-select{padding:.5rem 2rem .5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .375rem center;background-repeat:no-repeat;background-size:1.25rem}.certs-filter-select:hover{background-color:#ffffff14;border-color:#fff3}.certs-filter-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.certs-filter-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;transition:all .15s ease}.certs-filter-checkbox:hover{background-color:#ffffff14;border-color:#fff3}.certs-filter-checkbox input{cursor:pointer}.certs-clear-filters{padding:.5rem .75rem;background-color:transparent;border:none;font-size:.8125rem;color:#646cff;cursor:pointer;transition:color .15s ease}.certs-clear-filters:hover{color:#7a82ff;text-decoration:underline}.certs-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.certs-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.certs-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:4px;color:#fca5a5;cursor:pointer;transition:background-color .2s}.certs-error-retry:hover{background-color:#ef44444d}.certs-name-cell{display:flex;flex-direction:column;gap:.125rem}.certs-domain-row{display:flex;align-items:center;gap:.375rem}.certs-domain{font-weight:500;color:#fffffff2}.certs-stored-badge{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;color:#22c55e;opacity:.9}.certs-stored-badge:hover{opacity:1}.certs-common-name{font-size:.8125rem;color:#ffffff80;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.certs-node,.certs-issuer{font-size:.8125rem;color:#ffffffb3}.certs-expiry{display:inline-flex;align-items:center;font-size:.8125rem;font-weight:500}.certs-expiry-ok{color:#ffffffb3}.certs-expiry-warning{color:#fbbf24}.certs-expiry-critical{color:#f87171}.certs-expiry-expired{color:#ef4444}.certs-expiry-unknown{color:#ffffff80}.certs-status-wrapper{display:flex;align-items:center;gap:.5rem}.certs-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.certs-status-dot{width:.5rem;height:.5rem;border-radius:50%}.status-active .certs-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.status-pending .certs-status-dot{background-color:#f59e0b;animation:pulse 2s infinite}.status-pending{color:#fbbf24}.status-expired .certs-status-dot{background-color:#6b7280}.status-expired{color:#9ca3af}.status-error .certs-status-dot{background-color:#ef4444}.status-error{color:#f87171}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.certs-expiring-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;background-color:#fbbf2426;border:1px solid rgba(251,191,36,.3);border-radius:4px;font-size:.6875rem;font-weight:600;color:#fbbf24}.certs-actions{display:flex;justify-content:flex-end;gap:.375rem}.certs-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.certs-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.certs-action-btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.certs-action-btn:disabled{opacity:.4;cursor:not-allowed}.certs-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.certs-action-btn-retry{color:#fbbf24}.certs-action-btn-retry:hover:not(:disabled){background-color:#fbbf2426;color:#fcd34d}.certs-action-btn-sync{color:#3b82f6}.certs-action-btn-sync:hover:not(:disabled){background-color:#3b82f626;color:#60a5fa}.certs-modal-description{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.certs-modal-field{margin-bottom:1rem}.certs-modal-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#ffffffde}.certs-modal-select{width:100%;padding:.625rem 2rem .625rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:.9375rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem}.certs-modal-select:hover{border-color:#ffffff4d}.certs-modal-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.certs-modal-hint{margin:.5rem 0 0;font-size:.8125rem;color:#ffffff80}.certs-modal-hint-warning{color:#fbbf24}.certs-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease-out}.certs-confirm-dialog{width:100%;max-width:400px;padding:1.5rem;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s ease-out}.certs-confirm-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#fffffff2}.certs-confirm-message{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.certs-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.certs-header{flex-direction:column;align-items:flex-start}.certs-filters{flex-direction:column;align-items:stretch}.certs-search{max-width:none}.certs-filter-select{width:100%}.certs-name-cell{max-width:150px}.certs-domain,.certs-common-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-color-scheme:light){.certs-count{color:#00000080}.certs-search{background-color:#fff;border-color:#00000026;color:#00000080}.certs-search-input{color:#213547}.certs-search-input::placeholder{color:#0006}.certs-filter-select{background-color:#fff;border-color:#00000026;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.certs-filter-select:hover{background-color:#f5f5f5;border-color:#0003}.certs-filter-checkbox{background-color:#fff;border-color:#00000026;color:#213547}.certs-filter-checkbox:hover{background-color:#f5f5f5;border-color:#0003}.certs-error{background-color:#ef44440d;color:#b91c1c}.certs-error-retry{background-color:#ef44441a;color:#b91c1c}.certs-domain{color:#213547}.certs-stored-badge{color:#16a34a}.certs-common-name{color:#00000080}.certs-node,.certs-issuer,.certs-expiry-ok{color:#0009}.certs-expiry-warning{color:#d97706}.certs-expiry-critical{color:#dc2626}.certs-expiry-expired{color:#b91c1c}.certs-expiry-unknown{color:#0006}.status-active{color:#16a34a}.status-pending{color:#d97706}.status-expired{color:#6b7280}.status-error{color:#dc2626}.certs-expiring-badge{background-color:#fbbf241a;border-color:#fbbf244d;color:#d97706}.certs-action-btn{color:#0006}.certs-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.certs-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.certs-action-btn-retry{color:#d97706}.certs-action-btn-retry:hover:not(:disabled){background-color:#fbbf241a;color:#b45309}.certs-action-btn-sync{color:#2563eb}.certs-action-btn-sync:hover:not(:disabled){background-color:#3b82f61a;color:#1d4ed8}.certs-modal-description{color:#0009}.certs-modal-label{color:#213547}.certs-modal-select{background-color:#fff;border-color:#0003;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.certs-modal-select:hover{border-color:#0000004d}.certs-modal-hint{color:#00000080}.certs-modal-hint-warning{color:#d97706}.certs-confirm-dialog{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.certs-confirm-title{color:#213547}.certs-confirm-message{color:#0009}}.certs-action-btn-view{color:#10b981}.certs-action-btn-view:hover:not(:disabled){background-color:#10b98126;color:#34d399}.certs-content-modal{width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 20px 25px -5px #00000080;overflow:hidden}.certs-content-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.certs-content-modal-title{margin:0;font-size:1.125rem;font-weight:600;color:#fffffff2}.certs-content-modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:none;border-radius:4px;color:#ffffff80;font-size:1.5rem;cursor:pointer;transition:all .15s ease}.certs-content-modal-close:hover{background-color:#ffffff1a;color:#ffffffe6}.certs-content-modal-body{flex:1;overflow-y:auto;padding:1rem 1.25rem}.certs-content-section{margin-bottom:1.25rem}.certs-content-section:last-child{margin-bottom:0}.certs-content-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;margin-bottom:.5rem}.certs-content-key-status{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500}.certs-content-key-status.has-key{background-color:#10b98126;color:#34d399}.certs-content-key-status.no-key{background-color:#ef444426;color:#f87171}.certs-content-key-status svg{width:16px;height:16px}.certs-content-pem{margin:0;padding:.75rem 1rem;background-color:#0000004d;border-radius:6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;line-height:1.5;color:#ffffffd9;overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:200px}.certs-content-modal-footer{display:flex;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.1)}@media(prefers-color-scheme:light){.certs-content-modal{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.certs-content-modal-header{border-bottom-color:#0000001a}.certs-content-modal-title{color:#213547}.certs-content-modal-close{color:#0006}.certs-content-modal-close:hover{background-color:#0000000d;color:#000c}.certs-content-label{color:#00000080}.certs-content-pem{background-color:#0000000d;color:#213547}.certs-content-modal-footer{border-top-color:#0000001a}}.certs-monitoring-results{display:flex;flex-direction:column;gap:1.25rem}.certs-monitoring-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.certs-monitoring-stat{display:flex;flex-direction:column;align-items:center;padding:1rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px}.certs-monitoring-stat-value{font-size:1.75rem;font-weight:700;color:#fffffff2}.certs-monitoring-stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;margin-top:.25rem}.certs-monitoring-stat-changed .certs-monitoring-stat-value{color:#fbbf24}.certs-monitoring-stat-updated .certs-monitoring-stat-value{color:#4ade80}.certs-monitoring-stat-errors .certs-monitoring-stat-value{color:#f87171}.certs-monitoring-meta{font-size:.8125rem;color:#ffffff80;text-align:center}.certs-monitoring-details{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.certs-monitoring-details-title{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#ffffffde}.certs-monitoring-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.certs-monitoring-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.certs-monitoring-item-icon{flex-shrink:0;margin-top:.125rem}.certs-monitoring-item-unchanged .certs-monitoring-item-icon{color:#fff6}.certs-monitoring-item-changed .certs-monitoring-item-icon{color:#fbbf24}.certs-monitoring-item-updated .certs-monitoring-item-icon{color:#4ade80}.certs-monitoring-item-error .certs-monitoring-item-icon{color:#f87171}.certs-monitoring-item-content{flex:1;min-width:0}.certs-monitoring-item-domain{font-weight:500;color:#fffffff2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.certs-monitoring-item-node{font-size:.8125rem;color:#ffffff80;margin-top:.125rem}.certs-monitoring-item-error{font-size:.8125rem;color:#f87171;margin-top:.375rem}.certs-monitoring-item-success{font-size:.8125rem;color:#4ade80;margin-top:.375rem}.certs-monitoring-item-unchanged-text{font-size:.8125rem;color:#fff6;margin-top:.375rem}.certs-monitoring-empty{text-align:center;padding:2rem;color:#ffffff80}@media(prefers-color-scheme:light){.certs-monitoring-stat{background-color:#00000005;border-color:#0000001a}.certs-monitoring-stat-value{color:#213547}.certs-monitoring-stat-label{color:#00000080}.certs-monitoring-stat-changed .certs-monitoring-stat-value{color:#d97706}.certs-monitoring-stat-updated .certs-monitoring-stat-value{color:#16a34a}.certs-monitoring-stat-errors .certs-monitoring-stat-value{color:#dc2626}.certs-monitoring-meta{color:#00000080}.certs-monitoring-details{border-top-color:#0000001a}.certs-monitoring-details-title{color:#213547}.certs-monitoring-item{background-color:#00000005;border-color:#00000014}.certs-monitoring-item-unchanged .certs-monitoring-item-icon{color:#0006}.certs-monitoring-item-changed .certs-monitoring-item-icon{color:#d97706}.certs-monitoring-item-updated .certs-monitoring-item-icon{color:#16a34a}.certs-monitoring-item-error .certs-monitoring-item-icon{color:#dc2626}.certs-monitoring-item-domain{color:#213547}.certs-monitoring-item-node{color:#00000080}.certs-monitoring-item-error{color:#dc2626}.certs-monitoring-item-success{color:#16a34a}.certs-monitoring-item-unchanged-text{color:#0006}.certs-monitoring-empty{color:#00000080}}@media(max-width:640px){.certs-monitoring-summary{grid-template-columns:repeat(2,1fr)}}.config-viewer{border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;background-color:#0d0d14}.config-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:#ffffff08;border-bottom:1px solid rgba(255,255,255,.1)}.config-viewer-title{font-size:.875rem;font-weight:500;color:#ffffffb3}.config-viewer-copy{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.75rem;color:#ffffffb3;cursor:pointer;transition:all .15s ease}.config-viewer-copy:hover{background-color:#ffffff1a;color:#ffffffe6}.config-viewer-copy-floating{position:absolute;top:.5rem;right:.5rem;z-index:10;opacity:0;transition:opacity .15s ease}.config-viewer-content{position:relative;overflow:auto}.config-viewer-content:hover .config-viewer-copy-floating{opacity:1}.config-viewer-pre{margin:0;padding:1rem;font-family:JetBrains Mono,Fira Code,Monaco,Cascadia Code,monospace;font-size:.8125rem;line-height:1.6;overflow-x:auto}.config-viewer-code{display:block}.config-viewer-line{display:flex;min-height:1.6em}.config-viewer-line-number{flex-shrink:0;width:3rem;padding-right:1rem;text-align:right;color:#ffffff4d;-webkit-user-select:none;user-select:none}.config-viewer-line-content{flex:1;white-space:pre;overflow-x:visible}.config-syntax-comment{color:#6a9955;font-style:italic}.config-syntax-directive{color:#569cd6;font-weight:500}.config-syntax-block{color:#c586c0;font-weight:500}.config-syntax-value{color:#ffffffde}.config-syntax-string{color:#ce9178}.config-syntax-number{color:#b5cea8}.config-syntax-variable{color:#dcdcaa}.config-syntax-brace{color:#d4d4d4;font-weight:600}.config-viewer-content::-webkit-scrollbar{width:8px;height:8px}.config-viewer-content::-webkit-scrollbar-track{background:#ffffff08}.config-viewer-content::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.config-viewer-content::-webkit-scrollbar-thumb:hover{background:#ffffff40}.config-viewer-pre::-webkit-scrollbar{width:8px;height:8px}.config-viewer-pre::-webkit-scrollbar-track{background:transparent}.config-viewer-pre::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.config-viewer-pre::-webkit-scrollbar-thumb:hover{background:#ffffff40}@media(prefers-color-scheme:light){.config-viewer{background-color:#f5f5f5;border-color:#0000001a}.config-viewer-header{background-color:#e8e8e8;border-bottom-color:#0000001a}.config-viewer-title{color:#213547}.config-viewer-copy{background-color:#0000000d;border-color:#0000001a;color:#213547}.config-viewer-copy:hover{background-color:#0000001a;color:#000}.config-viewer-pre{background-color:#fafafa}.config-viewer-line-number{color:#0000004d}.config-syntax-comment{color:green}.config-syntax-directive{color:#00f}.config-syntax-block{color:#af00db}.config-syntax-value{color:#213547}.config-syntax-string{color:#a31515}.config-syntax-number{color:#098658}.config-syntax-variable{color:#795e26}.config-syntax-brace{color:#213547}.config-viewer-content::-webkit-scrollbar-track{background:#00000008}.config-viewer-content::-webkit-scrollbar-thumb{background:#00000026}.config-viewer-content::-webkit-scrollbar-thumb:hover{background:#00000040}.config-viewer-pre::-webkit-scrollbar-thumb{background:#00000026}.config-viewer-pre::-webkit-scrollbar-thumb:hover{background:#00000040}}.nginx-page{padding:0}.nginx-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.nginx-header-left{display:flex;align-items:baseline;gap:.75rem}.nginx-title{font-size:1.75rem;font-weight:600;margin:0}.nginx-count{font-size:.875rem;color:#ffffff80}.nginx-header-actions{display:flex;gap:.75rem}.nginx-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.nginx-filter-select{padding:.5rem 2rem .5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .375rem center;background-repeat:no-repeat;background-size:1.25rem}.nginx-filter-select:hover{background-color:#ffffff14;border-color:#fff3}.nginx-filter-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.nginx-filter-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;transition:all .15s ease}.nginx-filter-checkbox:hover{background-color:#ffffff14;border-color:#fff3}.nginx-filter-checkbox input{cursor:pointer}.nginx-search{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;max-width:300px;padding:0 .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff80}.nginx-search:focus-within{border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.nginx-search-input{flex:1;padding:.5rem 0;background:transparent;border:none;font-size:.875rem;color:#ffffffde}.nginx-search-input::placeholder{color:#fff6}.nginx-search-input:focus{outline:none}.nginx-clear-filters{padding:.5rem .75rem;background-color:transparent;border:none;font-size:.8125rem;color:#646cff;cursor:pointer;transition:color .15s ease}.nginx-clear-filters:hover{color:#7a82ff;text-decoration:underline}.nginx-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.nginx-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.nginx-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:4px;color:#fca5a5;cursor:pointer;transition:background-color .2s}.nginx-error-retry:hover{background-color:#ef44444d}.nginx-success{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:8px;color:#4ade80;font-size:.875rem}.nginx-success-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.nginx-success-close{margin-left:auto;padding:.25rem;background:transparent;border:none;color:#4ade80;cursor:pointer;opacity:.7;transition:opacity .15s}.nginx-success-close:hover{opacity:1}.nginx-domain-cell{display:flex;flex-direction:column;gap:.125rem}.nginx-domain{font-weight:500;color:#fffffff2}.nginx-hash{font-size:.75rem;font-family:JetBrains Mono,Fira Code,monospace;color:#fff6}.nginx-node{font-size:.875rem;color:#ffffffb3}.nginx-node-ip{font-size:.75rem;color:#fff6}.nginx-status-wrapper{display:flex;align-items:center;gap:.5rem}.nginx-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.nginx-status-dot{width:.5rem;height:.5rem;border-radius:50%}.nginx-status-active .nginx-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.nginx-status-active{color:#4ade80}.nginx-status-inactive .nginx-status-dot{background-color:#6b7280}.nginx-status-inactive{color:#9ca3af}.nginx-reload-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600}.nginx-reload-success{background-color:#22c55e26;border:1px solid rgba(34,197,94,.3);color:#4ade80}.nginx-reload-failed{background-color:#ef444426;border:1px solid rgba(239,68,68,.3);color:#f87171}.nginx-date{font-size:.8125rem;color:#fff9}.nginx-date-unknown{color:#fff6}.nginx-reload-time{font-size:.8125rem;color:#ffffffb3}.nginx-active-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:500;border-radius:4px}.nginx-active-badge-yes{background-color:#22c55e26;color:#4ade80}.nginx-active-badge-no{background-color:#6b728026;color:#9ca3af}.nginx-status-success{color:#4ade80}.nginx-status-success .nginx-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.nginx-status-failed{color:#f87171}.nginx-status-failed .nginx-status-dot{background-color:#ef4444}.nginx-status-unknown{color:#ffffff80}.nginx-actions{display:flex;justify-content:flex-end;gap:.375rem}.nginx-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.nginx-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.nginx-action-btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.nginx-action-btn:disabled{opacity:.4;cursor:not-allowed}.nginx-action-btn-reload:hover:not(:disabled){background-color:#646cff26;color:#646cff}.nginx-action-btn-activate{color:#4ade80}.nginx-action-btn-activate:hover:not(:disabled){background-color:#22c55e26;color:#22c55e}.nginx-action-btn-regenerate{color:#fbbf24}.nginx-action-btn-regenerate:hover:not(:disabled){background-color:#fbbf2426;color:#fcd34d}.nginx-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.nginx-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.nginx-confirm-dialog{width:100%;max-width:400px;padding:1.5rem;background-color:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080}.nginx-confirm-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#fffffff2}.nginx-confirm-message{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.nginx-confirm-message strong{color:#ffffffe6}.nginx-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}.nginx-modal-description{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.nginx-modal-field{margin-bottom:1rem}.nginx-modal-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#ffffffde}.nginx-modal-select{width:100%;padding:.625rem 2rem .625rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:.9375rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem}.nginx-modal-select:hover{border-color:#ffffff4d}.nginx-modal-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.nginx-modal-hint{margin:.5rem 0 0;font-size:.8125rem;color:#ffffff80}.nginx-modal-hint-warning{color:#fbbf24}.nginx-config-info{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem;padding:.75rem;background-color:#ffffff08;border-radius:8px}.nginx-config-info-item{display:flex;flex-direction:column;gap:.25rem}.nginx-config-info-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:#fff6}.nginx-config-info-value{font-size:.875rem;color:#ffffffde}.nginx-config-error-section{margin-bottom:1rem;padding:.75rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px}.nginx-config-error-title{font-size:.75rem;font-weight:600;color:#f87171;margin-bottom:.5rem}.nginx-config-error-text{font-size:.8125rem;color:#fca5a5;font-family:monospace;white-space:pre-wrap;word-break:break-word}.nginx-view-modal-body{display:flex;flex-direction:column;gap:1rem}.nginx-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 0;color:#fff9}.nginx-spinner{width:2rem;height:2rem;border:2px solid rgba(255,255,255,.1);border-top-color:#646cff;border-radius:50%;animation:nginx-spin .8s linear infinite}@keyframes nginx-spin{to{transform:rotate(360deg)}}.nginx-view-empty{padding:3rem;text-align:center;color:#ffffff80}.nginx-view-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px}.nginx-meta-item{display:flex;flex-direction:column;gap:.25rem}.nginx-meta-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80}.nginx-meta-value{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#ffffffde}.nginx-meta-name{font-weight:500}.nginx-meta-ip{color:#ffffff80;font-size:.8125rem}.nginx-view-error{display:flex;flex-direction:column;gap:.375rem;padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;font-size:.875rem;color:#fca5a5}.nginx-view-error strong{font-weight:600;color:#f87171}.nginx-reload-result{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;margin-top:1rem;border-radius:8px;font-size:.875rem}.nginx-reload-result-success{background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3)}.nginx-reload-result-failed{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3)}.nginx-reload-result-status{font-weight:600}.nginx-reload-result-success .nginx-reload-result-status{color:#4ade80}.nginx-reload-result-failed .nginx-reload-result-status{color:#f87171}.nginx-reload-result-message{color:#ffffffb3}@media(max-width:768px){.nginx-header{flex-direction:column;align-items:flex-start}.nginx-filters{flex-direction:column;align-items:stretch}.nginx-filter-select{width:100%}.nginx-config-info{grid-template-columns:1fr}}@media(prefers-color-scheme:light){.nginx-count{color:#00000080}.nginx-search{background-color:#fff;border-color:#00000026;color:#00000080}.nginx-search-input{color:#213547}.nginx-search-input::placeholder{color:#0006}.nginx-filter-select{background-color:#fff;border-color:#00000026;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.nginx-filter-select:hover{background-color:#f5f5f5;border-color:#0003}.nginx-filter-checkbox{background-color:#fff;border-color:#00000026;color:#213547}.nginx-filter-checkbox:hover{background-color:#f5f5f5;border-color:#0003}.nginx-error{background-color:#ef44440d;color:#b91c1c}.nginx-error-retry{background-color:#ef44441a;color:#b91c1c}.nginx-success{background-color:#22c55e0d;color:#16a34a}.nginx-domain{color:#213547}.nginx-hash{color:#0006}.nginx-node{color:#000000b3}.nginx-node-ip{color:#0006}.nginx-status-active{color:#16a34a}.nginx-status-inactive{color:#6b7280}.nginx-reload-success{background-color:#22c55e1a;color:#16a34a}.nginx-reload-failed{background-color:#ef44441a;color:#dc2626}.nginx-date{color:#0009}.nginx-date-unknown,.nginx-action-btn{color:#0006}.nginx-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.nginx-action-btn-reload:hover:not(:disabled){background-color:#646cff1a;color:#5b63e7}.nginx-action-btn-activate{color:#16a34a}.nginx-action-btn-activate:hover:not(:disabled){background-color:#22c55e1a;color:#15803d}.nginx-action-btn-regenerate{color:#d97706}.nginx-action-btn-regenerate:hover:not(:disabled){background-color:#fbbf241a;color:#b45309}.nginx-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.nginx-confirm-dialog{background-color:#fff;border-color:#0000001a}.nginx-confirm-title{color:#213547}.nginx-confirm-message{color:#0009}.nginx-confirm-message strong{color:#213547}.nginx-modal-description{color:#0009}.nginx-modal-label{color:#213547}.nginx-modal-select{background-color:#fff;border-color:#0003;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.nginx-modal-select:hover{border-color:#0000004d}.nginx-modal-hint{color:#00000080}.nginx-modal-hint-warning{color:#d97706}.nginx-config-info{background-color:#00000005}.nginx-config-info-label{color:#00000073}.nginx-config-info-value{color:#213547}.nginx-config-error-section{background-color:#ef44440d}.nginx-config-error-title{color:#dc2626}.nginx-config-error-text{color:#b91c1c}.nginx-reload-time{color:#0009}.nginx-active-badge-yes{background-color:#22c55e1a;color:#16a34a}.nginx-active-badge-no{background-color:#6b72801a;color:#6b7280}.nginx-status-success{color:#16a34a}.nginx-status-failed{color:#dc2626}.nginx-status-unknown{color:#0006}.nginx-loading{color:#00000080}.nginx-spinner{border-color:#0000001a;border-top-color:#646cff}.nginx-view-empty{color:#00000080}.nginx-view-meta{background-color:#00000005;border-color:#0000001a}.nginx-meta-label{color:#00000080}.nginx-meta-value{color:#213547}.nginx-meta-ip{color:#00000080}.nginx-view-error{background-color:#ef44440d;color:#b91c1c}.nginx-view-error strong{color:#dc2626}.nginx-reload-result-success{background-color:#22c55e0d}.nginx-reload-result-failed{background-color:#ef44440d}.nginx-reload-result-success .nginx-reload-result-status{color:#16a34a}.nginx-reload-result-failed .nginx-reload-result-status{color:#dc2626}.nginx-reload-result-message{color:#0009}}.tasks-page{padding:0}.tasks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.tasks-header-left{display:flex;align-items:baseline;gap:.75rem}.tasks-title{font-size:1.75rem;font-weight:600;margin:0}.tasks-count{font-size:.875rem;color:#ffffff80}.tasks-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.tasks-filter-select{padding:.5rem 2rem .5rem .75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.875rem;color:#ffffffde;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23999' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .375rem center;background-repeat:no-repeat;background-size:1.25rem}.tasks-filter-select:hover{background-color:#ffffff14;border-color:#fff3}.tasks-filter-select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff26}.tasks-clear-filters{padding:.5rem .75rem;background-color:transparent;border:none;font-size:.8125rem;color:#646cff;cursor:pointer;transition:color .15s ease}.tasks-clear-filters:hover{color:#7a82ff;text-decoration:underline}.tasks-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.tasks-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.tasks-type-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap}.tasks-type-certificate_renewal{background-color:#3b82f626;color:#60a5fa}.tasks-type-certificate_sync{background-color:#a855f726;color:#c084fc}.tasks-type-nginx_reload{background-color:#22c55e26;color:#4ade80}.tasks-type-domain_setup{background-color:#fbbf2426;color:#fbbf24}.tasks-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.tasks-status-dot{width:.5rem;height:.5rem;border-radius:50%}.tasks-status-pending .tasks-status-dot{background-color:#f59e0b;animation:tasks-pulse 2s infinite}.tasks-status-pending{color:#fbbf24}.tasks-status-running .tasks-status-dot{background-color:#3b82f6;animation:tasks-pulse 1s infinite}.tasks-status-running{color:#60a5fa}.tasks-status-completed .tasks-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.tasks-status-completed{color:#4ade80}.tasks-status-failed .tasks-status-dot{background-color:#ef4444}.tasks-status-failed{color:#f87171}.tasks-status-cancelled .tasks-status-dot{background-color:#6b7280}.tasks-status-cancelled{color:#9ca3af}.tasks-status-partially_completed .tasks-status-dot{background-color:#f59e0b}.tasks-status-partially_completed{color:#fbbf24}@keyframes tasks-pulse{0%,to{opacity:1}50%{opacity:.5}}.tasks-progress{display:flex;flex-direction:column;gap:.25rem}.tasks-progress-bar-container{width:100px;height:6px;background-color:#ffffff1a;border-radius:3px;overflow:hidden}.tasks-progress-bar{height:100%;border-radius:3px;transition:width .3s ease}.tasks-progress-bar-ok{background-color:#22c55e}.tasks-progress-bar-partial{background:linear-gradient(90deg,#22c55e,#f59e0b)}.tasks-progress-bar-fail{background-color:#ef4444}.tasks-progress-text{font-size:.75rem;color:#ffffff80}.tasks-description{font-size:.8125rem;color:#ffffffb3;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-date{font-size:.8125rem;color:#ffffff80}.tasks-actions{display:flex;justify-content:flex-end;gap:.375rem}.tasks-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.tasks-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.tasks-action-btn:disabled{opacity:.4;cursor:not-allowed}.tasks-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.tasks-action-btn-retry{color:#fbbf24}.tasks-action-btn-retry:hover:not(:disabled){background-color:#fbbf2426;color:#fcd34d}.tasks-detail-section{margin-bottom:1.25rem}.tasks-detail-section:last-child{margin-bottom:0}.tasks-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.tasks-detail-item{display:flex;flex-direction:column;gap:.125rem}.tasks-detail-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff6}.tasks-detail-value{font-size:.875rem;color:#ffffffde}.tasks-detail-error{padding:.5rem .75rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;font-size:.8125rem;color:#fca5a5;word-break:break-word}.tasks-subtask-title{font-size:.875rem;font-weight:600;margin:0 0 .75rem;color:#ffffffde}.tasks-subtask-list{display:flex;flex-direction:column;gap:.5rem;max-height:350px;overflow-y:auto}.tasks-subtask-item{display:flex;align-items:flex-start;gap:.75rem;padding:.625rem .75rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.tasks-subtask-icon{flex-shrink:0;margin-top:.125rem;width:1rem;height:1rem}.tasks-subtask-icon-pending{color:#fbbf24}.tasks-subtask-icon-running{color:#60a5fa}.tasks-subtask-icon-completed{color:#4ade80}.tasks-subtask-icon-failed{color:#f87171}.tasks-subtask-icon-skipped{color:#6b7280}.tasks-subtask-content{flex:1;min-width:0}.tasks-subtask-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tasks-subtask-type{font-size:.8125rem;font-weight:500;color:#ffffffde}.tasks-subtask-status-badge{font-size:.6875rem;font-weight:500;padding:.0625rem .375rem;border-radius:3px;text-transform:uppercase}.tasks-subtask-status-pending{background-color:#fbbf2426;color:#fbbf24}.tasks-subtask-status-running{background-color:#3b82f626;color:#60a5fa}.tasks-subtask-status-completed{background-color:#22c55e26;color:#4ade80}.tasks-subtask-status-failed{background-color:#ef444426;color:#f87171}.tasks-subtask-status-skipped{background-color:#6b728026;color:#9ca3af}.tasks-subtask-desc{font-size:.75rem;color:#ffffff80;margin-top:.125rem}.tasks-subtask-error{font-size:.75rem;color:#fca5a5;margin-top:.25rem;word-break:break-word}.tasks-subtask-meta{font-size:.6875rem;color:#ffffff59;margin-top:.25rem}@media(prefers-color-scheme:light){.tasks-count{color:#00000080}.tasks-filter-select{background-color:#fff;border-color:#00000026;color:#213547;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.tasks-filter-select:hover{background-color:#f5f5f5;border-color:#0003}.tasks-error{background-color:#ef44440d;color:#b91c1c}.tasks-description{color:#0009}.tasks-date,.tasks-progress-text{color:#00000080}.tasks-progress-bar-container{background-color:#00000014}.tasks-action-btn{color:#0006}.tasks-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.tasks-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.tasks-action-btn-retry{color:#d97706}.tasks-action-btn-retry:hover:not(:disabled){background-color:#fbbf241a;color:#b45309}.tasks-detail-label{color:#00000073}.tasks-detail-value{color:#213547}.tasks-detail-error{background-color:#ef44440d;border-color:#ef444426;color:#b91c1c}.tasks-subtask-title{color:#213547}.tasks-subtask-item{background-color:#00000005;border-color:#00000014}.tasks-subtask-type{color:#213547}.tasks-subtask-desc{color:#00000080}.tasks-subtask-error{color:#b91c1c}.tasks-subtask-meta{color:#00000059}.tasks-type-certificate_renewal{background-color:#3b82f61a;color:#2563eb}.tasks-type-certificate_sync{background-color:#a855f71a;color:#7c3aed}.tasks-type-nginx_reload{background-color:#22c55e1a;color:#16a34a}.tasks-type-domain_setup{background-color:#fbbf241a;color:#d97706}.tasks-status-pending{color:#d97706}.tasks-status-running{color:#2563eb}.tasks-status-completed{color:#16a34a}.tasks-status-failed{color:#dc2626}.tasks-status-cancelled{color:#6b7280}.tasks-status-partially_completed{color:#d97706}}@media(max-width:768px){.tasks-header{flex-direction:column;align-items:flex-start}.tasks-filters{flex-direction:column;align-items:stretch}.tasks-filter-select{width:100%}.tasks-detail-grid{grid-template-columns:1fr}}.user-modal-form{display:flex;flex-direction:column;gap:1.25rem}.user-modal-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#fca5a5;font-size:.875rem}.user-modal-field{display:flex;flex-direction:column;gap:.5rem}.user-modal-label{font-size:.875rem;font-weight:500;color:#ffffffde}.user-modal-required{color:#ef4444;margin-left:.25rem}.user-modal-error-text{font-size:.75rem;color:#fca5a5}.user-modal-role-options{display:flex;flex-direction:column;gap:.75rem}.user-modal-radio{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .15s ease}.user-modal-radio:hover{background-color:#ffffff0d;border-color:#ffffff26}.user-modal-radio:has(input:checked){background-color:#646cff1a;border-color:#646cff4d}.user-modal-radio input[type=radio]{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem;accent-color:#646cff}.user-modal-radio-label{display:flex;flex-direction:column;gap:.125rem;font-size:.9375rem}.user-modal-radio-label strong{color:#fffffff2}.user-modal-radio-description{font-size:.8125rem;color:#ffffff80}.user-modal-toggle{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .15s ease}.user-modal-toggle:hover{background-color:#ffffff0d;border-color:#ffffff26}.user-modal-toggle input[type=checkbox]{width:2.5rem;height:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#ffffff1a;border-radius:999px;position:relative;cursor:pointer;transition:background-color .2s}.user-modal-toggle input[type=checkbox]:before{content:"";position:absolute;top:.125rem;left:.125rem;width:1rem;height:1rem;background-color:#ffffff80;border-radius:50%;transition:all .2s}.user-modal-toggle input[type=checkbox]:checked{background-color:#22c55e}.user-modal-toggle input[type=checkbox]:checked:before{left:calc(100% - 1.125rem);background-color:#fff}.user-modal-toggle-label{font-size:.9375rem;font-weight:500;color:#ffffffde}@media(prefers-color-scheme:light){.user-modal-error{background-color:#ef44440d;color:#b91c1c}.user-modal-label{color:#213547}.user-modal-error-text{color:#dc2626}.user-modal-radio{background-color:#00000005;border-color:#0000001a}.user-modal-radio:hover{background-color:#0000000a;border-color:#00000026}.user-modal-radio:has(input:checked){background-color:#646cff14;border-color:#646cff40}.user-modal-radio-label strong{color:#213547}.user-modal-radio-description{color:#00000080}.user-modal-toggle{background-color:#00000005;border-color:#0000001a}.user-modal-toggle:hover{background-color:#0000000a;border-color:#00000026}.user-modal-toggle input[type=checkbox]{background-color:#00000026}.user-modal-toggle input[type=checkbox]:before{background-color:#0006}.user-modal-toggle-label{color:#213547}}.users-page{padding:0}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.users-header-left{display:flex;align-items:baseline;gap:.75rem}.users-title{font-size:1.75rem;font-weight:600;margin:0}.users-count{font-size:.875rem;color:#ffffff80}.users-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.users-error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:#ef4444;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.users-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:.75rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:4px;color:#fca5a5;cursor:pointer;transition:background-color .2s}.users-error-retry:hover{background-color:#ef44444d}.users-email-cell{display:flex;flex-direction:column;gap:.125rem}.users-email{font-weight:500;color:#fffffff2}.users-id{font-size:.75rem;color:#fff6;font-family:SF Mono,Monaco,Consolas,monospace}.users-role{display:inline-block;padding:.25rem .625rem;font-size:.75rem;font-weight:500;text-transform:capitalize;border-radius:999px}.users-role-admin{background-color:#ef444426;color:#fca5a5}.users-role-operator{background-color:#646cff26;color:#a5b4fc}.users-role-readonly{background-color:#ffffff14;color:#ffffffb3}.users-status{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.users-status-dot{width:.5rem;height:.5rem;border-radius:50%}.status-active .users-status-dot{background-color:#22c55e;box-shadow:0 0 6px #22c55e80}.status-active{color:#4ade80}.status-inactive .users-status-dot{background-color:#6b7280}.status-inactive{color:#9ca3af}.users-date{font-size:.8125rem;color:#fff9}.users-actions{display:flex;justify-content:flex-end;gap:.375rem}.users-action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background-color:transparent;border:1px solid transparent;border-radius:6px;color:#ffffff80;cursor:pointer;transition:all .15s ease}.users-action-btn:hover:not(:disabled){background-color:#ffffff1a;color:#ffffffe6}.users-action-btn:focus-visible{outline:2px solid #646cff;outline-offset:2px}.users-action-btn:disabled{opacity:.4;cursor:not-allowed}.users-action-btn-danger:hover:not(:disabled){background-color:#ef444426;color:#f87171}.users-current-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;margin-left:.5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:#646cff26;border-radius:999px;color:#a5b4fc}.users-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.users-confirm-dialog{width:100%;max-width:400px;padding:1.5rem;background-color:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.users-confirm-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#fffffff2}.users-confirm-message{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.5;color:#ffffffb3}.users-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.users-header{flex-direction:column;align-items:flex-start}.users-email-cell{max-width:180px}.users-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-color-scheme:light){.users-count{color:#00000080}.users-error{background-color:#ef44440d;color:#b91c1c}.users-error-retry{background-color:#ef44441a;color:#b91c1c}.users-email{color:#213547}.users-id{color:#0006}.users-role-admin{background-color:#ef44441a;color:#dc2626}.users-role-operator{background-color:#646cff1a;color:#5a5fd3}.users-role-readonly{background-color:#0000000d;color:#000000b3}.status-active{color:#16a34a}.status-inactive{color:#6b7280}.users-date{color:#00000080}.users-action-btn{color:#0006}.users-action-btn:hover:not(:disabled){background-color:#0000000d;color:#000c}.users-action-btn-danger:hover:not(:disabled){background-color:#ef44441a;color:#dc2626}.users-current-badge{background-color:#646cff1a;color:#5a5fd3}.users-confirm-dialog{background-color:#fff;border-color:#0000001a;box-shadow:0 25px 50px -12px #00000040}.users-confirm-title{color:#213547}.users-confirm-message{color:#0009}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#0f0f0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html,body{min-width:320px;min-height:100vh;height:100%}#root{width:100%;min-height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:2rem;line-height:1.2;margin-bottom:.5rem}h2{font-size:1.5rem;line-height:1.3;margin-bottom:.5rem}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;color:inherit;cursor:pointer;transition:border-color .25s,background-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:2px solid #646cff;outline-offset:2px}button:disabled{opacity:.6;cursor:not-allowed}.page{padding:0}.page h1{font-size:2rem;margin-bottom:1rem}.page-hint{color:#ffffff80;font-size:.875rem;margin-top:1rem;font-style:italic}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#0f0f0f;padding:2rem}.login-container{width:100%;max-width:400px;text-align:center}.login-container h1{font-size:2.5rem;margin-bottom:.25rem}.login-subtitle{color:#fff9;margin-bottom:2rem}.login-placeholder{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:2rem;margin-top:1rem}.login-placeholder p{margin-bottom:.5rem}.login-placeholder p:last-child{margin-bottom:0}.login-hint{color:#ffffff80;font-size:.875rem}.not-found{text-align:center;padding:4rem 2rem}.not-found h1{font-size:6rem;line-height:1;color:#fff3;margin-bottom:0}.not-found h2{margin-bottom:1rem}.back-link{display:inline-block;margin-top:1.5rem;padding:.75rem 1.5rem;background-color:#646cff;color:#fff;border-radius:6px;text-decoration:none;font-weight:500;transition:background-color .2s}.back-link:hover{background-color:#535bf2;color:#fff}.app{text-align:center}.app-header{margin-bottom:2rem}.app-main{padding:2rem}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#f5f5f5}button{background-color:#fff;border-color:#ddd}button:hover{border-color:#646cff}.login-page{background-color:#f5f5f5}.login-placeholder{background-color:#0000000d;border-color:#0000001a}.login-hint,.page-hint{color:#00000080}.not-found h1{color:#0000001a}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-center{text-align:center}.text-muted{color:#ffffff80}@media(prefers-color-scheme:light){.text-muted{color:#00000080}}
