/* Agentic AI Consulting look: warm cream, burnt orange, Bricolage Grotesque headings, Instrument Sans text. */
:root{
  --bg:#FFFDF8; --surface:#FFF7EB; --surface2:#FFF1DE; --fg:#1F150D; --muted:#6B5444; --line:#EADBC6;
  --accent:#F97316; --accent-ink:#1F150D; --accent-text:#C2410C; --burnt:#C2410C;
  --good:#2F6B3F; --good-bg:#E4F1E7; --warn:#8A4A07; --warn-bg:#FEF0C7; --bad:#A12A1E; --bad-bg:#FBE7E4; --info:#1D4E89; --info-bg:#E6EEF8;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#1A120C; --surface:#261A11; --surface2:#30221A; --fg:#FFF7EB; --muted:#C9B49C; --line:#3D2C20;
  --accent:#F97316; --accent-ink:#1F150D; --accent-text:#FDBA74; --burnt:#FB923C;
  --good:#86BF8F; --good-bg:#21351F; --warn:#FCD34D; --warn-bg:#3A2A12; --bad:#F4A49B; --bad-bg:#3E1E1A; --info:#9CC2EE; --info-bg:#1B2A3D;
  color-scheme:dark;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#1A120C; --surface:#261A11; --surface2:#30221A; --fg:#FFF7EB; --muted:#C9B49C; --line:#3D2C20;
    --accent:#F97316; --accent-ink:#1F150D; --accent-text:#FDBA74; --burnt:#FB923C;
    --good:#86BF8F; --good-bg:#21351F; --warn:#FCD34D; --warn-bg:#3A2A12; --bad:#F4A49B; --bad-bg:#3E1E1A; --info:#9CC2EE; --info-bg:#1B2A3D;
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg)}
body{font:15px/1.55 "Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3{font-family:"Bricolage Grotesque","Instrument Sans",system-ui,sans-serif;line-height:1.15;margin:0;text-wrap:balance}
h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:-.01em}
h2{font-size:1.2rem;font-weight:650}
h3{font-size:1.02rem;font-weight:650}
p{margin:0}
.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.rail{background:var(--surface);border-right:1px solid var(--line);padding:0 12px 18px;display:flex;flex-direction:column;gap:2px;position:sticky;top:0;height:100vh;overflow:auto}
.wordmark{display:flex;gap:10px;align-items:center;padding:4px 8px 16px;color:var(--fg);text-decoration:none;border-radius:10px}
.wordmark:hover{background:var(--surface2)}
.wordmark:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.wordmark .back{color:var(--accent-text);font-weight:600;margin-top:4px}
.mark{width:34px;height:34px;border-radius:10px;background:var(--burnt);color:#FFF7EB;display:flex;align-items:center;justify-content:center;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:14px;flex:none}
.wordmark b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:.98rem;line-height:1.1}
.wordmark b span{color:var(--burnt)}
.wordmark small{display:block;font-size:11.5px;color:var(--muted);margin-top:2px}
.rail-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:12px 8px 4px}
.navbtn{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;font-weight:550;font-size:14px;color:var(--fg)}
.navbtn:hover{background:var(--surface2)}
.navbtn[aria-current="page"]{background:var(--accent);color:var(--accent-ink)}
.navbtn:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.count:empty{display:none}
.count{margin-left:auto;font-size:11.5px;font-weight:700;background:var(--surface2);border:1px solid var(--line);border-radius:999px;padding:0 7px}
.navbtn[aria-current="page"] .count{background:var(--accent-ink);color:var(--accent);border-color:transparent}
.rail-foot{margin-top:auto;font-size:11.5px;color:var(--muted);padding:12px 8px 0;border-top:1px solid var(--line)}
.main{min-width:0;padding:22px 28px 56px}
.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.top .who{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sample{font-size:12.5px;background:var(--warn-bg);color:var(--warn);border-radius:8px;padding:8px 12px;margin-bottom:18px}
.eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-text);margin-bottom:6px}
.muted{color:var(--muted)}
.small{font-size:13px}
.grid{display:grid;gap:18px;min-width:0}
.two{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.gap-t{margin-top:18px}
@media (max-width:1100px){.two{grid-template-columns:minmax(0,1fr)}.four{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.rail{position:static;height:auto;flex-direction:row;flex-wrap:wrap;gap:4px}.rail-label,.rail-foot,.wordmark{display:none}.main{padding:16px}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0}
.card.tight{padding:14px 16px}
.card>h2+p{margin-top:6px}
.kpi{display:flex;flex-direction:column;gap:4px}
.kpi b{font-family:"Bricolage Grotesque",sans-serif;font-size:2rem;font-weight:700;line-height:1.05;font-variant-numeric:tabular-nums}
.kpi span{font-size:13px;color:var(--muted)}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:650;padding:3px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);white-space:nowrap}
.p-good{background:var(--good-bg);color:var(--good);border-color:transparent}
.p-warn{background:var(--warn-bg);color:var(--warn);border-color:transparent}
.p-bad{background:var(--bad-bg);color:var(--bad);border-color:transparent}
.p-info{background:var(--info-bg);color:var(--info);border-color:transparent}
.p-accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.tier{font-size:11.5px;font-weight:700;border:1px solid var(--line);border-radius:6px;padding:1px 7px;white-space:nowrap}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;align-items:center}
button.btn{font:inherit;font-weight:650;font-size:14px;cursor:pointer;border-radius:10px;padding:9px 14px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);min-height:40px}
button.btn.ghost{background:transparent;color:var(--fg);border-color:var(--line)}
button.btn.small{min-height:34px;padding:5px 10px;font-size:13px}
button.btn:hover:not(:disabled){filter:brightness(1.06)}
button.btn:disabled{opacity:.45;cursor:not-allowed}
select,input[type="number"],input[type="text"]{font:inherit;font-size:14px;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 8px;max-width:100%}
input[type="range"]{accent-color:var(--accent);width:100%}
input[type="checkbox"]{width:18px;height:18px;accent-color:var(--accent);margin:0;flex:none}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin-top:12px}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th,td{text-align:left;padding:9px 11px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:12px;color:var(--muted);font-weight:650;background:var(--surface2);white-space:nowrap}
tr:last-child td{border-bottom:none}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr.hot td{background:var(--warn-bg)}
tr.click{cursor:pointer}
tr.click:hover td{background:var(--surface2)}
.rule{font-size:11.5px;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:18px;background:var(--surface)}
@media (max-width:760px){.steps{grid-template-columns:minmax(0,1fr)}}
.step{all:unset;cursor:pointer;padding:12px 14px;border-right:1px solid var(--line);display:flex;gap:10px;align-items:center}
.step:last-child{border-right:none}
.step:hover{background:var(--surface2)}
.step:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
.step .n{width:24px;height:24px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;background:var(--surface2);border:1px solid var(--line)}
.step.cur{background:var(--accent);color:var(--accent-ink)}
.step.cur .n{background:var(--accent-ink);color:var(--accent)}
.step.done .n{background:var(--good);color:#fff;border-color:transparent}
.step .l{font-weight:650;font-size:13px;line-height:1.2}
.agents{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.agent{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;gap:8px;align-content:start;min-width:0}
.agent.orch{border-color:var(--accent)}
.agent .detail{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.agent .acts{display:flex;flex-wrap:wrap;gap:6px}
.kanban{display:grid;grid-template-columns:repeat(6,minmax(170px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}
.col{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0}
.col h3{font-size:.9rem;display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px}
.deal{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px}
.deal b{display:block;font-size:13.5px}
.deal .rule{margin-top:3px}
.results{display:grid;margin:8px 0 0}
.results div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.results dt{color:var(--muted)}
.results dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}
.results .total{border-bottom:none;padding-top:14px}
.results .total dt{color:var(--fg);font-weight:650}
.results .total dd{font-family:"Bricolage Grotesque",sans-serif;font-size:1.3rem;color:var(--accent-text)}
.tie{margin-top:12px;font-size:14px;padding:10px 12px;border-radius:10px;background:var(--bg);border:1px solid var(--line)}
.tie.ok{color:var(--good)}
.tie.bad{color:var(--bad)}
.blocker{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--bg);border-radius:10px;padding:12px 14px;font-weight:550}
.notice{border-left:4px solid var(--accent);background:var(--surface2);border-radius:10px;padding:12px 14px;font-size:14px}
.gate{border-color:var(--accent)}
.evidence{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-top:14px}
.evidence>div{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px;min-width:0}
.evidence span{display:block;font-size:12px;color:var(--muted)}
.evidence strong{font-family:"Bricolage Grotesque",sans-serif;font-size:1.15rem;font-variant-numeric:tabular-nums}
.evidence .snap{font-size:12px;color:var(--muted);margin-top:4px;font-weight:500}
fieldset{border:1px solid var(--line);border-radius:10px;margin:14px 0 0;padding:12px 14px;display:grid;gap:10px}
legend{font-weight:650;padding:0 6px}
fieldset label{display:flex;gap:10px;align-items:flex-start}
.log{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:6px;font-size:13.5px}
.log li{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;padding:8px 10px;background:var(--bg);border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}
.log time{color:var(--muted);font-variant-numeric:tabular-nums}
.log .who{font-weight:650}
.doc{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.doc:last-child{border-bottom:none}
.doc .sub{font-size:12px;color:var(--muted)}
.kv{display:grid;grid-template-columns:minmax(120px,max-content) minmax(0,1fr);gap:8px 16px;font-size:14px;margin:0}
.kv dt{color:var(--muted)}
.kv dd{margin:0;font-weight:550}
.letter{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:16px;font-size:14px;line-height:1.65}
.chapter{display:grid;gap:8px;align-content:start}
.chapter .num{font-family:"Bricolage Grotesque",sans-serif;font-weight:700;color:var(--accent-text);font-size:1.4rem}
ol.try{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}
details{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:10px;background:var(--bg)}
summary{cursor:pointer;font-weight:650}
.news{display:grid;gap:12px}
.news article{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--bg)}
.news .meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--muted)}
.footer{font-size:12.5px;color:var(--muted);margin-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:var(--fg);color:var(--bg);padding:11px 16px;border-radius:10px;font-weight:600;font-size:14px;opacity:0;pointer-events:none;transition:opacity .25s;max-width:92vw;z-index:9}
.toast.show{opacity:1}
[hidden]{display:none!important}
@media (prefers-reduced-motion: reduce){*{transition:none!important}}

/* ---------- Colour system: one hue per category, tier, step and agent. Mid-tones in both themes. ---------- */
:root{
  --teal:#0F766E; --teal-bg:#D3EEE8;
  --indigo:#4338CA; --indigo-bg:#E0E1F9;
  --plum:#9D174D; --plum-bg:#F5DCE8;
  --olive:#4D6F12; --olive-bg:#E3EFCB;
  --sky:#0B6A94; --sky-bg:#D6ECF7;
  --rose:#B4233F; --rose-bg:#FBDDE3;
  --sand:#8A5A00; --sand-bg:#F8E7BD;
  --slate:#475569; --slate-bg:#E2E7EE;
}
:root[data-theme="dark"]{
  --teal:#5EEAD4; --teal-bg:#153E39;
  --indigo:#A5B4FC; --indigo-bg:#252A5E;
  --plum:#F0A8CF; --plum-bg:#4B1D35;
  --olive:#C6E884; --olive-bg:#2E4116;
  --sky:#7FD3F5; --sky-bg:#143649;
  --rose:#F4A0AE; --rose-bg:#4A1F27;
  --sand:#F6CF6B; --sand-bg:#40320F;
  --slate:#CBD5E1; --slate-bg:#2B3542;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --teal:#5EEAD4; --teal-bg:#153E39;
    --indigo:#A5B4FC; --indigo-bg:#252A5E;
    --plum:#F0A8CF; --plum-bg:#4B1D35;
    --olive:#C6E884; --olive-bg:#2E4116;
    --sky:#7FD3F5; --sky-bg:#143649;
    --rose:#F4A0AE; --rose-bg:#4A1F27;
    --sand:#F6CF6B; --sand-bg:#40320F;
    --slate:#CBD5E1; --slate-bg:#2B3542;
  }
}
/* Tiers */
.tier-T1{background:var(--teal-bg);color:var(--teal);border-color:transparent}
.tier-T2{background:var(--indigo-bg);color:var(--indigo);border-color:transparent}
.tier-T3{background:var(--plum-bg);color:var(--plum);border-color:transparent}
/* Categories (approvals, deadlines, issues) */
.cat-kyc{background:var(--sky-bg);color:var(--sky);border-color:transparent}
.cat-billing{background:var(--olive-bg);color:var(--olive);border-color:transparent}
.cat-ledger{background:var(--sand-bg);color:var(--sand);border-color:transparent}
.cat-vat{background:var(--teal-bg);color:var(--teal);border-color:transparent}
.cat-advisory{background:var(--plum-bg);color:var(--plum);border-color:transparent}
.cat-enquiry{background:var(--indigo-bg);color:var(--indigo);border-color:transparent}
.cat-hmrc{background:var(--rose-bg);color:var(--rose);border-color:transparent}
.cat-filing{background:var(--slate-bg);color:var(--slate);border-color:transparent}
/* Onboarding steps 1 to 6 */
.s-0{--sc:var(--sky);--sb:var(--sky-bg)}
.s-1{--sc:var(--indigo);--sb:var(--indigo-bg)}
.s-2{--sc:var(--teal);--sb:var(--teal-bg)}
.s-3{--sc:var(--olive);--sb:var(--olive-bg)}
.s-4{--sc:var(--plum);--sb:var(--plum-bg)}
.s-5{--sc:var(--sand);--sb:var(--sand-bg)}
.step.s-0 .n,.step.s-1 .n,.step.s-2 .n,.step.s-3 .n,.step.s-4 .n,.step.s-5 .n{background:var(--sb);color:var(--sc);border:2px solid var(--sc)}
.step.done.s-0 .n,.step.done.s-1 .n,.step.done.s-2 .n,.step.done.s-3 .n,.step.done.s-4 .n,.step.done.s-5 .n{background:var(--sc);color:var(--bg);border-color:transparent}
.step.cur.s-0,.step.cur.s-1,.step.cur.s-2,.step.cur.s-3,.step.cur.s-4,.step.cur.s-5{background:var(--sb);color:var(--fg);box-shadow:inset 0 -4px 0 var(--sc)}
.step.cur .n{background:var(--sc)!important;color:var(--bg)!important;border-color:transparent!important}
/* Agents */
.agent.a-intake{border-left:4px solid var(--indigo)}
.agent.a-ledger{border-left:4px solid var(--sand)}
.agent.a-chaser{border-left:4px solid var(--rose)}
.agent.a-compliance{border-left:4px solid var(--teal)}
.agent.a-hmrc{border-left:4px solid var(--sky)}
.agent.a-advisory{border-left:4px solid var(--plum)}
.agent.a-billing{border-left:4px solid var(--olive)}
.agent.a-orch{border-left:4px solid var(--slate)}
/* Navigation groups */
.rail-label.g-start{color:var(--burnt,#C2410C)}
.rail-label.g-clients{color:var(--teal)}
.rail-label.g-work{color:var(--indigo)}
.rail-label.g-money{color:var(--olive)}
.rail-label.g-control{color:var(--plum)}
.rail-label.g-tools{color:var(--sky)}
.rail-label.g-admin{color:var(--slate)}
/* Client board */
.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:1000px){.board{grid-template-columns:minmax(0,1fr)}}
.board-col{border-radius:12px;padding:12px;min-width:0}
.board-col.T1{background:var(--teal-bg)}
.board-col.T2{background:var(--indigo-bg)}
.board-col.T3{background:var(--plum-bg)}
.board-col h3{font-size:.95rem;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.board-card{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--tc);border-radius:10px;padding:10px 12px;margin-bottom:8px;text-align:left;width:100%;cursor:pointer;color:var(--fg);font:inherit}
.board-card b{display:block;font-size:14px}
.board-card .small{margin-top:4px}
.board-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.legend{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}

/* Sticky chrome: the wordmark stays at the top of the menu, and the page header stays at the top of the content. Content scrolls underneath both. */
.rail .wordmark{position:sticky;top:0;z-index:6;background:var(--surface);margin:0 -12px;padding:16px 20px 12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.logo-img{width:188px;max-width:100%;height:auto;display:block}
.logo-dark{display:none}
[data-theme="dark"] .logo-light{display:none}
[data-theme="dark"] .logo-dark{display:block}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo-light{display:none}:root:not([data-theme="light"]) .logo-dark{display:block}}
.wordmark .prod{font-size:11.5px;color:var(--muted);font-weight:600;letter-spacing:.02em}
.main .top{position:sticky;top:0;z-index:5;background:var(--bg);margin:-22px -28px 14px;padding:14px 28px 12px;border-bottom:1px solid var(--line);box-shadow:0 6px 14px -12px rgba(0,0,0,.35)}
@media (max-width:760px){.main .top{margin:-16px -16px 14px;padding:12px 16px}.rail .wordmark{position:static;margin:0;padding:8px}}

/* ---- Alternative palette: pale elephant blue (client-facing variant). Brand palette above stays the company default. ---- */
:root[data-palette="alt"]{
  --bg:#F4F7FA; --surface:#FFFFFF; --surface2:#EAF0F6; --fg:#14243A; --muted:#4F6378; --line:#D5DFEA;
  --accent:#4F7EA8; --accent-ink:#FFFFFF; --accent-text:#2E5C86; --burnt:#2E5C86;
  --good:#2E6B4F; --good-bg:#E2F1EA; --warn:#7A5410; --warn-bg:#FBF0D5; --bad:#9B2C2C; --bad-bg:#F8E4E4; --info:#2E5C86; --info-bg:#E3ECF6;
  color-scheme:light;
}
:root[data-palette="alt"][data-theme="dark"]{
  --bg:#0F1B26; --surface:#162535; --surface2:#1E3144; --fg:#EEF4FA; --muted:#A6B9CA; --line:#2B4159;
  --accent:#8DB4D8; --accent-ink:#0F1B26; --accent-text:#A9CBE8; --burnt:#8DB4D8;
  --good:#8FCFA8; --good-bg:#1B3327; --warn:#EBC97A; --warn-bg:#3A2F15; --bad:#F2A9A9; --bad-bg:#3D2020; --info:#A9CBE8; --info-bg:#1C3350;
  color-scheme:dark;
}
@media (prefers-color-scheme: dark){
  :root[data-palette="alt"]:not([data-theme="light"]){
    --bg:#0F1B26; --surface:#162535; --surface2:#1E3144; --fg:#EEF4FA; --muted:#A6B9CA; --line:#2B4159;
    --accent:#8DB4D8; --accent-ink:#0F1B26; --accent-text:#A9CBE8; --burnt:#8DB4D8;
    --good:#8FCFA8; --good-bg:#1B3327; --warn:#EBC97A; --warn-bg:#3A2F15; --bad:#F2A9A9; --bad-bg:#3D2020; --info:#A9CBE8; --info-bg:#1C3350;
    color-scheme:dark;
  }
}
:root[data-palette="alt"] .mark{color:#FFFFFF}

/* ---- Guided tour (spotlight and coach card) and notifications ---- */
.tourhole{position:fixed;z-index:80;border-radius:12px;box-shadow:0 0 0 9999px rgba(10,12,16,.62);pointer-events:none;transition:all .25s;border:3px solid var(--accent)}
.tourcard{position:fixed;z-index:85;width:min(380px,calc(100vw - 24px));background:var(--surface);color:var(--fg);border:2px solid var(--accent);border-radius:16px;padding:18px;box-shadow:0 18px 40px rgba(0,0,0,.25)}
.tourcard h3{margin-bottom:6px}
.dots{display:flex;gap:5px;margin:12px 0}.dots i{width:8px;height:8px;border-radius:50%;background:var(--line)}.dots i.on{background:var(--accent)}
.tourcard .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tourcard .right{margin-left:auto}
.tourhint{font-size:12px;color:var(--muted);margin:10px 0 0}
.tourhint kbd{font:inherit;font-weight:700;border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:0 5px;background:var(--surface2)}
body.tourning .tourhole{pointer-events:none}
.bell{position:relative;display:inline-flex;align-items:center;gap:6px}
.bell-count{display:none;position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:11px;font-weight:800;align-items:center;justify-content:center;padding:0 5px}
.notif-scrim{position:fixed;inset:0;background:rgba(10,12,16,.45);z-index:95;display:none;justify-content:flex-end}
.notif-drawer{width:min(420px,100vw);height:100%;background:var(--surface);color:var(--fg);border-left:1px solid var(--line);display:flex;flex-direction:column}
.notif-drawer header{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}
.notif-drawer .body{overflow:auto;padding:8px 10px;display:grid;gap:4px}
.nitem{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;font-size:14px;position:relative;padding-left:24px}
.nitem:hover{background:var(--surface2)}
.nitem .udot{position:absolute;left:10px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.nitem.un{font-weight:650}
/* Walkthrough hero, matching the Compliance Engine walkthrough card */
.wt-hero{background:linear-gradient(120deg,var(--accent),var(--surface2));color:var(--accent-ink);border:0}
.wt-hero h2,.wt-hero .muted,.wt-hero .eyebrow{color:var(--accent-ink)}
.wt-hero .eyebrow{opacity:.85}
.wt-hero .btn{background:var(--accent-ink);color:var(--accent);border-color:var(--accent-ink)}
.wt-hero .btn.ghost{background:color-mix(in srgb,var(--accent-ink) 10%,transparent);color:var(--accent-ink);border-color:color-mix(in srgb,var(--accent-ink) 28%,transparent)}
