/* ═══════════════════════════════════════════════════════════
   BRG INTELLIGENCE COMMAND
   You enter a system, not a site.
   The sovereign firm command centre.
   ═══════════════════════════════════════════════════════════ */

:root {
  --gold: #D4A843;
  --gold-dim: rgba(212,168,67,.15);
  --gold-line: rgba(212,168,67,.08);
  --bg: #030308;
  --bg-glass: rgba(6,10,18,.45);
  --bg-glass-strong: rgba(6,10,18,.65);
  --tx: #f0f0f0;
  --tx2: rgba(255,255,255,.5);
  --tx3: rgba(255,255,255,.2);
  --green: #10b981;
  --amber: #f59e0b;
  --red: #ef4444;
  --mono: 'JetBrains Mono', monospace;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { height:100%; background:var(--bg); }
body {
  min-height:100%;
  overflow-x:hidden;
  overflow-y:auto;
  background:var(--bg);
  color:var(--tx);
  font-family:'Inter',system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}

/* ── GRAIN ─────────────────────────────────────────── */
body::after {
  content:'';
  position:fixed; inset:0; z-index:9990;
  pointer-events:none; opacity:.035;
  mix-blend-mode:overlay;
  background-image:url("data:image/png;base64,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");
  background-repeat:repeat; background-size:180px;
}

/* ── PRELOADER ─────────────────────────────────────── */
#preloader {
  position:fixed; inset:0; z-index:99999;
  background:var(--bg);
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:1rem;
  will-change:transform;
}
.pre-wrap { overflow:hidden; }
.pre-name {
  font-family:'Syne',sans-serif;
  font-size:clamp(3.5rem,10vw,7rem);
  font-weight:800;
  color:#fff;
  letter-spacing:.08em;
  transform:translateY(120%);
  will-change:transform;
}
.pre-tag {
  font-size:.72rem;
  letter-spacing:.5em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--gold);
  transform:translateY(120%);
  will-change:transform;
}
.pre-progress {
  width:160px; height:1px;
  background:rgba(255,255,255,.06);
  margin-top:2rem; overflow:hidden;
}
.pre-bar { width:0%; height:100%; background:var(--gold); }

/* ── CURSOR ────────────────────────────────────────── */
#cursor-dot {
  position:fixed; top:0; left:0;
  width:10px; height:10px; border-radius:50%;
  background:var(--gold);
  pointer-events:none; z-index:99998;
  opacity:0; mix-blend-mode:difference;
  transition:width .25s cubic-bezier(.23,1,.32,1),
             height .25s cubic-bezier(.23,1,.32,1);
  transform:translate(-50%,-50%);
}
#cursor-dot.hover { width:48px; height:48px; background:rgba(255,255,255,.9); }
#cursor-ring {
  position:fixed; top:0; left:0;
  width:40px; height:40px; border-radius:50%;
  border:1.5px solid rgba(212,168,67,.4);
  pointer-events:none; z-index:99997;
  opacity:0; transform:translate(-50%,-50%);
  transition:width .3s cubic-bezier(.23,1,.32,1),
             height .3s cubic-bezier(.23,1,.32,1);
}
#cursor-ring.hover { width:60px; height:60px; border-color:rgba(255,255,255,.3); }
@media(pointer:coarse){ #cursor-dot,#cursor-ring{display:none!important} body{cursor:auto!important} }

/* ── SHADER CANVAS ─────────────────────────────────── */
#network {
  position:fixed; inset:0; z-index:0;
  pointer-events:none;
}

/* ═══════════════════════════════════════════════════════════
   THE COMMAND CENTRE
   ═══════════════════════════════════════════════════════════ */

#command {
  position:relative; z-index:1;
  width:100%; min-height:100vh;
  display:grid;
  grid-template-rows:auto 1fr auto;
  grid-template-columns:1fr;
  overflow-x:hidden;
}

/* ── TOPBAR ────────────────────────────────────────── */
.topbar {
  display:flex; align-items:center;
  padding:0 32px; height:48px;
  background:var(--bg-glass);
  backdrop-filter:blur(28px) saturate(1.5);
  -webkit-backdrop-filter:blur(28px) saturate(1.5);
  border-bottom:1px solid var(--gold-line);
  z-index:10;
}
.topbar-logo {
  font-family:'Syne',sans-serif;
  font-weight:800; font-size:20px;
  letter-spacing:5px; color:#fff;
  text-shadow:0 0 40px rgba(212,168,67,.25);
}
.topbar-partner {
  font-size:11px; font-weight:600;
  color:var(--tx); padding:3px 10px;
  background:rgba(212,168,67,.08);
  border:1px solid rgba(212,168,67,.12);
  border-radius:20px; margin-left:10px;
  letter-spacing:.3px;
}
.topbar-sep { flex:1; }
.topbar-status {
  font-size:9px; letter-spacing:2px;
  text-transform:uppercase;
  color:rgba(16,185,129,.5); font-weight:700;
  display:flex; align-items:center; gap:6px;
}
.topbar-dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--green);
  box-shadow:0 0 8px rgba(16,185,129,.5);
  animation:pulse 2s infinite;
}
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.4} }
.topbar-btn {
  background:none; border:1px solid rgba(255,255,255,.08);
  color:var(--tx3); font-size:10px; font-weight:600;
  padding:5px 14px; border-radius:4px;
  font-family:inherit; cursor:auto;
  margin-left:12px; transition:all .2s;
}
.topbar-btn:hover { border-color:var(--gold-line); color:var(--tx2); }

/* ── MAIN VIEWPORT ─────────────────────────────────── */
.viewport {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:0 40px 0;
  overflow:hidden;
}

/* Greeting — massive, bottom-left */
.greeting {
  font-family:'Syne',sans-serif;
  font-size:clamp(3rem,7.5vw,6rem);
  font-weight:800;
  letter-spacing:0;
  line-height:.88;
  color:#fff;
  text-shadow:0 0 80px rgba(212,168,67,.25), 0 0 160px rgba(212,168,67,.08);
  margin-bottom:6px;
  position:relative;
  z-index:4;
  mix-blend-mode:screen;
}
.maya-hero .greeting {
  box-sizing:border-box;
  width:100%;
  max-width:680px;
  padding:0 8px;
  overflow-wrap:break-word;
  text-wrap:balance;
}
.greeting-char {
  display:inline-block;
  will-change:transform,opacity;
}
.greeting-sub {
  font-size:11px; letter-spacing:0;
  text-transform:uppercase;
  color:rgba(212,168,67,.4);
  font-weight:600;
  margin-bottom:24px;
}

/* Intent prompts — the primary interaction */
.intent-bar {
  display:flex; gap:8px;
  margin-bottom:20px;
  flex-wrap:wrap;
}
.intent-btn {
  background:var(--bg-glass);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid var(--gold-line);
  color:var(--tx2); font-size:11px;
  font-weight:600; font-family:inherit;
  padding:10px 18px; border-radius:4px;
  cursor:pointer; transition:all .3s cubic-bezier(.23,1,.32,1);
  letter-spacing:.5px;
}
.intent-btn:hover {
  border-color:rgba(212,168,67,.3);
  color:#fff;
  background:rgba(212,168,67,.06);
  transform:translateY(-3px);
  box-shadow:0 12px 32px rgba(0,0,0,.4), 0 0 20px rgba(212,168,67,.06);
}
.intent-btn::after {
  content:'';
  position:absolute; inset:0;
  background:linear-gradient(105deg,transparent 35%,rgba(212,168,67,.08) 50%,transparent 65%);
  transform:translateX(-110%);
  transition:transform .7s cubic-bezier(.23,1,.32,1);
}
.intent-btn { position:relative; overflow:hidden; }
.intent-btn:hover::after { transform:translateX(110%); }
.intent-btn .intent-icon {
  display:inline-block; margin-right:6px;
}

/* LIVE INTELLIGENCE — right side glass panel */
.intel-panel {
  position:absolute;
  right:40px; top:32px;
  max-width:380px; width:100%;
  background:var(--bg-glass);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid var(--gold-line);
  border-radius:6px;
  padding:18px 20px;
  z-index:5;
}
.intel-header {
  font-size:9px; letter-spacing:2.5px;
  color:rgba(212,168,67,.4);
  font-weight:700;
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid var(--gold-line);
}
.intel-item {
  display:flex; align-items:flex-start;
  gap:10px; padding:7px 0;
  font-size:12px; color:var(--tx3);
  border-bottom:1px solid rgba(255,255,255,.02);
}
.intel-item:last-child { border-bottom:none; }
.intel-dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--gold); flex-shrink:0;
  margin-top:5px;
  box-shadow:0 0 8px rgba(212,168,67,.4);
}
.intel-agent {
  font-size:10px; letter-spacing:1px;
  color:rgba(212,168,67,.6);
  font-weight:700;
}
.intel-time {
  font-size:10px; color:rgba(255,255,255,.15);
  font-family:var(--mono);
  margin-left:auto; padding-left:12px;
  white-space:nowrap;
}

/* Agent swarm strip — bottom of viewport */
.swarm-strip {
  position:absolute;
  left:40px; bottom:80px;
  display:flex; align-items:center; gap:6px;
  z-index:5;
}
.swarm-label {
  font-size:9px; letter-spacing:2px;
  color:rgba(16,185,129,.35);
  font-weight:700; margin-right:8px;
}
.swarm-dot {
  width:7px; height:7px; border-radius:50%;
  background:var(--green);
  box-shadow:0 0 6px rgba(16,185,129,.4);
  opacity:.6;
  animation:swarmPulse 3s ease-in-out infinite;
}
.swarm-dot:nth-child(odd) { animation-delay:.5s; }
.swarm-dot:nth-child(3n) { animation-delay:1.2s; }
.swarm-dot.amber { background:var(--amber); box-shadow:0 0 6px rgba(245,158,11,.4); }
@keyframes swarmPulse { 0%,100%{opacity:.4} 50%{opacity:1} }

/* Scroll hint */
.scroll-hint {
  position:absolute;
  bottom:20px; left:50%;
  transform:translateX(-50%);
  display:flex; flex-direction:column;
  align-items:center; gap:5px;
  z-index:5; opacity:0;
}
.scroll-hint span {
  font-size:9px; letter-spacing:3px;
  text-transform:uppercase;
  color:rgba(255,255,255,.12); font-weight:600;
}
.scroll-line {
  width:1px; height:36px;
  background:linear-gradient(to bottom,rgba(212,168,67,.4),transparent);
  animation:scrollPulse 2.4s ease-in-out infinite;
}
@keyframes scrollPulse {
  0%,100%{opacity:.3;transform:scaleY(1)}
  50%{opacity:.8;transform:scaleY(.5)}
}

/* ═══════════════════════════════════════════════════════════
   NERVOUS SYSTEM — agent nodes overlaid on the shader
   Each node IS a real agent. Connections are real data flows.
   This is the living breathing business nervous system.
   ═══════════════════════════════════════════════════════════ */
#nervous-system {
  position:absolute; inset:0;
  z-index:3; pointer-events:none;
}
#nerve-canvas {
  position:absolute; inset:0;
  width:100%; height:100%;
}
.nerve-node {
  position:absolute;
  transform:translate(-50%,-50%);
  pointer-events:auto;
  cursor:pointer;
  text-align:center;
  transition:transform .3s cubic-bezier(.23,1,.32,1);
}
.nerve-node:hover { transform:translate(-50%,-50%) scale(1.3); z-index:10; }
.nerve-dot {
  width:12px; height:12px;
  border-radius:50%;
  margin:0 auto 4px;
  box-shadow:0 0 16px currentColor, 0 0 40px currentColor;
  transition:all .3s;
  animation:nodeBreathe 3s ease-in-out infinite;
}
@keyframes nodeBreathe {
  0%,100% { box-shadow:0 0 12px currentColor, 0 0 30px currentColor; transform:scale(1); }
  50% { box-shadow:0 0 20px currentColor, 0 0 50px currentColor; transform:scale(1.15); }
}
.nerve-dot.green { background:var(--green); color:var(--green); }
.nerve-dot.amber { background:var(--amber); color:var(--amber); }
.nerve-dot.red { background:var(--red); color:var(--red); }
.nerve-dot.idle { background:var(--tx3); color:var(--tx3); }
.nerve-name {
  font-size:8px; letter-spacing:1.5px;
  font-weight:700; text-transform:uppercase;
  color:rgba(255,255,255,.3);
  white-space:nowrap;
  transition:color .3s;
}
.nerve-node:hover .nerve-name { color:rgba(255,255,255,.8); }
.nerve-node:hover .nerve-dot { box-shadow:0 0 24px currentColor; transform:scale(1.4); }
/* Swarm label */
.nerve-swarm-label {
  position:absolute;
  font-size:8px; letter-spacing:2px;
  text-transform:uppercase;
  color:rgba(212,168,67,.15);
  font-weight:700;
  pointer-events:none;
  transform:translate(-50%,-50%);
}

/* ── COMMAND BAR (MAYA) ────────────────────────────── */
.command-bar {
  position:sticky; bottom:0;
  padding:12px 32px 16px;
  z-index:10;
  background:rgba(3,3,8,.9);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-top:1px solid rgba(255,255,255,.04);
}
.command-input-wrap {
  display:flex; align-items:center;
  background:var(--bg-glass);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  border:1px solid var(--gold-line);
  border-radius:6px;
  padding:4px;
  transition:border-color .3s;
}
.command-input-wrap:focus-within {
  border-color:rgba(212,168,67,.25);
}
.command-prefix {
  font-size:10px; letter-spacing:2px;
  color:rgba(212,168,67,.3);
  font-weight:700; padding:0 12px;
  text-transform:uppercase;
  user-select:none;
}
.command-input {
  flex:1; background:transparent;
  border:none; color:var(--tx);
  padding:12px 8px; font-size:14px;
  font-family:'Inter',sans-serif;
  outline:none;
}
.command-input::placeholder {
  color:var(--tx3); font-weight:400;
}
.command-submit {
  background:var(--gold); color:#000;
  border:none; padding:10px 20px;
  border-radius:4px; font-weight:700;
  font-size:11px; letter-spacing:.5px;
  font-family:inherit; cursor:auto;
  transition:all .2s;
}
.command-submit:hover {
  box-shadow:0 0 20px rgba(212,168,67,.3);
}
.command-meta {
  display:flex; align-items:center;
  justify-content:space-between;
  margin-top:8px; padding:0 4px;
}
.command-agents {
  display:flex; align-items:center; gap:5px;
}
.command-shortcuts {
  font-size:10px; color:var(--tx3);
  font-family:var(--mono);
}
.command-shortcuts kbd {
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  padding:1px 5px; border-radius:3px;
  font-size:9px; margin:0 2px;
}

/* ── MAYA HERO PANEL (dominant above-fold) ────────── */
.maya-hero {
  position:relative;
  width:100%;
  max-width:min(760px, calc(100vw - 40px));
  margin-left:auto;
  margin-right:auto;
  margin-top:20px;
  margin-bottom:32px;
  z-index:6;
}
.maya-hero-panel {
  background:rgba(6,10,18,.55);
  backdrop-filter:blur(32px);
  -webkit-backdrop-filter:blur(32px);
  border:1px solid rgba(212,168,67,.12);
  border-radius:14px;
  padding:0;
  overflow:hidden;
  box-shadow:0 0 80px rgba(212,168,67,.04), 0 40px 80px rgba(0,0,0,.5);
  transition:border-color .4s;
}
.maya-hero-panel:focus-within {
  border-color:rgba(212,168,67,.25);
  box-shadow:0 0 100px rgba(212,168,67,.08), 0 40px 80px rgba(0,0,0,.5);
}
.maya-hero-header {
  display:flex; align-items:center; gap:10px;
  padding:16px 24px 0;
}
.maya-hero-dot {
  width:8px; height:8px; border-radius:50%;
  background:var(--gold);
  box-shadow:0 0 12px rgba(212,168,67,.5);
  animation:mayaPulse 2.5s ease-in-out infinite;
}
@keyframes mayaPulse {
  0%,100% { opacity:1; box-shadow:0 0 12px rgba(212,168,67,.5); }
  50% { opacity:.5; box-shadow:0 0 20px rgba(212,168,67,.8); }
}
.maya-hero-label {
  font-family:'Syne',sans-serif;
  font-size:13px; font-weight:700;
  letter-spacing:3px; text-transform:uppercase;
  color:var(--gold);
}
.maya-hero-status {
  font-size:10px; color:var(--tx3);
  font-family:var(--mono);
  margin-left:auto;
}
.maya-live-brief {
  margin:14px 24px 0;
  padding:12px 14px;
  border:1px solid rgba(212,168,67,.12);
  border-radius:10px;
  background:linear-gradient(135deg,rgba(212,168,67,.055),rgba(255,255,255,.02));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  max-height:230px;
  overflow:auto;
}
.maya-live-brief-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  color:var(--gold);
  font-family:var(--mono);
  font-size:10px;
  font-weight:700;
  letter-spacing:1.4px;
  text-transform:uppercase;
}
.maya-brief-link {
  border:1px solid rgba(212,168,67,.18);
  background:rgba(3,3,8,.28);
  color:rgba(255,255,255,.56);
  border-radius:999px;
  padding:5px 10px;
  font-size:9px;
  font-weight:700;
  font-family:var(--mono);
  letter-spacing:.7px;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
}
.maya-brief-link:hover {
  color:var(--gold);
  border-color:rgba(212,168,67,.38);
}
.maya-live-brief-body {
  color:rgba(255,255,255,.78);
  font-size:12px;
  line-height:1.45;
}
.maya-brief-row {
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:8px 0 0;
  color:rgba(255,255,255,.68);
}
.maya-brief-row strong {
  color:rgba(255,255,255,.88);
  font-weight:700;
  font-size:12px;
}
.maya-brief-pill {
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  min-width:54px;
  justify-content:center;
  padding:2px 7px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  font-family:var(--mono);
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
}
.maya-brief-meta {
  color:rgba(255,255,255,.46);
  font-size:10px;
  letter-spacing:.2px;
}
.maya-brief-pill.CRITICAL { color:var(--red); border-color:rgba(239,68,68,.22); background:rgba(239,68,68,.06); }
.maya-brief-pill.HIGH { color:var(--amber); border-color:rgba(245,158,11,.22); background:rgba(245,158,11,.06); }
.maya-brief-pill.MEDIUM,
.maya-brief-pill.LOW { color:var(--gold); border-color:rgba(212,168,67,.18); background:rgba(212,168,67,.05); }
.maya-urgent-banner {
  margin:14px 24px 0;
  padding:13px 14px;
  border:1px solid rgba(212,168,67,.16);
  border-left:3px solid var(--gold);
  border-radius:12px;
  background:linear-gradient(135deg,rgba(212,168,67,.105),rgba(255,255,255,.025));
  box-shadow:0 16px 48px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.045);
  display:flex;
  gap:14px;
  align-items:flex-start;
  justify-content:space-between;
}
.maya-urgent-banner[hidden] {
  display:none !important;
}
.maya-urgent-banner[data-state="critical"] {
  border-color:rgba(239,68,68,.28);
  border-left-color:var(--red);
  background:linear-gradient(135deg,rgba(239,68,68,.115),rgba(212,168,67,.035));
}
.maya-urgent-banner[data-state="high"] {
  border-color:rgba(245,158,11,.26);
  border-left-color:var(--amber);
  background:linear-gradient(135deg,rgba(245,158,11,.105),rgba(212,168,67,.035));
}
.maya-urgent-copy {
  min-width:0;
}
.maya-urgent-eyebrow {
  color:rgba(212,168,67,.72);
  font-family:var(--mono);
  font-size:9px;
  font-weight:800;
  letter-spacing:1.4px;
  text-transform:uppercase;
  margin-bottom:5px;
}
.maya-urgent-title {
  color:rgba(255,255,255,.9);
  font-size:13px;
  font-weight:850;
  line-height:1.25;
}
.maya-urgent-meta,
.maya-urgent-row {
  color:rgba(255,255,255,.48);
  font-size:10px;
  line-height:1.45;
  margin-top:5px;
}
.maya-urgent-row strong {
  color:rgba(255,255,255,.74);
}
.maya-urgent-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
  flex:0 0 auto;
}
.maya-urgent-actions button {
  border:1px solid rgba(212,168,67,.22);
  background:rgba(3,3,8,.38);
  color:var(--gold);
  border-radius:999px;
  padding:6px 10px;
  font-size:9px;
  font-family:var(--mono);
  font-weight:800;
  letter-spacing:.65px;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
}
.maya-urgent-actions button:hover {
  border-color:rgba(212,168,67,.46);
  background:rgba(212,168,67,.075);
}
.maya-hero-input-area {
  padding:16px 24px 12px;
}
.maya-hero-input-wrap {
  display:flex; align-items:center;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  padding:6px;
  transition:border-color .3s, background .3s;
}
.maya-hero-input-wrap:focus-within {
  border-color:rgba(212,168,67,.2);
  background:rgba(255,255,255,.05);
}
.maya-hero-input {
  flex:1; background:transparent;
  border:none; color:var(--tx);
  padding:16px 16px; font-size:16px;
  font-family:'Inter',sans-serif;
  outline:none; line-height:1.5;
}
.maya-hero-input::placeholder {
  color:rgba(255,255,255,.25); font-weight:400;
}
.maya-hero-submit {
  background:var(--gold); color:#000;
  border:none; padding:14px 28px;
  border-radius:8px; font-weight:700;
  font-size:12px; letter-spacing:1px;
  font-family:'Syne',sans-serif;
  text-transform:uppercase;
  cursor:pointer; transition:all .25s;
  white-space:nowrap;
}
.maya-hero-submit:hover {
  box-shadow:0 0 30px rgba(212,168,67,.4);
  transform:translateY(-1px);
}
.maya-hero-submit:disabled {
  opacity:.5; cursor:default; transform:none;
  box-shadow:none;
}
.maya-voice-btn {
  background:rgba(212,168,67,.08);
  color:var(--gold);
  border:1px solid rgba(212,168,67,.22);
  padding:14px 16px;
  border-radius:8px;
  font-weight:700;
  font-size:11px;
  letter-spacing:1px;
  font-family:'Syne',sans-serif;
  text-transform:uppercase;
  cursor:pointer;
  transition:all .25s;
  white-space:nowrap;
}
.maya-listen-btn {
  background:rgba(16,185,129,.08);
  color:var(--green);
  border:1px solid rgba(16,185,129,.22);
  padding:14px 16px;
  border-radius:8px;
  font-weight:700;
  font-size:11px;
  letter-spacing:1px;
  font-family:'Syne',sans-serif;
  text-transform:uppercase;
  cursor:pointer;
  transition:all .25s;
  white-space:nowrap;
}
.maya-listen-btn:hover,
.maya-listen-btn.is-listening {
  background:rgba(16,185,129,.16);
  border-color:rgba(16,185,129,.5);
  box-shadow:0 0 22px rgba(16,185,129,.2);
  transform:translateY(-1px);
}
.maya-voice-btn:hover,
.maya-voice-btn.is-speaking {
  background:rgba(212,168,67,.16);
  border-color:rgba(212,168,67,.5);
  box-shadow:0 0 22px rgba(212,168,67,.2);
  transform:translateY(-1px);
}

/* Response area */
.maya-hero-response {
  min-height:120px; max-height:360px;
  overflow-y:auto; padding:0 24px 16px;
  display:none;
}
.maya-hero-response.active {
  display:block;
}
.maya-hero-response-inner {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.04);
  border-radius:8px;
  padding:20px 24px;
  font-size:14px; line-height:1.7;
  color:rgba(255,255,255,.8);
  font-family:'Inter',sans-serif;
}
.maya-hero-response-inner .maya-thinking {
  color:var(--gold); font-size:12px;
  letter-spacing:2px; text-transform:uppercase;
  font-weight:600;
  animation:mayaThink 1.5s ease-in-out infinite;
}
@keyframes mayaThink {
  0%,100% { opacity:1; }
  50% { opacity:.3; }
}

.maya-audit-rail {
  margin:0 24px 16px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:10px;
  background:rgba(255,255,255,.018);
  overflow:hidden;
}
.maya-audit-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border-bottom:1px solid rgba(255,255,255,.045);
  color:rgba(212,168,67,.72);
  font-family:var(--mono);
  font-size:9px;
  font-weight:800;
  letter-spacing:1.2px;
  text-transform:uppercase;
}
.maya-audit-head span:last-child {
  color:rgba(255,255,255,.32);
  font-weight:600;
}
.maya-audit-list {
  max-height:150px;
  overflow:auto;
  padding:8px 10px 10px;
}
.maya-audit-empty {
  color:rgba(255,255,255,.34);
  font-size:11px;
  line-height:1.5;
  padding:4px 2px;
}
.maya-audit-item {
  display:grid;
  grid-template-columns:72px 1fr auto;
  gap:9px;
  align-items:start;
  padding:8px 0;
  border-bottom:1px solid rgba(255,255,255,.035);
}
.maya-audit-item:last-child { border-bottom:none; }
.maya-audit-outcome {
  color:var(--gold);
  font-family:var(--mono);
  font-size:9px;
  font-weight:800;
  letter-spacing:.7px;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.maya-audit-main {
  min-width:0;
  color:rgba(255,255,255,.72);
  font-size:11px;
  line-height:1.4;
}
.maya-audit-command {
  color:rgba(255,255,255,.86);
  font-weight:700;
  overflow-wrap:anywhere;
}
.maya-audit-meta {
  margin-top:2px;
  color:rgba(255,255,255,.38);
  font-size:10px;
  overflow-wrap:anywhere;
}
.maya-audit-id {
  color:rgba(255,255,255,.32);
  font-family:var(--mono);
  font-size:9px;
  white-space:nowrap;
}

/* Intent buttons inside hero */
.maya-hero-intents {
  display:flex; gap:8px; flex-wrap:wrap;
  padding:0 24px 20px;
}
.maya-hero-intents .intent-btn {
  font-size:11px; padding:8px 16px;
}

/* MAYA conversation history */
.maya-history {
  max-height:0; overflow:hidden;
  transition:max-height .4s ease;
  padding:0 24px;
}
.maya-history.open { max-height:300px; overflow-y:auto; }
.maya-msg {
  padding:10px 14px; margin-bottom:8px;
  border-radius:8px; font-size:13px; line-height:1.6;
  animation:fadeSlideUp .3s ease;
}
@keyframes fadeSlideUp { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
.maya-msg.user {
  background:rgba(212,168,67,.08);
  border:1px solid rgba(212,168,67,.12);
  color:rgba(255,255,255,.85);
  text-align:right;
}
.maya-msg.assistant {
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.05);
  color:rgba(255,255,255,.7);
}
.maya-typing {
  display:inline-flex; gap:4px; padding:8px 14px;
}
.maya-typing-dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--gold); opacity:.3;
  animation:typingBounce .8s ease-in-out infinite;
}
.maya-typing-dot:nth-child(2) { animation-delay:.15s; }
.maya-typing-dot:nth-child(3) { animation-delay:.3s; }
@keyframes typingBounce {
  0%,100%{opacity:.3;transform:translateY(0)}
  50%{opacity:1;transform:translateY(-4px)}
}
.maya-history-toggle {
  display:block; width:100%; padding:8px;
  background:none; border:none; border-top:1px solid rgba(255,255,255,.04);
  color:var(--tx3); font-size:10px; letter-spacing:1.5px;
  text-transform:uppercase; font-weight:600;
  cursor:pointer; font-family:inherit;
  transition:color .2s;
}
.maya-history-toggle:hover { color:var(--gold); }

/* Hide old bottom command bar */
.command-bar { display:none !important; }

/* ── ACCESSIBILITY ─────────────────────────────────── */
.skip-link {
  position:absolute; top:-100%; left:50%; transform:translateX(-50%);
  background:var(--gold); color:#000; padding:8px 20px; border-radius:4px;
  font-size:12px; font-weight:700; z-index:99999; text-decoration:none;
}
.skip-link:focus { top:8px; }
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after {
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
  }
  #network, #nerve-canvas { display:none !important; }
  #preloader { display:none !important; }
  #command { opacity:1 !important; }
}

/* ── COLLAPSIBLE MODULE PANELS ────────────────────── */
.module-header { cursor:pointer; user-select:none; }
.module-header::after {
  content:''; display:inline-block; width:8px; height:8px;
  border-right:2px solid var(--tx3); border-bottom:2px solid var(--tx3);
  transform:rotate(45deg); transition:transform .2s; margin-left:auto;
}
.module-panel.collapsed .module-header::after { transform:rotate(-45deg); }
.module-panel.collapsed > *:not(.module-header) { display:none; }

/* ── KPI TREND ARROWS ─────────────────────────────── */
.kpi-trend { font-size:10px; font-weight:700; margin-left:4px; }
.kpi-trend.up { color:var(--green); }
.kpi-trend.down { color:var(--red); }
.kpi-trend.flat { color:var(--tx3); }

/* ── KPI BAR — Above fold instant intelligence ────── */
.kpi-card {
  flex:1; min-width:100px;
  background:var(--bg-glass);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid var(--gold-line);
  border-radius:8px;
  padding:14px 16px;
  text-align:center;
  transition:border-color .3s, transform .3s;
}
.kpi-card:hover {
  border-color:rgba(212,168,67,.2);
  transform:translateY(-2px);
}
.kpi-num {
  font-family:'Syne',sans-serif;
  font-size:24px; font-weight:800;
  color:var(--green);
  line-height:1;
  margin-bottom:4px;
}
.kpi-label {
  font-size:8px; font-weight:700;
  letter-spacing:2px; text-transform:uppercase;
  color:var(--tx3);
}
@media(max-width:768px) {
  #kpiBar { gap:8px; }
  .kpi-card { min-width:70px; padding:10px 8px; }
  .kpi-num { font-size:18px; }
  .kpi-label { font-size:7px; letter-spacing:1px; }
}

/* ── SKELETON SHIMMER ─────────────────────────────── */
.shimmer {
  background: linear-gradient(90deg, rgba(255,255,255,.03) 25%, rgba(255,255,255,.06) 50%, rgba(255,255,255,.03) 75%);
  background-size: 200% 100%;
  animation: shimmerMove 1.8s ease-in-out infinite;
  border-radius: 6px;
}
@keyframes shimmerMove { 0%{background-position:200% 0} 100%{background-position:-200% 0} }
.shimmer-line { height: 14px; margin-bottom: 10px; }
.shimmer-line.w60 { width: 60%; }
.shimmer-line.w80 { width: 80%; }
.shimmer-line.w40 { width: 40%; }
.shimmer-block { height: 120px; margin-bottom: 16px; }
.shimmer-card { height: 80px; border-radius: 10px; margin-bottom: 12px; }

/* ── MOBILE NAV ──────────────────────────────────── */
@media (max-width: 768px) {
  .modules-section { padding: 40px 16px 80px; }
  .module-grid { grid-template-columns: 1fr; gap: 16px; }
  .module-panel { padding: 20px; }
  .intel-panel { display: none; }
  .swarm-strip { left: 16px; bottom: 60px; }
  .greeting h1 { font-size: clamp(2rem, 8vw, 3.5rem); }
  .intent-bar { gap: 6px; }
  .intent-btn { padding: 8px 14px; font-size: 10px; }
  .maya-hero-panel { margin: 0 16px; }
  .maya-input { font-size: 14px; padding: 14px 18px; }
  /* Bottom nav for mobile */
  .mobile-nav {
    display: flex;
    position: fixed; bottom: 0; left: 0; right: 0;
    background: rgba(3,3,8,.95);
    backdrop-filter: blur(20px);
    border-top: 1px solid rgba(212,168,67,.08);
    z-index: 100;
    justify-content: space-around;
    padding: 8px 0 calc(8px + env(safe-area-inset-bottom));
  }
  .mobile-nav-btn {
    display: flex; flex-direction: column;
    align-items: center; gap: 3px;
    background: none; border: none;
    color: var(--tx3); font-size: 9px;
    font-weight: 600; letter-spacing: .5px;
    padding: 6px 12px; cursor: pointer;
    font-family: inherit;
  }
  .mobile-nav-btn.active { color: var(--gold); }
  .mobile-nav-icon { font-size: 18px; }
}
@media (min-width: 769px) {
  .mobile-nav { display: none; }
}

/* ── COMMAND MODULES (Phase 2) ─────────────────────── */
.modules-section {
  position:relative; z-index:5;
  padding:80px 32px 120px;
  max-width:1300px; margin:0 auto;
}
.module-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:24px;
}
.module-panel {
  background:var(--bg-glass-strong);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  padding:28px;
  opacity:0; transform:translateY(40px);
  transition:border-color .3s;
}
.module-panel:hover { border-color:rgba(212,168,67,.15); }
.module-panel.full-width { grid-column:1/-1; }
.module-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:20px; padding-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.module-title {
  font-size:11px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; color:var(--gold);
  font-family:var(--mono);
}
.module-badge {
  font-size:9px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; padding:3px 10px;
  border-radius:3px; font-family:var(--mono);
}
.module-badge.live { background:rgba(16,185,129,.12); color:var(--green); }
.module-badge.loading { background:rgba(245,158,11,.1); color:var(--amber); }

/* Module rows */
.module-row {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.03);
  font-size:13px;
}
.module-row:last-child { border-bottom:none; }
.module-row-label { color:var(--tx2); }
.module-row-value { font-family:var(--mono); font-weight:600; color:var(--tx); }
.module-row-value.gold { color:var(--gold); }
.module-row-value.green { color:var(--green); }
.module-row-value.amber { color:var(--amber); }
.module-row-value.red { color:var(--red); }

/* Module empty state */
.module-empty {
  text-align:center; padding:32px 16px;
  font-size:12px; color:var(--tx3);
  font-style:italic;
}
.module-empty-icon {
  font-size:28px; margin-bottom:10px; opacity:.5;
  animation:emptyPulse 3s ease-in-out infinite;
}
@keyframes emptyPulse { 0%,100%{opacity:.3} 50%{opacity:.6} }
.module-empty-title {
  font-size:11px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--tx2);
  margin-bottom:6px; font-family:var(--mono);
  font-style:normal;
}
.module-empty-sub {
  font-size:11px; color:var(--tx3); line-height:1.5;
  font-style:normal; max-width:320px; margin:0 auto;
}
.module-loading-bar {
  width:80px; height:2px; margin:12px auto 0;
  background:rgba(212,168,67,.08); border-radius:1px;
  overflow:hidden;
}
.module-loading-bar::after {
  content:''; display:block;
  width:40%; height:100%;
  background:var(--gold);
  animation:loadingSlide 2s ease-in-out infinite;
}
@keyframes loadingSlide {
  0%{transform:translateX(-100%)} 50%{transform:translateX(300%)} 100%{transform:translateX(-100%)}
}

/* ── SKELETON SHIMMER ─────────────────────────── */
.shimmer-card {
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.04);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 10px;
  overflow: hidden;
  position: relative;
}
.shimmer-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(212,168,67,.04) 50%, transparent 100%);
  animation: shimmerSlide 1.8s ease-in-out infinite;
}
@keyframes shimmerSlide {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
.shimmer-line {
  height: 10px;
  border-radius: 4px;
  background: rgba(255,255,255,.04);
  margin-bottom: 8px;
}
.shimmer-line.w80 { width: 80%; }
.shimmer-line.w60 { width: 60%; }
.shimmer-line.w40 { width: 40%; }
.shimmer-line.w100 { width: 100%; }
.shimmer-circle {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: rgba(255,255,255,.04);
  margin-bottom: 8px;
}
.shimmer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 10px;
}
.shimmer-grid .shimmer-card { margin-bottom: 0; }

/* Agent card grid */
.agent-grid {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));
  gap:10px;
}
.agent-mini {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.05);
  border-radius:6px; padding:12px;
  text-align:center;
  transition:border-color .2s, background .2s;
}
.agent-mini:hover { border-color:rgba(212,168,67,.15); background:rgba(255,255,255,.04); }
.agent-mini-name {
  font-size:10px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--tx);
  font-family:var(--mono); margin-bottom:6px;
}
.agent-mini-status {
  width:8px; height:8px; border-radius:50%;
  display:inline-block; margin-bottom:4px;
  box-shadow:0 0 8px currentColor;
}
.agent-mini-status.green { background:var(--green); color:var(--green); }
.agent-mini-status.amber { background:var(--amber); color:var(--amber); }
.agent-mini-status.red { background:var(--red); color:var(--red); }
.agent-mini-status.idle { background:var(--tx3); color:var(--tx3); }
.agent-mini-role {
  font-size:9px; color:var(--tx3); margin-top:2px;
}

/* Section divider */
.modules-divider {
  text-align:center; padding:60px 0 20px;
}
.modules-divider-text {
  font-size:9px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:rgba(212,168,67,.25);
  font-family:var(--mono);
}

@media(max-width:900px) {
  .module-grid { grid-template-columns:1fr; }
  .modules-section { padding:40px 20px 100px; }
}

/* ── PHASE 2: RICH MODULE CARDS ──────────────────────── */
.opp-card, .deal-card, .risk-card {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.06);
  border-radius:8px;
  padding:14px 16px;
  margin-bottom:10px;
  transition:border-color .2s, transform .15s;
}
.opp-card:hover, .deal-card:hover, .risk-card:hover {
  border-color:rgba(212,168,67,.15);
  transform:translateY(-1px);
}
.opp-card-top, .deal-card-top, .risk-card-top {
  display:flex; align-items:center; gap:8px;
  margin-bottom:8px;
}
.opp-source {
  font-size:9px; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; padding:3px 8px;
  border-radius:3px; font-family:var(--mono);
  background:rgba(212,168,67,.12); color:var(--gold);
}
.opp-source.hunter { background:rgba(16,185,129,.12); color:var(--green); }
.opp-source.oracle { background:rgba(139,92,246,.12); color:#8b5cf6; }
.opp-source.rex { background:rgba(59,130,246,.12); color:#3b82f6; }
.opp-source.linc { background:rgba(212,168,67,.12); color:var(--gold); }
.opp-sector {
  font-size:10px; color:var(--tx3); font-family:var(--mono);
  letter-spacing:.5px;
}
.opp-title {
  font-size:13px; font-weight:600; color:var(--tx);
  margin-bottom:6px; line-height:1.4;
}
.opp-meta {
  display:flex; align-items:center; gap:12px;
  font-size:10px; color:var(--tx3); font-family:var(--mono);
}
.opp-confidence {
  display:inline-flex; align-items:center; gap:4px;
  font-weight:700;
}
.opp-confidence.high { color:var(--green); }
.opp-confidence.med { color:var(--amber); }
.opp-confidence.low { color:var(--tx3); }
.opp-action {
  margin-left:auto;
  font-size:9px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; font-family:var(--mono);
  padding:5px 12px; border-radius:3px; border:none;
  background:rgba(212,168,67,.1); color:var(--gold);
  cursor:pointer; transition:all .2s;
}
.opp-action:hover { background:rgba(212,168,67,.2); }

/* Deal cards */
.deal-stage {
  font-size:9px; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; padding:3px 8px;
  border-radius:3px; font-family:var(--mono);
}
.deal-stage.applied { background:rgba(59,130,246,.12); color:#3b82f6; }
.deal-stage.submitted { background:rgba(245,158,11,.12); color:var(--amber); }
.deal-stage.approved { background:rgba(16,185,129,.12); color:var(--green); }
.deal-stage.funded { background:rgba(212,168,67,.15); color:var(--gold); }
.deal-stage.pending { background:rgba(255,255,255,.06); color:var(--tx2); }
.deal-stage.matched { background:rgba(139,92,246,.12); color:#8b5cf6; }
.deal-company {
  font-size:13px; font-weight:600; color:var(--tx);
  margin-bottom:4px;
}
.deal-detail {
  display:flex; align-items:center; gap:14px;
  font-size:11px; color:var(--tx2); font-family:var(--mono);
}
.deal-value { font-weight:700; color:var(--gold); }
.deal-lender { color:var(--tx3); }
.deal-days { font-size:10px; color:var(--tx3); margin-left:auto; }

/* Risk cards */
.risk-severity {
  font-size:9px; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; padding:3px 8px;
  border-radius:3px; font-family:var(--mono);
}
.risk-severity.critical { background:rgba(239,68,68,.15); color:var(--red); }
.risk-severity.warning { background:rgba(245,158,11,.12); color:var(--amber); }
.risk-severity.info { background:rgba(16,185,129,.12); color:var(--green); }
.risk-agent {
  font-size:10px; font-weight:700; color:var(--tx2);
  font-family:var(--mono); letter-spacing:.5px;
}
.risk-summary {
  font-size:12px; color:var(--tx); line-height:1.5;
  margin-bottom:8px;
}
.risk-resolve {
  font-size:9px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; font-family:var(--mono);
  padding:5px 12px; border-radius:3px; border:none;
  background:rgba(16,185,129,.1); color:var(--green);
  cursor:pointer; transition:all .2s;
}
.risk-resolve:hover { background:rgba(16,185,129,.2); }
.risk-client-group {
  font-size:10px; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; color:var(--gold);
  font-family:var(--mono);
  padding:12px 0 6px;
  border-bottom:1px solid rgba(212,168,67,.08);
  margin-bottom:8px;
}

/* Agent floor grid upgrade */
.agent-floor-grid {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
}
.agent-floor-card {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.06);
  border-radius:8px;
  padding:14px;
  transition:border-color .2s;
  position:relative;
}
.agent-floor-card:hover { border-color:rgba(212,168,67,.15); }
.agent-floor-top {
  display:flex; align-items:center; gap:8px;
  margin-bottom:6px;
}
.agent-floor-dot {
  width:8px; height:8px; border-radius:50%;
  flex-shrink:0;
}
.agent-floor-dot.active { background:var(--green); box-shadow:0 0 6px var(--green); }
.agent-floor-dot.warning { background:var(--amber); box-shadow:0 0 6px var(--amber); }
.agent-floor-dot.error { background:var(--red); box-shadow:0 0 6px var(--red); }
.agent-floor-dot.idle { background:var(--tx3); }
.agent-floor-name {
  font-size:12px; font-weight:700; color:var(--tx);
  font-family:var(--mono); letter-spacing:.5px;
}
.agent-floor-role {
  font-size:10px; color:var(--tx3); line-height:1.3;
  margin-bottom:8px;
}
.agent-floor-meta {
  display:flex; justify-content:space-between;
  font-size:9px; color:var(--tx3); font-family:var(--mono);
}
.agent-floor-count {
  color:var(--gold); font-weight:700;
}
@media(max-width:900px) {
  .agent-floor-grid { grid-template-columns:repeat(2, 1fr); }
}

/* Agent Control v0 */
.agent-control-summary {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:8px;
  margin-bottom:12px;
}
.agent-control-stat {
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.055);
  border-radius:8px;
  padding:10px;
  min-width:0;
}
.agent-control-stat span {
  display:block;
  font-family:var(--mono);
  font-size:18px;
  font-weight:800;
  color:var(--tx);
  line-height:1;
}
.agent-control-stat small {
  display:block;
  margin-top:6px;
  font-size:8px;
  letter-spacing:1.3px;
  text-transform:uppercase;
  color:var(--tx3);
  font-family:var(--mono);
  white-space:nowrap;
}
.agent-control-stat.critical span { color:var(--red); }
.agent-control-stat.warning span { color:var(--amber); }
.agent-control-note {
  border:1px solid rgba(212,168,67,.08);
  background:rgba(212,168,67,.035);
  border-radius:8px;
  padding:10px 12px;
  margin-bottom:12px;
  color:var(--tx3);
  font-size:11px;
  line-height:1.45;
}
.agent-control-note strong {
  color:var(--gold);
  font-weight:700;
}
.agent-control-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}
.agent-control-card {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.06);
  border-radius:8px;
  padding:12px;
  min-width:0;
}
.agent-control-top {
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-bottom:8px;
}
.agent-control-name {
  font-size:11px;
  font-weight:800;
  color:var(--tx);
  font-family:var(--mono);
  letter-spacing:.6px;
  overflow-wrap:anywhere;
}
.agent-control-dept {
  margin-top:2px;
  font-size:8px;
  color:var(--gold);
  font-family:var(--mono);
  letter-spacing:1.2px;
  text-transform:uppercase;
}
.agent-control-latest {
  min-height:34px;
  color:var(--tx2);
  font-size:11px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.agent-control-meta {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:6px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.05);
  color:var(--tx3);
  font-size:8px;
  font-family:var(--mono);
  text-transform:uppercase;
  letter-spacing:.8px;
}
.agent-control-meta strong {
  display:block;
  margin-top:3px;
  color:var(--tx);
  font-size:10px;
  letter-spacing:0;
  text-transform:none;
}
.agent-control-mode {
  margin-top:8px;
  color:var(--gold);
  font-size:8px;
  font-family:var(--mono);
  letter-spacing:1px;
  text-transform:uppercase;
}
@media(max-width:900px) {
  .agent-control-summary { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .agent-control-grid { grid-template-columns:1fr; }
}

/* Outcome Proof */
.proof-summary {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
  margin-bottom:12px;
}
.proof-stat {
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.055);
  border-radius:8px;
  padding:11px 10px;
  min-width:0;
}
.proof-stat span {
  display:block;
  font-family:var(--mono);
  font-size:18px;
  font-weight:850;
  color:var(--tx);
  line-height:1.08;
  overflow-wrap:anywhere;
}
.proof-stat small {
  display:block;
  margin-top:6px;
  font-size:8px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--tx3);
  font-family:var(--mono);
  white-space:nowrap;
}
.proof-stat.delivered span { color:var(--green); }
.proof-stat.pending-value span { color:var(--gold); }
.proof-stat.rejected span { color:var(--red); }
.proof-rule {
  border:1px solid rgba(212,168,67,.08);
  background:rgba(212,168,67,.035);
  border-radius:8px;
  padding:10px 12px;
  margin-bottom:12px;
  color:var(--tx3);
  font-size:11px;
  line-height:1.5;
}
.proof-rule strong {
  color:var(--gold);
  font-weight:800;
}
.proof-list {
  display:grid;
  gap:8px;
}
.proof-row {
  padding:12px 14px;
  border-radius:8px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.055);
}
.proof-row-top {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:6px;
}
.proof-status {
  font-size:8px;
  font-weight:850;
  letter-spacing:1.1px;
  text-transform:uppercase;
  font-family:var(--mono);
}
.proof-status.delivered,
.proof-value.delivered { color:var(--green); }
.proof-status.pending,
.proof-value.pending { color:var(--gold); }
.proof-status.rejected,
.proof-value.rejected { color:var(--red); }
.proof-company {
  min-width:0;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:750;
  overflow-wrap:anywhere;
}
.proof-value {
  margin-left:auto;
  font-size:13px;
  font-weight:850;
  font-family:var(--mono);
}
.proof-meta {
  color:rgba(255,255,255,.48);
  font-size:11px;
  line-height:1.5;
}
.proof-evidence {
  color:rgba(255,255,255,.38);
  font-size:11px;
  line-height:1.45;
  margin-top:6px;
}
.proof-evidence.missing {
  color:rgba(245,158,11,.55);
}
@media(max-width:900px) {
  .proof-summary { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .proof-value {
    width:100%;
    margin-left:0;
  }
}

/* Brain Roots + Connector Freshness */
.brain-root-summary {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:8px;
  margin-bottom:12px;
}
.brain-root-stat {
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.055);
  border-radius:8px;
  padding:11px 10px;
  min-width:0;
}
.brain-root-stat span {
  display:block;
  font-family:var(--mono);
  font-size:18px;
  font-weight:850;
  color:var(--tx);
  line-height:1.08;
  overflow-wrap:anywhere;
}
.brain-root-stat small {
  display:block;
  margin-top:6px;
  font-size:8px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--tx3);
  font-family:var(--mono);
  white-space:nowrap;
}
.brain-root-stat.verified span { color:var(--green); }
.brain-root-stat.weak span { color:var(--red); }
.brain-root-stat.connector span { color:var(--gold); }
.brain-root-rule {
  border:1px solid rgba(212,168,67,.08);
  background:rgba(212,168,67,.035);
  border-radius:8px;
  padding:10px 12px;
  margin-bottom:12px;
  color:var(--tx3);
  font-size:11px;
  line-height:1.5;
}
.brain-root-rule strong {
  color:var(--gold);
  font-weight:800;
}
.connector-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-bottom:12px;
}
.connector-card,
.brain-root-card {
  padding:12px;
  border-radius:8px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.055);
  min-width:0;
}
.connector-card.verified { border-color:rgba(16,185,129,.13); background:rgba(16,185,129,.035); }
.connector-card.degraded { border-color:rgba(245,158,11,.13); background:rgba(245,158,11,.035); }
.connector-card.stale { border-color:rgba(239,68,68,.13); background:rgba(239,68,68,.035); }
.connector-card.unknown { border-color:rgba(255,255,255,.05); }
.connector-top,
.brain-root-card-top {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:6px;
  min-width:0;
}
.connector-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  flex:0 0 auto;
}
.connector-dot.verified { background:var(--green); box-shadow:0 0 6px var(--green); }
.connector-dot.degraded { background:var(--amber); box-shadow:0 0 6px var(--amber); }
.connector-dot.stale { background:var(--red); box-shadow:0 0 6px var(--red); }
.connector-dot.unknown { background:rgba(255,255,255,.24); }
.connector-name,
.brain-table-name {
  min-width:0;
  flex:1;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:750;
  overflow-wrap:anywhere;
}
.connector-status {
  color:var(--tx3);
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:1px;
  text-transform:uppercase;
}
.connector-card.verified .connector-status { color:var(--green); }
.connector-card.degraded .connector-status { color:var(--amber); }
.connector-card.stale .connector-status { color:var(--red); }
.connector-detail,
.brain-root-card-meta {
  color:rgba(255,255,255,.42);
  font-size:11px;
  line-height:1.45;
}
.brain-root-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
}
.brain-density {
  font-size:8px;
  font-weight:850;
  letter-spacing:1px;
  text-transform:uppercase;
  font-family:var(--mono);
}
.brain-density.rich { color:var(--green); }
.brain-density.adequate { color:#60a5fa; }
.brain-density.thin { color:var(--gold); }
.brain-density.weak { color:var(--red); }
@media(max-width:900px) {
  .brain-root-summary { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .connector-grid,
  .brain-root-grid { grid-template-columns:1fr; }
}

/* ── RESPONSIVE ────────────────────────────────────── */
@media(max-width:768px){
  .viewport { padding:0 20px; }
  .greeting { font-size:clamp(2.2rem,10vw,3.5rem); }
  .intel-panel { display:none; }
  .topbar { padding:0 16px; }
  .swarm-strip { left:20px; bottom:60px; }
  .maya-hero-panel { border-radius:10px; }
  .maya-hero-header { padding:12px 16px 0; }
  .maya-hero-input-area { padding:12px 16px 10px; }
  .maya-hero-input { font-size:14px; padding:12px 12px; }
  .maya-hero-submit { padding:12px 20px; font-size:11px; }
  .maya-hero-intents { padding:0 16px 16px; gap:6px; }
  .maya-hero-intents .intent-btn { font-size:10px; padding:7px 12px; }
  .maya-hero-response { padding:0 16px 12px; }
}
@media(pointer:fine){
  a,button,input,[role="button"],.intent-btn,.topbar-btn,.command-submit {
    cursor:pointer!important;
  }
}

/* ── MASON CONTENT PREVIEW ──────────────────────────── */
.content-card {
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.06);
  border-radius:8px;
  padding:16px 18px;
  margin-bottom:12px;
  transition:border-color .2s;
}
.content-card:hover { border-color:rgba(212,168,67,.15); }
.content-card-header {
  display:flex; align-items:center; gap:10px;
  margin-bottom:10px;
}
.content-platform-badge {
  font-size:9px; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; padding:3px 8px;
  border-radius:3px; font-family:var(--mono);
}
.content-platform-badge.linkedin { background:rgba(0,119,181,.15); color:#0077B5; }
.content-platform-badge.instagram { background:rgba(225,48,108,.12); color:#E1306C; }
.content-platform-badge.tiktok { background:rgba(255,0,80,.1); color:#FF0050; }
.content-platform-badge.twitter { background:rgba(29,161,242,.12); color:#1DA1F2; }
.content-platform-badge.facebook { background:rgba(24,119,242,.12); color:#1877F2; }
.content-platform-badge.default { background:rgba(255,255,255,.06); color:var(--tx2); }
.content-account {
  font-size:11px; color:var(--tx2); font-family:var(--mono);
}
.content-title {
  font-size:13px; font-weight:600; color:var(--tx);
  margin-bottom:6px;
}
.content-body {
  font-size:12px; color:var(--tx2); line-height:1.55;
  display:-webkit-box; -webkit-line-clamp:3;
  -webkit-box-orient:vertical; overflow:hidden;
  transition:all .2s;
}
.content-body.expanded {
  -webkit-line-clamp:unset; overflow:visible;
}
.content-expand {
  background:none; border:none;
  font-size:10px; color:var(--gold); font-family:var(--mono);
  letter-spacing:1px; text-transform:uppercase;
  margin-top:8px; padding:0; cursor:pointer;
  opacity:.6; transition:opacity .2s;
}
.content-expand:hover { opacity:1; }
.content-actions {
  display:flex; gap:10px; margin-top:14px;
  padding-top:12px; border-top:1px solid rgba(255,255,255,.04);
}
.content-btn {
  font-size:10px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; font-family:var(--mono);
  padding:7px 18px; border-radius:4px; border:none;
  cursor:pointer; transition:all .2s;
}
.content-btn.approve {
  background:var(--gold); color:#000;
}
.content-btn.approve:hover { background:#e6ba50; }
.content-btn.reject {
  background:transparent; color:var(--red);
  border:1px solid rgba(239,68,68,.25);
}
.content-btn.reject:hover { background:rgba(239,68,68,.08); }
.content-btn:disabled { opacity:.35; pointer-events:none; }
.mason-portal {
  display:flex;
  flex-direction:column;
  gap:14px;
}
.mason-portal-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.mason-portal-stats {
  display:grid;
  grid-template-columns:repeat(6, minmax(72px, 1fr));
  gap:8px;
  min-width:min(100%, 520px);
}
.mason-portal-stat {
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.06);
  border-radius:6px;
  padding:10px 8px;
  text-align:center;
}
.mason-portal-stat span:last-child {
  display:block;
  margin-top:3px;
  color:var(--tx2);
  font-size:9px;
  font-family:var(--mono);
  letter-spacing:1px;
  text-transform:uppercase;
}
.content-filter-row {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.content-filter,
.content-platform-filter {
  min-height:32px;
  border-radius:4px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  color:var(--tx2);
  font-family:var(--mono);
  font-size:10px;
  font-weight:750;
  letter-spacing:1px;
  text-transform:uppercase;
}
.content-filter { padding:0 12px; }
.content-filter.active-yes {
  border-color:rgba(212,168,67,.45);
  background:rgba(212,168,67,.12);
  color:var(--gold);
}
.content-platform-filter {
  margin-left:auto;
  padding:0 10px;
}
.mason-portal-status-note {
  color:var(--tx3);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.6px;
  text-transform:uppercase;
}
.mason-portal-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.content-status-chip {
  margin-left:auto;
  border-radius:3px;
  padding:3px 8px;
  font-family:var(--mono);
  font-size:9px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
}
.content-status-pending,
.content-status-draft,
.content-status-outlined {
  background:rgba(212,168,67,.12);
  color:var(--gold);
}
.content-status-approved,
.content-status-published {
  background:rgba(34,197,94,.12);
  color:var(--green);
}
.content-status-scheduled {
  background:rgba(96,165,250,.12);
  color:#60a5fa;
}
.content-status-failed,
.content-status-rejected {
  background:rgba(239,68,68,.12);
  color:var(--red);
}
.content-hook {
  margin:8px 0;
  padding:8px 10px;
  border-left:2px solid rgba(212,168,67,.45);
  background:rgba(212,168,67,.06);
  color:var(--tx);
  font-size:12px;
  line-height:1.45;
}
.content-meta-row {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:12px;
}
.content-meta-row span {
  border:1px solid rgba(255,255,255,.06);
  border-radius:3px;
  padding:4px 7px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:9px;
  text-transform:uppercase;
}
.content-error {
  margin-top:10px;
  color:var(--red);
  font-family:var(--mono);
  font-size:10px;
  line-height:1.45;
}
.content-safe-note {
  margin-top:12px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:10px;
  text-transform:uppercase;
}
@media(max-width:1100px) {
  .mason-portal-head { flex-direction:column; }
  .mason-portal-stats,
  .mason-portal-grid { grid-template-columns:1fr; }
  .content-platform-filter { margin-left:0; width:100%; }
}

/* ── AGENT ACCOUNTABILITY ─────────────────────────── */
.accountability-board {
  display:flex;
  flex-direction:column;
  gap:14px;
}
.accountability-stats {
  display:grid;
  grid-template-columns:repeat(9, minmax(0, 1fr));
  gap:8px;
}
.accountability-stats > div {
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.06);
  border-radius:6px;
  padding:12px 10px;
  text-align:center;
}
.accountability-stats > div.warn {
  border-color:rgba(212,168,67,.22);
  background:rgba(212,168,67,.07);
}
.accountability-stats span {
  display:block;
  color:var(--gold);
  font-size:18px;
  font-family:var(--mono);
  font-weight:900;
}
.accountability-stats small {
  display:block;
  margin-top:4px;
  color:var(--tx2);
  font-size:9px;
  font-family:var(--mono);
  letter-spacing:1px;
  text-transform:uppercase;
}
.accountability-rule {
  border:1px solid rgba(212,168,67,.12);
  background:rgba(212,168,67,.055);
  color:var(--tx2);
  border-radius:6px;
  padding:10px 12px;
  font-size:11px;
  line-height:1.55;
}
.accountability-sprint-readiness {
  border:1px solid rgba(212,168,67,.1);
  background:rgba(255,255,255,.018);
  border-radius:6px;
  padding:12px;
}
.accountability-intelligence-density,
.accountability-handoff-inbox,
.accountability-autonomy {
  border:1px solid rgba(255,255,255,.065);
  background:rgba(255,255,255,.018);
  border-radius:6px;
  padding:12px;
}
.accountability-handoff-meta {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:8px;
}
.accountability-handoff-meta span {
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.02);
  border-radius:999px;
  color:var(--tx2);
  font-family:var(--mono);
  font-size:9px;
  line-height:1.3;
  padding:5px 8px;
  text-transform:uppercase;
}
.accountability-density-counts,
.accountability-kpi-strip {
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:8px;
  margin-bottom:10px;
}
.accountability-density-counts > div,
.accountability-kpi-strip > div {
  background:rgba(255,255,255,.022);
  border:1px solid rgba(255,255,255,.055);
  border-radius:6px;
  padding:9px;
  min-width:0;
}
.accountability-density-counts span,
.accountability-kpi-strip span {
  display:block;
  color:var(--gold);
  font-family:var(--mono);
  font-size:15px;
  font-weight:900;
}
.accountability-density-counts small,
.accountability-kpi-strip small {
  display:block;
  margin-top:3px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.8px;
  text-transform:uppercase;
}
.accountability-density-tags,
.accountability-guardrails {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:8px 0 10px;
}
.accountability-density-tags span,
.accountability-guardrails span {
  border:1px solid rgba(212,168,67,.11);
  background:rgba(212,168,67,.045);
  border-radius:999px;
  color:var(--tx2);
  font-family:var(--mono);
  font-size:9px;
  line-height:1.3;
  padding:5px 8px;
}
.accountability-density-grid,
.accountability-stage-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.accountability-density-row {
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.018);
  border-radius:6px;
  padding:10px;
  margin-bottom:8px;
}
.accountability-density-row div {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
.accountability-density-row strong {
  color:var(--tx);
  font-size:11px;
  line-height:1.35;
}
.accountability-density-row div span {
  color:var(--gold);
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.8px;
  text-transform:uppercase;
  white-space:nowrap;
}
.accountability-density-row p {
  margin:7px 0 0;
  color:var(--tx2);
  font-size:11px;
  line-height:1.45;
}
.accountability-density-row small {
  display:block;
  margin-top:7px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:9px;
  line-height:1.35;
}
.accountability-readiness-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
}
.accountability-readiness-card {
  background:rgba(255,255,255,.022);
  border:1px solid rgba(255,255,255,.06);
  border-left:2px solid rgba(212,168,67,.35);
  border-radius:6px;
  padding:11px;
}
.accountability-readiness-card.state-proved {
  border-left-color:rgba(34,197,94,.65);
}
.accountability-readiness-card.state-blocked {
  border-left-color:rgba(239,68,68,.7);
  background:rgba(239,68,68,.035);
}
.accountability-readiness-card.state-waiting {
  border-left-color:rgba(245,158,11,.65);
}
.accountability-readiness-card.autonomy-state-gated {
  border-left-color:rgba(239,68,68,.7);
  background:rgba(239,68,68,.035);
}
.accountability-readiness-card.autonomy-state-active,
.accountability-readiness-card.autonomy-state-candidate,
.accountability-readiness-card.autonomy-state-tracked {
  border-left-color:rgba(212,168,67,.72);
}
.accountability-readiness-card.autonomy-state-clear {
  border-left-color:rgba(34,197,94,.65);
}
.accountability-research-usage {
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-top:10px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.018);
  border-radius:6px;
  padding:10px;
}
.accountability-research-usage strong {
  color:var(--tx);
  font-size:11px;
}
.accountability-research-usage span,
.accountability-research-usage small {
  color:var(--tx3);
  font-family:var(--mono);
  font-size:10px;
  line-height:1.4;
}
.accountability-columns {
  display:grid;
  grid-template-columns:1.1fr 1fr .9fr;
  gap:12px;
}
.accountability-conflict-row {
  grid-template-columns:1fr;
}
.accountability-section-title {
  margin:0 0 8px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:1.2px;
  text-transform:uppercase;
}
.accountability-card {
  background:rgba(255,255,255,.022);
  border:1px solid rgba(255,255,255,.06);
  border-left:2px solid rgba(212,168,67,.35);
  border-radius:6px;
  padding:12px;
  margin-bottom:8px;
}
.accountability-card.status-done {
  border-left-color:rgba(34,197,94,.55);
}
.accountability-card.status-blocked,
.accountability-card.status-needs_craig,
.accountability-card.status-abandoned {
  border-left-color:rgba(239,68,68,.55);
}
.accountability-card-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.accountability-card-top strong {
  color:var(--tx);
  font-size:12px;
  line-height:1.35;
}
.accountability-card-top span {
  color:var(--gold);
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:1px;
  text-transform:uppercase;
}
.accountability-meta,
.accountability-proof,
.accountability-blocker,
.accountability-empty {
  margin-top:7px;
  color:var(--tx3);
  font-family:var(--mono);
  font-size:10px;
  line-height:1.45;
}
.accountability-summary {
  margin-top:9px;
  color:var(--tx2);
  font-size:12px;
  line-height:1.5;
}
.accountability-blocker {
  color:var(--red);
}
@media(max-width:1100px) {
  .accountability-stats { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .accountability-density-counts,
  .accountability-kpi-strip { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .accountability-density-grid,
  .accountability-stage-grid { grid-template-columns:1fr; }
  .accountability-readiness-grid { grid-template-columns:1fr; }
  .accountability-columns { grid-template-columns:1fr; }
}

/* Toast notification */
.content-toast {
  position:fixed; bottom:100px; left:50%;
  transform:translateX(-50%) translateY(20px);
  background:var(--bg-glass-strong);
  backdrop-filter:blur(20px);
  border:1px solid rgba(212,168,67,.2);
  border-radius:6px;
  padding:10px 24px;
  font-size:11px; font-family:var(--mono);
  letter-spacing:1px; color:var(--gold);
  z-index:9999;
  opacity:0; transition:opacity .3s, transform .3s;
  pointer-events:none;
}
.content-toast.show {
  opacity:1; transform:translateX(-50%) translateY(0);
}

/* ── NERVE NODE — labels hidden, show on hover ────── */
.nerve-node:hover .nerve-name { opacity:1 !important; }

/* ── MAYA 3D ORB ─────────────────────────────────── */
@keyframes mayaOrbPulse {
  0%, 100% { box-shadow: 0 0 60px rgba(212,168,67,.4), 0 0 120px rgba(212,168,67,.15); transform: scale(1); }
  50% { box-shadow: 0 0 80px rgba(212,168,67,.6), 0 0 160px rgba(212,168,67,.25); transform: scale(1.05); }
}

/* ── INTELLIGENCE TICKER ──────────────────────────── */
@keyframes tickerScroll {
  0% { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}

/* ── INTENT VIEW ─────────────────────────────────── */
.intent-view { position:relative; z-index:5; }

/* ── DECISION AREA ───────────────────────────────── */
#decisionArea { position:relative; z-index:5; }

/* ── EXTRACTED INLINE STYLES (S317 cleanup) ────────── */
.boot-log {
  margin-top:28px; font-family:var(--mono);
  font-size:10px; color:rgba(212,168,67,.3);
  letter-spacing:1px; text-align:center; line-height:2;
}
.health-dots { display:flex; gap:4px; margin-left:12px; }
.health-dot {
  width:6px; height:6px; border-radius:50%; opacity:.5;
}
.health-dot.supa { background:var(--green); }
.health-dot.n8n { background:var(--amber); }
.topbar-link { text-decoration:none; }
.topbar-link.truth { color:#00F0FF; }
.notif-badge {
  display:none; background:var(--red); color:#fff;
  font-size:10px; font-weight:800; padding:3px 8px;
  border-radius:10px; font-family:var(--mono); cursor:pointer;
}
.maya-version {
  font-size:10px; color:var(--tx3); margin-left:4px;
  font-family:var(--mono);
}
.kpi-num-amber { color:var(--amber); }
.kpi-num-green { color:var(--green); }
.kpi-num-blue { color:#3b82f6; }
.kpi-num-gold { color:var(--gold); font-size:12px; }
.intel-digest-wrap {
  max-width:1300px; margin:0 auto; padding:0 32px 24px;
}
.intel-digest-card {
  background:rgba(6,10,18,.55); backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(212,168,67,.1); border-radius:10px;
  padding:24px; position:relative;
}
.intel-digest-header {
  display:flex; align-items:center; gap:10px; margin-bottom:14px;
}
.intel-digest-dot {
  width:8px; height:8px; border-radius:50%;
  background:#10b981; box-shadow:0 0 8px rgba(16,185,129,.5);
}
.intel-digest-label {
  font-size:11px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; color:var(--gold);
}
.intel-digest-date {
  font-size:10px; color:var(--tx3); font-family:var(--mono);
  margin-left:auto;
}
.intel-digest-body {
  font-size:13px; color:rgba(255,255,255,.7); line-height:1.7;
  white-space:pre-wrap; max-height:200px; overflow-y:auto;
}

/* ═══════════════════════════════════════════════════════════
   SIDEBAR NAV — Phase 1 Merge
   ═══════════════════════════════════════════════════════════ */
.sidebar {
  position:fixed; top:48px; left:0; bottom:0;
  width:52px; background:rgba(3,3,8,.95);
  border-right:1px solid rgba(212,168,67,.06);
  z-index:40; display:flex; flex-direction:column;
  padding:8px 0; transition:width .25s cubic-bezier(.23,1,.32,1);
  overflow-x:hidden; overflow-y:auto; backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  scrollbar-width:thin; scrollbar-color:rgba(212,168,67,.25) transparent;
}
.sidebar::-webkit-scrollbar { width:4px; }
.sidebar::-webkit-scrollbar-thumb { background:rgba(212,168,67,.25); }
.sidebar:hover { width:200px; }
.sidebar-item {
  display:flex; align-items:center; gap:12px;
  padding:10px 14px; color:rgba(255,255,255,.3);
  cursor:pointer; white-space:nowrap;
  transition:background .15s, color .15s;
  border-left:2px solid transparent;
  text-decoration:none; font-size:11px;
  font-weight:600; letter-spacing:.5px;
  text-transform:uppercase; font-family:inherit;
  background:none; border-right:none;
  border-top:none; border-bottom:none; width:100%;
  flex-shrink:0;
}
.sidebar-item:hover { background:rgba(212,168,67,.04); color:rgba(255,255,255,.7); }
.sidebar-item.active { background:rgba(212,168,67,.08); color:#D4A843; border-left-color:#D4A843; }
.sidebar-icon { font-size:16px; flex-shrink:0; width:24px; text-align:center; }
.sidebar-label { font-size:10px; }
.sidebar-sep { height:1px; background:rgba(255,255,255,.04); margin:4px 0; flex-shrink:0; }
.sidebar-group-label {
  font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:rgba(212,168,67,.55); padding:10px 14px 2px; white-space:nowrap;
  flex-shrink:0; overflow:hidden;
}

/* ── MAIN CONTENT OFFSET FOR SIDEBAR ────────────── */
#command { margin-left:52px; width:calc(100% - 52px); }
/* #decisionArea, #intentView, .modules-section are inside #command — no extra margin needed */
/* #intelTicker is position:fixed so needs explicit left offset */
#intelTicker { left:52px; }

/* ── MODULE SCROLL REVEAL ───────────────────────── */
.module-panel {
  opacity:0; transform:translateY(30px);
  transition:opacity .6s ease, transform .6s ease;
}
.module-panel.visible {
  opacity:1; transform:translateY(0);
}

/* ── PARTNER VIEW GATE ──────────────────────────── */
body.partner-view [data-founder-only] { display:none; }

/* ── SIDEBAR MOBILE HIDE ───────────────────────── */
@media(max-width:768px) {
  .sidebar { display:none; }
  #command { margin-left:0; width:100%; }
  #intelTicker { left:0; }
}

/* ═══════════════════════════════════════════════════════════
   PHASE 5: MOBILE — Complete responsive pass
   ═══════════════════════════════════════════════════════════ */
@media(max-width:768px) {
  /* Topbar */
  .topbar { padding:0 12px; height:44px; }
  .topbar-logo { font-size:16px; letter-spacing:3px; }
  .topbar-btn { padding:4px 10px; font-size:9px; }
  .health-dots { display:none; }
  .topbar-status { display:none; }

  /* MAYA hero */
  .maya-hero {
    min-height:60vh !important;
    width:100% !important;
    max-width:100% !important;
    align-self:stretch !important;
    transform:translateX(-96px) !important;
  }
  #mayaVisual { width:120px !important; height:120px !important; }
  .maya-hero .greeting {
    font-size:clamp(1.05rem,4.8vw,1.35rem) !important;
    line-height:1.12 !important;
    max-width:calc(100vw - 40px) !important;
  }
  .greeting-sub {
    max-width:calc(100vw - 40px) !important;
    letter-spacing:0 !important;
  }
  .maya-hero-panel {
    width:calc(100% - 16px) !important;
    margin:0 auto !important;
    border-radius:10px;
  }
  .maya-hero-input {
    flex:1 0 100% !important;
    min-width:0 !important;
    font-size:14px !important;
    padding:12px !important;
  }
  .maya-hero-input-wrap { flex-wrap:wrap; }
  .maya-listen-btn { flex:1 1 0 !important; min-width:0 !important; padding:12px 10px !important; font-size:10px !important; }
  .maya-voice-btn { flex:1 1 0 !important; min-width:0 !important; padding:12px 10px !important; font-size:10px !important; }
  .maya-hero-submit { flex:1 0 100% !important; min-width:0 !important; margin-top:4px !important; padding:12px 10px !important; font-size:10px !important; }
  .maya-hero-intents {
    padding:0 12px 12px !important;
    gap:4px !important;
    max-height:none !important;
    overflow:visible !important;
  }
  .maya-hero-intents .intent-btn {
    flex:1 1 calc(50% - 4px) !important;
    min-width:0 !important;
    justify-content:center !important;
  }
  .maya-hero-intents .intent-btn { font-size:9px !important; padding:6px 10px !important; }

  /* KPI strip */
  [data-kpi-strip] { flex-wrap:wrap; justify-content:center; }

  /* Decision area */
  #decisionArea { padding:12px 16px 24px !important; }

  /* Modules section */
  .modules-section { padding:20px 12px 100px !important; }
  .module-grid { grid-template-columns:1fr !important; gap:12px !important; }
  .module-panel { padding:16px !important; }
  .module-panel.full-width { grid-column:1 !important; }
  .module-header { margin-bottom:12px; padding-bottom:10px; }
  .module-title { font-size:10px; letter-spacing:1.5px; }

  /* Intent view */
  #intentView { padding:0 12px 40px !important; }
  #intentClose { right:16px !important; }

  /* Ticker */
  #intelTicker { padding:4px 0; }
  #tickerTrack { font-size:9px; }

  /* Tables to card view */
  .data-table, .cw-table { font-size:11px; }
  .data-table th, .data-table td, .cw-th, .cw-td { padding:6px 8px; }

  /* Bottom nav adjustments */
  .mobile-nav {
    padding:6px 0 calc(6px + env(safe-area-inset-bottom));
  }
  .mobile-nav-btn {
    font-size:8px;
    padding:4px 8px;
  }
  .mobile-nav-icon { font-size:16px; }
}

/* Small phones (375px) */
@media(max-width:400px) {
  .topbar-logo { font-size:14px; letter-spacing:2px; }
  .maya-hero-panel { margin:0 4px !important; }
  .modules-section { padding:12px 8px 100px !important; }
  .module-panel { padding:12px !important; }
  .mobile-nav-btn { font-size:7px; padding:3px 6px; }
}

/* ── PHASE 9: SMOOTH TRANSITIONS ────────────────────── */
.module-panel {
  transition:opacity .6s ease, transform .6s ease, border-color .3s;
}
.module-panel:hover {
  border-color:rgba(212,168,67,.15);
}

/* ── 2030 PORTAL: INTERACTIVE INTELLIGENCE FLOW MAP ───────────── */
.intel-flow-map {
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid rgba(212,168,67,.11);
  border-radius: 10px;
  background: radial-gradient(circle at 50% 40%, rgba(212,168,67,.07), rgba(5,7,11,.62) 56%);
  overflow: hidden;
}
.intel-flow-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.intel-flow-head span {
  display: block;
  color: var(--gold);
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.intel-flow-head strong {
  display: block;
  color: rgba(255,255,255,.5);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  margin-top: 5px;
}
.intel-flow-head button {
  border: 1px solid rgba(212,168,67,.16);
  background: rgba(212,168,67,.055);
  color: var(--gold);
  border-radius: 6px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .7px;
  padding: 7px 10px;
  white-space: nowrap;
}
.intel-flow-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(190px,.78fr) minmax(0,1fr);
  gap: 12px;
  align-items: stretch;
}
.intel-flow-col {
  display: grid;
  gap: 7px;
  align-content: start;
}
.intel-flow-col.homes {
  grid-column: 1 / -1;
  grid-template-columns: repeat(auto-fit, minmax(160px,1fr));
}
.intel-flow-col.homes .intel-flow-label {
  grid-column: 1 / -1;
}
.intel-flow-label {
  color: rgba(255,255,255,.35);
  font-family: var(--mono);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 2px;
}
.intel-graph-node {
  width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  text-align: left;
  border: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.026);
  color: rgba(255,255,255,.7);
  border-radius: 8px;
  cursor: pointer;
  font-family: inherit;
  padding: 9px 10px;
  transition: border-color .18s, background .18s, transform .18s;
}
.intel-graph-node:hover {
  border-color: rgba(212,168,67,.34);
  background: rgba(212,168,67,.06);
  transform: translateY(-1px);
}
.intel-graph-node span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 750;
}
.intel-graph-node strong {
  flex: 0 0 auto;
  min-width: 28px;
  color: var(--gold);
  font-family: var(--mono);
  font-size: 13px;
  text-align: right;
}
.intel-graph-node.dept { border-left: 2px solid rgba(212,168,67,.42); }
.intel-graph-node.agent { border-left: 2px solid rgba(96,165,250,.42); }
.intel-graph-node.home { border-left: 2px solid rgba(16,185,129,.42); }
.intel-flow-core {
  display: grid;
  gap: 10px;
  align-content: center;
  justify-items: center;
  min-height: 190px;
}
.intel-flow-orbit {
  width: 168px;
  height: 168px;
  border-radius: 50%;
  border: 1px solid rgba(212,168,67,.24);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.22);
  box-shadow: 0 0 60px rgba(212,168,67,.07) inset;
}
.intel-flow-core-num {
  color: var(--gold);
  font-family: var(--display);
  font-size: 40px;
  font-weight: 900;
  line-height: 1;
}
.intel-flow-core-label {
  max-width: 112px;
  color: rgba(255,255,255,.43);
  font-family: var(--mono);
  font-size: 8px;
  letter-spacing: .8px;
  line-height: 1.35;
  margin-top: 8px;
  text-align: center;
  text-transform: uppercase;
}
.intel-flow-rule {
  max-width: 210px;
  color: rgba(255,255,255,.48);
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}
.intel-flow-empty {
  color: rgba(255,255,255,.3);
  font-size: 11px;
  line-height: 1.45;
  border: 1px dashed rgba(255,255,255,.08);
  border-radius: 8px;
  padding: 10px;
}

@media(max-width:768px) {
  .intel-flow-head { flex-direction: column; }
  .intel-flow-grid { grid-template-columns: 1fr; }
  .intel-flow-core { order: -1; min-height: auto; }
  .intel-flow-col.homes { grid-template-columns: 1fr; }
}

/* ── 2030 PORTAL: PROOF FLYWHEEL ─────────────────────────────── */
.proof-flywheel-wrap {
  display: grid;
  gap: 14px;
}
.proof-flywheel-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(140px,1fr));
  gap: 10px;
}
.proof-flywheel-stat {
  padding: 14px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 8px;
  background: rgba(255,255,255,.026);
}
.proof-flywheel-stat strong {
  display: block;
  color: var(--gold);
  font-family: var(--display);
  font-size: 25px;
  font-weight: 900;
  line-height: 1;
}
.proof-flywheel-stat span {
  display: block;
  color: rgba(255,255,255,.38);
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: 1px;
  margin-top: 7px;
  text-transform: uppercase;
}
.proof-flywheel-stat small {
  display: block;
  color: rgba(255,255,255,.42);
  font-size: 10px;
  line-height: 1.45;
  margin-top: 7px;
}
.proof-flywheel {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 9px;
  padding: 14px;
  border: 1px solid rgba(212,168,67,.11);
  border-radius: 10px;
  background: rgba(3,7,13,.52);
}
.proof-flywheel-step {
  position: relative;
  min-height: 118px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 9px;
  background: rgba(255,255,255,.024);
}
.proof-flywheel-step:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 50%;
  right: -9px;
  width: 9px;
  height: 1px;
  background: rgba(212,168,67,.32);
}
.proof-flywheel-step b {
  display: block;
  color: rgba(255,255,255,.82);
  font-size: 13px;
  margin-bottom: 7px;
}
.proof-flywheel-step span {
  display: block;
  color: var(--gold);
  font-family: var(--mono);
  font-size: 18px;
  font-weight: 900;
  margin-bottom: 7px;
}
.proof-flywheel-step p {
  color: rgba(255,255,255,.44);
  font-size: 10px;
  line-height: 1.45;
  margin: 0;
}
.proof-flywheel-note {
  padding: 12px 14px;
  border-left: 2px solid var(--gold);
  background: rgba(212,168,67,.04);
  color: rgba(255,255,255,.55);
  font-size: 12px;
  line-height: 1.55;
}
.proof-flywheel-gaps {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.proof-flywheel-gap {
  border: 1px solid rgba(245,158,11,.16);
  background: rgba(245,158,11,.05);
  color: rgba(245,158,11,.78);
  border-radius: 999px;
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: .6px;
  padding: 6px 9px;
  text-transform: uppercase;
}

@media(max-width:768px) {
  .proof-flywheel { grid-template-columns: 1fr; }
  .proof-flywheel-step:not(:last-child)::after { display: none; }
}

/* ── PHASE 9: PRINT STYLESHEET ──────────────────────── */
@media print {
  body { background:#fff; color:#000; }
  .topbar, .sidebar, .mobile-nav, #intelTicker, #preloader,
  #network, #nervous-system, .scroll-hint, .swarm-strip,
  .intent-btn, .maya-hero-submit, #cursor-dot, #cursor-ring { display:none !important; }
  #command { margin-left:0; opacity:1 !important; }
  .module-panel { opacity:1; transform:none; break-inside:avoid; border:1px solid #ddd; }
  .module-title { color:#000; }
}
