:root{--bg:#f6f3ed;--surface:#fff;--text:#1f1d24;--muted:#55515e;--border:#cfc8bb;--accent:#0d6464;--accent-text:#fff;--danger:#a3262a;--info-bg:#e3f1ef;--error-bg:#fbe7e6;--focus:#b45d00;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14161b;--surface:#1d2027;--text:#ece8e1;--muted:#b3aebb;--border:#3a3e48;--accent:#63c7c2;--accent-text:#0b1c1c;--danger:#ff8f8a;--info-bg:#17312f;--error-bg:#3a1c1c;--focus:#ffb35c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#14161b;--surface:#1d2027;--text:#ece8e1;--muted:#b3aebb;--border:#3a3e48;--accent:#63c7c2;--accent-text:#0b1c1c;--danger:#ff8f8a;--info-bg:#17312f;--error-bg:#3a1c1c;--focus:#ffb35c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.skip{position:absolute;left:-999px}.skip:focus{background:var(--surface);z-index:10;padding:8px;top:8px;left:16px}.site-header{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.brand{color:var(--text);letter-spacing:.02em;font-size:1.15rem;font-weight:700;text-decoration:none}nav{gap:16px;display:flex}nav a{padding:4px 2px;text-decoration:none}nav a.active{border-bottom:2px solid var(--accent)}main{max-width:720px;margin:0 auto;padding:24px 16px 48px}main:focus{outline:none}.site-footer{border-top:1px solid var(--border);color:var(--muted);padding:12px 16px}.site-footer p{max-width:720px;margin:0 auto}.banner{background:var(--error-bg);margin:0;padding:8px 16px}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:6px;padding:8px 14px}button:disabled{opacity:.6;cursor:not-allowed}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.danger{background:var(--danger);color:var(--bg);border-color:var(--danger)}.field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field input{font:inherit;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:6px;padding:8px 10px}.hint{color:var(--muted)}.msg{border-radius:6px;padding:8px 12px}.msg-error{background:var(--error-bg)}.msg-info{background:var(--info-bg)}.auth-card{max-width:420px;margin:0 auto}.oauth{flex-direction:column;gap:8px;margin:16px 0;display:flex}.segmented{gap:4px;margin-bottom:12px;display:flex}.segmented [aria-selected=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.account form,.account section{border-top:1px solid var(--border);margin-top:16px;padding-top:8px}.danger-zone h2{color:var(--danger)}.counts{columns:2}main{max-width:860px}select{font:inherit;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:6px;padding:8px 10px}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:.8rem}.entry h1{align-items:center;gap:10px;margin:.2em 0;display:flex}.source,.hint{color:var(--muted);font-size:.9rem}.crumbs{margin-bottom:8px;font-size:.9rem}.badge-homebrew{background:var(--accent);color:var(--accent-text);text-transform:uppercase;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:.75rem}.stats{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 16px;margin:16px 0;display:grid}.stats div{border-left:3px solid var(--border);padding-left:8px}.stats dt{color:var(--muted);font-size:.85rem}.stats dd{margin:0}.feature{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin:12px 0;padding:8px 12px}.feature h3{margin:0 0 4px;font-size:1rem}.feature p{margin:4px 0}.kind{color:var(--muted);font-weight:400}.gm-questions{color:var(--muted)}.statblock .tagline{margin-top:0}.table-wrap{margin:12px 0;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 8px}th{background:var(--surface)}.domain-icon{vertical-align:middle;background-color:currentColor;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.term{position:relative}.term-link{text-underline-offset:3px;color:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.term-link:hover{color:var(--accent)}.tooltip{z-index:20;border:1px solid var(--border);background:var(--surface);width:max-content;max-width:min(320px,80vw);color:var(--text);border-radius:8px;padding:8px 10px;font-size:.9rem;font-style:normal;font-weight:400;line-height:1.4;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 4px 16px #0003}.search-form{gap:8px;display:grid}.search-form input[type=search]{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);border-radius:8px;padding:10px 12px}.filters{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.filters .field{margin:0}.results{padding:0;list-style:none}.results li{border-bottom:1px solid var(--border);padding:8px 0}.packs{border:1px solid var(--border);border-radius:8px;margin-top:24px}.packs label{padding:6px 0;display:block}.rules-layout{gap:16px;display:grid}.toc ul{margin:0;padding-left:12px;list-style:none}.toc>ul{padding-left:0}.toc a{padding:3px 0;display:inline-block}.toc a[aria-current=page]{font-weight:700}.prevnext{border-top:1px solid var(--border);justify-content:space-between;gap:16px;margin-top:32px;padding-top:12px;display:flex}@media (width>=960px){main:has(.rules-layout){max-width:1160px}.rules-layout{grid-template-columns:260px 1fr}.rules-layout aside{align-self:start;max-height:calc(100vh - 32px);position:sticky;top:16px;overflow:auto}.rules-layout details>summary{display:none}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a.button,label.button{cursor:pointer;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:6px;align-items:center;padding:8px 14px;text-decoration:none;display:inline-flex}a.button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.link{color:var(--accent);background:0 0;border:none;min-height:0;padding:4px;text-decoration:underline}textarea{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:6px;padding:8px 10px}fieldset{border:1px solid var(--border);border-radius:8px;margin:12px 0}label.radio{align-items:center;gap:8px;min-height:36px;display:flex}.builder-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.builder-head h1{margin:0}.save-status{color:var(--muted);margin:0;font-size:.9rem}.save-error,.save-conflict{color:var(--danger)}.conflict{background:var(--error-bg);border-radius:8px;margin:12px 0;padding:12px}.steps .progress{background:var(--border);border-radius:3px;height:6px;margin:12px 0 8px;overflow:hidden}.steps .progress div{background:var(--accent);height:100%;transition:width .2s}.steps ol{gap:4px;margin:0;padding:0 0 4px;list-style:none;display:flex;overflow-x:auto}.steps li a{white-space:nowrap;border:1px solid var(--border);color:var(--text);border-radius:999px;padding:6px 10px;text-decoration:none;display:block}.steps li.done a{border-color:var(--accent)}.steps li a[aria-current=step]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.step-body{margin-top:16px}.options{gap:8px;padding:0;list-style:none;display:grid}@media (width>=720px){.options{grid-template-columns:1fr 1fr}}.option{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;justify-content:space-between;gap:8px;padding:10px 12px;display:flex}.option.selected{border:2px solid var(--accent)}.option p{margin:2px 0}.option-actions{gap:8px;display:flex}.option-actions button{flex:1}.changes{flex-wrap:wrap;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.changes li{background:var(--info-bg);border-radius:999px;padding:1px 8px;font-size:.85rem}.changes li.neg{background:var(--error-bg)}.domains{gap:10px;display:flex}.trait-pool{border:1px dashed var(--border);border-radius:8px;flex-wrap:wrap;gap:8px;min-height:52px;padding:8px;display:flex}.chip{min-width:56px;font-weight:700}.chip.active,.trait.active{outline:3px solid var(--focus)}.traits{gap:8px;padding:0;list-style:none;display:grid}@media (width>=720px){.traits{grid-template-columns:1fr 1fr 1fr}}.traits li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.trait{justify-content:space-between;width:100%;font-weight:600;display:flex}.trait-value{font-size:1.2rem}.issues{padding-left:20px}.issues li.error{color:var(--danger)}.issues li.warning{color:var(--muted)}.review{gap:6px;display:grid}.review div{grid-template-columns:120px 1fr;gap:8px;display:grid}.review dt{color:var(--muted)}.review dd{margin:0}.character-list{padding:0;list-style:none}.character-list li{border-bottom:1px solid var(--border);padding:10px 0}.optional summary{cursor:pointer;padding:8px 0}.drawer-backdrop{z-index:50;background:#00000073;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--bg);flex-direction:column;width:min(560px,100vw);height:100%;display:flex;box-shadow:-4px 0 24px #0000004d}.drawer:focus{outline:none}.drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.drawer-head h2{margin:0;font-size:1.2rem}.drawer-body{flex:1;padding:0 16px 16px;overflow:auto}.drawer-foot{border-top:1px solid var(--border);gap:8px;padding:12px 16px;display:grid}.advancements{gap:8px;padding:0;list-style:none;display:grid}.advancements>li{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:1fr auto;gap:8px;padding:10px 12px;display:grid}.advancements>li.selected{border:2px solid var(--accent)}.advancements .pick{border-top:1px dashed var(--border);grid-column:1/-1;padding-top:8px}.levelup section{margin:20px 0}.sheet-head{gap:8px;display:grid}.sheet-head h1,.sheet-head p{margin:0}.sheet-actions{flex-wrap:wrap;gap:8px;display:flex}.tabs{border-bottom:1px solid var(--border);background:var(--bg);z-index:5;gap:4px;margin:16px 0 8px;display:flex;position:sticky;top:0;overflow-x:auto}.tabs button{background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0}.tabs button[aria-current=page]{border-bottom-color:var(--accent);font-weight:700}.statgrid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.statgrid .thresholds{grid-column:1/-1}.traitgrid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (width>=720px){.statgrid{grid-template-columns:repeat(4,1fr)}.statgrid .thresholds{grid-column:auto}.traitgrid{grid-template-columns:repeat(6,1fr)}}.statbox{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:8px;padding:8px}.statbox-label{color:var(--muted);font-size:.85rem}.statbox-value{font-size:1.6rem;font-weight:700}.threshold-row{justify-content:space-around;gap:8px;font-weight:600;display:flex}.threshold-row small{color:var(--muted);font-weight:400;display:block}.breakdown{text-align:left;font-size:.85rem}.breakdown ul{margin:4px 0;padding-left:16px}.track{margin:8px 0}.boxes{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.box{border:2px solid var(--border);border-radius:4px;width:24px;height:24px}.box.hope{border-radius:50%}.box.on{background:var(--text);border-color:var(--text)}.box.hope.on{background:var(--accent);border-color:var(--accent)}.plain{padding:0;list-style:none}.toggles{flex-wrap:wrap;gap:12px;display:flex}.toggle{align-items:center;gap:6px;min-height:36px;display:inline-flex}.inline-form{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.inline-form input,.inline-form select{font:inherit;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:6px;flex:200px;padding:8px 10px}.counter{align-items:center;gap:6px;display:inline-flex}.counter button{min-width:44px}.inventory li{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.gold{flex-wrap:wrap;gap:16px;display:flex}.track-row{align-items:center;gap:6px;display:flex}.track-row .step{min-width:44px;padding:4px}.boxes button.box{background:var(--surface);cursor:pointer;width:30px;height:30px;min-height:0;padding:0}.boxes button.box.on{background:var(--text);border-color:var(--text)}.boxes button.box.hope.on{background:var(--accent);border-color:var(--accent)}.trait-cell{gap:4px;display:grid}.roll-btn{min-height:36px;padding:4px 8px;font-size:.9rem}.xp-row{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;display:flex}.fab{z-index:30;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.fab button{box-shadow:0 4px 12px #00000040}.sheet{padding-bottom:72px}.steppers{grid-template-columns:1fr 1fr;gap:8px;display:grid}.steppers output{text-align:center;min-width:2ch;font-weight:700}.roll-result{border:2px solid var(--border);text-align:center;border-radius:10px;margin-top:12px;padding:12px}.roll-result.hope,.roll-result.crit{border-color:var(--accent)}.roll-result.fear{border-color:var(--danger)}.roll-headline{margin:0;font-size:1.4rem;font-weight:700}.roll-total{margin:0;font-size:2.4rem;font-weight:800}.dice-faces{justify-content:center;gap:8px;display:flex}.die{border:2px solid var(--border);border-radius:8px;place-items:center;width:44px;height:44px;font-weight:700;display:inline-grid}.die.hope{border-color:var(--accent)}.die.fear{border-color:var(--danger)}.roll-log{padding:0;list-style:none}.roll-log li{border-bottom:1px solid var(--border);padding:8px 0}.damage{border:1px solid var(--border);border-radius:8px;margin:12px 0;padding:8px 12px}.history{padding:0;list-style:none}.history li{border-bottom:1px solid var(--border);padding:8px 0}.history-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.save-offline{color:var(--muted)}.print-toolbar{margin-bottom:16px}.print-sheet{color:#111;border:1px solid var(--border);background:#fff;border-radius:8px;padding:16px;font-size:10.5pt;line-height:1.35}.print-sheet a{color:inherit}.print-sheet h1{margin:0;font-size:20pt}.print-sheet h2{text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #999;margin:10px 0 4px;font-size:12pt}.print-sheet h3{margin:8px 0 4px;font-size:11pt}.print-sheet h4{margin:0 0 2px;font-size:10.5pt}.print-sheet h4 small{color:#444;font-weight:400}.print-sheet p{margin:2px 0}.print-sheet ul{margin:2px 0;padding-left:18px}.p-head{border-bottom:2px solid #111;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-bottom:6px;display:flex}.p-core{gap:12px;margin:0;display:flex}.p-core div,.p-traits div{text-align:center;border:1px solid #111;border-radius:6px;min-width:64px;padding:4px 8px}.p-core dt,.p-traits dt{text-transform:uppercase;font-size:8pt}.p-core dd,.p-traits dd{margin:0;font-size:16pt;font-weight:700}.p-traits{grid-template-columns:repeat(3,1fr);gap:6px;margin:0;display:grid}.p-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.p-thresholds{gap:12px;font-weight:600;display:flex}.p-track{align-items:center;gap:8px;margin:4px 0;display:flex}.p-track-label{width:90px}.p-boxes{flex-wrap:wrap;gap:3px;display:flex}.p-box{border:1.5px solid #111;border-radius:2px;width:14px;height:14px}.p-box.round{border-radius:50%}.p-box.on{background:#111}.p-count{color:#444;font-size:9pt}.p-table{font-size:9.5pt}.p-table th,.p-table td{color:#111;background:#fff;border-color:#999}.p-card{break-inside:avoid;border:1px solid #bbb;border-radius:6px;margin:6px 0;padding:6px 8px}.p-text p{margin:2px 0}.p-pre{white-space:pre-wrap}.p-attribution{color:#333;border-top:1px solid #999;margin-top:16px;padding-top:6px;font-size:8pt}.print-sheet .term-link{text-decoration:none}@media print{@page{margin:12mm}html,body{color:#111!important;background:#fff!important}.site-header,.site-footer,.banner,.skip,.fab,.no-print,.save-status{display:none!important}main{max-width:none!important;margin:0!important;padding:0!important}.print-sheet{border:none;border-radius:0;padding:0}.print-sheet section{break-inside:auto}.print-sheet h2,.print-sheet h3,.print-sheet h4{break-after:avoid}.p-box.on{-webkit-print-color-adjust:exact;print-color-adjust:exact}a[href]:after{content:none!important}}@media (width<=600px){.p-grid{grid-template-columns:1fr}}.card-tools{flex-wrap:wrap;align-items:center;gap:12px;margin:6px 0;display:flex}.resources li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.dice-faces.left{flex-wrap:wrap;justify-content:flex-start;margin:6px 0}button.die{background:var(--surface);min-height:44px;color:var(--text);padding:0}.companion-editor{margin-top:16px}
