@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500;600;700&display=swap";:root{--bg-primary:#050508;--bg-secondary:#0a0a12;--bg-tertiary:#111119;--bg-panel:#0a0a12bf;--bg-glass:#0e0e188c;--bg-glass-hover:#12121eb3;--mode-accent:#00f0ff;--mode-accent-dim:#00a8b3;--mode-glow:0 0 20px #00f0ff33, 0 0 50px #00f0ff14;--mode-border:#00f0ff1a;--mode-border-active:#00f0ff4d;--mode-bg-tint:#00f0ff05;--accent-cyan:#00f0ff;--accent-cyan-dim:#00a8b3;--accent-purple:#7b61ff;--accent-purple-dim:#5a45c0;--accent-green:#0f8;--accent-green-dim:#00b35f;--accent-blue:#3b82f6;--threat-critical:#ff2d55;--threat-high:#ff6b35;--threat-medium:#ff9f0a;--threat-low:#ffd60a;--threat-safe:#30d158;--threat-info:#5ac8fa;--text-primary:#e8e8f0;--text-secondary:#8a8a9c;--text-tertiary:#55556a;--text-accent:var(--mode-accent);--border-subtle:#ffffff0d;--border-glass:var(--mode-border);--border-active:var(--mode-border-active);--glow-cyan:0 0 20px #00f0ff33, 0 0 50px #00f0ff14;--glow-cyan-strong:0 0 30px #00f0ff59, 0 0 70px #00f0ff1f;--glow-red:0 0 20px #ff2d5533, 0 0 50px #ff2d5514;--glow-red-strong:0 0 30px #ff2d5566, 0 0 70px #ff2d5526;--glow-green:0 0 20px #0f83, 0 0 50px #00ff8814;--glow-purple:0 0 20px #7b61ff33, 0 0 50px #7b61ff14;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-mode:.8s cubic-bezier(.4, 0, .2, 1);--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.7rem;--text-sm:.8rem;--text-base:.9rem;--text-lg:1.05rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.75rem;--text-5xl:3.5rem;--text-6xl:4.5rem}.defense-elevated{--mode-accent:#ff9f0a;--mode-accent-dim:#cc7f08;--mode-glow:0 0 20px #ff9f0a33, 0 0 50px #ff9f0a14;--mode-border:#ff9f0a1f;--mode-border-active:#ff9f0a4d;--mode-bg-tint:#ff9f0a05;--border-glass:#ff9f0a1f;--border-active:#ff9f0a4d;--text-accent:#ff9f0a}.defense-lockdown{--mode-accent:#ff2d55;--mode-accent-dim:#cc2444;--mode-glow:0 0 20px #ff2d5540, 0 0 50px #ff2d551f;--mode-border:#ff2d5526;--mode-border-active:#ff2d5566;--mode-bg-tint:#ff2d5508;--border-glass:#ff2d5526;--border-active:#ff2d5566;--text-accent:#ff2d55}.defense-lockdown .glass-panel{animation:2s ease-in-out infinite lockdown-pulse}@keyframes lockdown-pulse{0%,to{border-color:var(--mode-border)}50%{border-color:var(--mode-border-active)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}#root{min-height:100vh;position:relative}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff0f}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}.noise-overlay{pointer-events:none;z-index:9999;opacity:.025;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-repeat:repeat;position:fixed;inset:0}body:before{content:"";pointer-events:none;z-index:0;width:100%;height:100%;transition:background-image var(--transition-mode);background-image:linear-gradient(#00f0ff05 1px,#0000 1px),linear-gradient(90deg,#00f0ff05 1px,#0000 1px);background-size:80px 80px;position:fixed;top:0;left:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 70%);mask-image:radial-gradient(#000 30%,#0000 70%)}.defense-lockdown body:before,body.defense-lockdown:before{background-image:linear-gradient(#ff2d5505 1px,#0000 1px),linear-gradient(90deg,#ff2d5505 1px,#0000 1px)}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(24px)saturate(1.2);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:border-color var(--transition-mode), box-shadow var(--transition-slow), background var(--transition-mode), transform var(--transition-fast);position:relative;overflow:hidden}.glass-panel:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;z-index:1;background:linear-gradient(135deg,#ffffff0f 0%,#0000 40% 60%,#ffffff08 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-panel:hover{border-color:var(--border-active);transform:translateY(-1px);box-shadow:0 8px 32px #0000004d}.glass-panel--active{border-color:var(--border-active);box-shadow:var(--mode-glow)}.glass-panel--no-hover:hover{box-shadow:none;transform:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:1.2}.text-gradient{background:linear-gradient(135deg, var(--mode-accent), var(--accent-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.mono{font-family:var(--font-mono)}.badge{align-items:center;gap:var(--space-xs);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;padding:3px 10px;display:inline-flex}.badge--critical{color:var(--threat-critical);background:#ff2d551f;border:1px solid #ff2d5540}.badge--warning{color:var(--threat-medium);background:#ff9f0a1f;border:1px solid #ff9f0a40}.badge--safe{color:var(--threat-safe);background:#30d1581f;border:1px solid #30d15840}.badge--info{color:var(--accent-cyan);background:#00f0ff14;border:1px solid #00f0ff2e}.pulse-dot{background:var(--threat-safe);border-radius:50%;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";background:#30d15840;border-radius:50%;width:16px;height:16px;animation:2s ease-in-out infinite pulse;position:absolute;top:-4px;left:-4px}.pulse-dot--danger{background:var(--threat-critical)}.pulse-dot--danger:after{background:#ff2d5540}.pulse-dot--warning{background:var(--threat-medium)}.pulse-dot--warning:after{background:#ff9f0a40}@keyframes pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:0;transform:scale(2)}}.scanline-overlay:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#0000,#00f0ff0a,#0000);width:100%;height:4px;animation:8s linear infinite scanline;position:absolute;top:0;left:0}.defense-lockdown .scanline-overlay:after{background:linear-gradient(#0000,#ff2d550f,#0000);animation-duration:3s}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);text-transform:uppercase;letter-spacing:.06em;border:none;padding:10px 22px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn--primary{background:linear-gradient(135deg, var(--mode-accent), var(--accent-blue));color:var(--bg-primary)}.btn--primary:after{content:"";background:linear-gradient(135deg,#0000,#ffffff26,#0000);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.btn--primary:hover:after{transform:translate(100%)}.btn--primary:hover{box-shadow:var(--mode-glow)}.btn--ghost{color:var(--mode-accent);border:1px solid var(--border-glass);background:0 0}.btn--ghost:hover{border-color:var(--mode-accent);background:#ffffff08}.btn--danger{background:linear-gradient(135deg, var(--threat-critical), var(--threat-high));color:#fff}.btn--danger:hover{box-shadow:var(--glow-red-strong)}.section-label{align-items:center;gap:var(--space-sm);font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.14em;margin-bottom:var(--space-md);white-space:nowrap;font-size:10px;display:flex}.section-label:before{content:"";background:var(--mode-accent);width:14px;height:2px;transition:background var(--transition-mode);border-radius:1px;flex-shrink:0}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.w-full{width:100%}.relative{position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow-pulse{0%,to{box-shadow:var(--mode-glow)}50%{box-shadow:0 0 35px #00f0ff59,0 0 70px #00f0ff1f}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.5s forwards fadeIn}.animate-slide-up{animation:.5s forwards slideUp}.animate-slide-in{animation:.5s forwards slideIn}.hero{z-index:2;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero__noise{opacity:.03;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.hero__grid{pointer-events:none;background-image:linear-gradient(#00f0ff06 1px,#0000 1px),linear-gradient(90deg,#00f0ff06 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 20%,#0000 65%);mask-image:radial-gradient(#000 20%,#0000 65%)}.hero__radial{pointer-events:none;background:radial-gradient(circle,#00f0ff0f 0%,#7b61ff08 40%,#0000 70%);border-radius:50%;width:800px;height:800px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero__content{z-index:2;text-align:center;align-items:center;gap:var(--space-lg);padding:var(--space-2xl);flex-direction:column;max-width:700px;display:flex;position:relative}.hero__shield{justify-content:center;align-items:center;display:flex}.hero__shield-inner{border-radius:var(--radius-xl);width:80px;height:80px;color:var(--accent-cyan);background:linear-gradient(135deg,#00f0ff1a,#7b61ff1a);border:1px solid #00f0ff33;justify-content:center;align-items:center;display:flex}.hero__title{gap:4px;display:flex}.hero__letter{font-family:var(--font-display);font-size:var(--text-6xl);background:linear-gradient(135deg, var(--accent-cyan), var(--accent-purple));-webkit-text-fill-color:transparent;letter-spacing:.08em;text-shadow:none;filter:drop-shadow(0 0 30px #00f0ff33);-webkit-background-clip:text;background-clip:text;font-weight:700;display:inline-block}.hero__subtitle{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.2em;font-weight:400}.hero__description{font-size:var(--text-lg);color:var(--text-secondary);max-width:520px;line-height:1.7}.hero__stats{gap:var(--space-xl);padding:var(--space-lg) var(--space-2xl);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a1280;display:flex}.hero__stat{flex-direction:column;align-items:center;gap:4px;display:flex}.hero__stat-value{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--accent-cyan);font-weight:700}.hero__stat-label{font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.12em;font-size:9px}.hero__cta{margin-top:var(--space-sm)}.hero__btn{font-size:var(--text-sm)!important;border-radius:var(--radius-lg)!important;gap:var(--space-md)!important;padding:14px 32px!important}.hero__scroll-indicator{bottom:var(--space-2xl);color:var(--text-tertiary);position:absolute}.hero__line{background:linear-gradient(90deg,#0000,#00f0ff26,#0000);width:200px;height:1px;position:absolute;top:50%}.hero__line--left{transform-origin:100%;right:calc(50% + 350px)}.hero__line--right{transform-origin:0;left:calc(50% + 350px)}.floating-nav{bottom:var(--space-lg);z-index:1000;position:fixed;left:50%;transform:translate(-50%)}.floating-nav__inner{-webkit-backdrop-filter:blur(20px)saturate(1.5);border-radius:var(--radius-full);background:#0a0a12cc;border:1px solid #ffffff0f;gap:4px;padding:5px;display:flex;box-shadow:0 8px 32px #0006}.floating-nav__item{color:var(--text-tertiary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:color var(--transition-fast);z-index:1;border-radius:var(--radius-full);background:0 0;border:none;align-items:center;gap:6px;padding:8px 18px;font-size:10px;display:flex;position:relative}.floating-nav__item:hover{color:var(--text-secondary)}.floating-nav__item--active{color:var(--accent-cyan)}.floating-nav__icon{font-size:11px}.floating-nav__indicator{border-radius:var(--radius-full);z-index:-1;background:#00f0ff14;border:1px solid #00f0ff26;position:absolute;inset:0}.dashboard-section{z-index:2;min-height:100vh;padding:var(--space-md);position:relative}.dashboard{z-index:1;height:100vh;transition:border-color var(--transition-mode);grid-template-rows:auto 1fr;grid-template-columns:1fr 360px;gap:10px;display:grid;position:relative}.dashboard__header{padding:var(--space-sm) var(--space-lg);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.dashboard__main{grid-template-rows:1fr auto;gap:10px;min-height:0;display:grid}.dashboard__sidebar{flex-direction:column;gap:10px;min-height:0;display:flex;overflow-y:auto}.logo{align-items:center;gap:var(--space-md);display:flex}.logo__icon{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--mode-accent), var(--accent-purple));width:40px;height:40px;box-shadow:var(--mode-glow);transition:background var(--transition-mode), box-shadow var(--transition-mode);justify-content:center;align-items:center;font-size:17px;display:flex}.logo__text{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.15em;background:linear-gradient(90deg, var(--mode-accent), var(--accent-purple), var(--mode-accent));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-weight:700;animation:4s linear infinite shimmer}.logo__tagline{color:var(--text-tertiary);font-size:9px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em}.status-bar{align-items:center;gap:var(--space-md);font-size:var(--text-sm);display:flex}.status-item{color:var(--text-secondary);font-size:var(--text-xs);align-items:center;gap:6px;padding:4px 0;display:flex;position:relative}.status-item:after{content:"";background:var(--mode-accent);width:0;height:1px;transition:width var(--transition-base);position:absolute;bottom:0;left:0}.status-item:hover:after{width:100%}.status-item__value{font-family:var(--font-mono);color:var(--text-primary);font-weight:600}.defense-badge{align-items:center;gap:var(--space-sm);border-radius:var(--radius-full);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;transition:all var(--transition-mode);padding:5px 14px;font-size:10px;font-weight:700;display:flex}.defense-badge--normal{color:var(--threat-safe);background:#30d1581a;border:1px solid #30d15833}.defense-badge--elevated{color:var(--threat-medium);background:#ff9f0a1a;border:1px solid #ff9f0a33;animation:2s ease-in-out infinite glow-pulse-amber}.defense-badge--lockdown{color:var(--threat-critical);background:#ff2d551f;border:1px solid #ff2d554d;animation:1.5s ease-in-out infinite glow-pulse-red}@keyframes glow-pulse-amber{0%,to{box-shadow:0 0 8px #ff9f0a26}50%{box-shadow:0 0 20px #ff9f0a4d}}@keyframes glow-pulse-red{0%,to{box-shadow:0 0 10px #ff2d5533}50%{box-shadow:0 0 25px #ff2d5566}}.pipeline-dots{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:#ffffff05;align-items:center;gap:3px;padding:4px 12px;display:flex}.pipeline-dot{width:7px;height:7px;transition:all var(--transition-base);border-radius:50%}.pipeline-dot--nominal{background:#30d15866}.pipeline-dot--passed{background:var(--threat-safe);box-shadow:0 0 6px var(--threat-safe)}.pipeline-dot--intercepted{background:var(--threat-critical);box-shadow:0 0 8px var(--threat-critical);animation:1s infinite pulse-fast}.pipeline-dot--alert{background:var(--threat-medium);box-shadow:0 0 6px var(--threat-medium)}.pipeline-dot--blocked{background:var(--threat-critical);box-shadow:0 0 8px var(--threat-critical)}.pipeline-dot--quarantined,.pipeline-dot--filtered{background:var(--threat-high);box-shadow:0 0 6px var(--threat-high)}@keyframes pulse-fast{0%,to{opacity:1}50%{opacity:.4}}.graph-container{min-height:0;position:relative;overflow:hidden}.graph-overlay{pointer-events:none;z-index:5;position:absolute;inset:0}.bottom-panels{grid-template-columns:1fr 1fr;gap:10px;min-height:200px;max-height:260px;display:grid}.sidebar-tabs{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.sidebar-tabs__header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex}.sidebar-tab{padding:7px var(--space-md);color:var(--text-tertiary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;font-size:9px;position:relative}.sidebar-tab:hover{color:var(--text-secondary);background:#ffffff05}.sidebar-tab--active{color:var(--mode-accent)}.sidebar-tab--active:after{content:"";background:var(--mode-accent);height:2px;box-shadow:0 0 12px var(--mode-accent);transition:background var(--transition-mode);border-radius:1px;position:absolute;bottom:0;left:20%;right:20%}.sidebar-tabs__content{flex:1;min-height:0;overflow-y:auto}.spinner{border:2px solid #0003;border-top-color:var(--bg-primary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.section-divider{background:linear-gradient(90deg, transparent, var(--border-glass), transparent);width:100%;height:1px;margin:var(--space-2xl) 0}.typing-indicator{align-items:center;gap:4px;padding:6px 12px;display:flex}.typing-indicator__dot{background:var(--mode-accent);opacity:.4;border-radius:50%;width:6px;height:6px}.typing-indicator__dot:first-child{animation:1.4s ease-in-out infinite typing-bounce}.typing-indicator__dot:nth-child(2){animation:1.4s ease-in-out .2s infinite typing-bounce}.typing-indicator__dot:nth-child(3){animation:1.4s ease-in-out .4s infinite typing-bounce}@keyframes typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}@media (width<=1200px){.dashboard{grid-template-columns:1fr 300px}.hero__letter{font-size:var(--text-5xl)}.hero__stats{gap:var(--space-lg);padding:var(--space-md) var(--space-lg)}}@media (width<=900px){.dashboard{grid-template-rows:auto auto auto;grid-template-columns:1fr;height:auto;min-height:100vh}.dashboard__sidebar{flex-flow:wrap;overflow-y:visible}.dashboard__sidebar>*{flex:1;min-width:250px}.bottom-panels{grid-template-columns:1fr;max-height:none}.graph-container{min-height:400px}.hero__letter{font-size:var(--text-4xl)}.hero__stats{gap:var(--space-md);flex-wrap:wrap}.hero__line{display:none}}@media (width<=600px){.hero__stats{flex-direction:column}.hero__letter{font-size:var(--text-3xl)}.floating-nav__label{display:none}}.dashboard-section .dashboard{height:100vh}.dashboard-section{scroll-snap-align:start}
