:root,[data-theme=dark]{--brand-navy:#1e3a5f;--brand-teal:#3fa89d;--brand-teal-text:#5eead4;--action:#60a5fa;--bg-primary:#0f1521;--bg-secondary:#1a2235;--bg-card:#1e2a3a;--accent:#3b82f6;--accent-hover:#2563eb;--accent-pressed:#1d4ed8;--accent-text:#60a5fa;--accent-text-purple:#c084fc;--accent-text-green:#22c55e;--bg-section-base:var(--bg-primary);--bg-section-band-soft:var(--bg-secondary);--bg-section-band:var(--bg-secondary);--bg-cta-accent:#172554;--text-on-cta:#fff;--text-on-cta-muted:#cbd5e1;--danger:#ef4444;--warning:#f97316;--medium:#eab308;--safe:#22c55e;--status-alert:#ef4444;--status-caution-bg:#422006;--status-alert-bg:#450a0a;--text-primary:#e2e8f0;--text-secondary:#b8c5d6;--border:#2a3a52;--border-strong:#94a3b8;--shadow:#0006;--grid-line:#3b82f608;--logo-shield:#cbd5e1;--logo-house:#5eead4;--font-body:"DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}[data-theme=light]{--brand-navy:#1e3a5f;--brand-teal:#3fa89d;--brand-teal-text:#0f766e;--action:#1d4ed8;--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-card:#fff;--accent:#3b82f6;--accent-hover:#2563eb;--accent-pressed:#1d4ed8;--accent-text:#1d4ed8;--accent-text-purple:#7e22ce;--accent-text-green:#15803d;--bg-section-base:#fff;--bg-section-band-soft:#f8fafc;--bg-section-band:#f1f5f9;--bg-cta-accent:#1d4ed8;--text-on-cta:#fff;--text-on-cta-muted:#dbeafe;--danger:#ef4444;--warning:#f97316;--medium:#b45309;--safe:#16a34a;--status-alert:#b91c1c;--status-caution-bg:#fef3c7;--status-alert-bg:#fee2e2;--text-primary:#0f172a;--text-secondary:#475569;--border:#e2e8f0;--border-strong:#334155;--shadow:#00000014;--grid-line:#3b82f60f;--logo-shield:#1e3a5f;--logo-house:#3fa89d}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100%;overflow-x:hidden}body{background-color:var(--bg-primary);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:32px 32px;min-height:100vh;font-size:16px;line-height:1.6}.public-site{font-size:17px}button,a[href][role=button],[role=button],input[type=checkbox],input[type=radio]{min-width:44px;min-height:44px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.btn-primary:focus-visible,button[style*="3b82f6"]:focus-visible{outline-color:#fff}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.page-fade{animation:.3s fadeIn}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.btn{cursor:pointer;font-family:var(--font-body);white-space:nowrap;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,opacity .15s,transform .1s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.98)}.btn-primary{background:var(--brand-navy);color:#fff}.btn-primary:not(:disabled):hover{background:#142a45}[data-theme=dark] .btn-primary{background:var(--accent-hover)}[data-theme=dark] .btn-primary:not(:disabled):hover{background:var(--accent-pressed)}.btn-danger{color:var(--status-alert);border:1px solid var(--status-alert);background:0 0}.btn-danger:not(:disabled):hover,[data-theme=dark] .btn-danger:not(:disabled):hover{background:var(--status-alert-bg)}.fs-destructive-btn:disabled{color:#94a3b8!important;cursor:not-allowed!important;opacity:1!important;background:#e2e8f0!important}[data-theme=dark] .fs-destructive-btn:disabled{color:#64748b!important;background:#334155!important}.btn-ghost{border:1px solid var(--border-strong);color:var(--text-primary);background:0 0}.btn-ghost:not(:disabled):hover{background:var(--bg-secondary)}.fs-plan-action-btn{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-width:140px;max-width:160px;height:40px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.fs-plan-action-btn--primary{background:var(--accent-hover);color:#fff;border:1px solid var(--accent-hover)}.fs-plan-action-btn--primary:hover{background:var(--accent-pressed);border-color:var(--accent-pressed)}.fs-plan-action-btn--secondary{color:var(--text-primary);border:1px solid var(--border-strong);background:0 0}.fs-plan-action-btn--secondary:hover{border-color:var(--accent);color:var(--accent-text);background:#3b82f614}.btn-on-accent{color:var(--bg-cta-accent);background:#fff}.btn-on-accent:not(:disabled):hover{background:#eff6ff}.btn-on-accent:focus-visible{outline-color:#fff}.input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);width:100%;font-family:var(--font-body);border-radius:8px;min-height:44px;padding:12px 14px;font-size:16px;transition:border-color .15s}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--text-secondary)}.input option{background:var(--bg-secondary)}.card{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 0 0 1px var(--border), 0 4px 24px var(--shadow);border-radius:12px;padding:24px}.mono{font-family:var(--font-mono)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}.pulse-dot{animation:1.8s ease-in-out infinite pulse-dot}@keyframes risk-pulse{0%,to{box-shadow:0 0 #ef444473}50%{box-shadow:0 0 0 6px #ef444400}}.risk-badge-critical{animation:1.6s ease-in-out infinite risk-pulse}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:90%;max-width:640px;max-height:80vh;padding:32px;overflow-y:auto}.app-layout{background:var(--bg-primary);isolation:isolate;background-image:none;min-height:100vh;display:flex;position:relative}.main-content{flex-direction:column;flex:1;min-width:0;min-height:100vh;margin-left:220px;display:flex}.page-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:32px;overflow-y:auto}.font-data,.font-data::placeholder{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}button[role=switch]{min-width:0;min-height:0}.app-layout thead th,.admin-shell thead th{text-transform:none;letter-spacing:0;color:var(--text-secondary);font-size:13px;font-weight:600}.app-layout .label,.admin-shell .label,.auth-card .label{text-transform:none;letter-spacing:0;color:var(--text-secondary);font-size:13px;font-weight:500}.auth-card input[type=checkbox]{min-width:0;min-height:0}.auth-card .btn-primary:disabled,.app-layout .btn-primary:disabled{color:#94a3b8;opacity:1;cursor:not-allowed;background:#e2e8f0;border-color:#0000}[data-theme=dark] .auth-card .btn-primary:disabled,[data-theme=dark] .app-layout .btn-primary:disabled{color:#64748b;background:#334155}.auth-card button:not(.btn-primary):not(.btn-danger):not(.btn-ghost):disabled{cursor:not-allowed;opacity:1}.app-layout tbody tr.table-static,.app-layout tbody tr.table-static:hover{cursor:default;background:0 0}.app-drawer-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:199;background:#0000008c;animation:.2s fadeIn;position:fixed;inset:0}@media (max-width:1023px){.main-content{margin-left:0}.page-content{padding:18px}}@media (min-width:1024px){.app-drawer-overlay{display:none!important}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.text-secondary{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-safe{color:var(--safe)}.text-accent{color:var(--accent)}.section-title{color:var(--text-primary);margin-bottom:16px;font-size:18px;font-weight:600}.settings-page .section-title{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:12px}.settings-page .sub-section-title{color:var(--text-primary);align-items:center;gap:8px;margin:4px 0;font-size:16px;font-weight:600;display:inline-flex}.label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:13px;font-weight:500;display:block}table{border-collapse:collapse;width:100%}thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:10px 12px;font-size:12px;font-weight:600}tbody tr{border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:#3b82f60d}tbody td{color:var(--text-primary);padding:12px;font-size:14px}
