/* ════════════════════════════════════════════════════════════════
   hive.css — "Backlit Wax" skin (baked @ 50%) + all view styles.
   Brown = wax (material, depth, top-light). Yellow = honey (backlit,
   glossy, glowing). Teal = intelligence. Stone-teal = permanence.
═══════════════════════════════════════════════════════════════════ */
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html,body{ height:100%; }
:root{
  /* ── Obsidian chrome (cool charcoal) — makes the warm gold cards pop ── */
  --void:#0c0e12; --comb:#181c22; --comb-2:#101319; --cell:#1a1f26; --cell-hover:#222831;
  --border:#2a3038; --border-dim:#1a1f26;
  /* ── warm accents kept exactly — this is what the gold identity rides on ── */
  --wax:#c97f1f; --wax-bright:#ffb627; --royal:#ffd966; --honey-hi:#fff0c0;
  --signal:#5ce1c9; --signal-dim:#2f7d70;
  --crystal:#cdddf5; --crystal-dim:#8a9bb5; --crystal-deep:#5c708f;
  --danger:#ff5e5e; --warn:#ffaa33; --ok:#5cd97e; --decl:#ff8a4d; --dead:#6b4d7a; --iris:#8a7dff; --mint:#7ed957;
  /* ── cool-neutral text so it sits right on charcoal (was warm cream) ── */
  --text-primary:#eef1f5; --text-secondary:#b8c0cc; --text-dim:#7c8694; --text-label:#e7b755;
  --font-display:'Space Grotesk',sans-serif; --font-body:'Inter',sans-serif; --font-mono:'JetBrains Mono',monospace;
  --hex-cut:10px; --hex-cut-sm:6px; --glow:.5; --warmth:.5; --depth:.5; --breath:0;
}
/* ── LIGHT MODE — clean white surfaces, dark text, accents kept ── */
[data-theme="light"]{
  --void:#ffffff; --comb:#faf6ef; --comb-2:#f3ece0; --cell:#f6efe2; --cell-hover:#efe4d2;
  --border:#e0d2b8; --border-dim:#ece2d0;
  --wax:#b06f10; --wax-bright:#b87400; --royal:#a8770a; --honey-hi:#7a5a10;
  --signal:#0c8f7c; --signal-dim:#6fb8ad;
  --crystal:#4a6a8f; --crystal-dim:#6c7d96; --crystal-deep:#516a8a;
  --text-primary:#1a1208; --text-secondary:#4a3f2c; --text-dim:#7a6e58; --text-label:#9a6f12;
}
body{ background:var(--void); color:var(--text-primary); font-family:var(--font-body); font-size:14px; line-height:1.5; min-height:100%; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; }
.hex-cut-sm{ clip-path:polygon(var(--hex-cut-sm) 0,calc(100% - var(--hex-cut-sm)) 0,100% var(--hex-cut-sm),100% calc(100% - var(--hex-cut-sm)),calc(100% - var(--hex-cut-sm)) 100%,var(--hex-cut-sm) 100%,0 calc(100% - var(--hex-cut-sm)),0 var(--hex-cut-sm)); }

body::before{ content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(56% 44% at 50% 26%, rgba(255,176,48, calc(.10*var(--warmth)*(1 + .25*var(--breath)))), transparent 72%),
    radial-gradient(40% 40% at 12% 90%, rgba(255,150,30,.05), transparent 70%),
    radial-gradient(45% 45% at 92% 88%, rgba(92,225,201,.035), transparent 72%); }
.grain{ position:fixed; inset:-40px; z-index:0; pointer-events:none; opacity:.4;
  background-image:repeating-linear-gradient(120deg, rgba(255,182,39,.022) 0 1px, transparent 1px 42px),repeating-linear-gradient(60deg, rgba(255,182,39,.022) 0 1px, transparent 1px 42px); }

/* nav */
nav.bar{ position:relative; z-index:5; height:48px; display:flex; align-items:center; padding:0 18px; gap:22px;
  background:linear-gradient(180deg,#22160b,#160e07); border-bottom:1px solid #2a3038; box-shadow:0 1px 0 rgba(255,200,90,.06) inset, 0 6px 24px rgba(0,0,0,.4); }
.brand{ display:flex; align-items:center; gap:9px; font-family:var(--font-display); font-weight:700; font-size:14px; }
.brand .dot{ width:9px; height:9px; border-radius:50%; background:var(--signal); box-shadow:0 0 8px var(--signal); }
nav .links{ display:flex; gap:18px; margin-left:8px; }
nav .links a{ font-family:var(--font-mono); font-size:14px; letter-spacing:.08em; color:var(--text-dim); }
nav .links a.active{ color:var(--wax-bright); }
nav .cta{ margin-left:auto; font-family:var(--font-mono); font-size:14px; letter-spacing:.08em; padding:7px 14px; border:1px solid var(--border); color:var(--text-secondary); }

/* layout */
#app{ position:relative; z-index:2; display:grid; grid-template-columns:280px 1fr 300px; gap:1px; background:#0c0e12; min-height:calc(100vh - 48px); }
.panel{ background:linear-gradient(168deg,#181c22,#130c06); position:relative; }
.panel::after{ content:''; position:absolute; inset:0 0 auto 0; height:1px; background:linear-gradient(90deg, transparent, rgba(255,200,90, calc(.14*var(--depth))), transparent); pointer-events:none; }
.panel--side{ padding:20px; display:flex; flex-direction:column; gap:18px; overflow-y:auto; }
.panel--center{ padding:18px 20px 28px; display:flex; flex-direction:column; gap:14px; }

.sec-label{ font-family:var(--font-mono); font-size:13.5px; font-weight:700; letter-spacing:.15em; color:var(--text-label); text-transform:uppercase; display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.sec-label .count{ color:var(--text-dim); font-weight:400; margin-left:auto; letter-spacing:.05em; }
.sec-label--intel{ color:var(--signal); }
.card{ background:linear-gradient(168deg,#1f1409,#160e07); border:1px solid var(--border); box-shadow: inset 0 1px 0 rgba(255,210,120,calc(.08*var(--depth))), 0 calc(8px*var(--depth)) calc(22px*var(--depth)) rgba(0,0,0,.42); }
.honeybar{ height:6px; background:#0d0805; border-radius:4px; overflow:hidden; box-shadow:inset 0 1px 2px rgba(0,0,0,.6); }
.honeybar > i{ display:block; height:100%; border-radius:4px; background:linear-gradient(180deg,#ffe48a 0%, #ffb627 35%, #c97f1f 100%); box-shadow:0 0 calc(12px*var(--glow)) rgba(255,182,39,.55), inset 0 1px 0 rgba(255,255,255,.45); transition:width .6s cubic-bezier(.2,.8,.2,1); }

.btn{ font-family:var(--font-mono); font-size:14px; letter-spacing:.06em; padding:10px 16px; cursor:pointer; white-space:nowrap; border:1px solid var(--wax);
  background:linear-gradient(180deg, rgba(255,200,80,.2), rgba(255,160,30,.06)); box-shadow:inset 0 1px 0 rgba(255,230,150,.35), 0 0 calc(18px*var(--glow)) rgba(255,182,39,.18); color:#ffe089; }
.btn:hover{ filter:brightness(1.12); }
.btn--ghost{ background:transparent; border-color:var(--border); color:var(--text-secondary); box-shadow:none; }

/* brand + pillars (left rail top) */
.hive-brand{ display:flex; flex-direction:column; gap:4px; padding-bottom:14px; border-bottom:1px solid var(--border); }
.hive-brand .mark{ font-family:var(--font-display); font-weight:700; font-size:21px; display:flex; align-items:center; gap:8px; }
.hive-brand .hex{ color:var(--wax-bright); filter:drop-shadow(0 0 calc(7px*var(--glow)) rgba(255,182,39,.7)); }
.hive-brand .sub{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); }

.stat{ background:linear-gradient(165deg,#2a1c0c,#1a1107); border:1px solid var(--border); padding:15px; box-shadow: inset 0 1px 0 rgba(255,210,120,calc(.12*var(--depth))), 0 calc(10px*var(--depth)) calc(26px*var(--depth)) rgba(0,0,0,.5); }
.stat__state{ font-family:var(--font-display); font-weight:700; font-size:17px; letter-spacing:.03em; margin-bottom:12px; color:var(--text-secondary); }
.stat__state .pip{ display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--signal); margin-right:8px; vertical-align:middle; box-shadow:0 0 7px var(--signal); animation:pip 3s ease-in-out infinite; }
@keyframes pip{ 0%,100%{ box-shadow:0 0 6px var(--signal); opacity:.7; } 50%{ box-shadow:0 0 12px var(--signal); opacity:1; } }
.stat__read{ margin-top:9px; font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); }
.stat__read b{ color:var(--wax-bright); }

/* surface rail */
.srow{ display:grid; grid-template-columns:22px 1fr auto; align-items:center; gap:10px; padding:9px 11px; background:linear-gradient(165deg,#1a1f26,#101319); border:1px solid var(--border-dim); margin-bottom:7px; position:relative; overflow:hidden; transition:all .16s; }
.srow:hover{ border-color:#6b4a1c; transform:translateY(-1px); }
.srow__fill{ position:absolute; inset:0 auto 0 0; pointer-events:none; background:linear-gradient(90deg, rgba(201,127,31,.10), rgba(255,182,39,.16)); border-right:1px solid rgba(255,210,120,.4); box-shadow:0 0 14px rgba(255,182,39,calc(.18*var(--glow))); transition:width .6s ease; }
.srow__icon{ font-size:14px; text-align:center; position:relative; z-index:1; }
.srow__name{ font-family:var(--font-mono); font-size:14px; letter-spacing:.04em; text-transform:uppercase; color:var(--text-secondary); position:relative; z-index:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.srow__pct{ position:relative; z-index:1; font-family:var(--font-mono); font-weight:700; font-size:14px; color:var(--wax-bright); }
.srow.dormant{ opacity:.6; } .srow.dormant .srow__pct{ color:var(--text-dim); }
.srow.ring{ border-color:var(--crystal-dim); background:linear-gradient(165deg, rgba(120,140,175,.18), #160e07); margin-top:9px; }
.srow.ring .srow__icon,.srow.ring .srow__name,.srow.ring .srow__pct{ color:var(--crystal); }
.srow.ring .srow__fill{ background:linear-gradient(90deg, rgba(205,221,245,.10), rgba(205,221,245,.20)); border-right-color:rgba(205,221,245,.5); box-shadow:none; }

.pillars{ display:flex; flex-direction:column; gap:8px; }
.pillar{ padding:10px 12px; border:1px solid var(--border-dim); background:linear-gradient(165deg,#1a1f26,#101319); }
.pillar.intel{ border-color:rgba(92,225,201,.35); background:linear-gradient(165deg, rgba(22,61,56,.5), #160e07); }
.pillar__k{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); }
.pillar__v{ font-family:var(--font-display); font-weight:700; font-size:16px; margin:2px 0; }
.pillar__feel{ font-family:var(--font-mono); font-size:13px; color:var(--text-dim); }
.pillar.growth .pillar__v{ color:var(--wax-bright); } .pillar.intel .pillar__v{ color:var(--signal); } .pillar.perm .pillar__v{ color:var(--text-secondary); }
.total{ margin-top:6px; text-align:center; font-family:var(--font-mono); font-size:13.5px; color:var(--text-secondary); }
.total b{ color:var(--wax-bright); font-size:14px; }

/* tabs */
.tabs{ display:flex; gap:6px; align-items:stretch; flex-wrap:wrap; }
.tab{ font-family:var(--font-mono); font-weight:600; font-size:14px; letter-spacing:.1em; padding:11px 17px; border:1px solid var(--border); color:var(--text-dim); background:transparent; cursor:pointer; transition:all .18s ease; position:relative; }
.tab:hover{ color:var(--text-secondary); border-color:var(--border-bright,rgba(255,210,120,.35)); transform:translateY(-1px); }
.tab.active{ color:var(--wax-bright); border-color:var(--wax); background:linear-gradient(180deg, rgba(255,182,39,.14), rgba(255,182,39,.04)); box-shadow:inset 0 1px 0 rgba(255,210,120,.25), 0 0 calc(16px*var(--glow)) rgba(255,182,39,.12); }

/* ── Stacked Comb tabs — all seven bold, each with a thick colored
   top wall and a ⬡ glyph that ignites when active. Core 01-04 carry
   their card colors; nav (Briefing/Hive/Apiary) is chartreuse wall +
   amber text. These must SCREAM. */
.tab--comb{ font-weight:700; font-size:15px; letter-spacing:.12em; padding:13px 18px;
  display:inline-flex; align-items:center; gap:8px;
  border-top-width:3px; color:var(--ct, var(--wax-bright)); border-color:rgba(255,255,255,.1);
  border-top-color:var(--ct, var(--wax-bright));
  background:linear-gradient(180deg, color-mix(in srgb, var(--ct) 8%, transparent), transparent); }
.tab--comb .tab__hx{ font-size:11px; color:var(--ct); opacity:.5; }
.tab--comb .tab__no{ opacity:.55; font-weight:600; margin-right:1px; }
.tab--comb:hover{ color:var(--ct); border-color:var(--ct); transform:translateY(-1px);
  background:linear-gradient(180deg, color-mix(in srgb, var(--ct) 16%, transparent), color-mix(in srgb, var(--ct) 4%, transparent)); }
.tab--comb.active{ color:#fff; border-color:var(--ct);
  background:linear-gradient(180deg, color-mix(in srgb, var(--ct) 30%, transparent), color-mix(in srgb, var(--ct) 6%, transparent));
  box-shadow:inset 0 1px 0 color-mix(in srgb, var(--ct) 50%, transparent),
             0 0 calc(22px*var(--glow,1)) color-mix(in srgb, var(--ct) 40%, transparent),
             0 4px 22px color-mix(in srgb, var(--ct) 28%, transparent);
  transform:translateY(-2px); }
.tab--comb.active .tab__hx{ opacity:1; text-shadow:0 0 8px var(--ct); }
.tab--comb.active .tab__no{ opacity:.85; }

/* core responsibility colors */
.tab[data-tab="inspect"]{ --ct:#4ecdc4; }
.tab[data-tab="triage"] { --ct:#ff5e5e; }
.tab[data-tab="expand"] { --ct:#ffb627; }
.tab[data-tab="harvest"]{ --ct:#50c875; }

/* nav tabs — chartreuse top wall + amber text */
.tab--nav{ --ct:#bef264; color:var(--wax-bright);
  background:linear-gradient(180deg, rgba(190,242,100,.1), transparent); }
.tab--nav .tab__hx{ color:#bef264; }
.tab--nav:hover{ color:var(--wax-bright); border-color:#bef264; }
.tab--nav.active{ color:#fff; border-color:#bef264; border-top-color:#bef264;
  background:linear-gradient(180deg, rgba(190,242,100,.26), rgba(255,182,39,.06));
  box-shadow:inset 0 1px 0 rgba(190,242,100,.5), 0 0 calc(20px*var(--glow,1)) rgba(190,242,100,.34), 0 4px 22px rgba(190,242,100,.24); }
.tab--nav.active .tab__hx{ color:#bef264; opacity:1; text-shadow:0 0 8px #bef264; }

/* divider between nav group and core group */
.tab-sep{ width:1px; align-self:stretch; margin:2px 6px; background:linear-gradient(180deg,transparent,rgba(255,255,255,.18),transparent); }

/* OVERVIEW */
.hero{ padding:18px 20px; }
.hero__top{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.hero__eyebrow{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.18em; color:var(--text-label); text-transform:uppercase; }
.hero__state{ font-family:var(--font-display); font-weight:700; font-size:34px; line-height:1; background:linear-gradient(180deg,#fff0c0,#ffb627 60%,#c97f1f); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 0 calc(14px*var(--glow)) rgba(255,182,39,.35)); }
.hero__next{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); margin-top:4px; } .hero__next b{ color:var(--wax-bright); }
.hero__rank{ text-align:right; font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); } .hero__rank b{ display:block; font-family:var(--font-display); font-size:15px; color:var(--text-secondary); margin-top:2px; }
.ladder{ margin-top:18px; }
.ladder__track{ display:grid; grid-template-columns:repeat(11,1fr); gap:4px; }
.ladder__seg{ height:34px; position:relative; border:1px solid var(--border-dim); background:#101319; clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%); display:flex; align-items:center; justify-content:center; }
.ladder__seg.done{ background:linear-gradient(180deg,#caa24a,#8a5a18); border-color:#6b4a1c; }
.ladder__seg.cur{ background:linear-gradient(180deg,#ffe48a,#ffb627 55%,#c97f1f); border-color:#ffd966; box-shadow:0 0 calc(18px*var(--glow)) rgba(255,182,39,.6), inset 0 1px 0 rgba(255,255,255,.5); }
.ladder__seg.cur::after{ content:''; position:absolute; bottom:-7px; left:50%; transform:translateX(-50%); border-left:5px solid transparent; border-right:5px solid transparent; border-top:6px solid var(--royal); }
.ladder__num{ font-family:var(--font-mono); font-size:13.5px; font-weight:700; color:var(--text-dim); }
.ladder__seg.done .ladder__num,.ladder__seg.cur .ladder__num{ color:#3a2608; }
.ladder__labels{ display:grid; grid-template-columns:repeat(11,1fr); gap:4px; margin-top:7px; }
.ladder__lab{ font-family:var(--font-mono); font-size:12px; text-align:center; color:var(--text-dim); text-transform:uppercase; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ladder__lab.cur{ color:var(--wax-bright); font-weight:700; }

.vitals{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.vital{ padding:14px; }
.vital__label{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; color:var(--text-dim); text-transform:uppercase; }
.vital__big{ font-family:var(--font-display); font-weight:700; font-size:26px; line-height:1; margin:8px 0 3px; } .vital__big small{ font-size:14px; color:var(--text-dim); font-weight:500; } .vital__big .grade{ color:var(--warn); }
.vital__sub{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-secondary); margin-bottom:9px; }
.vital .honeybar{ height:5px; }

.work{ display:grid; grid-template-columns:1.35fr 1fr; gap:12px; }
.nextmove{ padding:16px; background:linear-gradient(150deg, rgba(255,182,39,.12), rgba(31,20,9,.6) 55%); border:1px solid #7a531f; box-shadow: inset 0 1px 0 rgba(255,210,120,.25), 0 0 calc(22px*var(--glow)) rgba(255,182,39,.14); }
.nextmove__tag{ font-family:var(--font-mono); font-size:13px; letter-spacing:.14em; color:var(--royal); text-transform:uppercase; }
.nextmove__title{ font-family:var(--font-display); font-weight:700; font-size:18px; margin:6px 0; }
.nextmove__why{ font-size:12.5px; color:var(--text-secondary); line-height:1.5; }
.nextmove__foot{ display:flex; align-items:center; justify-content:space-between; margin-top:14px; }
.nextmove__vp{ font-family:var(--font-mono); font-weight:700; font-size:15px; color:var(--royal); }
.attack{ margin-top:12px; padding:14px 16px; }
.arow{ display:grid; grid-template-columns:18px 1fr auto auto; gap:10px; align-items:center; padding:9px 0; border-bottom:1px solid var(--border-dim); }
.arow:last-child{ border-bottom:none; }
.arow__n{ font-family:var(--font-mono); font-size:14px; font-weight:700; color:var(--wax); }
.arow__t{ font-size:13px; } .arow__t small{ display:block; font-family:var(--font-mono); font-size:13px; color:var(--text-dim); letter-spacing:.08em; text-transform:uppercase; }
.arow__vp{ font-family:var(--font-mono); font-weight:700; font-size:14px; color:var(--wax-bright); }
.mini{ font-family:var(--font-mono); font-size:13px; padding:5px 9px; border:1px solid var(--border); color:var(--text-secondary); cursor:pointer; background:transparent; }
.mini:hover{ border-color:var(--wax); color:var(--wax-bright); }

.momentum{ padding:16px; }
.mstat{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:14px; }
.mstat__cell{ text-align:center; padding:10px 4px; background:rgba(255,255,255,.02); border:1px solid var(--border-dim); }
.mstat__v{ font-family:var(--font-display); font-weight:700; font-size:20px; color:var(--royal); } .mstat__v.teal{ color:var(--signal); }
.mstat__k{ font-family:var(--font-mono); font-size:13px; letter-spacing:.06em; color:var(--text-dim); text-transform:uppercase; margin-top:3px; }
.recent{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); }
.recent__row{ display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px solid var(--border-dim); } .recent__row:last-child{ border-bottom:none; } .recent__row .ok{ color:var(--ok); }
.alert{ margin-top:12px; padding:10px 12px; border:1px solid rgba(255,170,51,.4); background:rgba(255,170,51,.07); display:flex; gap:10px; align-items:flex-start; }
.alert__dot{ width:8px; height:8px; border-radius:50%; background:var(--warn); box-shadow:0 0 8px var(--warn); margin-top:4px; flex-shrink:0; animation:pip 2.4s ease-in-out infinite; }
.alert__txt{ font-size:14px; color:var(--text-secondary); line-height:1.45; } .alert__txt b{ color:var(--warn); }

.hivestrip{ padding:16px 18px; display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; }
.hivestrip__head{ display:flex; align-items:baseline; gap:10px; margin-bottom:10px; }
.hivestrip__count{ font-family:var(--font-display); font-weight:700; font-size:20px; } .hivestrip__count small{ font-size:13px; color:var(--text-dim); }
.hivestrip__phase{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.1em; color:var(--text-label); text-transform:uppercase; margin-left:auto; }
.hivestrip .honeybar{ height:12px; }

/* ── COLONY INSPECTION ── */
.insp-header{ padding:18px 24px 14px; border-bottom:1px solid var(--border); }
.insp-header__label{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.15em; color:var(--signal); display:flex; align-items:center; gap:7px; margin-bottom:5px; }
.insp-header__sub{ font-size:12.5px; color:var(--text-secondary); }
.insp-grid{ display:grid; grid-template-columns:1fr 1fr; }
.insp-quad{ border-right:1px solid var(--border); border-bottom:1px solid var(--border); display:flex; flex-direction:column; min-height:280px; }
.insp-quad:nth-child(2n){ border-right:none; }
.insp-quad__head{ display:flex; align-items:flex-start; gap:12px; padding:16px 20px 12px; border-bottom:1px solid var(--border-dim); background:rgba(0,0,0,.15); flex-shrink:0; }
.insp-quad__icon{ font-size:18px; flex-shrink:0; margin-top:2px; }
.insp-quad__title{ font-family:var(--font-display); font-weight:700; font-size:15px; color:var(--honey-hi); margin-bottom:3px; }
.insp-quad__status{ font-family:var(--font-mono); font-size:13px; letter-spacing:.05em; color:var(--text-dim); }
.insp-quad__body{ flex:1; padding:12px 16px; display:flex; flex-direction:column; gap:5px; overflow:hidden; }
.insp-quad__action{ margin:0 16px 14px; background:transparent; border:1px solid var(--border-dim); color:var(--text-dim); font-family:var(--font-mono); font-size:13.5px; letter-spacing:.06em; padding:7px 12px; cursor:pointer; text-align:left; transition:all .15s; flex-shrink:0; }
.insp-quad__action:hover{ border-color:var(--wax); color:var(--wax); }
.insp-run-prompt{ display:flex; flex-direction:column; gap:9px; }
.insp-run-domain{ font-family:var(--font-mono); font-size:14px; color:var(--signal); }
.insp-run-desc{ font-size:14px; color:var(--text-secondary); line-height:1.6; }
.insp-no-url{ font-size:14px; color:var(--text-dim); line-height:1.7; }
.insp-link{ background:transparent; border:none; color:var(--signal); font-size:14px; cursor:pointer; text-decoration:underline; padding:0; }
.insp-scan-progress{ font-family:var(--font-mono); font-size:13.5px; color:var(--signal); animation:blink 1s infinite; }
.insp-pbar{ height:2px; background:rgba(255,255,255,.08); border-radius:1px; overflow:hidden; }
.insp-pbar-fill{ height:100%; background:linear-gradient(90deg,var(--wax),var(--wax-bright)); transition:width .3s ease; }
.insp-check-section{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--text-dim); margin-top:6px; margin-bottom:3px; }
.insp-check{ display:flex; align-items:center; gap:8px; padding:6px 8px; border:1px solid var(--border-dim); }
.insp-check.pass{ border-color:rgba(92,217,126,.2); background:rgba(92,217,126,.04); }
.insp-check.warn{ border-color:rgba(255,170,51,.2); background:rgba(255,170,51,.04); }
.insp-check.fail{ border-color:rgba(255,94,94,.25); background:rgba(255,94,94,.06); }
.insp-check__dot{ width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.pass .insp-check__dot{ background:var(--ok); }
.warn .insp-check__dot{ background:var(--warn); }
.fail .insp-check__dot{ background:var(--danger); }
.insp-check__name{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-secondary); flex:1; }
.insp-check__val{ font-family:var(--font-mono); font-size:13.5px; font-weight:700; }
.insp-repair-section{ margin-top:10px; border-top:1px solid var(--border-dim); padding-top:8px; }
.insp-repair-label{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--danger); margin-bottom:5px; }
.insp-repair-item{ display:flex; align-items:center; gap:8px; padding:6px 8px; border:1px solid rgba(255,94,94,.2); background:rgba(255,94,94,.05); cursor:pointer; margin-bottom:4px; transition:border-color .15s; }
.insp-repair-item:hover{ border-color:var(--danger); }
.insp-repair-item__name{ font-size:14px; color:var(--text-secondary); flex:1; }
.insp-repair-item__vp{ font-family:var(--font-mono); font-size:13px; color:var(--wax); }
.insp-brood-item{ display:flex; align-items:center; gap:8px; padding:6px 6px; border-bottom:1px solid var(--border-dim); cursor:pointer; }
.insp-brood-item:hover{ background:rgba(255,255,255,.03); }
.insp-brood-status{ font-size:13.5px; flex-shrink:0; width:14px; text-align:center; }
.insp-brood-name{ font-size:14px; color:var(--text-secondary); flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.insp-brood-age{ font-family:var(--font-mono); font-size:13px; flex-shrink:0; }
.insp-all-good{ font-size:14px; color:var(--text-dim); font-style:italic; padding:6px 0; }
.insp-expand-item{ display:flex; align-items:center; gap:8px; padding:6px 6px; border-bottom:1px solid var(--border-dim); cursor:pointer; }
.insp-expand-item:hover{ background:rgba(255,255,255,.03); }
.insp-expand-vp{ font-family:var(--font-mono); font-weight:700; font-size:14px; color:var(--royal); flex-shrink:0; width:34px; }
.insp-expand-name{ font-size:14px; color:var(--text-secondary); flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.insp-expand-surface{ font-family:var(--font-mono); font-size:12.5px; color:var(--text-dim); flex-shrink:0; }
.insp-harvest-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.insp-harvest-item{ padding:10px 12px; background:rgba(255,255,255,.02); border:1px solid var(--border-dim); }
.insp-harvest-v{ font-family:var(--font-display); font-weight:700; font-size:19px; line-height:1; margin-bottom:3px; }
.insp-harvest-k{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-dim); }
.insp-harvest-sub{ font-size:13.5px; color:var(--text-secondary); margin-top:3px; }
#insp-scan-results{ width:100%; }

.intelstat{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.istat{ padding:13px; text-align:center; }
.istat__v{ font-family:var(--font-display); font-weight:700; font-size:22px; } .istat__v.teal{ color:var(--signal); } .istat__v.warn{ color:var(--warn); } .istat__v.dim{ color:var(--text-dim); }
.istat__k{ font-family:var(--font-mono); font-size:13px; letter-spacing:.07em; color:var(--text-dim); text-transform:uppercase; margin-top:4px; }

/* ── COMMAND CENTER (BRIEFING) ── */
.cmd-wrap{ display:flex; flex-direction:column; gap:0; }

/* Brief strip */
.cmd-brief{ padding:22px 26px 18px; background:linear-gradient(160deg,rgba(20,50,44,.55),#130c06); border:1px solid rgba(92,225,201,.35); border-left:3px solid var(--signal); margin-bottom:0; position:relative; overflow:hidden; }
.cmd-brief::before{ content:''; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,rgba(92,225,201,.025) 0 1px,transparent 1px 4px); }
.cmd-brief__bar{ display:flex; align-items:center; gap:10px; margin-bottom:12px; position:relative; }
.cmd-brief__live{ font-family:var(--font-mono); font-size:13px; letter-spacing:.16em; color:var(--signal); text-transform:uppercase; display:flex; align-items:center; gap:7px; }
.cmd-brief__live .b{ width:6px; height:6px; border-radius:50%; background:var(--signal); box-shadow:0 0 7px var(--signal); animation:bl 1.4s steps(2) infinite; }
@keyframes bl{ 50%{opacity:.3} }
.cmd-brief__meta{ margin-left:auto; font-family:var(--font-mono); font-size:13px; color:var(--text-dim); }
.cmd-brief__status{ display:flex; align-items:center; gap:16px; margin-bottom:14px; position:relative; }
.cmd-brief__level{ display:flex; flex-direction:column; gap:2px; }
.cmd-brief__level-name{ font-family:var(--font-display); font-weight:700; font-size:22px; color:var(--honey-hi); line-height:1; }
.cmd-brief__level-name.immortal{ color:var(--signal); text-shadow:0 0 20px rgba(92,225,201,.5); }
.cmd-brief__level-prog{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); }
.cmd-brief__ladder{ flex:1; max-width:320px; }
.cmd-brief__hi{ font-family:var(--font-display); font-weight:700; font-size:22px; color:var(--honey-hi); margin:10px 0 8px; position:relative; }
.cmd-brief__lines{ display:flex; flex-direction:column; gap:7px; position:relative; }
.cmd-brief__lines p{ font-size:13.5px; color:var(--text-secondary); line-height:1.7; margin:0; font-family:var(--font-body); }
.cmd-brief__counsel{ color:var(--text-dim)!important; font-style:italic; }
.cmd-brief__actions{ display:flex; gap:10px; margin-top:16px; flex-wrap:wrap; position:relative; }
.cmd-brief__actions .btn{ font-size:14px; padding:9px 16px; }

/* Four command cards */
.cmd-grid{ display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--border); }
.cmd-card{ display:flex; flex-direction:column; border-right:1px solid var(--border); border-bottom:1px solid var(--border); background:linear-gradient(170deg,#1a1208,#110c06); transition:background .2s; }
.cmd-card:nth-child(2n){ border-right:none; }
.cmd-card:hover{ background:linear-gradient(170deg,#201508,#130e07); }
.cmd-card--inspect{ border-top:2px solid rgba(92,225,201,.4); }
.cmd-card--brood{ border-top:2px solid rgba(255,170,51,.4); }
.cmd-card--expand{ border-top:2px solid rgba(255,182,39,.4); }
.cmd-card--honey{ border-top:2px solid rgba(255,217,102,.4); }
.cmd-card__head{ padding:18px 20px 12px; border-bottom:1px solid var(--border-dim); flex-shrink:0; }
.cmd-card__eyebrow{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--text-dim); margin-bottom:5px; }
.cmd-card--inspect .cmd-card__eyebrow{ color:var(--signal-dim); }
.cmd-card--brood .cmd-card__eyebrow{ color:rgba(255,170,51,.7); }
.cmd-card--expand .cmd-card__eyebrow{ color:rgba(255,182,39,.7); }
.cmd-card--honey .cmd-card__eyebrow{ color:rgba(255,217,102,.7); }
.cmd-card__title{ font-family:var(--font-display); font-weight:700; font-size:18px; color:var(--honey-hi); margin-bottom:3px; }
.cmd-card__tagline{ font-size:14px; color:var(--text-dim); line-height:1.5; }
.cmd-card__meta{ padding:10px 20px 8px; border-bottom:1px solid var(--border-dim); flex-shrink:0; }
.cmd-card__domain{ font-family:var(--font-mono); font-size:13.5px; color:var(--signal); }
.cmd-card__warn{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); }
.cmd-card__fill{ flex:1; padding:12px 18px; display:flex; flex-direction:column; gap:6px; overflow:hidden; }
.cmd-card__desc{ font-size:14px; color:var(--text-secondary); line-height:1.65; }
.cmd-card__action{ margin-top:auto; }
.cmd-card__foot{ padding:10px 20px 14px; font-family:var(--font-mono); font-size:13px; color:var(--text-dim); border-top:1px solid var(--border-dim); flex-shrink:0; line-height:1.5; }

/* Brood tending — inline, self-contained */
.tend-list{ gap:4px!important; overflow-y:auto; max-height:240px; }
.tend-row{ display:flex; align-items:center; gap:10px; padding:8px 10px; border:1px solid var(--border-dim); background:rgba(0,0,0,.2); }
.tend-icon{ font-size:13px; flex-shrink:0; width:16px; text-align:center; }
.tend-info{ flex:1; min-width:0; }
.tend-name{ font-size:14px; color:var(--text-secondary); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:2px; }
.tend-meta{ font-family:var(--font-mono); font-size:13px; letter-spacing:.05em; text-transform:uppercase; }
.tend-btn{ font-family:var(--font-mono); font-size:13px; letter-spacing:.06em; padding:5px 10px; background:transparent; border:1px solid var(--border-dim); color:var(--text-dim); cursor:pointer; flex-shrink:0; white-space:nowrap; transition:all .15s; }
.tend-btn:hover{ border-color:var(--wax); color:var(--wax-bright); background:rgba(255,182,39,.08); }
.tend-clear{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:20px 12px; gap:4px; }
.tend-clear__icon{ font-size:28px; color:var(--ok); opacity:.6; margin-bottom:4px; }
.tend-clear__msg{ font-family:var(--font-display); font-weight:700; font-size:15px; color:var(--ok); }
.tend-clear__sub{ font-size:14px; color:var(--text-dim); }

/* Expand list */
.cmd-expand-list{ gap:3px!important; }
.cmd-expand-row{ display:flex; align-items:center; gap:8px; padding:5px 6px; cursor:pointer; border-bottom:1px solid var(--border-dim); }
.cmd-expand-row:hover{ background:rgba(255,255,255,.03); }
.cmd-expand-vp{ font-family:var(--font-mono); font-weight:700; font-size:13.5px; color:var(--royal); width:32px; flex-shrink:0; }
.cmd-expand-name{ font-size:14px; color:var(--text-secondary); flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cmd-expand-surf{ font-family:var(--font-mono); font-size:12.5px; color:var(--text-dim); flex-shrink:0; }

/* Honey grid */
.cmd-honey-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.cmd-honey-item{ padding:10px 12px; background:rgba(255,255,255,.02); border:1px solid var(--border-dim); }
.cmd-honey-v{ font-family:var(--font-display); font-weight:700; font-size:20px; line-height:1; margin-bottom:3px; }
.cmd-honey-k{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-dim); }
.cmd-honey-sub{ font-size:13.5px; color:var(--text-secondary); margin-top:3px; }

/* inspect output area */
#brief-inspect-output{ width:100%; }

/* ══ BRIEFING — final design ══════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=DM+Serif+Display:ital@0;1&display=swap');

.bf-wrap{ display:grid; grid-template-rows:1fr auto auto auto; min-height:calc(100vh - 44px); overflow:visible; }

/* ── BRIEFING WINDOW ── */
.bf-win{
  display:grid; grid-template-columns:1fr 280px;
  border:1px solid rgba(200,165,80,.2);
  border-top:none;
  outline:3px solid rgba(200,165,80,.06); outline-offset:3px;
  overflow:hidden; position:relative;
  box-shadow:0 0 0 8px rgba(200,165,80,.03),0 0 40px rgba(200,128,26,.07),inset 0 0 0 1px rgba(200,165,80,.05);
}
.bf-hex-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.65;}
.bf-glow{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 65% 70% at 5% 0%,rgba(180,105,12,.16) 0%,transparent 55%),
             radial-gradient(ellipse 40% 50% at 95% 100%,rgba(100,70,8,.08) 0%,transparent 55%);}
.bf-rule-top{position:absolute;top:0;left:0;right:0;height:1px;z-index:4;background:linear-gradient(90deg,transparent,rgba(200,165,80,.6),rgba(255,210,80,.8),rgba(200,165,80,.6),transparent);}
.bf-rule-bot{position:absolute;bottom:0;left:0;right:0;height:1px;z-index:4;background:linear-gradient(90deg,transparent,rgba(200,165,80,.4),rgba(255,210,80,.5),rgba(200,165,80,.4),transparent);}

/* LEFT */
.bf-left{
  position:relative;z-index:3;
  padding:16px 28px 14px;
  display:flex;flex-direction:column;justify-content:space-between;
  border-right:1px solid rgba(200,165,80,.15);
  background:linear-gradient(140deg,rgba(16,12,6,.88) 0%,rgba(7,5,10,.94) 100%);
}
.bf-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.bf-eyebrow{display:flex;align-items:center;gap:9px;}
.bf-eyebrow-text{font-family:'Cinzel',serif;font-size:13px;letter-spacing:.24em;color:rgba(210,175,90,.78);text-transform:uppercase;}
.bf-badge{font-family:var(--font-mono);font-size:12px;letter-spacing:.15em;text-transform:uppercase;padding:4px 10px;display:flex;align-items:center;gap:6px;}
.bf-badge--crit{background:rgba(224,85,85,.1);border:1px solid rgba(224,85,85,.3);color:rgba(224,85,85,.85);}
.bf-badge--warn{background:rgba(240,160,32,.1);border:1px solid rgba(240,160,32,.3);color:rgba(240,160,32,.85);}
.bf-badge--ok  {background:rgba(80,200,117,.1);border:1px solid rgba(80,200,117,.3);color:rgba(80,200,117,.85);}
.bf-badge--dim {background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.35);}
.bf-badge-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;animation:bf-hb 1.4s ease-in-out infinite;}
@keyframes bf-hb{0%,100%{opacity:1}50%{opacity:.2}}
.bf-badge--crit .bf-badge-dot{background:#e05555;box-shadow:0 0 6px #e05555;}
.bf-badge--warn .bf-badge-dot{background:var(--warn);box-shadow:0 0 6px var(--warn);}
.bf-badge--ok   .bf-badge-dot{background:var(--ok);box-shadow:0 0 6px var(--ok);}
.bf-badge--dim  .bf-badge-dot{background:rgba(255,255,255,.3);}

.bf-ornament{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.bf-orn-line{flex:1;height:1px;background:linear-gradient(90deg,rgba(200,165,80,.25),rgba(200,165,80,.08));}
.bf-orn-line:last-child{background:linear-gradient(90deg,rgba(200,165,80,.08),rgba(200,165,80,.25));}
.bf-orn-center{display:flex;align-items:center;gap:6px;}
.bf-orn-diamond{width:3px;height:3px;background:rgba(200,165,80,.4);transform:rotate(45deg);}

.bf-greeting{
  font-family:'Cinzel',serif;font-weight:600;
  font-size:clamp(18px,2.2vw,28px);
  letter-spacing:.08em;line-height:1.2;text-align:center;
  background:linear-gradient(170deg,rgba(255,244,192,.96) 0%,rgba(255,210,60,.88) 45%,rgba(200,140,20,.75) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  filter:drop-shadow(0 0 18px rgba(200,128,26,.28));
  margin-bottom:3px;
}
.bf-subgreeting{text-align:center;font-family:'DM Serif Display',serif;font-size:13.5px;font-style:italic;color:rgba(205,170,85,.62);letter-spacing:.05em;margin-bottom:10px;}

.bf-sit-rule{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.bf-sit-line{flex:1;height:1px;background:rgba(224,85,85,.15);}
.bf-sit-label{font-family:'Cinzel',serif;font-size:13px;letter-spacing:.2em;color:rgba(224,85,85,.72);text-transform:uppercase;white-space:nowrap;}

.bf-situation{
  font-family:'DM Serif Display',serif;
  font-size:clamp(14px,1.7vw,20px);
  line-height:1.45;text-align:center;
  color:rgba(255,255,255,.75);
  margin-bottom:10px;
}
.bf-sit-red{color:#e05555;font-style:italic;text-shadow:0 0 20px rgba(224,85,85,.35);}
.bf-sit-amber{color:var(--wax-bright);}
.bf-sit-ok{color:var(--ok);}
.bf-sit-warn{color:var(--warn);}
.bf-sit-dim{color:rgba(255,255,255,.5);}

.bf-quote{
  padding:10px 16px;
  background:rgba(200,165,80,.04);
  border:1px solid rgba(200,165,80,.1);
  border-left:2px solid rgba(200,165,80,.28);
  margin-bottom:8px;position:relative;
}
.bf-quote-mark{position:absolute;top:-8px;left:12px;font-family:'DM Serif Display',serif;font-size:28px;color:rgba(200,165,80,.15);line-height:1;}
.bf-quote-text{font-family:'DM Serif Display',serif;font-size:14.5px;line-height:1.75;color:rgba(255,255,255,.62);font-style:italic;}
.bf-quote-text b{color:rgba(240,160,32,.8);font-weight:400;font-style:normal;}

.bf-counsel{font-family:'DM Serif Display',serif;font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.5);font-style:italic;text-align:center;margin-bottom:10px;}

.bf-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:10px;border-top:1px solid rgba(200,165,80,.08);}
.bf-weather{display:flex;gap:12px;}
.bf-weather .wx{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:rgba(200,165,80,.55);display:flex;align-items:center;gap:4px;}
.bf-btn-primary{
  font-family:'Cinzel',serif;font-size:12.5px;letter-spacing:.13em;font-weight:600;text-transform:uppercase;
  padding:10px 20px;cursor:pointer;
  background:linear-gradient(135deg,rgba(200,128,26,.88),rgba(90,52,8,.95));
  color:rgba(255,240,160,.92);
  border:1px solid rgba(200,165,80,.38);
  box-shadow:0 0 16px rgba(200,128,26,.18);
  white-space:nowrap;transition:all .15s;
}
.bf-btn-primary:hover{filter:brightness(1.12);box-shadow:0 0 24px rgba(200,128,26,.3);}

/* RIGHT */
.bf-right{
  position:relative;z-index:3;
  display:flex;flex-direction:column;justify-content:space-between;
  padding:18px 18px;
  background:linear-gradient(170deg,rgba(12,8,4,.88),rgba(6,4,10,.94));
  border-left:1px solid rgba(200,165,80,.15);
}
.bf-r-label{font-family:'Cinzel',serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:rgba(210,175,90,.8);margin-bottom:5px;}
.bf-colony-name{
  font-family:'Cinzel',serif;font-size:20px;font-weight:600;letter-spacing:.07em;
  color:rgba(255,244,192,.85);line-height:1;margin-bottom:7px;
  cursor:text;outline:none;border-bottom:1px solid transparent;transition:border-color .15s;padding-bottom:2px;
}
.bf-colony-name:focus{border-color:rgba(200,165,80,.3);}
.bf-url-wrap{display:flex;align-items:center;background:rgba(255,255,255,.03);border:1px solid rgba(200,165,80,.1);margin-bottom:12px;}
.bf-url-pre{font-family:var(--font-mono);font-size:12.5px;color:rgba(78,205,196,.38);padding:6px 7px;border-right:1px solid rgba(200,165,80,.08);white-space:nowrap;}
.bf-url-in{font-family:var(--font-mono);font-size:12.5px;color:var(--signal);background:transparent;border:none;outline:none;padding:6px 8px;flex:1;min-width:0;letter-spacing:.04em;}
.bf-url-in::placeholder{color:rgba(78,205,196,.18);}
.bf-r-divider{height:1px;background:linear-gradient(90deg,rgba(200,165,80,.15),rgba(200,165,80,.05));margin:4px 0 10px;}
.bf-level-name{font-family:'Cinzel',serif;font-size:14px;font-weight:600;letter-spacing:.11em;color:rgba(255,255,255,.28);margin-bottom:5px;}
.bf-ladder{display:flex;gap:3px;margin-bottom:4px;}
.bf-rung{height:1.5px;flex:1;background:rgba(255,255,255,.07);}
.bf-rung.lit{background:rgba(200,128,26,.5);}
.bf-rung.now{background:var(--wax-bright);flex:2;box-shadow:0 0 7px rgba(240,160,32,.7);}
.bf-level-prog{font-family:var(--font-mono);font-size:12.5px;color:rgba(255,255,255,.5);}
.bf-level-prog b{color:rgba(245,175,45,.85);}

.bf-stats{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:8px;}
.bf-stat{padding:7px 9px;background:rgba(255,255,255,.02);border:1px solid rgba(200,165,80,.07);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:2px;}
.bf-stat::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:rgba(200,165,80,.35);}
.bf-stat-v{font-family:var(--font-display);font-weight:700;font-size:20px;line-height:1;letter-spacing:.03em;}
.bf-stat-k{font-family:var(--font-mono);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.42);}

/* ── FOUR CARDS ── */
.bf-cards{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;
  padding:8px 14px;
  background:var(--void);
  border-top:1px solid rgba(200,165,80,.08);
  min-height:220px;
}
.bf-card{
  position:relative;overflow:hidden;border-radius:2px;cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
  display:grid;grid-template-rows:1fr auto;
  min-height:0;
}
.bf-card:hover{transform:translateY(-3px);}
.bf-card-hex{position:absolute;inset:0;width:100%;height:100%;z-index:0;}
.bf-card-inner{position:relative;z-index:2;padding:12px 14px 0;}
.bf-card-bot{position:relative;z-index:2;padding:8px 14px 12px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:flex-end;gap:8px;}

.bf-c-step{font-family:var(--font-mono);font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;margin-bottom:7px;display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:rgba(0,0,0,.65);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);}
.bf-c-title{font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:.04em;line-height:.95;color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.8);margin-bottom:3px;}
.bf-c-tag{font-size:13px;color:rgba(255,255,255,.45);line-height:1.5;}
.bf-c-items{display:flex;flex-direction:column;gap:2px;margin-top:7px;}
.bf-c-item{display:flex;align-items:center;gap:6px;padding:3px 6px;font-size:13px;background:rgba(0,0,0,.32);border-left:2px solid transparent;backdrop-filter:blur(4px);}
.bf-c-item.crit{border-color:#e05555;}.bf-c-item.warn{border-color:var(--warn);}.bf-c-item.pass{border-color:var(--ok);}
.bf-c-item.dead{border-color:var(--dead);}.bf-c-item.vp{border-color:rgba(255,208,60,.4);}.bf-c-item.dim{border-color:rgba(255,255,255,.08);}
.bf-c-item-n{flex:1;color:rgba(255,255,255,.78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bf-c-item-t{font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;flex-shrink:0;padding:1px 4px;}
.bf-c-num{font-family:var(--font-display);font-weight:700;font-size:38px;line-height:1;letter-spacing:.02em;}
.bf-c-unit{font-family:var(--font-mono);font-size:12px;letter-spacing:.13em;font-weight:600;padding:3px 8px;background:rgba(0,0,0,.65);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);}
@keyframes bf-tendpulse{0%,100%{text-shadow:0 0 20px rgba(224,85,85,.5)}50%{text-shadow:0 0 40px rgba(224,85,85,.9),0 0 70px rgba(224,85,85,.3)}}

.bf-card--inspect{border:1px solid rgba(78,205,196,.55);outline:3px solid rgba(78,205,196,.15);outline-offset:3px;box-shadow:0 0 0 7px rgba(78,205,196,.05),0 0 26px rgba(78,205,196,.13),inset 0 0 0 1px rgba(78,205,196,.16);}
.bf-card--inspect .bf-c-step{color:#4ecdc4;border-color:rgba(78,205,196,.25);}
.bf-card--inspect .bf-c-num{color:#4ecdc4;text-shadow:0 0 22px rgba(78,205,196,.5);}
.bf-card--inspect .bf-c-unit{color:#4ecdc4;border-color:rgba(78,205,196,.25);}
.bf-card--inspect .bf-card-bot{border-color:rgba(78,205,196,.1);}
.bf-card--inspect:hover{border-color:rgba(78,205,196,.85);box-shadow:0 0 0 7px rgba(78,205,196,.08),0 0 38px rgba(78,205,196,.22),inset 0 0 0 1px rgba(78,205,196,.26);}

.bf-card--tend{border:1px solid rgba(224,85,85,.65);outline:3px solid rgba(224,85,85,.18);outline-offset:3px;box-shadow:0 0 0 7px rgba(224,85,85,.06),0 0 26px rgba(224,85,85,.17),inset 0 0 0 1px rgba(224,85,85,.18);}
.bf-card--tend .bf-c-step{color:#ff7070;border-color:rgba(224,85,85,.25);}
.bf-card--tend .bf-c-num{color:#e05555;}
.bf-card--tend .bf-c-unit{color:#ff7070;border-color:rgba(224,85,85,.25);}
.bf-card--tend .bf-card-bot{border-color:rgba(224,85,85,.1);}
.bf-card--tend:hover{border-color:rgba(224,85,85,.9);box-shadow:0 0 0 7px rgba(224,85,85,.1),0 0 38px rgba(224,85,85,.26),inset 0 0 0 1px rgba(224,85,85,.26);}

.bf-card--expand{border:1px solid rgba(255,208,60,.5);outline:3px solid rgba(255,208,60,.14);outline-offset:3px;box-shadow:0 0 0 7px rgba(255,208,60,.04),0 0 26px rgba(255,208,60,.11),inset 0 0 0 1px rgba(255,208,60,.14);}
.bf-card--expand .bf-c-step{color:#ffd060;border-color:rgba(255,208,60,.22);}
.bf-card--expand .bf-c-num{color:#ffd060;text-shadow:0 0 22px rgba(255,208,60,.4);}
.bf-card--expand .bf-c-unit{color:#ffd060;border-color:rgba(255,208,60,.22);}
.bf-card--expand .bf-card-bot{border-color:rgba(255,208,60,.08);}
.bf-card--expand:hover{border-color:rgba(255,208,60,.8);box-shadow:0 0 0 7px rgba(255,208,60,.07),0 0 38px rgba(255,208,60,.18),inset 0 0 0 1px rgba(255,208,60,.22);}

.bf-card--harvest{border:1px solid rgba(80,200,117,.5);outline:3px solid rgba(80,200,117,.14);outline-offset:3px;box-shadow:0 0 0 7px rgba(80,200,117,.04),0 0 26px rgba(80,200,117,.11),inset 0 0 0 1px rgba(80,200,117,.14);}
.bf-card--harvest .bf-c-step{color:#50c875;border-color:rgba(80,200,117,.22);}
.bf-card--harvest .bf-c-num{color:#50c875;text-shadow:0 0 22px rgba(80,200,117,.4);}
.bf-card--harvest .bf-c-unit{color:#50c875;border-color:rgba(80,200,117,.22);}
.bf-card--harvest .bf-card-bot{border-color:rgba(80,200,117,.08);}
.bf-card--harvest:hover{border-color:rgba(80,200,117,.8);box-shadow:0 0 0 7px rgba(80,200,117,.07),0 0 38px rgba(80,200,117,.18),inset 0 0 0 1px rgba(80,200,117,.22);}

/* ── HIVE BAND in briefing ── */
.bf-hive{
  position:relative;
  background:var(--void);
  border-top:1px solid rgba(200,165,80,.08);
}
.bf-hive-label{
  position:absolute;top:0;left:0;right:0;z-index:3;
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 18px;
  background:linear-gradient(180deg,rgba(4,2,10,.85),transparent);
  pointer-events:none;
}
.bf-hive-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:rgba(225,150,40,.78);text-transform:uppercase;}
.bf-hive-count{font-family:var(--font-mono);font-size:12.5px;color:rgba(255,255,255,.55);}
.bf-hive-count span{color:rgba(255,255,255,.4);}
.bf-hive-canvas-wrap{
  width:100%;height:660px;
  position:relative;overflow:hidden;
}
#bf-hive-canvas{display:block;width:100%;height:100%;}

/* ── VITAL STRIP ── */
.bf-strip{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(200,165,80,.08);background:rgba(4,2,10,.96);}
.bf-sv{padding:9px 18px;border-right:1px solid var(--border-dim);display:flex;align-items:center;gap:9px;cursor:pointer;transition:background .15s;}
.bf-sv:hover{background:rgba(255,255,255,.02);}
.bf-sv:last-child{border-right:none;}
.bf-sv-v{font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1;letter-spacing:.04em;}
.bf-sv-r{display:flex;flex-direction:column;gap:1px;}
.bf-sv-k{font-family:var(--font-mono);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.42);}
.bf-sv-s{font-size:12.5px;color:rgba(255,255,255,.5);}

/* MISSIONS */
.mchips{ display:flex; flex-wrap:wrap; gap:7px; }
.mchip{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.03em; padding:7px 11px; border:1px solid var(--border-dim); background:linear-gradient(165deg,#1a1f26,#101319); color:var(--text-secondary); cursor:pointer; transition:all .14s; }
.mchip:hover{ border-color:var(--wax); color:var(--wax-bright); }
.mchip.on{ border-color:var(--wax); color:#1a1107; background:linear-gradient(180deg,#ffd45a,#e89a1e); font-weight:700; }
.mchip b{ opacity:.8; font-weight:700; }
.mgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.mcard{ position:relative; padding:15px 16px; background:linear-gradient(165deg,#1a1f26,#160e07); border:1px solid var(--border); cursor:pointer; transition:transform .16s, box-shadow .16s, border-color .16s; overflow:hidden; }
.mcard::before{ content:''; position:absolute; left:0; right:0; bottom:0; height:0; background:linear-gradient(180deg, transparent, rgba(255,182,39,.12) 60%, rgba(255,182,39,.22)); transition:height .5s cubic-bezier(.2,.8,.2,1); pointer-events:none; }
.mcard:hover{ transform:translateY(-2px); border-color:var(--wax); box-shadow:0 12px 26px rgba(0,0,0,.4), 0 0 20px rgba(255,182,39,calc(.12*var(--glow))); }
.mcard__head{ display:flex; justify-content:space-between; align-items:center; position:relative; z-index:1; }
.mcard__surface{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); }
.mcard__living{ font-family:var(--font-mono); font-size:13px; color:var(--signal); letter-spacing:.04em; }
.mcard__title{ font-family:var(--font-display); font-weight:700; font-size:15px; margin:7px 0 12px; position:relative; z-index:1; }
.mcard__foot{ display:flex; align-items:center; justify-content:space-between; position:relative; z-index:1; }
.mcard__vp{ font-family:var(--font-mono); font-weight:700; font-size:14px; color:var(--wax-bright); }
.mcard__cta{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.06em; color:var(--text-secondary); }
.mcard__done{ font-family:var(--font-mono); font-size:13.5px; color:var(--ok); letter-spacing:.04em; }
.mcard.done{ border-color:var(--wax); }
.mcard.done::before{ height:100%; }
.mcard.done .mcard__title{ color:var(--royal); }

/* ── upgraded Briefing (the Keeper) ── */
.briefing--hero{ padding:26px 28px; border-color:var(--signal-dim); background:linear-gradient(160deg, rgba(22,61,56,.6), rgba(13,14,12,.92) 70%); box-shadow: inset 0 1px 0 rgba(92,225,201,.28), 0 0 calc(34px*var(--glow)) rgba(92,225,201,.14); }
.briefing--hero .briefing__hi{ font-size:30px; margin:14px 0 12px; letter-spacing:-.01em; }
.briefing__report{ position:relative; max-width:64ch; }
.briefing__report p{ font-family:var(--font-body); font-size:14px; line-height:1.62; color:var(--text-secondary); margin-bottom:7px; position:relative; }
.briefing__counsel{ padding-left:13px; border-left:2px solid var(--royal); color:var(--text-primary) !important; font-style:italic; margin-top:10px !important; }

/* ── 5-stage stepper ── */
.stepper{ display:flex; align-items:center; gap:0; margin-top:14px; flex-wrap:wrap; }
.step{ display:flex; flex-direction:column; align-items:center; gap:3px; min-width:60px; opacity:.55; transition:opacity .2s; }
.step__line{ flex:1; height:1px; min-width:12px; background:linear-gradient(90deg, var(--border), var(--border-dim)); margin-top:-18px; }
.step__dot{ width:13px; height:13px; border-radius:50%; border:2px solid var(--sc); background:transparent; }
.step__lbl{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.07em; color:var(--text-dim); text-transform:uppercase; }
.step__n{ font-family:var(--font-mono); font-size:13px; color:var(--text-secondary); font-weight:700; }
.step--done{ opacity:1; } .step--done .step__dot{ background:var(--sc); box-shadow:0 0 9px var(--sc); }
.step--cur{ opacity:1; } .step--cur .step__dot{ background:var(--sc); box-shadow:0 0 12px var(--sc); animation:pip 2s ease-in-out infinite; } .step--cur .step__lbl{ color:var(--sc); }
.step--empty{ opacity:.3; }

/* ── stage windows ── */
.stage__head{ display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:10px; margin:16px 0 10px; }
.stage__num{ width:22px; height:22px; display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-weight:700; font-size:13.5px; color:#11100c; background:var(--sc); border-radius:50%; box-shadow:0 0 10px var(--sc); }
.stage__name{ font-family:var(--font-display); font-weight:700; font-size:15px; letter-spacing:.06em; color:var(--sc); }
.stage__prog{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); justify-self:end; }
.stage__bar{ grid-column:1 / -1; height:3px; background:#0d0805; border-radius:3px; overflow:hidden; }
.stage__bar > i{ display:block; height:100%; background:var(--sc); box-shadow:0 0 8px var(--sc); border-radius:3px; transition:width .5s; }
.mcard__perm{ font-family:var(--font-mono); font-size:13px; color:var(--signal-dim); letter-spacing:.04em; }

/* ── decay dot color (right rail) ── */
.supp__item::before{ background:var(--sd, var(--danger)) !important; box-shadow:0 0 6px var(--sd, var(--danger)) !important; }

/* ── immortal status shimmer ── */
.hero__state.immortal{ background:linear-gradient(110deg,#5ce1c9,#8a7dff 40%,#ffd966 75%,#5ce1c9); background-size:200% auto; -webkit-background-clip:text; background-clip:text; color:transparent; animation:imm 6s linear infinite; }
@keyframes imm{ to{ background-position:200% center; } }

/* ── MISSION DETAIL DRAWER ── */
.md-overlay{ position:fixed; inset:0; z-index:100; background:rgba(6,4,2,.75); backdrop-filter:blur(4px); display:flex; justify-content:flex-end; opacity:0; transition:opacity .28s ease; pointer-events:none; }
.md-overlay.open{ opacity:1; pointer-events:all; }
.md-drawer{ width:min(640px,100vw); height:100%; overflow-y:auto; background:linear-gradient(160deg,#1f1408,#110c06 40%,#0e0c0a); border-left:1px solid var(--border); box-shadow:-20px 0 60px rgba(0,0,0,.7), inset 1px 0 0 rgba(255,200,90,.07); transform:translateX(100%); transition:transform .32s cubic-bezier(.22,.8,.22,1); padding:28px 32px 48px; display:flex; flex-direction:column; gap:18px; }
.md-overlay.open .md-drawer{ transform:translateX(0); }
.md__header{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.md__meta{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.md__surface{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.08em; text-transform:uppercase; }
.md__phase{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; padding:3px 8px; border:1px solid; text-transform:uppercase; }
.md__vp{ font-family:var(--font-mono); font-weight:700; font-size:13px; color:var(--royal); }
.md__effort{ font-family:var(--font-mono); font-size:13px; color:var(--text-dim); letter-spacing:.06em; }
.md__time{ font-family:var(--font-mono); font-size:13px; color:var(--text-dim); }
.md__close{ width:32px; height:32px; border:1px solid var(--border); background:transparent; color:var(--text-dim); font-size:14px; cursor:pointer; flex-shrink:0; display:flex; align-items:center; justify-content:center; }
.md__close:hover{ border-color:var(--wax); color:var(--wax-bright); }
.md__title{ font-family:var(--font-display); font-weight:700; font-size:24px; line-height:1.2; color:var(--honey-hi); }
.md__desc{ font-size:14px; line-height:1.65; color:var(--text-secondary); padding:12px 16px; background:rgba(255,182,39,.06); border-left:3px solid var(--wax); }
.md__decay{ font-family:var(--font-mono); font-size:14px; color:var(--warn); padding:8px 12px; border:1px solid rgba(255,170,51,.3); background:rgba(255,170,51,.06); }
.md__decay.perm{ color:var(--signal); border-color:rgba(92,225,201,.25); background:rgba(92,225,201,.05); }
.md__section-head{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--text-label); padding-bottom:8px; border-bottom:1px solid var(--border-dim); margin-top:4px; }
.md__steps{ display:flex; flex-direction:column; gap:2px; }
.md__step{ display:grid; grid-template-columns:28px 1fr; gap:12px; align-items:start; padding:11px 0; border-bottom:1px solid var(--border-dim); }
.md__step:last-child{ border-bottom:none; }
.md__step-n{ width:28px; height:28px; border-radius:50%; background:linear-gradient(180deg,#caa24a,#8a5a18); display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-weight:700; font-size:13.5px; color:#1a1107; flex-shrink:0; box-shadow:0 0 10px rgba(255,182,39,.3); }
.md__step-body{ font-size:13.5px; line-height:1.6; color:var(--text-primary); padding-top:4px; }
.md__links{ display:flex; flex-direction:column; gap:8px; }
.md__link{ display:flex; align-items:center; gap:10px; padding:11px 14px; border:1px solid var(--border-dim); background:linear-gradient(165deg,#1c1409,#101319); color:var(--text-secondary); font-size:13px; text-decoration:none; transition:all .15s; }
.md__link:hover{ border-color:var(--signal-dim); color:var(--signal); transform:translateX(3px); }
.md__link-icon{ font-size:14px; color:var(--signal-dim); }
.md__complete-bar{ margin-top:8px; padding:20px; background:linear-gradient(150deg, rgba(255,182,39,.1), rgba(31,20,9,.6) 55%); border:1px solid rgba(255,182,39,.3); display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; box-shadow:inset 0 1px 0 rgba(255,210,120,.2), 0 0 20px rgba(255,182,39,.08); }
.md__checkbox-wrap{ display:flex; align-items:center; gap:10px; cursor:pointer; }
.md__checkbox-wrap input{ display:none; }
.md__checkbox-box{ width:20px; height:20px; border:2px solid var(--border); background:transparent; flex-shrink:0; display:flex; align-items:center; justify-content:center; transition:all .2s; }
.md__checkbox-wrap.checked .md__checkbox-box{ background:var(--wax); border-color:var(--wax-bright); box-shadow:0 0 12px rgba(255,182,39,.5); }
.md__checkbox-wrap.checked .md__checkbox-box::after{ content:'✓'; font-size:14px; color:#1a1107; font-weight:700; }
.md__checkbox-txt{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); }
.md__checkbox-wrap.checked .md__checkbox-txt{ color:var(--ok); }
.mcard.flash{ animation:mcardFlash 1.4s ease-out; }
@keyframes mcardFlash{ 0%,100%{ box-shadow:none; } 20%{ box-shadow:0 0 0 3px var(--wax-bright), 0 0 30px rgba(255,182,39,.5); border-color:var(--wax-bright); } }

/* ── APIARY ── */
.apy-header{ display:flex; justify-content:space-between; align-items:flex-start; padding:22px 28px; background:linear-gradient(165deg,rgba(20,50,44,.6),#130c06); border:1px solid var(--signal-dim); margin-bottom:0; }
.apy-header__label{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.15em; color:var(--signal); display:flex; align-items:center; gap:7px; margin-bottom:8px; }
.apy-header__title{ font-family:var(--font-display); font-weight:700; font-size:26px; color:var(--honey-hi); margin-bottom:6px; }
.apy-header__sub{ font-size:13px; color:var(--text-secondary); max-width:52ch; line-height:1.6; }
.apy-header__right{ text-align:right; }
.apy-header__count{ font-family:var(--font-display); font-weight:700; font-size:52px; color:var(--wax-bright); line-height:1; }
.apy-header__count-label{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); letter-spacing:.1em; text-transform:uppercase; }

.apy-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:0; border-top:1px solid var(--border); }

.apy-card{ background:linear-gradient(170deg,#1c1208,#110c06); border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
.apy-card--active{ background:linear-gradient(170deg,#231608,#160e05); border-color:var(--wax); position:relative; z-index:1; box-shadow:inset 0 1px 0 rgba(255,210,100,.15), 0 0 30px rgba(255,182,39,.08); }

.apy-card__crown{ display:flex; align-items:center; gap:3px; padding:14px 20px 0; position:relative; }
.apy-card__hex{ font-size:18px; color:var(--wax); opacity:.25; }
.apy-card--active .apy-card__hex{ opacity:.6; }
.apy-card__active-dot{ width:7px; height:7px; border-radius:50%; background:var(--ok); box-shadow:0 0 8px var(--ok); margin-left:auto; animation:pulse 2s infinite; }
@keyframes pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.4; } }

.apy-card__body{ padding:10px 20px 20px; display:flex; flex-direction:column; gap:14px; }

.apy-field-label{ font-family:var(--font-mono); font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--text-dim); margin-bottom:5px; }
.apy-field-sub{ color:var(--text-dim); font-size:12.5px; text-transform:none; letter-spacing:0; }

.apy-name{ font-family:var(--font-display); font-weight:700; font-size:20px; color:var(--honey-hi); outline:none; border-bottom:1px solid transparent; padding-bottom:3px; cursor:text; transition:border-color .15s,color .15s; background:transparent; }
.apy-name:hover{ border-bottom-color:rgba(255,182,39,.3); }
.apy-name:focus{ border-bottom-color:var(--wax); color:var(--royal); }
.apy-name[contenteditable]:empty:before{ content:attr(placeholder); color:var(--text-dim); font-weight:400; }

.apy-url-row{ display:flex; align-items:center; background:rgba(0,0,0,.35); border:1px solid var(--border-dim); transition:border-color .15s; }
.apy-url-row:focus-within{ border-color:var(--wax); box-shadow:0 0 0 1px rgba(255,182,39,.2); }
.apy-url-pre{ font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); padding:9px 8px 9px 12px; white-space:nowrap; border-right:1px solid var(--border-dim); }
.apy-url-input{ flex:1; background:transparent; border:none; outline:none; font-family:var(--font-mono); font-size:14px; color:var(--text-primary); padding:9px 10px; min-width:0; }
.apy-url-input::placeholder{ color:var(--text-dim); }
.apy-scan-btn{ font-family:var(--font-mono); font-size:13px; letter-spacing:.08em; padding:9px 12px; background:rgba(255,182,39,.12); border:none; border-left:1px solid rgba(255,182,39,.3); color:var(--wax-bright); cursor:pointer; white-space:nowrap; transition:background .15s; }
.apy-scan-btn:hover{ background:rgba(255,182,39,.22); }

.apy-stats-row{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.apy-stat-block{ text-align:center; padding:8px 4px; border:1px solid var(--border-dim); background:rgba(255,255,255,.02); }
.apy-stat-v{ display:block; font-family:var(--font-display); font-weight:700; font-size:15px; color:var(--wax-bright); }
.apy-stat-k{ display:block; font-family:var(--font-mono); font-size:12.5px; color:var(--text-dim); text-transform:uppercase; letter-spacing:.06em; margin-top:2px; }

.apy-hbar{ display:flex; gap:3px; align-items:center; }
.apy__hcell{ font-size:14px; color:var(--border); transition:color .2s; }
.apy__hcell.on{ color:var(--wax); text-shadow:0 0 8px rgba(255,182,39,.6); }

.apy-card__actions{ display:flex; gap:8px; align-items:center; }
.apy-card__actions .btn{ flex:1; }
.apy-del{ background:transparent; border:1px solid var(--border-dim); color:var(--text-dim); font-family:var(--font-mono); font-size:13px; letter-spacing:.06em; padding:8px 12px; cursor:pointer; transition:all .15s; white-space:nowrap; }
.apy-del:hover{ border-color:var(--danger); color:var(--danger); }

.apy-new-wrap{ border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.apy-new-btn{ width:100%; background:transparent; border:none; color:var(--text-dim); font-family:var(--font-mono); font-size:14px; letter-spacing:.1em; padding:18px 24px; text-align:left; cursor:pointer; display:flex; align-items:center; gap:12px; transition:all .15s; }
.apy-new-btn:hover{ color:var(--wax); background:rgba(255,182,39,.04); }
.apy-new-hex{ font-size:20px; }

/* ── DIAGNOSTICS ── */
.apy-scan-output{ grid-column:1/-1; width:100%; }
.diag-panel{ border-top:1px solid var(--border); width:100%; }
.diag-header{ display:flex; justify-content:space-between; align-items:center; padding:18px 24px; background:linear-gradient(90deg,rgba(255,182,39,.08),transparent); border-bottom:1px solid var(--border); gap:24px; }
.diag-title{ font-family:var(--font-mono); font-size:13px; letter-spacing:.12em; color:var(--wax-bright); }
.diag-domain{ font-family:var(--font-display); font-size:20px; font-weight:700; color:var(--honey-hi); margin-top:3px; }
.diag-progress{ text-align:right; min-width:200px; }
.diag-scanning{ font-family:var(--font-mono); font-size:13.5px; color:var(--signal); display:block; margin-bottom:6px; }
.diag-pbar{ height:3px; background:rgba(255,255,255,.08); border-radius:2px; overflow:hidden; }
.diag-pbar-fill{ height:100%; background:linear-gradient(90deg,var(--wax),var(--wax-bright)); transition:width .4s ease; border-radius:2px; }
.diag-sections{ display:flex; flex-direction:column; width:100%; }
.diag-section{ width:100%; border-bottom:1px solid var(--border); }
.diag-section__head{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--text-label); padding:12px 24px 10px; background:rgba(0,0,0,.2); border-bottom:1px solid var(--border-dim); display:flex; justify-content:space-between; align-items:center; }
.diag-section__count{ color:var(--text-dim); font-size:13px; letter-spacing:.06em; }
.diag-section__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); width:100%; }
.diag-card{ padding:16px 18px; border-right:1px solid var(--border-dim); border-bottom:1px solid var(--border-dim); background:linear-gradient(170deg,#181108,#110c06); display:flex; flex-direction:column; gap:7px; }
.diag-card--pass{ background:linear-gradient(170deg,#0e2214,#110c06); }
.diag-card--warn{ background:linear-gradient(170deg,#241a06,#110c06); }
.diag-card--fail{ background:linear-gradient(170deg,#240e0e,#110c06); }
.diag-card__top{ display:flex; align-items:center; gap:8px; }
.diag-card__icon{ font-size:15px; flex-shrink:0; }
.diag-card__label{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); flex:1; }
.diag-card__badge{ font-family:var(--font-mono); font-size:12.5px; letter-spacing:.08em; padding:2px 6px; border:1px solid; flex-shrink:0; }
.diag-badge--scanning{ color:var(--text-dim); border-color:var(--border-dim); animation:blink 1.2s infinite; }
.diag-badge--pass{ color:var(--ok); border-color:rgba(92,217,126,.4); background:rgba(92,217,126,.08); }
.diag-badge--warn{ color:var(--warn); border-color:rgba(255,170,51,.4); background:rgba(255,170,51,.08); }
.diag-badge--fail{ color:var(--danger); border-color:rgba(255,94,94,.4); background:rgba(255,94,94,.08); }
.diag-card__value{ font-family:var(--font-display); font-weight:700; font-size:24px; color:var(--wax-bright); line-height:1; }
.diag-card__value.diag-card__scanning{ font-size:14px; color:var(--text-dim); font-family:var(--font-mono); font-weight:400; }
.diag-card__unit{ font-size:14px; font-family:var(--font-mono); color:var(--text-dim); font-weight:400; margin-left:2px; }
.diag-card__metrics{ display:flex; flex-wrap:wrap; gap:4px; }
.diag-metric{ font-family:var(--font-mono); font-size:13px; color:var(--text-secondary); background:rgba(255,255,255,.04); border:1px solid var(--border-dim); padding:2px 6px; }
.diag-card__msg{ font-size:14px; color:var(--text-secondary); line-height:1.55; }
.diag-card__why{ font-size:13.5px; color:var(--text-dim); line-height:1.5; font-style:italic; }
.diag-card__detail{ margin-top:2px; }
.diag-card__detail summary{ font-family:var(--font-mono); font-size:13px; color:var(--text-dim); cursor:pointer; letter-spacing:.06em; padding:3px 0; }
.diag-card__detail summary:hover{ color:var(--signal); }
.diag-card__detail p{ font-size:14px; color:var(--text-secondary); line-height:1.6; margin-top:6px; }
.diag-fix{ margin-top:4px!important; color:var(--warn)!important; }
.diag-link{ display:inline-block; margin-top:6px; font-family:var(--font-mono); font-size:13px; color:var(--signal); letter-spacing:.06em; text-decoration:none; border-bottom:1px solid var(--signal-dim); }
.diag-link:hover{ color:var(--wax); border-color:var(--wax); }

/* RING view */
.ringhero{ padding:18px 20px; text-align:center; position:relative; }
.ringhero__title{ font-family:var(--font-display); font-weight:700; font-size:22px; color:var(--crystal); }
.ringhero__sub{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); margin-top:4px; }
.ringcanvas{ display:block; margin:12px auto 0; }
.ringtheme{ margin-top:6px; }
.ringgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.rcell{ padding:12px 14px; background:linear-gradient(165deg,#16181f,#10100c); border:1px solid var(--crystal-dim); display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center; cursor:pointer; transition:all .16s; }
.rcell:hover{ box-shadow:0 0 16px rgba(196,212,238,.16); transform:translateY(-1px); }
.rcell.done{ background:linear-gradient(165deg, rgba(120,140,175,.30), #10100c); border-color:var(--crystal); }
.rcell__t{ font-family:var(--font-body); font-weight:600; font-size:13px; } .rcell.done .rcell__t{ color:var(--crystal); }
.rcell__vp{ font-family:var(--font-mono); font-weight:700; font-size:13.5px; color:var(--crystal-dim); }
.rcell__check{ font-family:var(--font-mono); font-size:13px; color:var(--crystal); }

/* HIVE view */
#hive-canvas{ display:block; width:100%; height:auto; }
.hiveview-cap{ display:flex; justify-content:space-between; align-items:center; margin-top:10px; font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); } .hiveview-cap b{ color:var(--wax-bright); }

/* right rail score */
.score{ background:linear-gradient(165deg,#251808,#170f07); border:1px solid var(--border); padding:16px; }
.score__top{ display:flex; justify-content:space-between; align-items:flex-start; }
.score__label{ font-family:var(--font-mono); font-size:13.5px; letter-spacing:.12em; color:var(--text-label); text-transform:uppercase; line-height:1.5; }
.pill{ font-family:var(--font-mono); font-size:13px; padding:4px 9px; border:1px solid var(--border); color:var(--text-dim); border-radius:999px; }
.score__big{ font-family:var(--font-display); font-weight:700; font-size:42px; line-height:1; margin:8px 0 14px; display:flex; align-items:baseline; gap:8px; }
.score__num{ transition:color .4s, text-shadow .4s; } .score__grade{ font-size:22px; color:var(--text-dim); }
.score__row{ display:flex; justify-content:space-between; font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); padding:7px 0; }
.score__row .v{ font-weight:700; } .score__note{ margin-top:12px; font-family:var(--font-mono); font-size:13.5px; color:var(--text-dim); line-height:1.6; }
.supp__item{ padding:9px 0 9px 16px; position:relative; border-bottom:1px solid var(--border-dim); } .supp__item:last-child{ border-bottom:none; }
.supp__item::before{ content:''; position:absolute; left:0; top:13px; width:7px; height:7px; border-radius:50%; background:var(--danger); box-shadow:0 0 6px var(--danger); animation:pip 3.2s ease-in-out infinite; }
.supp__name{ font-family:var(--font-mono); font-size:14px; color:var(--text-secondary); } .supp__desc{ font-size:13.5px; color:var(--text-dim); margin-top:2px; line-height:1.45; }

/* +VP toast */
.vp-float{ position:fixed; z-index:60; font-family:var(--font-mono); font-weight:700; font-size:15px; color:var(--royal); text-shadow:0 0 10px rgba(255,182,39,.7); pointer-events:none; animation:vpRise 1.1s ease-out forwards; }
@keyframes vpRise{ 0%{ transform:translateY(0) scale(.8); opacity:0; } 20%{ opacity:1; transform:translateY(-10px) scale(1.1);} 100%{ transform:translateY(-46px) scale(1); opacity:0; } }

@media (max-width:1100px){ #app{ grid-template-columns:1fr; } .vitals,.intelstat{ grid-template-columns:repeat(2,1fr); } .work,.toolgrid,.ringgrid,.hivestrip,.mgrid{ grid-template-columns:1fr; }
  .panel--center{ order:-1; } #rail-left{ order:1; } #rail-right{ order:2; }
  .tabs{ position:sticky; top:0; z-index:6; background:linear-gradient(180deg,#160e07,rgba(22,16,11,.85)); padding:6px 0; }
}
@media (prefers-reduced-motion:reduce){ *{ animation:none !important; } }

/* ── theme toggle button ── */
.theme-btn{ background:none; border:1px solid var(--border); color:var(--text-dim); cursor:pointer;
  width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center;
  font-size:15px; margin-left:10px; transition:color .2s,border-color .2s,transform .2s; }
.theme-btn:hover{ color:var(--wax-bright); border-color:var(--wax-bright); transform:translateY(-1px); }

/* ── ORDERED REPAIR PLAN ── */
.diag-repair{ margin:0 0 26px; }
.repair-head{ padding:18px 20px; border:1px solid var(--wax); background:linear-gradient(135deg,rgba(255,182,39,.1),transparent); margin-bottom:16px; }
.repair-head__title{ font-family:var(--font-display); font-size:20px; color:var(--royal); letter-spacing:.02em; }
.repair-head__sub{ font-size:13px; color:var(--text-secondary); margin-top:6px; line-height:1.6; }
.repair-head__sub b{ color:var(--wax-bright); }
.repair-clear{ padding:22px; border:1px solid var(--ok); background:rgba(92,217,126,.08); color:var(--ok); font-size:15px; text-align:center; font-family:var(--font-display); }
.repair-tier{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin:20px 0 10px; font-family:var(--font-mono); font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-secondary); border-bottom:1px solid var(--border-dim); padding-bottom:7px; }
.repair-tier__n{ color:var(--wax-bright); font-weight:700; }
.repair-tier__blurb{ flex:1 1 100%; font-family:var(--font-body); font-size:12px; text-transform:none; letter-spacing:0; color:var(--text-dim); }
.repair-item{ display:flex; gap:14px; padding:14px 16px; border:1px solid var(--border-dim); border-left:3px solid var(--border); background:var(--comb-2); margin-bottom:8px; }
.repair-item--fail{ border-left-color:var(--danger); }
.repair-item--warn{ border-left-color:var(--warn); }
.repair-item__num{ flex:none; width:30px; height:30px; display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:15px; color:var(--void); background:var(--wax-bright); border-radius:2px; }
.repair-item--warn .repair-item__num{ background:var(--warn); }
.repair-item--fail .repair-item__num{ background:var(--danger); color:#fff; }
.repair-item__body{ flex:1; min-width:0; }
.repair-item__head{ display:flex; align-items:center; gap:9px; }
.repair-item__icon{ font-size:15px; }
.repair-item__label{ font-family:var(--font-mono); font-size:13px; letter-spacing:.04em; color:var(--text-primary); text-transform:uppercase; }
.repair-item__badge{ margin-left:auto; font-family:var(--font-mono); font-size:10px; padding:2px 8px; }
.repair-item__status{ font-size:12.5px; color:var(--text-dim); margin-top:5px; line-height:1.5; }
.repair-item__guide{ margin-top:9px; }
.repair-item__guide summary{ cursor:pointer; font-family:var(--font-mono); font-size:11px; letter-spacing:.06em; color:var(--wax-bright); text-transform:uppercase; }
.repair-guide{ margin-top:9px; padding:12px 14px; background:rgba(0,0,0,.2); border:1px solid var(--border-dim); }
.repair-guide p{ font-size:13px; line-height:1.65; color:var(--text-secondary); margin-bottom:8px; }
.repair-guide p b{ color:var(--text-primary); }
.repair-guide__fix b{ color:var(--ok) !important; }
.repair-foot{ margin-top:14px; padding:13px 16px; border:1px dashed var(--border); color:var(--text-dim); font-size:12.5px; text-align:center; }

/* ── measurement failures (not repair items) ── */
.repair-unknown{ margin-top:20px; padding:16px 18px; border:1px dashed var(--border); background:rgba(255,255,255,.02); }
.repair-unknown__head{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-secondary); }
.repair-unknown__sub{ font-size:12.5px; line-height:1.6; color:var(--text-dim); margin:7px 0 12px; }
.repair-unknown__sub b{ color:var(--text-secondary); }
.repair-unknown__item{ display:flex; justify-content:space-between; gap:14px; align-items:center; padding:7px 0; border-top:1px solid var(--border-dim); font-size:12.5px; color:var(--text-secondary); }
.repair-unknown__msg{ color:var(--text-dim); font-size:11.5px; text-align:right; flex:1; }

/* ── health/growth split + before-after delta ── */
.score__delta{ font-family:var(--font-mono); font-size:13px; font-weight:700; margin:6px 0 2px; letter-spacing:.02em; }
.score__divider{ height:1px; background:var(--border-dim); margin:16px 0 12px; }
.score__growth{ margin:2px 0 8px; }

/* ── no-email toggle + explainer overlay ── */
.noemail-toggle{ display:flex; align-items:flex-start; gap:12px; padding:12px 14px; margin-bottom:12px;
  border:1px solid var(--border-dim); background:rgba(255,255,255,.02); }
.noemail-switch{ position:relative; flex:none; width:42px; height:24px; }
.noemail-switch input{ opacity:0; width:0; height:0; }
.noemail-slider{ position:absolute; inset:0; cursor:pointer; background:var(--cell-hover); border:1px solid var(--border); transition:.2s; border-radius:24px; }
.noemail-slider:before{ content:''; position:absolute; height:16px; width:16px; left:3px; top:3px; background:var(--text-dim); transition:.2s; border-radius:50%; }
.noemail-switch input:checked + .noemail-slider{ background:rgba(255,182,39,.25); border-color:var(--wax-bright); }
.noemail-switch input:checked + .noemail-slider:before{ transform:translateX(18px); background:var(--wax-bright); }
.noemail-copy{ display:flex; flex-direction:column; gap:2px; }
.noemail-label{ font-size:13.5px; color:var(--text-primary); display:flex; align-items:center; gap:7px; }
.noemail-sub{ font-size:12px; color:var(--text-dim); line-height:1.4; }
.noemail-info{ background:none; border:none; color:var(--wax-bright); cursor:pointer; font-size:13px; padding:0; line-height:1; }
.noemail-info:hover{ color:var(--royal); }
.noemail-overlay{ position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.7); backdrop-filter:blur(3px);
  display:flex; align-items:center; justify-content:center; padding:24px; }
.noemail-overlay[hidden]{ display:none !important; }
.noemail-overlay__box{ max-width:520px; background:var(--comb); border:1px solid var(--wax); padding:26px 28px;
  max-height:85vh; overflow-y:auto; }
.noemail-overlay__head{ font-family:var(--font-display); font-size:18px; color:var(--royal); margin-bottom:14px; }
.noemail-overlay__box p{ font-size:13.5px; line-height:1.65; color:var(--text-secondary); margin-bottom:12px; }
.noemail-overlay__box p b{ color:var(--text-primary); }
.noemail-overlay__box ul{ margin:0 0 12px; padding-left:18px; }
.noemail-overlay__box li{ font-size:13.5px; line-height:1.6; color:var(--text-secondary); margin-bottom:8px; }
.noemail-overlay__box li b{ color:var(--text-primary); }
.noemail-overlay__box code{ font-family:var(--font-mono); font-size:12px; background:rgba(255,255,255,.06); padding:1px 5px; color:var(--wax-bright); }
.noemail-overlay__warn{ padding:10px 12px; border:1px solid var(--warn); background:rgba(255,170,51,.08); color:var(--warn) !important; font-size:12.5px !important; }
.diag-badge--na{ color:var(--text-dim); border:1px solid var(--border); }
