:root{--sky-050: #f6fbff;--sky-100: #ebf6ff;--sky-200: #d8ebff;--sky-300: #bddcff;--sky-500: #5fa9ff;--sky-700: #1f5ea8;--ink-900: #13233b;--ink-700: #315276;--ink-500: #5e7a98;--line: rgba(40, 93, 158, .12);--line-strong: rgba(40, 93, 158, .2);--surface: rgba(255, 255, 255, .8);--surface-strong: rgba(255, 255, 255, .94);--shadow: 0 28px 64px rgba(47, 96, 164, .16);--radius-xl: 28px;--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px;font-family:Aptos,Segoe UI Variable Text,Trebuchet MS,sans-serif;color:var(--ink-900);background:radial-gradient(circle at top left,rgba(134,193,255,.55),transparent 30%),radial-gradient(circle at top right,rgba(222,243,255,.9),transparent 34%),linear-gradient(180deg,#fff,#f4f9ff 52%,#edf5ff)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{color:var(--ink-900)}button,textarea,input,select{font:inherit}a{color:inherit;text-decoration:none}.shell{max-width:1360px;margin:0 auto;padding:32px 20px 48px;display:flex;flex-direction:column;gap:22px}.hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.95fr);gap:20px;align-items:stretch}.hero-copy,.hero-aside{position:relative}.hero-copy{overflow:hidden;padding:34px;border-radius:var(--radius-xl);background:linear-gradient(145deg,#fffffff2,#e8f4ffd9),linear-gradient(125deg,rgba(142,204,255,.15),transparent 55%);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-copy:after{content:"";position:absolute;inset:16px;border-radius:calc(var(--radius-xl) - 10px);border:1px solid rgba(111,173,241,.2);pointer-events:none}.hero-copy h1{margin:10px 0 12px;max-width:12ch;font-family:Aptos Display,Segoe UI Variable Display,Bahnschrift,sans-serif;font-size:clamp(2.6rem,6vw,4.6rem);line-height:.96;letter-spacing:-.05em}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:#5fa9ff1f;color:var(--sky-700);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.lead{max-width:62ch;margin:0;color:var(--ink-700);font-size:1.02rem;line-height:1.65}.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:12px}.button-row.compact{gap:10px}.hero-actions{margin-top:26px}.hero-aside{display:grid;gap:16px}.glass-card,.notice{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.glass-card{padding:22px;border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--surface-strong),var(--surface));border:1px solid var(--line);box-shadow:var(--shadow)}.status-card strong,.metric-stack strong{display:block;margin-top:10px;font-family:Aptos Display,Segoe UI Variable Display,Bahnschrift,sans-serif;font-size:1.4rem;letter-spacing:-.03em}.status-card p,.metric-stack .metric-label{margin:8px 0 0;color:var(--ink-700)}.metric-stack{display:grid;grid-template-columns:1fr 1fr;gap:12px}.metric-stack>div{padding:16px;border-radius:var(--radius-md);background:#f2f9ffb8;border:1px solid rgba(95,169,255,.12)}.select-wrap{display:block;margin-top:10px}.notice{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-md);border:1px solid var(--line-strong);background:#ffffffd6}.notice.info{border-color:#4d99e83d}.notice.success{border-color:#2ea27542}.notice.error{border-color:#d0494938}.notice p{margin:0;color:var(--ink-700)}.notice-pill,.muted-pill,.tier-chip,.severity-chip,.restore-status,.threat-chip{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.notice-pill,.muted-pill{background:#558cca1a;color:var(--sky-700)}.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.panel{display:flex;flex-direction:column;gap:18px;min-height:100%}.threat-panel,.module-panel{grid-column:span 6}.automod-panel,.restore-panel,.incident-panel{grid-column:span 12}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.panel-head h2,.empty-state h2{margin:8px 0 0;font-family:Aptos Display,Segoe UI Variable Display,Bahnschrift,sans-serif;font-size:1.5rem;letter-spacing:-.03em}.card-label,.metric-label,.stat-grid span,.subtle-copy strong,.input-stack span,.restore-card dt{color:var(--ink-500);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.threat-chip.baseline{background:#489a711f;color:#1f7a50}.threat-chip.elevated{background:#edad2f1f;color:#a16613}.threat-chip.critical{background:#d65c5c24;color:#a33333}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-grid article,.restore-card,.module-row,.incident-row,.empty-state{border-radius:var(--radius-md);border:1px solid rgba(80,144,216,.12);background:#f7fbffe6}.stat-grid article{padding:14px 16px}.stat-grid strong{display:block;margin-top:10px;font-size:1rem;letter-spacing:-.02em}.subtle-copy p,.module-row p,.restore-card p,.incident-summary,.empty-state p{margin:8px 0 0;color:var(--ink-700);line-height:1.55}.input-stack{display:grid;gap:8px}textarea{min-height:110px;resize:vertical;padding:14px 16px;border-radius:var(--radius-md);border:1px solid rgba(80,144,216,.16);background:#fffffff5;color:var(--ink-900);outline:none;transition:border-color .16s ease,box-shadow .16s ease}textarea:focus{border-color:#1f5ea861;box-shadow:0 0 0 4px #5fa9ff29}input,select{min-height:44px;padding:0 14px;border-radius:var(--radius-md);border:1px solid rgba(80,144,216,.16);background:#fffffff5;color:var(--ink-900);outline:none;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus{border-color:#1f5ea861;box-shadow:0 0 0 4px #5fa9ff29}select{width:100%}.button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(69,127,194,.18);background:#ffffffeb;color:var(--ink-900);font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px #5fa9ff2e}.button:disabled{opacity:.55;cursor:progress}.button.primary{background:linear-gradient(180deg,#7cc2ff,#5fa9ff);color:#fff}.button.secondary,.button.active{background:linear-gradient(180deg,#f2f9ff,#dbeeff);color:var(--sky-700)}.button.ghost{background:#ffffffbf;color:var(--ink-700)}.module-list,.restore-list,.incident-list,.automod-rule-grid{display:grid;gap:12px}.module-row,.restore-card,.incident-row,.empty-state,.automod-rule-card,.live-rule-summary{padding:16px}.module-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.module-title-line,.incident-topline,.restore-card header{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tier-chip.free{background:#5fa9ff1f;color:var(--sky-700)}.tier-chip.premium{background:#a879ff1f;color:#7449b8}.restore-card dl{margin:14px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.restore-card dd{margin:6px 0 0;color:var(--ink-900);font-weight:600}.restore-status.pending_approval{background:#edad2f1f;color:#a16613}.restore-status.approved{background:#5fa9ff1f;color:var(--sky-700)}.restore-status.restored{background:#489a711f;color:#1f7a50}.incident-row{position:relative;overflow:hidden}.incident-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#5fa9ff38}.incident-row.low:before{background:#5fa9ff47}.incident-row.medium:before{background:#edad2f66}.incident-row.high:before{background:#ff7f506b}.incident-row.critical:before{background:#d65c5c7a}.incident-topline time{margin-left:auto;color:var(--ink-500);font-size:.9rem}.severity-chip.low{background:#5fa9ff1f;color:var(--sky-700)}.severity-chip.medium{background:#edad2f1f;color:#a16613}.severity-chip.high{background:#ff7f501f;color:#b15a25}.severity-chip.critical{background:#d65c5c24;color:#a33333}.detail-list{margin:12px 0 0;padding-left:18px;color:var(--ink-700);display:grid;gap:6px}.panel-footer{display:flex;justify-content:flex-end}.signed-out,.card-wide{display:contents}.automod-summary-grid{margin-top:-2px}.preset-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}.segmented-control{display:flex;flex-wrap:wrap;gap:10px}.input-inline{display:grid;gap:8px;min-width:180px}.automod-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.automod-rule-card{display:grid;gap:14px;border-radius:var(--radius-md);border:1px solid rgba(80,144,216,.12);background:#f7fbffe6}.automod-rule-card p code,.subtle-copy code{padding:2px 6px;border-radius:999px;background:#5fa9ff1f;color:var(--sky-700)}.live-rule-summary{display:grid;gap:6px}.live-rule-summary p{margin:0;color:var(--ink-700);line-height:1.5}.chip-group-stack{display:grid;gap:8px}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{appearance:none;border:1px solid rgba(69,127,194,.18);background:#ffffffe0;color:var(--ink-700);border-radius:999px;padding:8px 12px;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.chip:hover{transform:translateY(-1px);box-shadow:0 8px 18px #5fa9ff29}.chip.selected{background:linear-gradient(180deg,#eef7ff,#d9ebff);color:var(--sky-700);border-color:#457fc247}.chip.empty{cursor:default;color:var(--ink-500)}.empty-state{display:grid;gap:12px}.empty-state.compact{min-height:160px;place-content:center}@media (max-width: 1120px){.hero{grid-template-columns:1fr}.threat-panel,.module-panel,.automod-panel,.restore-panel,.incident-panel{grid-column:span 12}.automod-rule-grid{grid-template-columns:1fr}}@media (max-width: 720px){.shell{padding:20px 14px 34px}.hero-copy,.glass-card{padding:18px}.metric-stack,.stat-grid,.restore-card dl,.module-row{grid-template-columns:1fr}.incident-topline time{margin-left:0}}.rule-panel{grid-column:span 12}.rule-list{display:grid;gap:14px;margin-top:16px}.rule-card{display:grid;gap:10px;padding:14px 16px;border-radius:12px;border:1px solid rgba(120,140,200,.18);background:#0f131c8c}.rule-card.disabled{opacity:.65}.rule-card.editing{border-color:#78c8ff73;box-shadow:0 0 0 2px #78c8ff2e}.rule-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.rule-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;color:#aab2c4;font-size:12px}.rule-badge{padding:2px 8px;border-radius:999px;font-weight:600;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.rule-badge.on{background:#50c87833;color:#b5f0c5;border:1px solid rgba(80,200,120,.4)}.rule-badge.off{background:#7882a033;color:#aab2c4;border:1px solid rgba(120,130,160,.4)}.rule-condition{margin:0;padding:10px 12px;background:#0000004d;border-radius:8px;font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:12.5px;white-space:pre-wrap;overflow-x:auto}.rule-action-summary{display:grid;gap:4px;padding:8px 12px;border-left:2px solid rgba(120,200,255,.4);background:#78c8ff0d;border-radius:0 6px 6px 0}.rule-action-summary p{margin:0}.rule-detail-list{margin:4px 0 0;padding-left:18px;color:#aab2c4;font-size:13px}.rule-editor{margin:16px 0;padding:18px;border-radius:12px;border:1px solid rgba(120,200,255,.3);background:#78c8ff0a;display:grid;gap:14px}.rule-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rule-field{display:grid;gap:6px;font-size:13px}.rule-field-wide{grid-column:span 2}.rule-field input[type=text],.rule-field input[type=number],.rule-field select,.rule-field textarea{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid rgba(120,140,200,.25);background:#0f131c99;color:#e7ebf2}.rule-field textarea{font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:12.5px;resize:vertical}.rule-field-catalog{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 14px;font-size:12px}.rule-field-catalog li{display:grid;grid-template-columns:auto 1fr;gap:6px;align-items:baseline}.rule-field-catalog code{background:#00000040;padding:1px 6px;border-radius:4px}.rule-field-type{color:#6b7388;font-style:italic}.rule-field-note{grid-column:1 / -1;color:#aab2c4;font-size:11px}.rule-parse-status{font-size:12px;padding:6px 10px;border-radius:6px;border:1px solid transparent}.rule-parse-status.status-idle{background:#7882a01a;color:#aab2c4;border-color:#7882a040}.rule-parse-status.status-checking{background:#78c8ff1a;color:#b5dcff;border-color:#78c8ff66}.rule-parse-status.status-valid{background:#50c8781f;color:#b5f0c5;border-color:#50c87866}.rule-parse-status.status-invalid{background:#dc5a5a1f;color:#ffc8c8;border-color:#dc5a5a66}.button.compact{padding:4px 10px;font-size:12px}.button.danger{background:#dc5a5a2e;border-color:#dc5a5a73;color:#ffc8c8}.button.danger:hover:not(:disabled){background:#dc5a5a4d}@media (max-width: 1120px){.rule-panel{grid-column:span 12}.rule-form{grid-template-columns:1fr}.rule-field-wide{grid-column:span 1}}
