:root{--bg-dark: #07090e;--card-bg: #0d111a;--card-border: rgba(255, 255, 255, .08);--text-main: #f3f4f6;--text-muted: #9ca3af;--emerald: #10b981;--emerald-glow: rgba(16, 185, 129, .2);--amber: #f59e0b;--red: #ef4444;--cyan: #06b6d4;--purple: #8b5cf6}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}header{background:#0d111ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--card-border);position:sticky;top:0;z-index:50;padding:.85rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo-container{display:flex;align-items:center;gap:.75rem}.logo-badge{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#10b981,#06b6d4);display:flex;align-items:center;justify-content:center;box-shadow:0 0 15px var(--emerald-glow);font-weight:900;color:#000;font-size:1.15rem}.logo-title{font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.logo-title span{color:var(--emerald)}.tagline{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace}.header-actions{display:flex;align-items:center;gap:.75rem}.tier-badge{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;padding:.35rem .85rem;border-radius:9999px;background:#10b9811f;border:1px solid rgba(16,185,129,.3);color:var(--emerald)}.role-select{background:#ffffff0d;border:1px solid var(--card-border);color:#67e8f9;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;padding:.35rem .75rem;border-radius:8px;outline:none;cursor:pointer}.btn{background:var(--emerald);color:#000;font-weight:700;font-size:.82rem;padding:.45rem 1rem;border-radius:9999px;border:none;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}.btn:hover{background:#34d399;box-shadow:0 0 20px var(--emerald-glow)}.btn-secondary{background:#ffffff0d;color:var(--text-main);border:1px solid var(--card-border)}.btn-secondary:hover{background:#ffffff1a;box-shadow:none}.btn-sm{font-size:.75rem;padding:.3rem .75rem;border-radius:6px}main{max-width:1720px;width:calc(100% - 2.5rem);margin:1.5rem auto 3rem;display:flex;flex-direction:column;gap:1.75rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.metric-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;justify-content:space-between}.metric-title{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-family:JetBrains Mono,monospace;margin-bottom:.5rem}.metric-val{font-size:2rem;font-weight:900;letter-spacing:-.02em}.posture-pill{display:inline-block;padding:.35rem .85rem;border-radius:8px;font-size:.85rem;font-weight:800;font-family:JetBrains Mono,monospace}.posture-compliant{background:#10b98126;border:1px solid rgba(16,185,129,.4);color:var(--emerald)}.posture-warning{background:#f59e0b26;border:1px solid rgba(245,158,11,.4);color:var(--amber)}.posture-critical{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:var(--red)}.modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.module-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s ease}.module-card:hover{border-color:#10b9814d}.module-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.6rem}.module-title{font-size:1rem;font-weight:700}.module-desc{font-size:.78rem;color:var(--text-muted);margin-bottom:.85rem;line-height:1.4}.module-meta{font-family:JetBrains Mono,monospace;font-size:.7rem;color:#6b7280;margin-bottom:1.1rem}.feed-container{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:1.25rem 1.5rem;overflow:hidden}.feed-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--card-border)}.table-wrapper{overflow-x:auto;width:100%;border-radius:12px;scrollbar-width:thin;scrollbar-color:rgba(16,185,129,.4) rgba(0,0,0,.4);-webkit-overflow-scrolling:touch}.table-wrapper::-webkit-scrollbar{height:6px}.table-wrapper::-webkit-scrollbar-track{background:#0006;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:#10b98159;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--emerald)}.drift-table{width:100%;min-width:960px;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:.8rem}.drift-table th{text-align:left;padding:.65rem .5rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.7rem;border-bottom:1px solid var(--card-border);vertical-align:middle;line-height:1.25;background:#0d111af2}.drift-table td{padding:.6rem .5rem;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle;overflow:hidden}.drift-table th.col-severity,.drift-table td.col-severity{width:9.5%}.drift-table th.col-system,.drift-table td.col-system{width:12%}.drift-table th.col-param,.drift-table td.col-param{width:16.5%}.drift-table th.col-exp,.drift-table td.col-exp{width:9%}.drift-table th.col-framework,.drift-table td.col-framework{width:15%}.drift-table th.col-remed,.drift-table td.col-remed{width:21%}.drift-table th.col-action,.drift-table td.col-action{width:17%;text-align:right;padding-right:.75rem}.sev-tag{font-family:JetBrains Mono,monospace;font-size:.65rem;font-weight:700;padding:.18rem .35rem;border-radius:5px;display:inline-block;white-space:nowrap}.sev-critical{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3)}.sev-high{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.sev-medium{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.code-pill{font-family:JetBrains Mono,monospace;font-size:.7rem;background:#0009;padding:.25rem .5rem;border-radius:6px;border:1px solid var(--card-border);color:#67e8f9;display:block;width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;cursor:help}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center}.modal-card{background:#0d111a;border:1px solid var(--card-border);border-radius:20px;width:90%;max-width:920px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px -12px #000c}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--card-border);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:1.15rem;font-weight:800}.modal-body{padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--card-border);display:flex;justify-content:flex-end;gap:.75rem}.toast{position:fixed;bottom:2rem;right:2rem;background:#111827;border:1px solid var(--emerald);color:#fff;padding:.85rem 1.25rem;border-radius:12px;box-shadow:0 10px 25px #00000080;font-size:.85rem;display:flex;align-items:center;gap:.75rem;z-index:200;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
