@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-700.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-800.woff2) format("woff2");font-weight:800;font-display:swap}@font-face{font-family:IM Fell English;src:url(/fonts/im-fell-english-400.woff2) format("woff2");font-weight:400;font-display:swap}:root{--ink: #100d0b;--ink-leaf: #1a1511;--ink-rule: #3a2f24;--vellum: #e9dcc0;--vellum-dim: #a99a7d;--ash: #6b6258;--gold: #d9a441;--gold-hi: #f6d680;--gold-low: #825c1c;--vermilion: #c8361f;--rubric: #e8644a;--lapis: #2c4a93;--lapis-deep: #1b2f63;--fumble: #4a1712;--hand: "IM Fell English", Georgia, serif;--text: "Alegreya Sans", sans-serif;--d1: 72px;--d2: 54px;--d3: 36px;--d4: 27px;--d5: 18px;--t1: 17px;--t2: 16px;--t3: 16px;--frame: url(/assets/ui-gilt-frame.png);--ease: cubic-bezier(.16, 1, .3, 1);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;background:var(--ink)}body{color:var(--vellum);font:400 var(--t2)/1.5 var(--text);font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}::selection{background:var(--gold);color:var(--ink)}:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}button,input{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{opacity:.55;cursor:default}a{color:var(--gold);text-underline-offset:3px;text-decoration-thickness:1px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.glyph{display:inline-block;vertical-align:middle;image-rendering:pixelated;flex:none}#arena{position:fixed;top:0;right:0;bottom:0;left:0;margin:0 auto;width:100%;height:100dvh;overflow:hidden;container-type:inline-size;background:var(--ink)}@media(min-width:768px){#arena{width:min(100vw,50dvh)}}@media(min-aspect-ratio:3/4){#arena{box-shadow:0 0 0 1px var(--ink-rule),0 0 120px #000}}#game{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}canvas{display:block;image-rendering:pixelated}#hud{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;flex-direction:column;gap:4px;padding:max(8px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left));pointer-events:none;opacity:0;transition:opacity .4s}.playing #hud{opacity:1}#hud:after{content:"";position:absolute;top:0;right:0;bottom:-28px;left:0;z-index:-1;background:var(--ink)}.life-rule{position:relative;display:block;width:100%;height:22px;overflow:hidden;background:var(--ink-leaf);box-shadow:inset 0 0 0 1px var(--gold-low)}.life-rule i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 50%;background:var(--gold);box-shadow:inset 0 1px 0 var(--gold-hi);transition:transform .25s var(--ease)}.life-rule.low i{background:var(--vermilion);box-shadow:inset 0 1px 0 var(--rubric)}.life-rule b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:700 14px/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--vellum);text-shadow:none}.hud-xp{display:flex;width:100%}.hud-xp span{position:relative;flex:1;height:4px;background:var(--ink-rule)}.hud-xp i{position:absolute;top:0;right:0;bottom:0;left:0;transform:scaleX(0);transform-origin:0 50%;background:var(--rubric);transition:transform .3s var(--ease)}.hud-row{display:flex;align-items:center;width:100%;min-height:44px;gap:10px}.hud-level{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;color:var(--vellum)}.hud-level b{font-variant-numeric:lining-nums tabular-nums}.hud-hour{display:flex;align-items:baseline;gap:6px;min-width:0}.hud-hour span{overflow:hidden;text-overflow:ellipsis}#pause,.dread-hud{flex:none}.hud-hour b{font:700 20px/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--vellum)}.hud-hour span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hud-insp{display:flex;flex:none;gap:3px;padding:0}.hud-insp .glyph{width:11px;height:11px}.hud-insp .spent{opacity:.25;filter:grayscale(1)}#pause{justify-self:end;pointer-events:auto;width:44px;height:44px;display:grid;place-items:center;margin:0 -8px 0 0}#pause .glyph{width:14px;height:14px}#story-compass{position:absolute;z-index:2;top:calc(max(8px,env(safe-area-inset-top)) + 79px);right:max(14px,env(safe-area-inset-right));margin:0;color:var(--gold-hi);font:700 14px/1.3 var(--text);text-align:right;text-shadow:none;pointer-events:none}#story-compass[hidden],body:not(.playing) #story-compass{display:none}#quest-tracker{position:absolute;z-index:2;top:calc(max(8px,env(safe-area-inset-top)) + 79px);left:max(14px,env(safe-area-inset-left));margin:0;max-width:55%;color:var(--vellum);font:700 13px/1.3 var(--text);text-shadow:none;pointer-events:none}#quest-tracker[hidden],body:not(.playing) #quest-tracker{display:none}#wound-warning{position:absolute;z-index:2;top:calc(max(8px,env(safe-area-inset-top)) + 104px);left:max(14px,env(safe-area-inset-left));margin:0;color:var(--rubric);font:700 13px/1.3 var(--text);text-shadow:none;pointer-events:none}#wound-warning[hidden],body:not(.playing) #wound-warning{display:none}.quest-offer{margin-top:22px;padding-top:14px;border-top:1px solid var(--ink-rule)}.quest-offer .prose{margin-top:8px}.quest-offer .pair{margin-top:12px}#narration{position:absolute;z-index:2;left:18px;right:18px;bottom:calc(max(14px,env(safe-area-inset-bottom)) + 50px);max-height:9dvh;overflow:hidden;margin:0;text-align:center;font:15px/1.2 var(--text);color:var(--vellum);text-wrap:balance;text-shadow:none;pointer-events:none;opacity:0}#narration.show{animation:rubric 5.4s var(--ease) forwards}@keyframes rubric{0%{opacity:0}8%,80%{opacity:1}to{opacity:0}}#dice-tray{position:absolute;z-index:2;left:14px;bottom:max(14px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:6px;max-width:calc(100% - 28px);max-height:9dvh;pointer-events:none;opacity:0}#dice-tray b{flex:none;display:grid;place-items:center;width:34px;height:34px;font:700 19px/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--vellum);background:var(--lapis-deep);border:9px solid transparent;border-image:var(--frame) 5 / 9px;image-rendering:pixelated}#dice-tray span{font:15px/1.1 var(--text);color:var(--gold);text-shadow:none}#dice-tray small{display:block;font:var(--t3)/1.3 var(--text);color:var(--vellum)}#dice-tray.crit b{background:var(--gold);color:var(--ink)}#dice-tray.fumble b{background:var(--fumble)}#dice-tray.show{animation:chip 3s var(--ease) forwards}@keyframes chip{0%{opacity:0;transform:translateY(10px)}8%,82%{opacity:1;transform:none}to{opacity:0}}#rotate{display:none}@media(orientation:landscape)and (max-height:540px){#rotate{display:grid;place-items:center;align-content:center;gap:14px;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;background:var(--ink);text-align:center;padding:24px}#rotate b{font:var(--d3)/1 var(--hand);color:var(--gold)}#rotate span{font:var(--t2)/1.4 var(--text);color:var(--vellum-dim)}}#overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;flex-direction:column}#overlay[hidden]{display:none}.page{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:max(18px,env(safe-area-inset-top)) 22px max(18px,env(safe-area-inset-bottom));background:var(--ink);animation:settle .5s var(--ease);scrollbar-width:thin;scrollbar-color:var(--gold-low) transparent}.page-foot{margin-top:auto;padding-top:22px;display:grid;gap:12px}@keyframes settle{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.sheet-scrim{flex:1;min-height:12dvh;background:var(--ink)}.sheet{max-height:88dvh;overflow-y:auto;padding:26px 22px max(20px,env(safe-area-inset-bottom));background:var(--ink-leaf);box-shadow:0 -1px 0 var(--gold-low),0 -24px 48px #000a;animation:rise .45s var(--ease);scrollbar-width:thin;scrollbar-color:var(--gold-low) transparent}.sheet .page-foot{position:sticky;bottom:-20px;z-index:1;padding-bottom:20px;background:var(--ink-leaf)}.sheet:before{content:"";display:block;height:3px;margin:-14px auto 18px;width:54px;background:var(--ink-rule)}.sheet .rubric{font-size:20px}@keyframes rise{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.ceremony{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:max(42px,env(safe-area-inset-top)) 26px max(20px,env(safe-area-inset-bottom));background:var(--ink);animation:settle .8s var(--ease)}.ceremony .emblem .glyph{width:88px;height:auto}.ceremony h1{margin:20px 0 6px;font:var(--d2)/.95 var(--hand);color:var(--gold);text-wrap:balance}.ceremony.fallen h1{color:var(--vermilion)}.ceremony .verdict{font:var(--t1)/1.4 var(--text);color:var(--vellum);margin:0 0 26px;max-width:30ch;text-wrap:balance}.ceremony .chronicle{text-align:left}.ceremony .page-foot{position:static;width:100%;margin-top:18px;padding-bottom:max(20px,env(safe-area-inset-bottom));background:var(--ink)}.title{margin:0;font:var(--d2)/.95 var(--hand);color:var(--vellum);text-wrap:balance}.title-s{margin:0;font:var(--d3)/1 var(--hand);color:var(--vellum);text-wrap:balance}.mark{margin:0}.lede{margin:8px 0 0;font:var(--t1)/1.4 var(--text);color:var(--gold);text-wrap:pretty;max-width:34ch}.prose{margin:14px 0 0;font:var(--t1)/1.55 var(--text);color:var(--vellum);text-wrap:pretty;max-width:36ch}.prose em{color:var(--gold)}.prose-illuminated{min-height:3.2em}.quiet{font:var(--t3)/1.45 var(--text);color:var(--vellum-dim);margin:0}.rubric{font:var(--d4)/1.05 var(--hand);color:var(--rubric);margin:0}.initial{display:inline-grid;place-items:center;font-family:var(--text);font-weight:800;color:var(--gold-hi);background:var(--lapis);border:15px solid transparent;border-image:var(--frame) 5 / 15px;image-rendering:pixelated;line-height:1}.initial-xl{width:120px;height:120px;font-size:76px}.initial-l{width:84px;height:84px;font-size:52px;border-width:12px;border-image-width:12px}.initial-m{width:64px;height:64px;font-size:38px;border-width:9px;border-image-width:9px}.prose-illuminated .initial{float:left;margin:4px 12px 2px 0}.btn{display:grid;place-items:center;width:100%;min-height:66px;padding:0 18px;font:700 20px/1 var(--text);letter-spacing:.01em;color:var(--vellum);background:var(--lapis-deep);border:15px solid transparent;border-image:var(--frame) 5 / 15px;image-rendering:pixelated;transition:background .2s,transform .2s var(--ease)}.btn:hover{background:var(--lapis)}.btn:active{transform:translateY(2px)}.btn:disabled{transform:none}.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:var(--gold-hi)}.link{justify-self:center;min-height:44px;padding:0 12px;font:700 var(--t2)/1 var(--text);color:var(--gold);text-decoration:underline 1px var(--gold-low);text-underline-offset:6px}.link:hover{color:var(--gold-hi)}.links{display:flex;justify-content:center;flex-wrap:wrap;gap:0 8px}.back{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin:-6px 0 10px -4px;padding:0 4px;font:700 var(--t2)/1 var(--text);color:var(--vellum-dim)}.back .glyph{width:10px;height:14px}.step{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin-bottom:8px;font:700 var(--t2)/1 var(--text);color:var(--vellum-dim)}.step .back{margin:0}.switch{flex:none;width:50px;height:44px;display:flex;align-items:center;padding:10px 3px}.switch span{width:44px;height:24px;background:var(--ink-rule);position:relative}.switch span:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--vellum);transition:transform .2s var(--ease)}.switch[aria-checked=true] span{background:var(--gold-low)}.switch[aria-checked=true] span:after{transform:translate(20px);background:var(--gold-hi)}details summary{min-height:44px;display:flex;align-items:center;color:var(--gold);cursor:pointer}details summary:after{content:" +";margin-left:auto}details[open] summary:after{content:" −"}.ruled{margin:20px 0 0;padding:0;list-style:none;border-top:1px solid var(--ink-rule)}.choice{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:14px;width:100%;min-height:72px;padding:14px 6px;text-align:left;border-bottom:1px solid var(--ink-rule);transition:background .2s}@media(hover:hover){.choice:hover{background:#2c4a9333}}.choice:focus-visible{background:#2c4a9333}.choice strong{font:700 var(--t1)/1.2 var(--text);color:var(--vellum)}.choice .desc{grid-column:1;margin-top:4px;font:var(--t3)/1.4 var(--text);color:var(--vellum-dim)}.choice small.desc{display:block}.choice .note{grid-column:2;grid-row:1 / span 2;text-align:right;font:var(--t3)/1.3 var(--text);color:var(--gold);white-space:nowrap}.choice .note b{display:inline;margin:0;font:700 var(--t2)/1 var(--text);font-variant-numeric:lining-nums tabular-nums;font-style:normal;color:var(--vellum)}.choice .note .glyph{width:12px;height:12px;margin-right:4px;vertical-align:-1px}.choice .way{display:inline-flex;align-items:center;gap:6px;margin-bottom:4px;font:var(--t3)/1 var(--text);color:var(--rubric)}.choice .way .glyph{width:9px;height:9px}.choice[aria-pressed=true],.choice[aria-checked=true]{background:#2c4a9340}.choice[aria-pressed=true] strong,.choice[aria-checked=true] strong{color:var(--gold-hi)}.pips{display:inline-flex;gap:4px;vertical-align:middle;margin-left:10px}.pips i{width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--gold-low)}.pips i.on{background:var(--gold);box-shadow:inset -1px -1px 0 var(--gold-low),inset 1px 1px 0 var(--gold-hi)}.pair{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;border:1px solid var(--ink-rule)}.pair button{min-height:48px;font:700 var(--t2)/1 var(--text);color:var(--vellum-dim)}.pair button[aria-pressed=true]{background:var(--lapis-deep);color:var(--gold-hi);box-shadow:inset 0 0 0 1px var(--gold-low)}.field{display:block;margin-top:22px}.field span{display:block;font:var(--t3)/1 var(--text);color:var(--gold);margin-bottom:6px}.field input{width:100%;min-height:52px;padding:0 2px;font:var(--d3)/1 var(--hand);color:var(--vellum);background:none;border:0;border-bottom:1px solid var(--gold-low);border-radius:0;caret-color:var(--gold)}.field input::placeholder{color:var(--ash)}.field input:focus{outline:none;border-bottom-color:var(--gold)}.backup-field textarea{display:block;width:100%;min-height:110px;padding:10px;resize:vertical;border:1px solid var(--gold-low);border-radius:0;background:var(--ink-leaf);color:var(--vellum);font:14px/1.4 var(--text);overflow-wrap:anywhere}.backup-field textarea:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}.backup-page #restore-actions{display:grid;gap:8px;margin-top:16px}.title-page{justify-content:flex-start;background:var(--ink);image-rendering:pixelated}.title-top{display:flex;align-items:center;justify-content:flex-end}.title-page .mark{display:flex;align-items:flex-end;gap:4px;margin-top:12dvh}.title-page .mark-copy{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:10px;min-width:0}.title-page .mark .mark-copy .title{font-size:clamp(33px,10vw,54px);line-height:.92;padding:0;white-space:nowrap}.title-page .mark-subtitle{margin-top:7px;color:var(--gold-hi);font:700 21px/1 var(--text)}.title-page .lede{margin-top:18px}.title-page .ledger{margin:26px 0 0;font:var(--t3)/1.5 var(--text);color:var(--vellum-dim)}.title-page .ledger b{font:700 var(--t2)/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--vellum)}.title-page .credit{margin:16px 0 0;font:var(--t3)/1.45 var(--text);color:var(--vellum-dim);text-align:center}.credit{margin:16px 0 0;font:var(--t3)/1.45 var(--text);color:var(--vellum-dim)}.last-session{display:grid;gap:3px;text-align:left;padding:10px 0;border-top:1px solid var(--ink-rule);border-bottom:1px solid var(--ink-rule);color:var(--vellum-dim)}.last-session .rubric{font:700 var(--t3)/1.3 var(--text);color:var(--gold)}.last-session strong{color:var(--vellum);font-size:var(--t1)}.setup-page{min-height:0;overflow:hidden}.setup-page>.step,.setup-page>h1,.setup-page>.setup-foot{flex-shrink:0}.setup-page>.step{font-size:var(--t3)}.setup-page>h1{margin-bottom:14px}.setup-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--gold-low) transparent;padding-bottom:22px}.setup-scroll>.lede{margin-top:0}.setup-scroll>.quiet{margin-top:8px}.setup-page>.setup-foot{margin-top:0;padding-top:14px;gap:8px;border-top:1px solid var(--ink-rule);background:var(--ink)}.selection-summary{margin:0;font:var(--t3)/1.4 var(--text);color:var(--gold-hi);text-align:center}.hero-roster{margin-top:22px;border-top:1px solid var(--ink-rule)}.hero-option{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:center;width:100%;padding:18px 6px 18px 0;border-bottom:1px solid var(--ink-rule);text-align:left}.hero-portrait{display:grid;align-items:center;justify-items:center}.hero-portrait img{display:block;width:96px;height:120px;object-fit:contain;image-rendering:pixelated}.hero-copy{display:flex;min-width:0;flex-direction:column;gap:6px}.hero-name{display:flex;gap:8px;align-items:center;justify-content:space-between;font:700 27px/1.05 var(--text);color:var(--vellum)}.hero-check{display:none;color:var(--gold-hi);flex-shrink:0}.hero-check .glyph{width:18px;height:18px}.hero-style{font:var(--t3)/1.4 var(--text);color:var(--gold)}.hero-description{font:var(--t2)/1.45 var(--text);color:var(--vellum)}.hero-meta{font:var(--t3)/1.4 var(--text);color:var(--vellum-dim)}.hero-option[aria-pressed=true]{background:#2c4a9340}.hero-option[aria-pressed=true] .hero-name{color:var(--gold-hi)}.hero-option[aria-pressed=true] .hero-check{display:inline-flex}@media(hover:hover){.hero-option:hover{background:#2c4a9333}}.title-explainer{max-width:34ch;font:var(--t2)/1.5 var(--text);color:var(--vellum-dim);margin-top:14px}.origin-page .field{margin-top:16px}.origin-page .rubric{margin:14px 0 6px;font-size:20px}.origin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.origin-grid .choice{min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:10px 2px;text-align:left}.origin-grid .choice strong{font-size:var(--t2);line-height:1.1}.origin-grid .choice .desc{font-size:16px;line-height:1.15}.origin-grid .choice .note{display:none}.ledger-rows{margin-top:26px}.ledger-rows .choice{min-height:64px}.world-list{display:grid;margin-top:22px;border-top:1px solid var(--ink-rule)}.world-list .world-preview{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:stretch;min-height:140px;padding:0;overflow:hidden;border-bottom:1px solid var(--ink-rule);text-align:left;width:100%}.world-list .world-preview img{width:100%;height:100%;min-height:140px;object-fit:cover;image-rendering:pixelated}.world-list .world-wilds img{filter:sepia(.25) hue-rotate(36deg) saturate(1.2)}.world-copy{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:14px 6px 14px 0;min-width:0}.world-copy strong{font:700 var(--t1)/1.2 var(--text);color:var(--vellum)}.world-description{font:var(--t2)/1.4 var(--text);color:var(--vellum)}.world-meta{font:var(--t3)/1.4 var(--text);color:var(--vellum-dim)}.world-preview[aria-pressed=true] strong{color:var(--gold-hi)}.world-selected{display:none;position:absolute;top:8px;left:0;padding:4px 6px;background:var(--ink);color:var(--gold-hi);font:700 var(--t3)/1.3 var(--text)}.world-preview[aria-pressed=true] .world-selected{display:block}.weather-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.weather-row strong,.weather-row small{display:block}.weather-row small{color:var(--vellum-dim)}.session .title-s{margin-top:2px}.session .rubric{margin-top:18px;font-size:21px}.rumor{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;margin:22px 0 0;padding:14px 0;border-top:1px solid var(--ink-rule);border-bottom:1px solid var(--ink-rule)}.rumor .die{display:grid;place-items:center;width:48px;height:48px;font:700 20px/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--ink);background:var(--gold);border:9px solid transparent;border-image:var(--frame) 5 / 9px;image-rendering:pixelated}.rumor p{margin:0;font:var(--t2)/1.45 var(--text);color:var(--vellum)}.rumor small{display:block;font:var(--t3)/1.4 var(--text);color:var(--vellum-dim);margin-top:4px}.objective{margin:18px 0 0;font:var(--t2)/1.45 var(--text);color:var(--vellum)}.objective b{display:inline-block;font:700 var(--d5)/1 var(--text);color:var(--rubric);margin-right:6px}.roll-stage{flex:1;min-height:0;overflow:visible;overscroll-behavior:contain;display:grid;grid-template-rows:auto minmax(60px,1fr) minmax(90px,.8fr) 126px;gap:8px;align-items:stretch;text-align:center;padding:max(24px,env(safe-area-inset-top)) 22px max(18px,env(safe-area-inset-bottom))}.roll-head{position:relative;z-index:0;flex-shrink:0;display:grid;justify-items:center;gap:4px}.roll-head .title-s{font-size:var(--d3)}.roll-head .lede{margin:0;max-width:30ch}.dc{display:inline-flex;align-items:baseline;gap:6px;margin-top:10px;font:var(--t3)/1 var(--text);color:var(--vellum-dim)}.dc b{font:700 24px/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--gold);font-style:normal}.roll-stage .die-stage{position:relative;z-index:1;width:100%;height:100%;min-height:0;overflow:visible}.d20-canvas{position:absolute;left:0;top:0;width:100%;height:100%;cursor:pointer}.roll-stage .roll-result,.roll-stage .roll-actions{position:relative;z-index:2}.critical .d20-canvas{filter:none}.roll-result{flex-shrink:0;width:100%;display:grid;justify-items:center;gap:6px;min-height:92px}.roll-result:empty{min-height:0}.roll-result p{margin:0}.verdict-line{display:inline-flex;align-items:center;gap:12px;max-width:100%;font:var(--d2)/1 var(--hand);font-size:clamp(30px,9vw,45px);white-space:normal;justify-content:center;color:var(--vellum)}.verdict-line .word{display:inline-block}.verdict-line .glyph{width:36px;height:auto}.success .verdict-line,.critical .verdict-line{color:var(--gold)}.baseline .verdict-line{color:var(--vellum-dim)}.fail .verdict-line{color:var(--vermilion)}.math{font:var(--t2)/1.3 var(--text);color:var(--vellum-dim);font-variant-numeric:tabular-nums;opacity:0;animation:ink .9s var(--ease) .25s forwards}.math b{color:var(--vellum);font-weight:700}.outcome{font:var(--t1)/1.5 var(--text);color:var(--vellum);max-width:34ch;text-wrap:pretty;opacity:0;animation:ink .9s var(--ease) .45s forwards}.effect{font:var(--t3)/1.3 var(--text);color:var(--gold);opacity:0;animation:ink .9s var(--ease) .6s forwards}.hint{font:var(--t3)/1.3 var(--text);color:var(--vellum-dim)}@keyframes ink{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur(0)}}.roll-actions{position:sticky;bottom:0;z-index:1;flex-shrink:0;display:grid;gap:8px;width:100%;margin-top:14px;padding:8px 0 0;background:var(--ink)}.dying .title-s{color:var(--vermilion);font-size:var(--d2)}.saves{display:grid;grid-template-columns:auto auto;gap:10px 16px;align-items:center;margin-top:18px}.saves dt{font:var(--t2)/1 var(--text);color:var(--vellum-dim);text-align:right}.saves dd{margin:0;display:flex;gap:8px}.saves .glyph{width:22px;height:auto}.saves .glyph.off{opacity:.22;filter:grayscale(1)}.pause-stats{display:flex;justify-content:space-between;gap:10px;margin:20px 0;color:var(--vellum-dim)}.pause-stats span{display:grid}.pause-stats b{color:var(--vellum);font-size:22px;font-variant-numeric:lining-nums tabular-nums}.ranks{margin:16px 0 0;padding:0;list-style:none}.ranks li{display:flex;justify-content:space-between;align-items:center;min-height:40px;border-bottom:1px solid var(--ink-rule);font:700 var(--d5)/1 var(--text);color:var(--vellum)}.owned-powers{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.owned-powers span,.upgrade-icon{position:relative;display:grid;place-items:center;width:44px;height:44px;background:var(--lapis-deep);box-shadow:inset 0 0 0 1px var(--gold-low)}.owned-powers .glyph,.upgrade-icon .glyph{width:22px;height:22px}.owned-powers img,.upgrade-icon img{width:40px;height:40px;object-fit:contain;image-rendering:pixelated}.owned-powers .power-icon,.upgrade-icon .power-icon,.pause-power-icon .power-icon,.skill-disc .power-icon{width:32px;height:32px;image-rendering:pixelated}.skill-detail-heading .power-icon{width:36px;height:36px;image-rendering:pixelated}.owned-powers small{position:absolute;right:3px;bottom:0}.upgrade-list{display:grid;margin-top:20px;border-top:1px solid var(--ink-rule)}.upgrade-choice{min-height:70px;width:100%;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;row-gap:2px;text-align:left;padding:10px 6px;border-bottom:1px solid var(--ink-rule)}.upgrade-choice>.upgrade-icon{grid-row:1 / span 2}.upgrade-choice strong{display:block;font:700 17px/1.15 var(--text);color:var(--vellum)}.upgrade-choice small{display:block;color:var(--vellum-dim);font-size:16px;line-height:1.25}.upgrade-rank{grid-column:2;margin:0;color:var(--gold);font:700 13px/1.2 var(--text)}.passive-heading{margin:16px 0 5px}.chronicle{margin:0;max-width:36ch}.chronicle .prose{margin:0;font-size:var(--t2)}.chronicle+.chronicle{margin-top:26px;padding-top:22px;border-top:1px solid var(--ink-rule)}.chronicle-page>.rubric{margin-top:22px}.folio{display:block;margin-bottom:8px;font:700 var(--t2)/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--rubric)}.ledger-line{margin:22px 0 0;font:var(--t3)/1.6 var(--text);color:var(--vellum-dim);text-align:center}.ledger-line b{font:700 var(--t2)/1 var(--text);font-variant-numeric:lining-nums tabular-nums;color:var(--vellum)}.earned{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font:var(--t2)/1.3 var(--text);color:var(--gold)}.earned .glyph{width:12px;height:12px}.story-journal{margin-top:16px;border-top:1px solid var(--ink-rule);border-bottom:1px solid var(--ink-rule)}.story-journal p{margin:0 0 14px}.legacy-page .lede{margin-bottom:20px}.legacy-balance{display:flex;align-items:baseline;justify-content:space-between;padding:12px 0;border-block:1px solid var(--gold-low);color:var(--vellum-dim)}.legacy-balance strong{color:var(--gold-hi);font-size:27px;font-variant-numeric:tabular-nums}.legacy-milestone{display:grid;gap:2px;margin:16px 0 24px;padding:12px 0;border-bottom:1px solid var(--ink-rule)}.legacy-milestone strong{font-size:var(--t1)}.legacy-milestone span{color:var(--gold-hi)}.legacy-milestone small,.legacy-upgrade small{color:var(--vellum-dim);line-height:1.3}.legacy-page .rubric{font-size:24px;margin-bottom:4px}.legacy-upgrades{margin-top:12px}.legacy-upgrade{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--ink-rule)}.legacy-upgrade div{display:grid;gap:2px;min-width:0}.legacy-upgrade strong{font-size:var(--t1);line-height:1.2}.legacy-upgrade span{color:var(--vellum-dim);font-size:16px;line-height:1.25}.legacy-buy{flex:none;min-height:44px;min-width:82px;padding:6px 10px;border:1px solid var(--gold-low);color:var(--gold-hi)}.legacy-buy:disabled{color:var(--vellum-dim);border-color:var(--ink-rule)}.legacy-notice{color:var(--gold-hi);margin:0 0 16px}.seals{margin:16px 0 0;padding:0;list-style:none;border-top:1px solid var(--ink-rule)}.seals li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;padding:14px 2px;border-bottom:1px solid var(--ink-rule)}.seals .glyph{width:14px;height:14px;margin-top:4px}.seals li:not(.won) .glyph{opacity:.25;filter:grayscale(1)}.seals strong{display:block;font:var(--d4)/1 var(--hand);color:var(--vellum)}.seals li:not(.won) strong{color:var(--vellum-dim)}.seals span{font:var(--t3)/1.4 var(--text);color:var(--vellum-dim)}.achievement-seal{width:22px;height:22px;object-fit:contain;image-rendering:pixelated}.seals li:not(.won) .achievement-seal{opacity:.25;filter:grayscale(1)}.achievement-page>.quiet{margin-top:10px}.achievement-group{border-bottom:1px solid var(--ink-rule)}.achievement-group summary{min-height:52px;gap:10px;color:var(--vellum)}.achievement-group summary strong{font-size:20px}.achievement-group summary span{margin-left:auto;color:var(--gold);font-variant-numeric:tabular-nums}.achievement-group summary:after{margin-left:0}.achievement-group .seals{margin:0;border:0}.achievement-group .seals li:last-child{border:0}.achievement-group .seals strong{font:700 18px/1.2 var(--text)}.achievement-group .seals span,.achievement-group .seals small{display:block}.achievement-group .seals small{margin-top:4px;color:var(--gold)}.settings-page .rubric{margin-top:24px;font-size:21px}.settings-page .pair,.settings-page .element-options{margin-top:8px}.element-options{display:flex;flex-wrap:wrap;gap:6px}.element-options button{min-height:44px;padding:0 12px;border:1px solid var(--ink-rule)}.element-options button[aria-pressed=true]{border-color:var(--gold);background:var(--lapis-deep);color:var(--gold-hi)}.settings-links{display:grid;justify-items:start;margin-top:20px}.settings-links .link{min-height:44px}@media(max-height:700px){:root{--d1: 54px;--d2: 45px;--t1: 17px}.die-stage{height:clamp(130px,26dvh,190px)}.initial-xl{width:96px;height:96px;font-size:var(--d2)}.origin-page .page-foot{padding-top:10px}.origin-page .rubric{margin-top:8px}.origin-grid .choice{min-height:52px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}#narration.show,#dice-tray.show{animation:chip-still 5s linear forwards!important}@keyframes chip-still{0%,90%{opacity:1}to{opacity:0}}}.fall-moment{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;padding:max(20px,env(safe-area-inset-top)) 22px max(20px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 38%,#3a1410 0%,var(--ink) 62%,#070403 100%);pointer-events:none;overflow:hidden}.fall-moment:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 42%,#000000b8 100%)}.fall-caption{position:relative;z-index:1;text-align:center;color:var(--vellum);max-width:34rem;animation:last-breath 1.2s ease-out both}.fall-emblem{display:inline-grid;place-items:center;width:76px;height:76px;border:1px solid var(--rubric);border-radius:50%;background:#160b08cc;box-shadow:0 0 34px #982c2055}.fall-emblem .glyph{width:40px;height:40px;color:var(--rubric)}.fall-eyebrow{margin:16px 0 0;font:700 13px/1.3 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi);font-style:normal!important}.fall-caption h1{margin:10px 0 8px;font:400 56px/1 var(--hand);color:var(--rubric);text-wrap:balance}.fall-epitaph{max-width:30ch;margin:0 auto;font-style:italic;color:var(--vellum)}.fall-stats{display:flex;justify-content:center;gap:0;margin:22px auto 0;max-width:320px;border-top:1px solid #baa17a55;border-bottom:1px solid #baa17a55}.fall-stats div{flex:1;padding:10px 4px}.fall-stats div+div{border-left:1px solid #baa17a33}.fall-stats dt{font:700 11px/1.2 var(--text);letter-spacing:.12em;text-transform:uppercase;color:var(--vellum-dim)}.fall-stats dd{margin:4px 0 0;font:400 22px/1.1 var(--hand);color:var(--gold-hi)}.fall-next{margin:16px auto 0;font:700 14px/1.4 var(--text);color:var(--vellum);font-style:normal!important}@media(max-width:360px){.fall-caption h1{font-size:44px}}@keyframes last-breath{0%{opacity:.35}25%,to{opacity:1}}@media(prefers-reduced-motion:reduce){.fall-caption{animation:none}}.origin-page .origin-grid{display:block;border-top:1px solid var(--ink-rule)}.origin-page .origin-grid .choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;min-height:84px;padding:14px 6px}.origin-page .origin-grid .choice strong{font-size:var(--t1);line-height:1.2}.origin-page .origin-grid .choice .desc{grid-row:2;font-size:var(--t2);line-height:1.4}.origin-page .origin-grid .choice .note{display:block;max-width:9ch;grid-column:2;grid-row:1 / span 2;white-space:normal;font-size:var(--t3);line-height:1.4;text-align:right;color:var(--gold-hi)}.origin-page .rubric,.setup-scroll>.rubric{margin:26px 0 8px;font-size:27px}.setup-scroll .element-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.setup-scroll #run-code{font:700 20px/1.4 var(--text)}@media(max-width:360px){.hero-option,.world-list .world-preview{grid-template-columns:76px minmax(0,1fr);gap:12px}.hero-portrait img{width:76px;height:104px}.setup-page>.title-s{font-size:27px}}.origin-page #hero-name{font:400 27px/1.2 var(--text)}#skill-tray{position:absolute;z-index:2;left:max(14px,env(safe-area-inset-left));bottom:calc(env(safe-area-inset-bottom) + 14px);display:flex;flex-wrap:wrap;gap:6px;max-width:234px}#skill-tray[hidden],body:not(.playing) #skill-tray{display:none}.skill-slot{width:54px;min-height:68px;padding:0;display:grid;justify-items:center;gap:3px;color:var(--vellum-dim);touch-action:manipulation}.skill-disc{position:relative;display:grid;place-items:center;width:52px;height:52px}.skill-disc img{width:38px;height:38px;object-fit:contain;image-rendering:pixelated;background:var(--ink-leaf);border-radius:50%}.skill-disc .power-icon{position:relative;z-index:1;width:34px;height:34px;background:var(--ink-leaf);border-radius:50%;padding:4px;box-sizing:content-box;image-rendering:pixelated}.skill-disc>svg:not(.power-icon){position:absolute;top:0;right:0;bottom:0;left:0;width:52px;height:52px;transform:rotate(-90deg);fill:none;stroke-width:3px}.skill-track{stroke:var(--ink-rule)}.skill-charge{stroke:var(--gold);stroke-dasharray:100;stroke-dashoffset:var(--charge, 0)}.skill-slot.ready .skill-charge{stroke:var(--gold-hi)}.skill-slot small{font:700 13px/1 var(--text);color:inherit;font-variant-numeric:tabular-nums;text-shadow:none}.skill-slot.ready{color:var(--gold-hi)}.skill-rank{position:absolute;right:0;bottom:0;background:var(--ink);color:var(--vellum);min-width:16px;padding:2px;font:700 13px/1 var(--text)}#dice-tray{bottom:calc(env(safe-area-inset-bottom) + 14px + var(--skill-tray-height, 0px) + 8px)}#narration{bottom:calc(env(safe-area-inset-bottom) + 14px + var(--skill-tray-height, 0px) + 50px)}.skill-detail-heading{display:flex;align-items:center;gap:14px}.skill-detail-heading>img,.skill-detail-heading>.power-icon{width:54px;height:54px;image-rendering:pixelated}.skill-detail-heading h2{margin:0}.skill-facts{margin:22px 0 14px;border-top:1px solid var(--ink-rule)}.skill-facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--ink-rule)}.skill-facts dt{color:var(--vellum-dim)}.skill-facts dd{margin:0;text-align:right;color:var(--gold-hi);font-weight:700;font-variant-numeric:tabular-nums}#boss-encounter{position:absolute;z-index:2;top:calc(max(8px,env(safe-area-inset-top)) + 78px);left:14px;right:14px;padding:8px 10px 10px;background:var(--ink);border-block:1px solid var(--gold-low);pointer-events:none}#boss-encounter[hidden],body:not(.playing) #boss-encounter{display:none}#boss-name{display:block;color:var(--gold-hi);font:700 19px/1.15 var(--text);text-align:center}#boss-health{height:7px;margin:7px 0;background:var(--ink-rule);overflow:hidden}#boss-health-fill{display:block;height:100%;background:var(--gold);transform-origin:left}.boss-unbound #boss-health-fill{background:var(--rubric)}#boss-status{margin:0;color:var(--vellum);text-align:center;font:400 14px/1.25 var(--text);min-height:2.5em}.boss-won #boss-name{color:var(--gold-hi)}.saves dd:first-of-type .glyph{width:28px;height:26px}.saves dd:first-of-type .glyph.off{opacity:.4}.roll-stage .roll-result{min-height:0;height:100%;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;align-content:start;scrollbar-gutter:stable both-edges;padding:4px 2px}.roll-stage .roll-actions{position:relative;bottom:auto;height:126px;min-height:126px;margin-top:0;padding:8px 0 0;grid-template-rows:66px 44px;gap:8px;align-content:start}.roll-stage .roll-actions>.btn{height:66px;min-height:66px}.roll-stage .roll-actions>.link{min-height:44px}@media(max-height:700px){.roll-stage{padding-top:max(14px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));gap:6px}.roll-head .title-s{font-size:30px}.roll-head .lede{font-size:15px;line-height:1.25}.roll-head .saves{margin-top:10px;gap:6px 12px}.roll-stage .verdict-line{font-size:30px}}.audio-levels{display:grid;gap:16px;margin:20px 0}.audio-levels label{display:grid;grid-template-columns:1fr auto;gap:6px;color:var(--vellum)}.audio-levels input{grid-column:1 / -1;width:100%;min-height:32px;accent-color:var(--gold)}.audio-levels output{color:var(--gold-hi);font-variant-numeric:tabular-nums}.audio-preview-list{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-top:16px}.audio-preview-list .choice{display:block;min-height:48px;padding:10px 4px}:root{--ink:#281b11;--ink-leaf:#332318;--ink-rule:#65503a;--vellum:#f0e3c4;--vellum-dim:#d0bc96;--gold:#dbb366;--gold-hi:#f0cf87;--gold-low:#947342;--rubric:#edaa87;--vermilion:#a52d21;--d4:28px}.page,.ceremony,.roll-stage{background-color:var(--ink);background-image:url(/assets/tabletop-boards.svg);background-size:100% 100%}#arena{box-shadow:none}.btn,.btn-gold{min-height:56px;border:1px solid #87291e;border-bottom:4px solid #681f17;border-image:none;border-radius:9px;background:#a52d21;color:#fff0d1;font:800 20px/1.2 var(--text);padding:12px 16px}.btn:hover,.btn-gold:hover{background:#b63829}.btn:active{border-bottom-width:1px;transform:translateY(3px)}.link{min-height:48px;border:1px solid var(--ink-rule);border-radius:7px;text-decoration:none;color:var(--vellum);padding:10px 14px}.links{gap:8px}.links>*{flex:1}.sheet,.hero-parchment{--vellum:#302113;--vellum-dim:#654b30;--gold:#765124;--gold-hi:#654019;--rubric:#982c20;--ink-rule:#baa17a;--ink-leaf:#eadbb7;background:#eadbb7;color:#302113;border:1px solid #aa8d5f;border-radius:8px 8px 0 0;box-shadow:none}.sheet-scrim{background:linear-gradient(to bottom,#140d0840,#140d0899)}.sheet:before{background:#937c5c;border-radius:3px}.sheet .link{color:#503820}.sheet .page-foot{background:#eadbb7}.rubric,.ranks li,.objective b{font-family:var(--text);font-weight:700}.title,.title-s,.ceremony h1{font-weight:400}.title-page .mark{display:block;margin-top:36px;text-align:center}.title-page .mark .title{font-size:54px}.title-page .lede,.title-page .title-explainer{align-self:center;text-align:center}.title-page .page-foot{gap:8px}.title-top{min-height:48px}.hero-parchment{padding:18px;margin-top:18px;border-radius:5px}.quick-hero{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;align-items:center}.quick-hero img{width:100%;height:120px;object-fit:contain;image-rendering:pixelated;background:#dcca9c;border:1px solid #947342}.quick-hero p{margin:6px 0}.hero-parchment h3{margin:14px 0 8px;font-size:14px;text-transform:uppercase;letter-spacing:.08em}.hero-parchment p{font-size:17px;line-height:1.4}.origin-grid{gap:8px}.origin-grid .choice{padding:10px;border:1px solid var(--gold-low);border-radius:7px;min-height:64px}.origin-grid .choice .desc{font-size:16px;line-height:1.25}.choice[aria-pressed=true]{background:#b28b4930;outline:2px solid var(--vermilion);outline-offset:-2px}.quick-roster{display:flex;overflow-x:auto;gap:8px;margin-top:18px;padding:3px;flex-shrink:0}.quick-roster button{flex:0 0 60px;height:68px;border:1px solid var(--ink-rule);border-radius:7px}.quick-roster img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.quick-roster [aria-pressed=true]{outline:2px solid var(--gold)}.quick-setup .page-foot{padding-top:18px;gap:8px}.upgrade-list{gap:10px;border:0}.upgrade-choice{border:1px solid #baa17a;background:#f2e5c8;padding:12px;border-radius:6px;min-height:72px}.upgrade-choice small{font-size:16px}.upgrade-icon,.owned-powers span{background:#ddc99d;box-shadow:none}#hud:after{background:#281b11;top:0;right:0;bottom:0;left:0}.life-rule{height:24px;background:#4a211b;border:1px solid #bd9160;box-shadow:none}.life-rule i{background:#a52d21;box-shadow:none}.life-rule b{font-size:16px;color:#fff1d6}.hud-hour span{position:static;width:auto;height:auto;clip:auto;font-size:14px;text-transform:uppercase}.hud-hour b{font-size:18px}.roll-actions{background:var(--ink)}.ranks li,small{font-size:16px}@media(max-height:700px){.quick-setup{padding:12px 16px}.quick-setup .title-s{font-size:28px}.hero-parchment{margin-top:10px;padding:12px}.quick-hero img{height:80px}.quick-hero{grid-template-columns:74px 1fr}.hero-parchment p{margin:8px 0}.quick-roster{margin-top:10px}.quick-roster button{height:48px;flex-basis:48px}.quick-setup .page-foot{padding-top:10px}}.title-page{background:#281b11 url(/assets/art/cemetery.webp) center top / cover no-repeat;position:relative;isolation:isolate}.title-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#160f0bc4;pointer-events:none}.title-page .page-foot{width:100%;max-width:480px;align-self:center;gap:12px}.title-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.title-shortcut{display:flex;align-items:center;gap:12px;width:100%;min-height:72px;padding:12px 14px;border:1px solid #7b6245;border-radius:7px;background:#281b11ed;text-align:left;color:#f0e3c4}.title-shortcut>.glyph{width:24px;height:28px}.title-shortcut span{display:grid;gap:3px;min-width:0}.title-shortcut strong{font-size:18px;line-height:1.1}.title-shortcut small{font-size:16px;line-height:1.2;color:#d0bc96}.title-unlock{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 16px;gap:12px;align-items:center;min-height:106px;padding:16px;border:1px solid #d9ad62;border-bottom:3px solid #947342;border-radius:8px;background:#eadbb7;color:#302113;text-align:left}.unlock-emblem{display:grid;place-items:center;width:44px;height:50px;border:1px solid #ad8d55;background:#ddc99d;border-radius:5px}.unlock-emblem .glyph{width:33px;height:24px}.unlock-copy{display:grid;gap:4px}.unlock-eyebrow{font-size:14px;line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#825326}.unlock-copy strong{font-size:21px;line-height:1.15;font-weight:800}.unlock-copy>span:last-child{font-size:16px;line-height:1.25;color:#654b30}.unlock-arrow{font-size:32px;color:#982c20}.title-shortcut:hover{background:#3b291b;border-color:#d9ad62}.title-unlock:hover{background:#f3e6ca}.title-shortcut:active,.title-unlock:active{transform:translateY(2px)}@media(max-width:360px){.title-shortcut{gap:8px;padding:10px}.title-shortcut>.glyph{width:18px;height:24px}.title-unlock{grid-template-columns:32px minmax(0,1fr) 12px;padding:12px;gap:10px}.unlock-emblem{width:32px;height:42px}.unlock-emblem .glyph{width:26px;height:20px}.unlock-copy strong{font-size:19px}}.page,.ceremony,.roll-stage{--scene: url(/assets/art/crypt.webp);background-color:#62584e;background-image:var(--scene);background-position:center;background-size:cover;background-repeat:no-repeat;background-blend-mode:multiply}.title-page{--scene: url(/assets/art/cemetery.webp);background-color:#62584e}.title-page:before{display:none}.quick-setup,.hero-page{--scene:url(/assets/art/campaign-drafts/ruined-village.webp)}.origin-page{--scene:url(/assets/art/secret-wilds.png)}.world-page{--scene:url(/assets/art/campaign-drafts/mountain-pass.webp)}.unlock-page{--scene:url(/assets/art/campaign-drafts/mountain-pass.webp)}.legacy-page{--scene:url(/assets/art/secret-crypt.png)}.chronicle-page{--scene:url(/assets/art/campaign-drafts/ruined-village.webp)}.achievement-page{--scene:url(/assets/art/secret-grave.png)}.settings-page{--scene:url(/assets/art/crypt.webp)}.backup-page{--scene:url(/assets/art/secret-crypt.png)}.roll-stage{--scene: url(/assets/art/cemetery.webp);position:relative;isolation:isolate;background-color:#281b11;background-image:var(--scene);background-position:center;background-size:cover;background-repeat:no-repeat;background-blend-mode:normal}.roll-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#160f0ba8;pointer-events:none}.roll-stage.dying,.ceremony.fallen{--scene: url(/assets/art/crypt.webp)}.ceremony{--scene:url(/assets/art/campaign-drafts/mountain-pass.webp)}.roll-actions,.ceremony .page-foot,.setup-page>.setup-foot{background:#211a15cc;border-radius:7px}.unlock-page .ruled{padding:0 16px;background:#211a15e8;border:1px solid #947342;border-radius:7px;margin-top:22px}.dice-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.dice-option{display:flex;flex-direction:column;align-items:center;padding:8px 6px 12px;min-width:0;border:1px solid #7b6245;border-radius:8px;background:#211a15e8;color:#f0e3c4}.dice-option canvas{width:100%;height:110px;image-rendering:auto}.dice-option strong{font-size:16px;line-height:1.2;text-align:center}.dice-selected{font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:#d0bc96;margin-top:6px}.dice-option[aria-pressed=true]{border:2px solid #e1bd70;padding:7px 5px 11px;background:#45351fe8}.dice-option[aria-pressed=true] .dice-selected{color:#ffe2a0;font-weight:800}@media(max-width:360px){.dice-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}.quick-setup .quick-roster{gap:12px;margin-top:16px;padding:3px 3px 12px;scroll-snap-type:x mandatory}.quick-setup .quick-roster button{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;flex:0 0 min(310px,90%);height:auto;min-height:146px;padding:14px;border:1px solid #ad8d5f;background:#eadbb7;color:#302113;text-align:left;scroll-snap-align:start}.quick-setup .quick-roster img{width:76px;height:100px;background:#dcca9c;border:1px solid #b79a66;border-radius:4px}.quick-class-copy{display:grid;gap:6px}.quick-class-copy strong{font-size:22px;line-height:1.1;font-weight:800}.quick-class-copy>span{font-size:16px;line-height:1.3}.quick-class-copy small{font-size:16px;line-height:1.2;color:#705331}.quick-class-check{position:absolute;top:8px;right:8px}.quick-class-check .glyph{width:14px;height:14px}.quick-setup .quick-roster [aria-pressed=true]{outline:2px solid #e1bd70;border-color:#6e4b25}.quick-setup .hero-parchment{margin-top:6px}.quick-setup .hero-parchment h3{margin-top:0}.quick-setup .hero-parchment{margin-top:18px;flex-shrink:0}.hero-roster-heading{margin:22px 0 0;font-size:20px}.quick-setup .quick-roster{display:grid;grid-template-columns:minmax(0,1fr);overflow:visible;scroll-snap-type:none;padding:3px;margin-top:12px;flex-shrink:0}.quick-setup .quick-roster button{width:100%;min-height:120px;grid-template-columns:68px minmax(0,1fr);padding:12px}.quick-setup .quick-roster img{width:68px;height:90px}.quick-setup .page-foot{position:sticky;bottom:calc(-1*max(18px,env(safe-area-inset-bottom)));z-index:2;margin-top:18px;padding:12px 0 max(18px,env(safe-area-inset-bottom));background:#211a15f5;flex-shrink:0}@media(max-height:700px){.quick-setup .page-foot{bottom:-12px;padding-bottom:12px}}.unlock-page{gap:0}.unlock-hero{text-align:center;padding:8px 0 26px}.unlock-crest{display:grid;place-items:center;margin:0 auto 12px;width:62px;height:58px;border:1px solid #b88b46;border-radius:8px;background:#302217e8}.unlock-crest .glyph{width:40px;height:30px}.unlock-kicker{margin:0 0 10px;font:800 14px/1.2 var(--text);letter-spacing:.09em;text-transform:uppercase;color:#e1bd70}.unlock-hero .title{font-size:clamp(34px,9vw,46px);line-height:1.05}.unlock-hero .lede{margin:14px auto 0;color:#f0e3c4;font-size:17px;line-height:1.45}.unlock-feature{padding:18px;margin-bottom:16px;border:1px solid #aa8d5f;border-radius:8px;background:#eadbb7;color:#302113}.unlock-feature-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.unlock-feature-heading>.glyph{width:26px;height:28px;margin-top:2px}.unlock-feature h2,.unlock-campaign h2{margin:0;font:800 21px/1.2 var(--text)}.unlock-feature-heading p{margin:5px 0 0;font-size:17px;line-height:1.3;color:#654b30}.unlock-hero-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 6px}.unlock-hero-gallery>div{display:grid;justify-items:center;gap:5px}.unlock-hero-gallery img{width:100%;max-width:76px;height:76px;object-fit:contain;image-rendering:pixelated}.unlock-hero-gallery span{font-size:16px;font-weight:700}.unlock-feature-note{margin:16px 0 0;padding-top:12px;border-top:1px solid #baa17a;font-size:16px;color:#654b30;text-align:center}.unlock-realms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.unlock-realms>div{overflow:hidden;border:1px solid #b79a66;border-radius:5px;background:#e0cda6}.unlock-realms img{display:block;width:100%;height:84px;object-fit:cover;image-rendering:pixelated}.unlock-realms strong{display:block;padding:9px 8px;font-size:16px;line-height:1.2}.unlock-campaign{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:20px 16px;border:1px solid #b88b46;border-radius:8px;background:#281b11ed}.unlock-campaign-icon .glyph{width:28px;height:44px}.unlock-campaign .unlock-kicker{margin-bottom:6px}.unlock-campaign p:last-child{margin:8px 0 0;font-size:17px;line-height:1.4;color:#d0bc96}.unlock-promise{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:22px 0 12px}.unlock-promise span{display:inline-flex;align-items:center;gap:5px;font-size:16px}.unlock-promise .glyph{width:12px;height:12px}.unlock-carryover{text-align:center;margin-bottom:16px}.unlock-page .unlock-purchase{position:sticky;bottom:calc(-1*max(18px,env(safe-area-inset-bottom)));padding:14px 0 max(18px,env(safe-area-inset-bottom));margin-top:auto;background:#211a15f5;gap:8px}.unlock-purchase-note{margin:0;text-align:center;color:#d0bc96;font-size:16px}.unlock-purchase .link{width:100%;border-color:transparent;min-height:48px}@media(min-width:600px){.unlock-page{padding-inline:28px}}.pause-lore{display:flex;gap:12px;margin:20px 0;padding:16px;border:1px solid #baa17a;border-radius:6px;background:#e0cda5}.pause-lore-icon .glyph{width:18px;height:32px}.pause-lore h3{margin:0 0 7px;font:800 18px/1.2 var(--text);color:#654019}.pause-lore p{margin:0;font:400 17px/1.45 var(--text);color:#503820}.owned-powers{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.owned-powers button{display:grid;grid-template-columns:44px minmax(0,1fr) 12px;align-items:center;gap:12px;width:100%;min-height:68px;padding:10px 12px;border:1px solid #baa17a;border-radius:6px;background:#f2e5c8;color:#302113;text-align:left}.owned-powers button span{width:auto;height:auto;display:block;background:none;box-shadow:none}.owned-powers .pause-power-icon{display:grid;place-items:center;width:44px;height:44px}.owned-powers .pause-power-copy strong{display:block;font-size:17px}.owned-powers button small{position:static;display:block;font-size:16px;color:#654b30}.owned-powers button:hover{background:#e7d2a8}.skill-disc img.relic-icon{padding:0;background:transparent;width:44px;height:44px;object-fit:contain}.upgrade-icon img.relic-icon,.pause-power-icon img.relic-icon{width:44px;height:44px}.skill-detail-heading img.relic-icon{width:54px;height:54px}.upgrade-icon img.relic-icon,.pause-power-icon img.relic-icon{width:44px;height:44px;object-fit:contain;image-rendering:auto}.skill-disc img.relic-icon,.skill-detail-heading img.relic-icon{image-rendering:auto}.dread-sheet{max-height:90dvh}.dread-totals{color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.5}.dread-stepper{display:flex;align-items:center;justify-content:center;gap:22px;padding:8px 0;border-bottom:1px solid var(--ink-rule)}.dread-stepper button{min-width:48px;min-height:48px;font-size:27px}.dread-stepper output{min-width:118px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.dread-curse{display:grid;grid-template-columns:24px minmax(0,1fr) 58px;align-items:center;gap:12px;width:100%;min-height:88px;padding:14px 0;border:0;border-bottom:1px solid var(--ink-rule);background:transparent;color:var(--vellum);text-align:left;font-family:var(--text)}.dread-curse strong{display:block;font-size:17px;line-height:1.2}.dread-curse small{display:block;margin-top:4px;color:var(--vellum-dim);font-size:14px;line-height:1.4}.dread-curse[aria-pressed=true] strong{color:var(--gold-hi)}.dread-curse:disabled{opacity:1;cursor:default}.dread-icon .glyph,.dread-icon .power-icon{display:block;width:24px;height:24px;max-width:24px;object-fit:contain;image-rendering:pixelated}.dread-rank{text-align:right;font-variant-numeric:tabular-nums}.dread-rank b{font-size:16px}.dread-rank>span{display:flex;justify-content:flex-end;gap:4px;margin-top:6px}.dread-rank i{width:8px;height:8px;border:1px solid var(--gold-low)}.dread-rank i.lit{background:var(--gold)}.dread-rank small{font-size:12px}.dread-badges{display:flex;justify-content:space-between;gap:4px;margin:14px 0}.dread-badges>span{display:grid;justify-items:center;gap:4px;color:var(--vellum-dim)}.dread-badges .glyph{width:18px;height:18px}.dread-badges .earned{color:var(--gold)}.dread-badges small{font-size:11px}.dread-hud{display:inline-flex;align-items:center;gap:5px;color:var(--gold-hi);font-size:17px;font-weight:700;white-space:nowrap;background:#160b08cc;border:1px solid #baa17a66;border-radius:999px;padding:3px 9px}.dread-hud[hidden]{display:none}.dread-hud .glyph{width:17px;height:17px}@media(hover:hover){.dread-curse:not(:disabled):hover{background:color-mix(in srgb,var(--gold) 9%,transparent)}}.subclass-option{border-bottom:1px solid var(--ink-rule);padding:18px 0}.subclass-option h3{margin:0 0 8px;font:700 22px/1.2 var(--text)}.subclass-option p{line-height:1.45}.subclass-option details{margin:12px 0}.subclass-option summary{min-height:44px;padding:12px 0;color:var(--gold);cursor:pointer}.subclass-option .btn{margin-top:12px}.subclass-crest{outline:1px solid var(--gold);outline-offset:4px}.skill-slot.skill-evolved .skill-disc{outline:2px solid var(--gold-hi);outline-offset:2px}.skill-slot.skill-evolved .skill-rank:after{content:"✦";margin-left:2px}.sheet select{display:block;width:100%;min-height:44px;margin:12px 0;color:var(--vellum);background:var(--ink-leaf);border:1px solid var(--ink-rule);font:inherit}.subclass-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:8px;border:2px solid var(--gold);vertical-align:middle}.subclass-icon.original{border-style:dashed}.subclass-icon .power-icon{width:24px;height:24px;object-fit:contain;image-rendering:pixelated}.skill-slot.skill-ready-evolve .skill-disc{outline:1px solid var(--gold-hi);outline-offset:2px}.skill-slot.skill-ready-evolve .skill-rank:after{content:"✦";margin-left:2px}.upgrade-choice.evolution-choice{grid-template-columns:minmax(0,1fr);min-height:140px}.evolution-choice>span{min-width:0}.evolution-symbol .power-icon{width:56px;height:56px;object-fit:contain;image-rendering:pixelated}.grimoire-symbol .power-icon{width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.setup-page .lede,.quick-setup .lede{max-width:min(36rem,100%);text-wrap:pretty}.evolution-reveal{text-align:center;padding:16px 0}.evolution-reveal .evolution-symbol{display:inline-block;animation:evolution-merge 1.2s ease both}.evolution-reveal.reduced .evolution-symbol{animation:evolution-fade .5s ease both}@keyframes evolution-merge{0%{transform:scale(.6);opacity:0}40%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}@keyframes evolution-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.evolution-reveal .evolution-symbol{animation:evolution-fade .5s ease both}}#low-health-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:transparent;box-shadow:inset 0 0 24vmin #96120880,inset 0 0 7vmin #96120859;animation:lowhp-breathe 1.4s ease-in-out infinite}#low-health-vignette[hidden]{display:none}@keyframes lowhp-breathe{0%,to{filter:brightness(.7)}50%{filter:brightness(1.3)}}.life-rule.low i{animation:lowhp-bar 1.4s ease-in-out infinite}.life-rule.critical i{animation-duration:.7s}@keyframes lowhp-bar{0%,to{filter:brightness(.75)}50%{filter:brightness(1.5)}}@media(prefers-reduced-motion:reduce){#low-health-vignette,.life-rule.low i{animation:none}}.reveal-icons{display:flex;align-items:center;justify-content:center;gap:10px}.reveal-icons .power-icon{width:44px;height:44px;object-fit:contain;image-rendering:pixelated}.reveal-base{animation:reveal-from-left 1.2s ease both}.reveal-focus{animation:reveal-from-right 1.2s ease both}.reveal-plus,.reveal-arrow{font:400 22px/1 var(--hand);color:var(--gold-hi)}.evolution-reveal.reduced .reveal-base,.evolution-reveal.reduced .reveal-focus{animation:evolution-fade .35s ease both}@keyframes reveal-from-left{0%{transform:translate(-26px);opacity:0}45%{transform:none;opacity:1}to{transform:none;opacity:1}}@keyframes reveal-from-right{0%{transform:translate(26px);opacity:0}45%{transform:none;opacity:1}to{transform:none;opacity:1}}
