/* CavalryHQ Cerebro: shared tokens and base styles (light and dark). */
:root{
  --carbon:#1E1E1E; --gold:#FFBA0C; --gold-ink:#141414;
  --bg:#F7F4F3; --panel:#FFFFFF; --ink:#141414; --steel:#6B6560;
  --hair:#DDD6D0; --stone:#C9C2BC; --rust:#A33A22; --ok:#2F6B3A;
  --row-hover:#FBF6EA; --row-sel:#FFF3CF; --chip:#EFEAE6; --mark:#FFE08A;
  --disp:"Saira Condensed","Arial Narrow",sans-serif;
  --body:"Open Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#161514; --panel:#201F1E; --ink:#EEE9E5; --steel:#A39B94;
    --hair:#34312F; --stone:#4A4542; --rust:#E07A5F; --ok:#7CC48A;
    --row-hover:#2A2722; --row-sel:#3A3120; --chip:#2C2A28; --mark:#6B5410; color-scheme:dark;
  }
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:14px/1.5 var(--body)}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
a{color:inherit}

.bar{background:var(--carbon);color:#F7F4F3;padding-block:14px;padding-inline:16px;padding-top:calc(14px + env(safe-area-inset-top,0px))}
.bar-in{max-width:1440px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{height:28px;width:auto;display:block;flex:none}
.brand-t{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding-left:12px;border-left:1px solid #4A4542;line-height:1}
.brand-t b{font:700 22px/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:#F7F4F3}
.brand-t small{font:500 13px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
/* legacy text-only brand */
.brand > b{font:700 24px/1 var(--disp);letter-spacing:.04em;text-transform:uppercase}
.brand > b span{color:var(--gold)}
.who{display:flex;gap:10px;align-items:center;font-size:12px;color:#C9C2BC}
.who button{background:transparent;border:1px solid #4A4542;color:#F7F4F3;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:12px}
.who button:hover{border-color:var(--gold)}

.btn{border:1px solid var(--hair);background:var(--panel);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px;white-space:nowrap}
.btn:hover:not(:disabled){border-color:var(--stone)}
.btn:disabled{opacity:.5;cursor:default}
.btn.primary{background:var(--carbon);color:#F7F4F3;border-color:var(--carbon)}
.btn.primary:hover:not(:disabled){background:#000}
.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--gold-ink);font-weight:600}
.btn.danger{color:var(--rust)}
.note{font-size:12px;color:var(--steel);margin:0}
.err{color:var(--rust);font-weight:600}
.ok{color:var(--ok);font-weight:600}
.h-label{margin:0;font:600 13px var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--steel)}
.empty{padding:40px 16px;text-align:center;color:var(--steel)}
.empty b{display:block;font:600 18px var(--disp);letter-spacing:.06em;color:var(--ink);text-transform:uppercase;margin-bottom:4px}

/* Full-screen site viewer, shared by both panels */
.pv{position:fixed;inset:0;z-index:50;background:var(--bg);display:flex;flex-direction:column}
.pv-bar{background:var(--carbon);color:#F7F4F3;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top,0px))}
.pv-bar b{font:600 18px var(--disp);letter-spacing:.06em;text-transform:uppercase}
.pv-bar select{padding:5px 8px;border-radius:6px;border:1px solid #4A4542;background:#2A2826;color:#F7F4F3;font-size:13px;max-width:100%}
.pv-bar .btn{background:transparent;color:#F7F4F3;border-color:#4A4542}
.pv-bar .btn:hover:not(:disabled){border-color:var(--gold)}
.pv-bar .btn[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--gold-ink);font-weight:600}
.pv-err{color:#F2A08A;font-size:12px}
.pv-sp{flex:1}
.pv iframe{flex:1;width:100%;border:0;background:#fff}
@media (prefers-reduced-motion:no-preference){.btn{transition:background .12s,border-color .12s}}
