:root{--wf-bg:#17181c;--wf-panel:#202126;--wf-raised:#2b2c32;--wf-line:#3c3d44;--wf-muted:#aaa8ae;--wf-text:#eeece6;--wf-accent:#e4af69;--wf-accent-muted:#a88454;--wf-accent-soft:#393128;--wf-accent-text:#211b14;--wf-bg-rgb:23 24 28;--wf-panel-rgb:32 33 38;--wf-raised-rgb:43 44 50;--wf-line-rgb:60 61 68;--wf-muted-rgb:170 168 174;--wf-text-rgb:238 236 230;--wf-accent-rgb:228 175 105;--wf-accent-muted-rgb:168 132 84;--wf-accent-soft-rgb:57 49 40;--bg:var(--wf-bg);--panel:var(--wf-panel);--text:var(--wf-text);--line:var(--wf-line);--gold:var(--wf-accent);color-scheme:dark}
:root[data-watchfire-theme=astral]{--wf-bg:#141624;--wf-panel:#202338;--wf-raised:#2a2e47;--wf-line:#414660;--wf-muted:#afb0cb;--wf-text:#eeeef9;--wf-accent:#bda8ef;--wf-accent-muted:#8e7db9;--wf-accent-soft:#34304b;--wf-accent-text:#211a33;--wf-bg-rgb:20 22 36;--wf-panel-rgb:32 35 56;--wf-raised-rgb:42 46 71;--wf-line-rgb:65 70 96;--wf-muted-rgb:175 176 203;--wf-text-rgb:238 238 249;--wf-accent-rgb:189 168 239;--wf-accent-muted-rgb:142 125 185;--wf-accent-soft-rgb:52 48 75}
html,body{background:var(--wf-bg);color:var(--wf-text)}body{font-family:'Segoe UI',Arial,sans-serif}.primary{color:var(--wf-accent-text);background:var(--wf-accent);border-color:var(--wf-accent)}.primary:hover{background:var(--wf-accent);filter:brightness(1.08)}.subtle{background:var(--wf-raised);border-color:var(--wf-line);color:var(--wf-text)}.subtle:hover{border-color:var(--wf-accent-muted);background:var(--wf-accent-soft)}.text-button{color:var(--wf-accent)}input,select,textarea{background:var(--wf-bg);border-color:var(--wf-line);color:var(--wf-text)}input:focus,select:focus,textarea:focus{border-color:var(--wf-accent)}button:focus-visible,a:focus-visible{outline:2px solid var(--wf-accent);outline-offset:3px}.muted,.help-text{color:var(--wf-muted)}.hp-bar{background:var(--wf-raised)}.hp-bar>span{background:var(--wf-accent)}.status-dot,.connection i{background:var(--wf-accent)}.global-nav,.topbar{background:var(--wf-panel);border-color:var(--wf-line)}.global-nav button.active{color:var(--wf-accent);border-color:var(--wf-accent)}.global-nav small{color:var(--wf-muted)}.topbar .brand-mark{border-color:var(--wf-accent);color:var(--wf-accent)}.campaign>strong{color:var(--wf-text)}.campaign-menu{background:var(--wf-panel);border-color:var(--wf-line)}.campaign-menu>button.active{color:var(--wf-accent);background:var(--wf-accent-soft);box-shadow:inset 2px 0 var(--wf-accent)}.campaign-menu>button.active>span{color:var(--wf-accent)}.campaign-shell{background:var(--wf-bg)}.campaign-page{padding:29px 32px 65px}.campaign-section,.record-list{background:var(--wf-panel);border-color:var(--wf-line)}.campaign-hero{background:linear-gradient(115deg,var(--wf-panel),var(--wf-raised));border-color:var(--wf-line)}.campaign-hero h2{color:var(--wf-text)}.campaign-compass{border-color:var(--wf-accent-muted);color:var(--wf-accent)}.campaign-compass>b{color:var(--wf-accent)}.campaign-prose{color:var(--wf-text);font-size:13px}.campaign-prose p{line-height:1.85}.campaign-prose strong{color:var(--wf-text)}.campaign-badge.green{color:var(--wf-accent);background:var(--wf-accent-soft);border-color:var(--wf-accent-muted)}dialog{background:var(--wf-panel);border-color:var(--wf-line);color:var(--wf-text)}dialog::backdrop{background:#090a10b8}.modal-header h2{font-family:'Segoe UI',sans-serif;font-weight:500;font-size:24px;letter-spacing:-.5px}.reference-popover,.reference-body{background:var(--wf-panel);color:var(--wf-text);border-color:var(--wf-accent-muted)}.reference-header{background:var(--wf-raised);border-color:var(--wf-line)}.reference-header h2{color:var(--wf-text)}.reference-pointer{background:var(--wf-panel);border-color:var(--wf-accent-muted)}.reference-popover[data-side=bottom] .reference-pointer{background:var(--wf-raised)}.inline-dice{color:var(--wf-accent);border-color:var(--wf-accent-muted);background:var(--wf-accent-soft)}.inline-record{color:var(--wf-accent)}.dice-launcher{background:var(--wf-panel);border-color:var(--wf-accent-muted);color:var(--wf-accent)}.dice-launcher:hover,.dice-launcher[aria-expanded=true]{background:var(--wf-accent-soft);border-color:var(--wf-accent)}.dice-picker,.dice-result-card{background:var(--wf-panel);border-color:var(--wf-accent-muted);color:var(--wf-text)}.dice-submit{background:var(--wf-accent);border-color:var(--wf-accent);color:var(--wf-accent-text)}.dice-submit:hover{background:var(--wf-accent);filter:brightness(1.08)}.dice-types button{background:var(--wf-raised);border-color:var(--wf-line);color:var(--wf-muted)}.dice-types button.selected{background:var(--wf-accent-soft);border-color:var(--wf-accent);color:var(--wf-accent);box-shadow:none}.dice-face{background:var(--wf-accent-soft);border-color:var(--wf-accent-muted)}.dice-face b,.dice-result-heading strong{color:var(--wf-accent)}.dice-picker input,.dice-stepper{background:var(--wf-bg);border-color:var(--wf-line);color:var(--wf-text)}.builder-callout{background:var(--wf-accent-soft);border-color:var(--wf-accent-muted)}.builder-steps button.active,.builder-choice.chosen{background:var(--wf-accent-soft);border-color:var(--wf-accent-muted);color:var(--wf-accent)}.builder-steps button,.builder-choice,.builder-features button{border-color:var(--wf-line)}.builder-features button{background:var(--wf-raised);color:var(--wf-text)}.builder-steps button.active b{border-color:var(--wf-accent-muted)}.builder-help,.builder-record{color:var(--wf-accent)}.builder-modal h3{font-family:'Segoe UI',sans-serif;font-size:18px;color:var(--wf-text)}.builder-stat-grid select{color:var(--wf-text)}.builder-modal input[type=checkbox]{accent-color:var(--wf-accent)}.theme-toggle{white-space:nowrap;font-size:10px;padding:8px 10px;border:1px solid var(--wf-line);border-radius:5px;color:var(--wf-muted)}.theme-toggle:hover{color:var(--wf-accent);border-color:var(--wf-accent-muted)}.lobby{background:var(--wf-bg)}.lobby-form{background:var(--wf-panel)}.lobby-art{background:linear-gradient(125deg,var(--wf-bg),var(--wf-raised))}.brand-mark{color:var(--wf-accent);border-color:var(--wf-accent)}.hero-copy h1{color:var(--wf-text)}.page-heading h1{font-family:'Segoe UI',sans-serif;font-size:28px;font-weight:400;letter-spacing:-.6px}.page-heading{margin-bottom:25px}.page-heading-actions{flex-wrap:wrap}.topbar{gap:14px}.campaign{min-width:0}.campaign strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.topbar .compact{width:185px}.campaign-menu{font-size:12px}.campaign-menu>button{font-size:12px}.campaign-menu>button>span{font-size:18px}.catalog-tools input,.catalog-tools select{font-size:12px}.record-row strong{font-size:13px}.record-row small{font-size:11px}.campaign-metrics small{font-size:10px;letter-spacing:1px}.campaign-metrics span{font-size:11px}.source-list small{font-size:11px}.source-list code{color:var(--wf-muted)}.topbar .brand small{font-size:8px;letter-spacing:1px}
@media(max-width:1100px){.topbar .compact{width:160px}.campaign strong{max-width:220px}.campaign-page{padding:24px 24px 65px}.theme-toggle{font-size:9px;padding:7px}.topbar{gap:10px}}
@media(max-width:900px){.topbar .campaign{flex:1}.topbar .compact{width:145px}.campaign strong{max-width:170px}.topbar .connection{display:none}.campaign-page{padding:24px 20px 65px}.page-heading h1{font-size:25px}}
