:root{--bg: #070c14;--surface: #0d1520;--surface-2: #111c2d;--surface-strong: #162035;--text: #e2e8f0;--text-2: #94a3b8;--muted: #64748b;--line: rgba(255,255,255,.07);--primary: #00d4ff;--primary-2: #0099cc;--primary-3: #00aadd;--sidebar: #060b11;--success: #00ff88;--warning: #ffb800;--orange: #ff6b35;--danger: #ff3d5a;--info: #7c8fa6;--shadow: 0 8px 32px rgba(0,0,0,.5);--radius: 12px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;color:var(--text);background:var(--bg)}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--sidebar);color:var(--text);padding:20px 10px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(0,212,255,.08);position:sticky;top:0;height:100vh;overflow-y:auto;flex-shrink:0}.sidebar-top{display:flex;flex-direction:column;gap:16px}.sidebar-brand{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:8px 8px 16px;border-bottom:1px solid rgba(0,212,255,.1)}.sidebar-logo-wrap{width:130px;height:auto;display:flex;align-items:center}.sidebar-logo{width:130px;height:auto;object-fit:contain;display:block}.sidebar-title{margin:0;font-size:1rem;font-weight:800;color:var(--primary)}.sidebar-subtitle{margin:0;color:var(--muted);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.sidebar-subtitle-below{padding-left:2px}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.nav-item{padding:9px 12px;border-radius:8px;font-weight:500;font-size:13px;color:var(--text-2);transition:all .15s ease;display:flex;align-items:center;gap:10px;border-left:2px solid transparent}.nav-item:hover{background:#00d4ff0d;color:var(--text)}.nav-item.active{background:#00d4ff1a;color:var(--primary);border-left:2px solid var(--primary);padding-left:10px}.logout-btn{width:100%;border:1px solid rgba(255,255,255,.07);background:transparent;color:var(--muted);padding:10px 12px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;text-align:left;transition:all .15s}.logout-btn:hover{background:#ff3d5a14;color:var(--danger);border-color:#ff3d5a33}.main-content{flex:1;padding:24px 28px;overflow-x:hidden;background:var(--bg);min-height:100vh}.page{display:flex;flex-direction:column;gap:20px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-header-between{align-items:center}.page-header h1{margin:0;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.page-header p{margin:4px 0 0;color:var(--muted);font-size:.88rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);transition:border-color .2s}.card:hover{border-color:#00d4ff1a}.hero-card{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#0a1628,#0d1f3c);border:1px solid rgba(0,212,255,.15)}.hero-card h2{margin:6px 0 10px;font-size:1.6rem;color:var(--text)}.hero-card p{margin:0;max-width:740px;line-height:1.6;color:var(--text-2)}.hero-metrics{display:flex;gap:12px;flex-wrap:wrap}.hero-mini-card{min-width:150px;background:#00d4ff0f;border:1px solid rgba(0,212,255,.12);border-radius:10px;padding:12px 14px}.hero-mini-card span{display:block;font-size:.82rem;color:var(--muted)}.hero-mini-card strong{display:block;margin-top:6px;font-size:1.2rem;color:var(--primary)}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--primary);opacity:.9}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px}.stat-card{padding:18px;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid rgba(0,212,255,.1)}.stat-card span{display:block;font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stat-card strong{display:block;margin-top:8px;font-size:1.8rem;font-weight:900}.stat-card-blue{background:linear-gradient(135deg,#0a1e3d,#0d2448)}.stat-card-blue strong{color:#00d4ff}.stat-card-indigo{background:linear-gradient(135deg,#12103a,#1a1760)}.stat-card-indigo strong{color:#818cf8}.stat-card-cyan{background:linear-gradient(135deg,#0a2030,#0c2a3e)}.stat-card-cyan strong{color:#22d3ee}.stat-card-dark{background:linear-gradient(135deg,#0f1a2e,#080d14)}.stat-card-dark strong{color:var(--text)}.chart-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}.chart-box{width:100%;height:260px}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;color:var(--muted);font-size:.78rem;padding:10px 14px;background:#ffffff08;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line)}.data-table td{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--text-2);font-size:.9rem}.data-table tr:hover td{background:#00d4ff08}.actions-inline{display:flex;gap:8px;flex-wrap:wrap}.btn{border:none;border-radius:8px;padding:9px 16px;font-weight:600;font-size:13px;cursor:pointer;transition:all .15s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:#070c14}.btn-primary:hover{background:#0ad}.btn-secondary{background:#ffffff0f;color:var(--text-2);border:1px solid var(--line)}.btn-secondary:hover{background:#ffffff1a;color:var(--text)}.btn-sm{padding:6px 12px;font-size:12px}.btn-full{width:100%}.scan-form-card{max-width:820px}.scan-form{display:flex;flex-direction:column;gap:14px}.scan-form label{font-weight:700;font-size:.88rem;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em}input,.input{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 16px;background:var(--surface-2);outline:none;font-size:.95rem;color:var(--text)}input:focus,.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1a}.result-card{margin-top:16px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:18px}.result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.result-item{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:12px}.result-item span{display:block;color:var(--muted);font-size:.8rem;margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.result-item strong{font-size:1.1rem;color:var(--text)}.executive-box{margin-top:16px;background:#00d4ff0a;border:1px solid rgba(0,212,255,.12);border-radius:8px;padding:16px}.executive-box h3{margin:0 0 8px;color:var(--primary);font-size:.88rem;text-transform:uppercase;letter-spacing:.06em}.executive-box p{margin:0;line-height:1.7;color:var(--text-2)}.badge{display:inline-flex;align-items:center;border-radius:4px;padding:3px 8px;font-size:.75rem;font-weight:700}.badge-critical{background:#ff3d5a26;color:#ff3d5a}.badge-high{background:#ff6b3526;color:#ff6b35}.badge-medium{background:#ffb80026;color:#ffb800}.badge-low{background:#00ff881f;color:#0f8}.badge-info{background:#7c8fa626;color:#7c8fa6}.sev-row.sev-critical td{background:#ff3d5a0a}.sev-row.sev-high td{background:#ff6b350a}.sev-row.sev-medium td{background:#ffb8000a}.sev-row.sev-low td{background:#00ff8808}.sev-row.sev-info td{background:#7c8fa608}.error-box{background:#ff3d5a14;color:#ff3d5a;border:1px solid rgba(255,61,90,.2);border-radius:8px;padding:12px 16px}.success-box{background:#00ff8814;color:#0f8;border:1px solid rgba(0,255,136,.2);border-radius:8px;padding:12px 16px;font-weight:600}.preview-card{min-width:320px}.preview-box{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:14px;margin-bottom:12px}.preview-box span{display:block;color:var(--muted);margin-bottom:6px;font-size:.85rem}.preview-box strong{font-size:1.5rem;color:var(--text)}.preview-summary p{margin:0;line-height:1.7;color:var(--text-2)}.reports-layout{display:grid;grid-template-columns:2fr 1fr;gap:16px}.detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;color:var(--text-2)}.executive-target-card{background:linear-gradient(135deg,#0a1628,#0d1f3c);border:1px solid rgba(0,212,255,.15)}.executive-target-card h2{margin:8px 0;font-size:1.8rem;color:var(--text)}.executive-target-card p{margin:0;line-height:1.6;color:var(--text-2)}.security-form{display:flex;flex-direction:column;gap:14px}.security-actions{display:flex;gap:10px;flex-wrap:wrap}.login-page{min-height:100vh;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid rgba(0,212,255,.12);border-radius:16px;padding:32px;box-shadow:0 25px 60px #00000080}.login-logo-wrap{display:flex;justify-content:center;margin-bottom:16px}.login-logo{width:160px;height:auto;display:block}.login-subtitle{margin:0 0 20px;color:var(--muted);font-size:.95rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:12px}.login-form label{font-weight:700;font-size:.85rem;color:var(--text-2)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes countUp{0%{opacity:0}to{opacity:1}}.animate-in{animation:fadeIn .35s ease forwards}.card{animation:fadeIn .3s ease forwards}@media(max-width:1100px){.stats-grid,.chart-grid,.reports-layout,.detail-grid,.result-grid{grid-template-columns:1fr}.hero-card{flex-direction:column;align-items:flex-start}}@media(max-width:820px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:relative}.main-content{padding:16px}.page-header h1{font-size:1.4rem}.kv-grid{grid-template-columns:1fr}}.card,[class*=card],[class*=Card]{background:var(--surface)!important;border-color:var(--line)!important;color:var(--text)!important}table,thead,tbody,tr,th,td{background:transparent!important;border-color:var(--line)!important;color:var(--text)!important}select,option,input[type=text],input[type=email],input[type=password],textarea{background:var(--surface-2)!important;color:var(--text)!important;border-color:var(--line)!important}div[style*="background: #fff"],div[style*="background:#fff"],div[style*="background: white"],div[style*="background-color: white"],div[style*="background-color: #fff"],div[style*="background-color: rgb(255, 255, 255)"],div[style*="background: #ffffff"],div[style*="background:#ffffff"],div[style*="background-color: #ffffff"]{background:var(--surface)!important;color:var(--text)!important}div[role=dialog],[class*=modal],[class*=Modal]{background:var(--surface-strong)!important;color:var(--text)!important;border:1px solid rgba(0,212,255,.15)!important}button:not(.btn-primary):not(.logout-btn):not(.nav-item){color:var(--text-2)!important}button:not(.btn-primary):not(.logout-btn):not(.nav-item):hover{color:var(--text)!important}th{color:var(--muted)!important;background:#ffffff08!important}.btn-primary{background:var(--primary)!important;color:#070c14!important}.btn-primary:hover{background:var(--primary-2)!important;color:#070c14!important}button[style*="var(--primary)"]{color:#070c14!important}button:not(.btn-primary):not(.logout-btn):not(.nav-item){color:inherit!important}[data-theme=light]{--bg: #eef4fb;--surface: rgba(255,255,255,.92);--surface-2: #f0f6ff;--surface-strong: #ffffff;--text: #0f172a;--text-2: #334155;--muted: #5c6b84;--line: #d7e3f3;--sidebar: linear-gradient(180deg,#0f3264 0%,#0a2346 100%);--shadow: 0 8px 32px rgba(15,23,42,.1);--radius: 12px}[data-theme=light] body,[data-theme=light] .main-content{background:var(--bg)!important}[data-theme=light] .card{background:#ffffffeb!important;border-color:#d7e3f3!important;color:#0f172a!important}[data-theme=light] table th{background:#dfe9f7!important;color:#17325c!important}[data-theme=light] table td{background:#fffc!important;color:#0f172a!important}[data-theme=light] input,[data-theme=light] textarea,[data-theme=light] select{background:#ffffffe6!important;color:#0f172a!important;border-color:#c9d8ee!important}[data-theme=light] .nav-item{color:#334155!important}[data-theme=light] .nav-item:hover{background:#1d5fb80f!important;color:#0f172a!important}[data-theme=light] .login-card{background:#fffffff5!important;color:#0f172a!important}[data-theme=light] .login-card input{background:#f0f6ff!important;color:#0f172a!important}[data-theme=light] .sidebar{background:linear-gradient(180deg,#0f3264,#0a2346)!important}[data-theme=light] .nav-item{color:#ffffffbf!important}[data-theme=light] .nav-item:hover{background:#ffffff1a!important;color:#fff!important}[data-theme=light] .nav-item.active{background:#ffffff26!important;color:#fff!important;border-left-color:#00d4ff!important}[data-theme=light] .sidebar-subtitle{color:#fff9!important}[data-theme=light] .logout-btn{color:#fff9!important;border-color:#ffffff26!important}[data-theme=light] .logout-btn:hover{background:#ff3d5a26!important;color:#ff6b6b!important}[data-theme=light] div[style*="#131929"],[data-theme=light] div[style*="#0f1726"],[data-theme=light] div[style*="#0d1117"]{background:#fff!important;border-color:#d7e3f3!important;color:#0f172a!important}[data-theme=light] div[style*='background:"#0d1520"'],[data-theme=light] div[style*="background: #0d1520"]{background:#fff!important;border-color:#d7e3f3!important}[data-theme=light] .sidebar{background:#fff!important;border-right:1px solid #d7e3f3!important}[data-theme=light] .sidebar-brand{border-bottom-color:#d7e3f3!important}[data-theme=light] .sidebar-subtitle{color:#5c6b84!important}[data-theme=light] .nav-item{color:#334155!important;border-left-color:transparent!important}[data-theme=light] .nav-item:hover{background:#1d5fb80f!important;color:#1d5fb8!important}[data-theme=light] .nav-item.active{background:#1d5fb81a!important;color:#1d5fb8!important;border-left-color:#1d5fb8!important}[data-theme=light] .logout-btn{color:#5c6b84!important;border-color:#d7e3f3!important}[data-theme=light] .logout-btn:hover{background:#dc26260f!important;color:#dc2626!important}[data-theme=light] .login-page{background:linear-gradient(135deg,#0f3264,#1d5fb8)!important}[data-theme=light] .login-card{background:#fff!important;color:#0f172a!important;box-shadow:0 25px 60px #0003!important}[data-theme=light] .login-card label{color:#334155!important}[data-theme=light] .login-card input{background:#f0f6ff!important;color:#0f172a!important;border-color:#c9d8ee!important}[data-theme=light] .login-subtitle{color:#5c6b84!important}[data-theme=light] .btn-primary{color:#070c14!important}[data-theme=light] .login-page .btn-primary,[data-theme=light] .login-form button{background:#1d5fb8!important;color:#fff!important}
