@font-face{font-family:Nunito Sans;src:url(/fonts/nunito-sans-latin-variable.woff2)format("woff2-variations");font-style:normal;font-weight:200 1000;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/nunito-sans-latin-variable-italic.woff2)format("woff2-variations");font-style:italic;font-weight:200 1000;font-display:swap}@font-face{font-family:Grenze;src:url(/fonts/grenze-latin-variable.woff2)format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Grenze Gotisch;src:url(/fonts/grenze-gotisch-latin-variable.woff2)format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#050504;--ink-well:#0c0c0b;--ink-surface:#131312;--ink-raised:#1b1b19;--paper:#f4f1e8;--paper-dim:#b6b1a6;--paper-faint:#7c776e;--rule:#302f2b;--rule-lit:#55534b;--ember:#d9a05b;--ember-deep:#8a6538;--blood:#c4574a;--blood-deep:#4a1b16;--shadow:#0000009e;--display:"Grenze Gotisch", "Grenze", Georgia, serif;--heading:"Grenze", Georgia, serif;font-synthesis:none;font-family:Nunito Sans,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--ink);min-height:100%}body{min-height:100dvh;color:var(--paper);background:radial-gradient(ellipse 120% 60% at 50% -8%, #f4f1e80d, transparent 62%), radial-gradient(ellipse 140% 100% at 50% 42%, transparent 34%, #000000b8), url(/images/grain.svg), var(--ink);margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--paper);-webkit-text-decoration-color:var(--rule-lit);text-decoration-color:var(--rule-lit);text-underline-offset:.2em}a:hover{-webkit-text-decoration-color:var(--ember);text-decoration-color:var(--ember)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ember);outline-offset:3px}.section-title,button,.button{color:var(--ink);background:var(--paper)}.brand-row{padding-top:env(safe-area-inset-top,0px);justify-content:space-between;align-items:center;margin-bottom:1.1rem;display:flex}.brand{min-width:0;color:var(--paper);align-items:center;gap:.7rem;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--rule-lit);flex:none;width:2.4rem;height:2.4rem;display:block}.brand strong{font-family:var(--display);letter-spacing:.01em;font-size:1.62rem;font-weight:600;line-height:.86;display:block}.header-link{min-height:2.65rem;color:var(--paper-dim);letter-spacing:.11em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;padding:.52rem .72rem;font-size:.62rem;font-weight:900;text-decoration:none;display:inline-flex}.header-link:hover,.header-link[aria-current=page]{border-color:var(--rule-lit);color:var(--paper);background:var(--ink-raised)}main{width:min(100%,68rem);padding:clamp(1.15rem, 4vw, 2.8rem) max(1rem, env(safe-area-inset-right,0px)) max(5rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));margin:0 auto}.legal-footer{width:min(100%,68rem);padding:1.3rem max(1rem, env(safe-area-inset-right,0px)) max(2rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));border-top:1px solid var(--rule);color:#6b675f;margin:0 auto;font-size:.64rem;line-height:1.55}h1,h2,h3,p{margin-top:0}h1{font-family:var(--display);letter-spacing:.005em;font-weight:500}h2{font-family:var(--heading);letter-spacing:-.008em;font-size:clamp(1.7rem,5.5vw,2.5rem);font-weight:720}h1,h2,h3{color:var(--paper);margin-bottom:0;line-height:1}h1{max-width:18ch;font-size:clamp(2.6rem,10vw,5.2rem);line-height:.94}h3{text-transform:uppercase;font-size:.95rem;font-weight:850;line-height:1.2}p{line-height:1.6}i,em{font-style:italic}.eyebrow,.field-label{color:var(--paper-faint);letter-spacing:.19em;text-transform:uppercase;margin:0 0 .6rem;font-size:.63rem;font-weight:850;line-height:1.4}.lede{max-width:38rem;color:var(--paper-dim);margin:1.3rem 0 0;font-size:clamp(1rem,3.8vw,1.16rem);line-height:1.68}.home-entry{isolation:isolate;border:1px solid var(--rule);background:var(--ink-well);align-items:center;min-height:min(42rem,100dvh - 6rem);padding:clamp(1.5rem,5vw,3.5rem) clamp(1rem,5vw,4rem);display:grid;position:relative;overflow:hidden;box-shadow:0 1.8rem 5rem #00000057}.home-entry-copy{z-index:2;width:min(100%,38rem);position:relative}.home-entry-copy h1{text-shadow:0 .12rem 1.4rem #000000e0;text-wrap:balance;max-width:48rem;font-size:clamp(3rem,11vw,5.5rem);line-height:.96}.home-entry-copy h1 em{color:var(--ember);text-shadow:0 0 2.5rem #d9a05b3d;font-style:normal}.home-entry-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;max-width:38rem;margin-top:1.6rem;display:grid}.home-entry-actions>button:first-child{grid-column:1/-1}.home-entry-actions button{min-height:3.3rem}.home-entry-form{border-top:2px solid var(--paper);max-width:38rem;margin-top:.8rem}.home-entry-facts{color:var(--paper-dim);margin:1rem 0 0;font-size:.78rem;line-height:1.6}.home-entry-trust{max-width:38rem;color:var(--paper-dim);text-shadow:0 .1rem .8rem #000000e6;margin:1rem 0 0;font-size:.8rem;line-height:1.55}.home-guide{padding:clamp(2rem,5vw,3.5rem) clamp(.25rem,4vw,3rem) 0}.home-guide-heading{max-width:42rem}.home-guide h2{font-family:var(--heading);font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.1}.home-guide p{color:var(--paper-dim);line-height:1.65}.home-guide-steps{gap:1.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.home-guide-steps li{border-top:2px solid var(--paper);padding-top:1rem}.home-guide-number{color:var(--paper-dim);font-family:var(--heading);font-size:1.5rem}.home-guide h3{margin:.5rem 0;font-family:inherit;font-size:1rem}.home-guide-steps p,.home-guide-notes p{margin:.5rem 0 0;font-size:.9rem}.home-guide-notes{border-top:1px solid var(--rule);gap:1.25rem 2.5rem;margin-top:2rem;padding-top:1.25rem;display:grid}.home-guide-link{align-items:center;gap:.75rem;min-height:3.5rem;margin-top:1rem;display:inline-flex}.campaign-introduction{max-width:48rem;color:var(--paper-dim);margin:0 0 1.5rem;line-height:1.65}.codex-connection{border:1px solid var(--rule-lit);border-top:2px solid var(--ember);background:radial-gradient(ellipse 70% 180% at 0 100%, #d9a05b1f, transparent 72%), var(--ink-well);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:clamp(1rem,4vw,1.4rem);display:grid}.codex-connection-copy{min-width:0}.codex-connection-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.75rem 1rem;display:flex}.codex-connection-heading h2{margin-top:.2rem;font-size:clamp(1.8rem,6vw,2.5rem)}.codex-connection-copy>p{max-width:45rem;color:var(--paper-dim);margin:.65rem 0 0;font-size:.78rem;line-height:1.6}.codex-connection-state{border:1px solid var(--rule-lit);min-height:2rem;color:var(--paper-dim);background:var(--ink-surface);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.4rem;padding:.4rem .55rem;font-size:.62rem;font-weight:900;display:inline-flex}.codex-connection-state i{background:var(--paper-faint);border-radius:50%;width:.45rem;height:.45rem}.codex-connection[data-connection-status=pairing] .codex-connection-state,.codex-connection[data-connection-status=connected] .codex-connection-state{border-color:var(--ember-deep);color:var(--ember)}.codex-connection[data-connection-status=pairing] .codex-connection-state i,.codex-connection[data-connection-status=connected] .codex-connection-state i{background:var(--ember)}.codex-connection[data-connection-status=revoked]{border-top-color:var(--blood)}.codex-connection[data-connection-status=revoked] .codex-connection-state{border-color:var(--blood-deep);color:#f0b4ac}.codex-connection[data-connection-status=revoked] .codex-connection-state i{background:var(--blood)}.codex-connection .roll-save-feedback{margin-top:.7rem}.codex-connection-actions{flex:none;display:flex}.codex-connection-actions button{min-width:10rem}.campaign-self-start{border:1px solid var(--rule-lit);background:var(--ink-well);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:clamp(1rem,4vw,1.4rem);display:flex}.campaign-self-start>div{max-width:42rem}.campaign-self-start h2{margin:.2rem 0 0;font-size:clamp(1.6rem,6vw,2.2rem);line-height:1}.campaign-self-start p:not(.eyebrow){color:var(--paper-dim);margin:.55rem 0 0;font-size:.75rem;line-height:1.55}.campaign-self-start>button{flex:none}.campaign-self-continue{border-color:var(--ember-deep);background:radial-gradient(ellipse 70% 170% at 0 100%, #d9a05b1f, transparent 72%), var(--ink-well)}.generated-image-reviews{border:1px solid var(--rule-lit);border-top:2px solid var(--paper);background:var(--ink-well);gap:1rem;margin:0 0 1.25rem;padding:clamp(1rem,4vw,1.4rem);display:grid}.generated-image-reviews>header{justify-content:space-between;align-items:start;gap:1rem;min-width:0;display:flex}.generated-image-reviews>header h2{margin:.2rem 0 0;font-size:clamp(1.7rem,6vw,2.5rem);line-height:1}.generated-image-reviews>header p:not(.eyebrow){max-width:46rem;color:var(--paper-dim);margin:.5rem 0 0;font-size:.76rem;line-height:1.55}.generated-image-reviews>header>span{border:1px solid var(--rule);color:var(--paper-faint);letter-spacing:.08em;text-transform:uppercase;flex:none;padding:.25rem .45rem;font-size:.64rem;font-weight:900}.generated-image-review-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;display:grid}.generated-image-review-card{border:1px solid var(--rule);background:var(--ink-surface);gap:.75rem;min-width:0;padding:.8rem;display:grid}.generated-image-review-meta h3{margin:.15rem 0 0;font-size:clamp(1.4rem,5vw,1.9rem)}.generated-image-review-meta p:not(.eyebrow){color:var(--paper-dim);margin:.35rem 0 0;font-size:.72rem;line-height:1.5}.generated-image-preview{border:1px solid var(--rule-lit);background:#f3efe4;margin:0;display:grid}.generated-image-preview img{object-fit:contain;background:#f3efe4;width:100%;max-height:min(60vh,38rem);display:block}.generated-image-preview figcaption{background:var(--ink-well);color:var(--paper-dim);border-top:1px solid #292722;padding:.55rem .65rem;font-size:.68rem;line-height:1.45}.generated-image-loading{color:#292722;place-items:center;min-height:14rem;padding:1rem;font-size:.72rem;font-weight:800;display:grid}.generated-image-review-actions{gap:.65rem;display:grid}.generated-image-review-actions label{gap:.35rem;display:grid}.generated-image-review-actions label>span{color:var(--paper-dim);font-size:.68rem;font-weight:800}.generated-image-review-actions textarea{resize:vertical;width:100%}.generated-image-review-actions>div{flex-wrap:wrap;gap:.55rem;display:flex}.generated-image-review-actions button{flex:10rem;min-height:2.75rem}.generated-image-approved{border-left:3px solid var(--ember);background:var(--ink-well);color:var(--paper-dim);margin:0;padding:.65rem;font-size:.72rem}.portrait-decision{gap:.8rem;display:grid}.portrait-decision .generated-image-preview img{max-height:min(52dvh,42rem)}.portrait-focused-preview{background:#f3efe4;overflow:hidden}.portrait-focus-frame{background:#f3efe4;height:clamp(13rem,44dvh,34rem);position:relative;overflow:hidden}.portrait-focused-preview>.generated-image-loading{min-height:clamp(13rem,44dvh,34rem)}.portrait-decision .portrait-focus-frame>.portrait-focus-image{object-fit:cover;object-position:50% 24%;width:100%;height:100%;max-height:none}.portrait-full-art{z-index:2;position:absolute;bottom:.55rem;right:.55rem}.portrait-full-art>summary{z-index:2;width:fit-content;color:var(--paper);cursor:pointer;-webkit-backdrop-filter:blur(.2rem);backdrop-filter:blur(.2rem);background:#050504e6;border:1px solid #292722;margin-left:auto;padding:.45rem .6rem;font-size:.68rem;font-weight:800;position:relative}.portrait-full-art-panel{inset:max(4.8rem, calc(env(safe-area-inset-top,0px) + 4.1rem)) max(.75rem, env(safe-area-inset-right,0px)) max(.75rem, env(safe-area-inset-bottom,0px)) max(.75rem, env(safe-area-inset-left,0px));z-index:80;border:1px solid var(--rule-lit);background:#050504f5;place-items:center;padding:2.8rem .65rem .65rem;display:grid;position:fixed}.portrait-decision .portrait-full-art-panel img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 9rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));object-fit:contain}.portrait-full-art[open]{z-index:81}.portrait-full-art[open]>summary{top:max(5.25rem, calc(env(safe-area-inset-top,0px) + 4.55rem));right:max(1.35rem, calc(env(safe-area-inset-right,0px) + .6rem));z-index:82;position:fixed}.portrait-full-art-close-label,.portrait-full-art[open] .portrait-full-art-open-label{display:none}.portrait-full-art[open] .portrait-full-art-close-label{display:inline}.portrait-note>label{gap:.35rem;padding-top:.55rem;display:grid}.portrait-note>label>span{color:var(--paper-dim);font-size:.68rem;font-weight:800}.portrait-note textarea{resize:vertical;width:100%}.portrait-decision-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.portrait-decision-actions button{min-height:3rem}.portrait-decision-waiting,.portrait-player-required{border-left:3px solid var(--ember);background:var(--ink-well);color:var(--paper-dim);gap:.3rem;margin:0;padding:.85rem;line-height:1.5;display:grid}.portrait-decision-waiting p,.portrait-player-required p{margin:0}.portrait-player-required button{width:100%;min-height:3rem;margin-top:.35rem}.completed-character-portrait{width:100%;margin:0}.sheet-header.completed-sheet-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(.7rem,2.5vw,1.2rem);margin-bottom:.85rem;padding-bottom:.85rem;display:grid}.sheet-header.completed-sheet-header.with-portrait{grid-template-columns:clamp(6.5rem,14vw,9rem) minmax(0,1fr) auto}.completed-sheet-header .completed-character-portrait,.completed-sheet-header .generated-image-preview{min-width:0}.completed-sheet-header .generated-image-preview{border-color:var(--paper);background:#f3efe4;overflow:hidden}.completed-sheet-header .generated-image-preview img{object-fit:cover;object-position:50% 24%;width:100%;height:clamp(7rem,17vw,10rem);max-height:none}.completed-sheet-header .generated-image-loading{min-height:clamp(7rem,17vw,10rem)}.completed-sheet-identity{min-width:0}.completed-sheet-header h1{font-size:clamp(2.5rem,8vw,4.6rem);line-height:.88}.completed-sheet-stats{margin-bottom:.85rem}.completed-sheet-options{width:fit-content;margin:0 0 .9rem auto}@media (height<=44rem){.portrait-decision{gap:.55rem}.portrait-decision .generated-image-preview:not(.portrait-focused-preview) img{max-height:min(38dvh,17rem)}.portrait-focus-frame{height:clamp(9.5rem,30dvh,12rem)}.portrait-focused-preview>.generated-image-loading{min-height:clamp(9.5rem,30dvh,12rem)}.portrait-decision-actions button{min-height:2.75rem}}@media (width>=48rem){.portrait-decision{grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);align-items:start}.portrait-decision .generated-image-preview{grid-row:1/span 4}.portrait-decision .generated-image-preview img{max-height:min(66dvh,38rem)}}.generated-image-history{border-top:1px solid var(--rule);color:var(--paper-dim)}.generated-image-history summary{cursor:pointer;min-height:2.75rem;padding:.75rem 0;font-size:.7rem;font-weight:900}.generated-image-history ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.generated-image-history li{border:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem;font-size:.7rem;display:flex}.generated-image-history li span{color:var(--paper-faint)}.campaign-creation-roster{border:1px solid var(--rule);background:var(--ink-well);gap:.85rem;margin-bottom:1.25rem;padding:clamp(1rem,4vw,1.4rem);display:grid}.campaign-creation-roster h2{margin:.2rem 0 0;font-size:clamp(1.45rem,5vw,2rem)}.campaign-creation-roster p:not(.eyebrow){color:var(--paper-dim);margin:.4rem 0 0;font-size:.72rem}.campaign-creation-roster ul{margin:0;padding:0;list-style:none;display:grid}.campaign-creation-roster li{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.75rem 0;display:flex}.campaign-creation-roster li>div{gap:.2rem;min-width:0;display:grid}.campaign-creation-roster li span{color:var(--paper-dim);font-size:.68rem;line-height:1.4}.home-entry-visual{z-index:0;background:linear-gradient(180deg, #05050433, #05050494), var(--ink-well);position:absolute;inset:0;overflow:hidden}.home-entry-visual picture,.home-entry-visual img{width:100%;height:100%;position:absolute;inset:0}.home-entry-visual img{object-fit:cover;object-position:56% center;filter:saturate(.88)contrast(1.04)}.home-entry-visual:after{content:"";pointer-events:none;background:linear-gradient(#050504e0 0%,#050504ad 52%,#0505047a 100%),linear-gradient(90deg,#050504c7,#05050414);position:absolute;inset:0}.check-row{border:1px solid var(--rule);min-height:3rem;color:var(--paper-dim);align-items:center;gap:.7rem;padding:.7rem;font-size:.78rem;display:flex}.check-row input{width:1.15rem;height:1.15rem;accent-color:var(--ember)}.join-page{align-content:center;width:min(100%,42rem);min-height:calc(100dvh - 11rem);margin:0 auto;padding:clamp(2rem,9vw,6rem) 0;display:grid}.join-page h1{font-size:clamp(3rem,13vw,6rem);line-height:.88}.join-claim-form{border-top:2px solid var(--paper);margin-top:1.5rem}.join-expiry{color:var(--paper-faint);margin:.8rem 0 0;font-size:.78rem}.join-confirmed button{width:fit-content;min-height:3.3rem;margin-top:1.5rem}.device-handoff-page{gap:1rem;width:min(100%,38rem)}.device-handoff-page h1{max-width:11ch}.device-handoff-explanation{border-left:2px solid var(--ember);max-width:34rem;color:var(--paper-dim);background:#ffffff06;margin:0;padding:1rem;line-height:1.55}.device-handoff-page>button,.device-handoff-page>.button{width:fit-content;min-height:3.25rem}.hero{align-content:center;min-height:calc(100dvh - 9rem);padding:2vh 0 8vh;display:grid}.hero-grid{align-items:end;gap:clamp(2rem,8vw,5rem);display:grid}.hero-copy h1{font-size:clamp(3.6rem,16vw,7.5rem);line-height:.86}.home-goals{max-width:38rem;color:var(--paper-dim);gap:.7rem;margin:1.5rem 0 0;padding:0;font-size:.82rem;line-height:1.55;list-style:none;display:grid}.home-goals li{border-left:2px solid var(--rule-lit);padding-left:1rem}.home-goals strong{color:var(--paper)}.marginalia{object-fit:contain;opacity:.68;filter:grayscale()contrast(1.06);pointer-events:none;-webkit-user-select:none;user-select:none;width:6rem;height:auto;display:block}.hero-marginalia{width:clamp(4.5rem,22vw,6rem);margin:.9rem auto -.7rem;transform:rotate(-2deg)}.campaign-marginalia{opacity:.5;width:clamp(4.25rem,18vw,5.5rem);margin:1.5rem auto -1.7rem;transform:rotate(5deg)}.sheet-marginalia{opacity:.58;width:clamp(5rem,20vw,6.5rem);margin:1.7rem auto -1.8rem}.hero-copy h1 em{color:var(--ember);text-shadow:0 0 2.5rem #d9a05b47;font-style:normal}.home-help-link{color:var(--paper-dim);letter-spacing:.04em;text-align:center;text-underline-offset:.2rem;font-size:.7rem;font-weight:800}.home-help-link:hover{color:var(--paper)}.home-join-note{border-top:1px solid var(--rule);padding-top:.85rem}.home-join-note h3{letter-spacing:.12em;margin-bottom:.25rem;font-size:.68rem}.home-join-note p{color:var(--paper-faint);margin:0 0 .45rem;font-size:.7rem;line-height:1.5}.home-join-note .home-help-link{text-align:left}.help-page{padding-top:clamp(.5rem,2vw,1.5rem)}.help-hero{max-width:52rem;padding:clamp(1rem,5vw,3rem) 0 clamp(2rem,7vw,4.5rem)}.help-hero h1{font-size:clamp(3rem,12vw,6.7rem);line-height:.88}.help-hero h1 em{color:var(--ember);text-shadow:0 0 2.5rem #d9a05b40;font-style:normal}.help-primary-actions{max-width:38rem;margin-top:1.8rem}.help-contents{border:1px solid var(--rule-lit);grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:clamp(1.5rem,5vw,2.8rem);display:grid}.help-contents a{border-right:1px solid var(--rule-lit);min-height:2.8rem;color:var(--paper-dim);letter-spacing:.12em;text-align:center;text-transform:uppercase;place-items:center;padding:.55rem .3rem;font-size:.58rem;font-weight:900;text-decoration:none;display:grid}.help-contents a:last-child{border-right:0}.help-contents a:hover,.help-contents a:focus-visible{color:var(--ink);background:var(--paper)}.help-grid{gap:1rem;display:grid}.help-section,.assistant-mode{scroll-margin-top:1.2rem}.help-section h2,.assistant-mode h2{margin-bottom:1rem;font-size:clamp(2rem,7vw,3.2rem);line-height:.95}.help-section>p:not(.eyebrow),.assistant-mode>p:not(.eyebrow){color:var(--paper-dim);font-size:.86rem;line-height:1.7}.help-steps{margin:1.35rem 0 0;padding:0;list-style:none;display:grid}.help-step{border-top:1px solid var(--rule);grid-template-columns:2.3rem minmax(0,1fr);gap:.8rem;padding:1rem 0;display:grid}.help-step>span{color:var(--ember);font-family:var(--heading);font-size:1.05rem;font-weight:700}.help-step strong{color:var(--paper);font-size:.78rem;display:block}.help-step p{color:var(--paper-faint);margin:.25rem 0 0;font-size:.76rem;line-height:1.6}.help-note{border:1px dashed var(--rule-lit);color:var(--paper-dim);margin-top:1rem;padding:.9rem;font-size:.75rem;line-height:1.6}.help-note strong{color:var(--paper);margin-bottom:.2rem;display:block}.help-note code{color:var(--ember);font-weight:900}.table-principles{border-top:1px solid var(--rule);gap:0;margin-top:1.4rem;display:grid}.table-principles>div{border-bottom:1px solid var(--rule);padding:1rem 0}.table-principles strong{color:var(--paper);font-size:.78rem}.table-principles p{color:var(--paper-faint);margin:.3rem 0 0;font-size:.76rem;line-height:1.6}.privacy-list{color:var(--paper-dim);gap:.7rem;margin:1.2rem 0 0;padding-left:1.2rem;font-size:.78rem;line-height:1.65;display:grid}.privacy-list li::marker{color:var(--ember)}.assistant-mode{border:1px solid var(--rule);border-left:3px solid var(--ember-deep);background:var(--ink-surface);padding:clamp(1.2rem,4vw,2rem)}.panel,.card,.sheet-section,.prompt-card,.result-panel,.talent-card{border:1px solid var(--rule);background:var(--ink-surface);box-shadow:0 .9rem 2.4rem var(--shadow);border-radius:0}.panel{padding:clamp(1.05rem,4vw,1.6rem)}.table-lobby{border-top:2px solid var(--paper);gap:1rem;margin-bottom:1.25rem;display:grid}.table-lobby-heading,.table-roster-heading,.table-roster li,.table-lobby-actions{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.table-lobby-heading{align-items:start}.table-lobby-heading h2{font-size:clamp(2rem,7vw,3.2rem);line-height:.95}.table-lobby-heading .hint{max-width:48rem}.lobby-status{border:1px solid var(--rule-lit);color:var(--paper-faint);letter-spacing:.12em;text-transform:uppercase;flex:none;padding:.35rem .5rem;font-size:.58rem;font-weight:900}.lobby-status.open{border-color:var(--ember-deep);color:var(--ember)}.table-lobby-actions{flex-wrap:wrap;justify-content:start}.table-invite-display{border:1px solid var(--ember-deep);background:radial-gradient(circle at 25% 50%, #d9a05b14, transparent 35%), var(--ink-well);align-items:center;gap:clamp(1rem,4vw,2rem);padding:clamp(.75rem,3vw,1.4rem);display:grid}.table-invite-qr{width:min(100%,28rem);min-height:12rem;color:var(--ink);background:#f4f0e6;margin:0 auto;padding:clamp(.45rem,2vw,.8rem)}.table-invite-qr svg{width:100%;height:auto;display:block}.table-invite-share{min-width:0}.table-invite-share>p:not(.eyebrow){max-width:34rem;color:var(--paper-dim);font-size:.78rem}.table-invite-code{overflow-wrap:anywhere;font-family:var(--heading);letter-spacing:clamp(.04em,.8vw,.12em);white-space:nowrap;font-size:clamp(1.55rem,7.5vw,4.2rem);line-height:1;display:block}.table-invite-share .actions{flex-wrap:wrap}.lobby-recovery{border:1px dashed var(--rule-lit);justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem;display:flex}.lobby-recovery p{color:var(--paper-dim);margin:0;font-size:.74rem}.table-roster{border-top:1px solid var(--rule)}.table-roster-heading{padding:.9rem 0}.table-roster-heading h3{color:var(--paper);font-size:.72rem}.table-roster-heading span,.table-roster li small{color:var(--paper-faint);font-size:.68rem}.table-roster ul{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.table-roster li{border-bottom:1px solid var(--rule);min-height:3.6rem;padding:.65rem 0}.table-roster li strong,.table-roster li small{display:block}.table-roster li.revoked{opacity:.5}button.danger{border-color:var(--blood);color:#f0b4ac}.campaign-form,.sheet-editor{border-top:2px solid var(--paper);position:relative}.panel-heading{border-bottom:1px solid var(--rule);margin:-.15rem -.15rem .35rem;padding-bottom:.9rem}.form-grid{gap:1rem;display:grid}.form-row{gap:.4rem;display:grid}.form-row>span,.form-row label{color:var(--paper-dim);letter-spacing:.11em;text-transform:uppercase;font-size:.66rem;font-style:normal;font-weight:850}.form-row i,.field-label i{color:var(--paper-faint);letter-spacing:.04em;text-transform:none;font-weight:600}.form-row small{color:var(--paper-faint);font-size:.68rem}.hint,.muted{color:var(--paper-faint)}.hint{margin:.3rem 0 0;font-size:.75rem;line-height:1.55}input,select,textarea{border:1px solid var(--rule-lit);width:100%;min-height:3rem;color:var(--paper);background:var(--ink-well);border-radius:0;outline:none;padding:.72rem .8rem}textarea{resize:vertical;min-height:7rem;line-height:1.55}input::placeholder,textarea::placeholder{color:#605c55}input:focus,select:focus,textarea:focus{border-color:var(--ember);box-shadow:inset 0 0 0 1px var(--ember)}button,.button{border:1px solid var(--paper);letter-spacing:.11em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:.4rem;min-height:3rem;padding:.7rem 1rem;font-size:.72rem;font-weight:900;text-decoration:none;transition:box-shadow .12s,transform .12s;display:inline-flex;box-shadow:.22rem .22rem #000}button:hover,.button:hover{color:var(--ink);background:var(--paper);box-shadow:.22rem .22rem 0 var(--ember-deep)}button:active,.button:active{box-shadow:none;transform:translate(.22rem,.22rem)}button:disabled,.button:disabled{border-color:var(--rule-lit);color:var(--paper-faint);opacity:.65;box-shadow:none;cursor:wait;background:0 0}button.ghost:disabled,.button.ghost:disabled{border-color:var(--rule);opacity:.55}button.ghost,.button.ghost{border-color:var(--rule-lit);color:var(--paper);box-shadow:none;background:0 0}button.ghost:hover,.button.ghost:hover{border-color:var(--paper);color:var(--paper);background:var(--ink-raised);box-shadow:none}.small{min-height:2.65rem;padding:.52rem .72rem;font-size:.62rem}.wide{width:100%}.actions{flex-wrap:wrap;gap:.65rem;margin-top:1.2rem;display:flex}.actions>*{flex:9rem}.trust-line{color:var(--paper-faint);align-items:baseline;gap:.55rem;margin:.2rem 0 0;font-size:.7rem;display:flex}.trust-line span{color:var(--ember)}.dashboard-header,.sheet-header{border-bottom:2px solid var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.6rem;padding-bottom:1.1rem;display:flex}.dashboard-header h1,.sheet-header h1{font-size:clamp(2.7rem,10vw,4.8rem)}.dashboard-meta,.sheet-meta{color:var(--paper-dim);flex-wrap:wrap;gap:.4rem 1rem;margin:.9rem 0 0;font-size:.7rem;display:flex}.dashboard-meta span,.sheet-meta span{border-right:1px solid var(--rule);padding-right:1rem}.dashboard-meta span:last-child,.sheet-meta span:last-child{border-right:0;padding-right:0}.live-status{color:var(--ember)}.character-grid{gap:.85rem;display:grid}.card{padding:1.05rem;position:relative;overflow:hidden}.card-index{color:#f4f1e812;font-family:var(--display);pointer-events:none;margin:0;font-size:5.6rem;font-weight:500;line-height:1;position:absolute;top:-.7rem;right:.35rem}.card-top,.wizard-heading{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.card p{color:var(--paper-dim);margin:.45rem 0 0;font-size:.75rem}.hp-readout{z-index:1;white-space:nowrap;font-family:var(--heading);font-size:1.05rem;font-weight:700}.empty-state{border:1px dashed var(--rule-lit);text-align:center;padding:clamp(1.5rem,6vw,3rem)}.empty-state p:not(.eyebrow){max-width:34rem;color:var(--paper-dim);margin:.8rem auto 1.3rem;font-size:.84rem}.empty-state h2{max-width:22ch;margin:0 auto}.host-more{border-top:1px solid var(--rule);margin-top:1.25rem}.host-more>summary{width:fit-content;min-height:2.75rem;color:var(--paper-faint);cursor:pointer;align-items:center;gap:.55rem;padding:.65rem 0;list-style:none;display:flex}.host-more>summary::-webkit-details-marker{display:none}.host-more>summary:hover{color:var(--paper)}.host-more>summary:focus-visible{outline:3px solid var(--ember);outline-offset:3px}.host-more>summary span{letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:900}.host-more>summary small{color:var(--paper-faint);font-size:.64rem;line-height:1.4}.host-more>summary span:after{content:" +";color:var(--ember)}.host-more[open]>summary span:after{content:" −"}.host-more-body{border:1px solid var(--rule-lit);background:var(--ink-well);margin-bottom:1.25rem;padding:clamp(1rem,4vw,1.4rem)}.host-more-body>h2{margin:.25rem 0 0;font-size:clamp(1.8rem,6vw,2.4rem)}.host-more-body>p:not(.eyebrow){max-width:46rem;color:var(--paper-dim);margin:.6rem 0 1rem;font-size:.76rem;line-height:1.6}.manual-host-tools{gap:.9rem;display:grid}.manual-host-tools-heading{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:end;gap:1rem;padding-bottom:.9rem;display:flex}.manual-host-tools-heading h2{margin:.2rem 0 0;font-size:clamp(1.8rem,6vw,2.6rem)}.manual-host-tools-heading p:not(.eyebrow){color:var(--paper-dim);margin:.45rem 0 0;font-size:.72rem;line-height:1.55}.secure-link{border:1px solid var(--rule-lit);border-left:3px solid var(--paper);background:repeating-linear-gradient(135deg, #f4f1e807 0, #f4f1e807 2px, transparent 2px, transparent 8px), var(--ink-well);margin:0 0 1.3rem;padding:1.05rem}.secure-link p:not(.eyebrow){color:var(--paper-dim);margin:.45rem 0 .8rem;font-size:.75rem}.host-table-offer{margin-top:1.1rem}.host-table-offer-dismiss{margin-top:.7rem}.copy-row{gap:.5rem;display:flex}.copy-row input{min-width:0;font-size:.7rem}.copy-row button{flex:none}.wizard-shell{width:min(100%,48rem);margin:0 auto}.progress{grid-template-columns:repeat(4,1fr);gap:2px;margin-bottom:1.2rem;display:grid}.progress span{background:var(--rule);height:.3rem}.progress span.active{background:var(--paper)}.wizard-heading{min-height:2.7rem}.prompt{align-items:flex-start;gap:.7rem;margin-bottom:.9rem;display:flex}.speaker{width:2.4rem;height:2.4rem;color:var(--ink);background:var(--paper);flex:0 0 2.4rem;place-items:center;font-size:1.1rem;line-height:1;display:grid}.prompt-card{border-left:3px solid var(--paper);box-shadow:none;padding:.8rem .95rem}.prompt-card p{color:var(--paper);margin:0;font-size:.82rem;line-height:1.6}.wizard-form{border:1px solid var(--rule);background:var(--ink-surface);padding:clamp(1rem,4vw,1.5rem)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.stat-entry{position:relative}.stat-entry input{font-family:var(--heading);padding-right:3rem;font-size:1.15rem;font-weight:750}.stat-entry output{font-family:var(--heading);font-size:1.05rem;font-weight:750;position:absolute;bottom:.8rem;right:.75rem}.choice-grid,.compact-grid,.sheet-grid,.talent-grid{gap:.75rem;display:grid}.sheet-grid{align-items:start}.result-panel{border-left:3px solid var(--paper);box-shadow:none;padding:.95rem}.result-panel h3{font-family:var(--heading);text-transform:none;font-size:1.35rem;font-weight:720}.option-list{border:1px solid var(--rule);gap:0;display:grid}.check-option{border-bottom:1px solid var(--rule);min-height:3rem;color:var(--paper);background:var(--ink-well);align-items:center;gap:.7rem;padding:.62rem .75rem;font-size:.78rem;display:flex}.check-option:last-child{border-bottom:0}.check-option:hover{background:var(--ink-raised)}.check-option input{width:1.15rem;min-height:1.15rem;accent-color:var(--paper);margin:0}.talent-card{box-shadow:none;padding:.9rem}.talent-outcome{border-left:3px solid var(--rule-lit);min-height:2.4rem;color:var(--paper-dim);background:var(--ink-well);margin:.6rem 0;padding:.6rem .72rem;font-size:.74rem;line-height:1.5}.divider{background:var(--rule);height:1px;margin:.4rem 0}.review{border-top:1px solid var(--rule);display:grid}.review p{border-bottom:1px solid var(--rule);justify-content:space-between;gap:1rem;margin:0;padding:.65rem 0;font-size:.76rem;display:flex}.review span{color:var(--paper-faint);letter-spacing:.11em;text-transform:uppercase;align-self:center;font-size:.63rem;font-weight:850}.sheet-editor{margin-bottom:1.1rem}.gear-inventory-editor{border:1px solid var(--rule-lit);gap:.7rem;min-width:0;padding:.75rem;display:grid}.gear-editor-heading,.gear-editor-heading>div{justify-content:space-between;align-items:center;gap:.65rem;min-width:0;display:flex}.gear-editor-heading h3{color:var(--paper);font-family:var(--heading);margin:0;font-size:.9rem}.gear-editor-heading span{color:var(--paper-dim);font-size:.64rem}.gear-editor-heading span.error{color:#e6a28f}.gear-editor-rows{gap:.5rem;min-width:0;display:grid}.gear-editor-row{border:1px solid var(--rule);background:#03040540;grid-template-columns:minmax(8rem,1.2fr) minmax(4.5rem,.35fr) minmax(4.5rem,.35fr) minmax(8rem,1fr) auto;align-items:end;gap:.5rem;min-width:0;padding:.55rem;display:grid}.gear-inventory-editor>.hint{margin:0}.draft-sheet{border:1px solid var(--rule-lit);background:var(--ink-surface);margin-bottom:1.6rem;padding:clamp(.9rem,3vw,1.35rem)}.draft-phase{border:1px solid var(--ember-deep);color:var(--ember);letter-spacing:.13em;text-transform:uppercase;padding:.55rem .7rem;font-size:.66rem}.draft-guidance{border-left:3px solid var(--ember);background:var(--ink-well);margin-bottom:.9rem;padding:.9rem 1rem}.draft-guidance p:last-child{color:var(--paper-dim);margin:.35rem 0 0;line-height:1.55}.vitals{grid-template-columns:1.35fr 1fr 1fr;gap:.65rem;margin-bottom:.9rem;display:grid}.vital{border:1px solid var(--rule-lit);background:var(--ink-surface);min-width:0;padding:.85rem}.vital small{color:var(--paper-faint);letter-spacing:.15em;text-overflow:ellipsis;text-transform:uppercase;font-size:.58rem;font-weight:850;display:block;overflow:hidden}.vital strong{font-family:var(--heading);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;margin-top:.25rem;font-size:clamp(1.2rem,6vw,2.2rem);font-weight:700;line-height:1.1;display:block}.hp-vital{border-color:var(--ember-deep);background:radial-gradient(ellipse 90% 70% at 50% 120%, #d9a05b1c, transparent), var(--ink-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .45rem;display:grid}.hp-vital>small,.hp-vital>.dying-banner,.hp-vital>.hp-amount-disclosure{grid-column:1/-1}.hp-vital strong{color:var(--ember)}.hp-controls{gap:.35rem;margin:0;display:flex}.hp-controls button{width:2.5rem;min-height:2.35rem;padding:.3rem;font-size:.9rem}.hp-amount-disclosure{margin-top:.25rem}.hp-amount-disclosure>summary{width:fit-content;min-height:2.4rem;color:var(--paper-dim);cursor:pointer;letter-spacing:.06em;align-items:center;font-size:.62rem;font-weight:850;display:flex}.hp-amount-disclosure>summary:hover{color:var(--paper)}.hp-vital.dying{border-color:var(--ember);box-shadow:inset 0 0 0 1px #d9a05b40}.dying-banner{border:1px solid var(--ember-deep);color:var(--ember);letter-spacing:.02em;background:#d9a05b17;margin:.5rem 0 0;padding:.42rem .5rem;font-size:.7rem;font-weight:800;line-height:1.45}.hp-amount-entry{gap:.4rem;margin-top:.6rem;display:grid}.hp-amount-entry input{min-height:2.35rem}.hp-amount-actions{gap:.35rem;display:flex}.hp-amount-actions button{flex:1;min-height:2.35rem;font-size:.72rem}.live-play{border:1px solid var(--rule-lit);background:var(--ink-surface);gap:.85rem;margin-bottom:.9rem;padding:clamp(.7rem,2.5vw,1.05rem);display:grid}.live-play-actions{gap:.55rem;display:grid}.live-play-actions>button{min-height:3rem}.vital-section-heading{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.vital-section-heading h3{margin:0;font-size:.95rem}.vital-conditions{gap:.5rem;display:grid}.condition-chip{align-items:center;gap:.3rem;display:inline-flex}.chip-remove{min-height:0;color:var(--paper-faint);background:0 0;border:0;padding:0 .25rem;font-size:.85rem;line-height:1}.chip-remove:hover{color:var(--ember)}.condition-picker{flex-wrap:wrap;gap:.35rem;display:flex}.dying-panel{border:1px solid var(--ember-deep);background:#d9a05b0f;gap:.55rem;padding:.7rem;display:grid}.dying-panel-heading h3{margin:.15rem 0 0;font-size:1.05rem}.dying-consequence,.dying-tick-receipt{color:var(--paper-dim);margin:0;font-size:.78rem;line-height:1.55}.dying-tick-receipt{color:var(--ember);font-weight:800}.live-play-roll{gap:.45rem;display:grid}.live-play-roll>button{min-height:3.2rem}.live-play-entry{gap:.45rem;margin-top:.4rem;display:grid}.rest-confirm{border:1px solid var(--rule-lit);background:var(--ink-well);gap:.5rem;padding:.7rem;display:grid}.rest-consequences{color:var(--paper-dim);margin:0;padding-left:1.1rem;font-size:.78rem;line-height:1.6}.rest-interrupted{align-items:center;gap:.45rem;font-size:.8rem;display:flex}.rest-check-actions{gap:.4rem;display:flex}.rest-check-actions button{flex:1;min-height:2.6rem}.rest-confirm>button{min-height:3rem}.luck-token{border:1px solid var(--rule-lit);background:var(--ink-well);gap:.4rem;padding:.6rem;display:grid}.luck-token[data-held=true]{border-color:var(--ember-deep)}.luck-token small{color:var(--paper-faint);letter-spacing:.15em;text-transform:uppercase;font-size:.58rem;font-weight:850;display:block}.luck-token strong{font-family:var(--heading);font-size:1.3rem}.stat-damage-line{color:var(--ember);margin:0;font-size:.72rem;font-weight:800}.sheet-stat.damaged strong{color:var(--ember)}.stat-damage-mark{color:var(--paper-faint);letter-spacing:.06em;text-transform:uppercase;margin-top:.15rem;font-size:.52rem;font-weight:800;display:block}.spell-card.lost .spell-card-name{color:var(--paper-faint);text-decoration:line-through}.spell-card-lost{color:var(--ember);margin:.4rem 0 0;font-size:.74rem;font-weight:800}.advancement-panel{gap:.6rem;margin-bottom:.9rem;display:grid}.advancement-standing{border:1px solid var(--rule-lit);background:var(--ink-well);justify-content:space-between;align-items:center;gap:.6rem;padding:.65rem .75rem;display:flex}.advancement-standing:has(button){border-color:var(--ember-deep)}.advancement-standing strong{font-family:var(--heading);margin-top:.15rem;font-size:1.25rem;line-height:1;display:block}.advancement-standing button{flex:none;min-height:3rem}.advancement-detail{color:var(--paper-dim);margin:.25rem 0 0;font-size:.74rem;line-height:1.5}.advancement-landed{border:1px solid var(--ember-deep);color:var(--paper-dim);background:#d9a05b12;margin:0;padding:.6rem .75rem;font-size:.76rem;line-height:1.55}.level-up-review{gap:.3rem;margin:0 0 .5rem;padding:0;list-style:none;display:grid}.level-up-review li{border-bottom:1px solid var(--rule);padding-bottom:.3rem;font-size:.78rem;line-height:1.5}.level-up-review li:last-child{border-bottom:0}.attack-use{margin-top:.4rem}.attack-list .attack-action{margin-top:.5rem}.attack-action{gap:.45rem;display:grid}.attack-action.live-play-dock{border:1px solid var(--ember-deep);background:#d9a05b12;padding:.6rem}.attack-action strong{font-family:var(--heading);font-size:1rem}.attack-action p{color:var(--paper-dim);margin:0;font-size:.76rem;line-height:1.55}.attribution{color:var(--paper-faint);margin:.4rem 0 0;font-size:.6rem;line-height:1.5}.spell-cast{gap:.4rem;margin:.5rem 0 .7rem;display:grid}.spell-cast-outcome{border:1px solid var(--ember-deep);background:#d9a05b12;padding:.6rem}.spell-cast-outcome strong{font-family:var(--heading);font-size:1rem}.spell-cast-outcome p{color:var(--paper-dim);margin:0;font-size:.78rem;line-height:1.55}.check-result .used-die{color:var(--ember);font-style:normal}.check-result .unused-die{color:var(--paper-faint);font-style:normal;text-decoration:line-through}.check-result .used-die+.unused-die:before,.check-result .unused-die+.used-die:before,.check-result .used-die+.used-die:before{color:var(--paper-faint);content:" · ";text-decoration:none}.sheet-layout{gap:.8rem;display:grid}[data-sheet-section]{scroll-margin-top:1.2rem}.sheet-section{box-shadow:none;overflow:hidden}.section-title{align-items:center;min-height:2.3rem;padding:.45rem .8rem;display:flex}.section-title h3{color:var(--ink);letter-spacing:.16em;font-size:.72rem;font-weight:900}.section-body{padding:.9rem}.ability-roll-controls{border:1px solid var(--rule-lit);background:var(--ink-well);gap:.65rem;margin-bottom:1rem;padding:.75rem;display:grid}.ability-roll-heading,.physical-total-entry{justify-content:space-between;align-items:end;gap:.75rem;display:flex}.ability-roll-heading h4{font-family:var(--heading);text-transform:capitalize;margin:.2rem 0 0;font-size:1.35rem}.audit-badge,.ability-source{border:1px solid var(--rule-lit);color:var(--paper-dim);letter-spacing:.1em;text-transform:uppercase;font-size:.55rem;font-weight:900;display:inline-block}.audit-badge{white-space:nowrap;padding:.38rem .48rem}.in-app-roller-cluster,.physical-roll-cluster{gap:var(--qcard-gap,.55rem);padding:var(--qcard-pad-block,.65rem) var(--qcard-pad-inline,.65rem);border:1px solid var(--rule);background:var(--ink-surface);display:grid}.ability-roll-paths{gap:var(--qcard-gap,.55rem);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.ability-roll-paths>section{align-content:start;min-width:0}.ability-roll-paths>section:not(.is-active-path){display:none}.roll-path-alternative{min-height:2.2rem;box-shadow:none;color:var(--paper-dim);font-family:var(--body,inherit);letter-spacing:.02em;text-transform:none;text-underline-offset:.2em;background:0 0;border:0;justify-self:start;padding:.15rem 0;font-size:.72rem;font-weight:650;text-decoration:underline}.roll-path-alternative:hover,.roll-path-alternative:focus-visible{color:var(--paper);box-shadow:none;background:0 0}.dice-overlay-dim[data-tap-to-continue],.dice-overlay-result[data-tap-to-continue]{pointer-events:auto;cursor:pointer}.dice-overlay-tap-hint{color:var(--paper-faint);letter-spacing:.14em;text-transform:uppercase;margin:.3rem 0 0;font-size:.56rem;font-weight:850}.ability-roll-paths .physical-roll-cluster{grid-template-columns:minmax(0,1fr)}.ability-roll-paths .physical-total-entry{grid-template-columns:minmax(0,1fr);gap:.45rem;display:grid}.ability-roll-paths .physical-total-entry button{white-space:normal;width:100%}.in-app-roller-cluster{background:radial-gradient(ellipse 80% 100% at 50% 120%, #d9a05b1a, transparent), var(--ink-surface);border-color:#6e4829;position:relative;overflow:hidden;box-shadow:inset 0 1px #ebbb7414,0 .45rem 1.5rem #0000002e}.in-app-roll-toolbar,.physical-roll-cluster{align-items:center}.in-app-roll-toolbar{justify-content:space-between;gap:.75rem;display:flex}.in-app-roll-toolbar>div{min-width:0}.in-app-roll-toolbar strong,.physical-roll-copy strong{font-family:var(--heading);font-size:1.05rem}.in-app-roll-hint{color:var(--paper-dim);margin:0;font-size:.8rem;line-height:1.5}.in-app-roll-toolbar p,.physical-roll-copy p,.ability-dice-result p{color:var(--paper-dim);margin:0;font-size:.76rem;line-height:1.45}.in-app-roll-toolbar button{white-space:nowrap;flex:none;min-height:2.65rem}.physical-total-entry label{flex:1}.physical-total-entry label span{color:var(--paper-faint);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.25rem;font-size:.58rem;font-weight:850;display:block}.physical-total-entry input,.physical-total-entry button{min-height:2.75rem}.roll-save-feedback{min-height:1.65rem;color:var(--paper-faint);background:#05050461;border:1px solid #0000;align-items:center;gap:.45rem;padding:.35rem .5rem;font-size:.66rem;font-weight:750;line-height:1.35;display:flex}.roll-save-feedback i{border:1px solid;border-radius:50%;flex:none;width:.48rem;height:.48rem}.roll-save-feedback.pending{color:var(--ember);border-color:#d9a05b47}.roll-save-feedback.pending i{background:currentColor;box-shadow:0 0 .55rem}.roll-save-feedback.saved{color:var(--paper-dim);border-color:#f4f1e838}.roll-save-feedback.saved i{background:currentColor}.roll-save-feedback.error{color:#e6a28f;border-color:#c25b4857}.guided-draft-panel{background:linear-gradient(112deg, #d9a05b0e, transparent 48%), var(--ink-well);border:1px solid #d9a05b57;grid-column:1/-1;gap:.65rem;width:100%;padding:.7rem;display:grid}.guided-draft-panel.complete{color:var(--paper-dim);border-color:var(--rule-lit)}.guided-draft-heading{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.guided-draft-heading strong{font-family:var(--heading);margin-top:.18rem;font-size:1rem;line-height:1.35;display:block}.guided-draft-panel>button{justify-self:end;width:fit-content}.guided-multi-fields,.guided-paired-field{gap:.55rem;display:grid}.guided-multi-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-paired-field{border:1px solid var(--rule);padding:.55rem}.guided-check-list{border:1px solid var(--rule);gap:.35rem;max-height:16rem;padding:.55rem;display:grid;overflow:auto}.guided-check-list legend{color:var(--paper-dim);padding:0 .3rem;font-size:.68rem;font-weight:800}.guided-check-choice{border-bottom:1px solid #f4f1e80f;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.35rem .55rem;min-width:0;display:grid}.guided-check-choice:last-child{border-bottom:0}.guided-check-choice>label{min-width:0;min-height:2rem;color:var(--paper-dim);align-items:center;gap:.45rem;font-size:.72rem;display:flex}.guided-check-choice>label span{overflow-wrap:anywhere}.guided-check-list input{flex:none;width:1rem;min-height:1rem}.guided-check-choice.selected>label{color:var(--paper)}.spell-preview{min-width:0;font-size:.66rem}.spell-preview summary{min-height:2rem;color:var(--paper-dim);cursor:pointer;padding:.42rem .5rem;font-weight:800;list-style-position:inside}.spell-preview summary:hover,.spell-preview summary:focus-visible{color:var(--paper)}.spell-preview[open]{grid-column:1/-1}.spell-preview-body{border-left:2px solid var(--ember);min-width:0;color:var(--paper-dim);background:#0304055c;gap:.5rem;padding:.6rem;display:grid}.spell-preview-body dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin:0;display:grid}.spell-preview-body dl>div{min-width:0}.spell-preview-body dt{color:var(--paper-faint);letter-spacing:.04em;text-transform:uppercase;font-size:.55rem;font-weight:800}.spell-preview-body dd,.spell-preview-body p{overflow-wrap:anywhere;margin:0}.spell-preview-body dd{color:var(--paper);font-weight:700}.unique-choice-picker{gap:.55rem;min-width:0;display:grid}.choice-picker-known{color:var(--paper-dim);overflow-wrap:anywhere;margin:0;font-size:.68rem}.unique-choice-picker select option:disabled{color:var(--paper-faint)}.choice-quota-status{color:var(--paper-dim);font-size:.66rem}.choice-quota-status.error{color:#e6a28f}.selected-choice-summary{border:1px solid var(--rule);background:#f4f1e806;gap:.45rem;min-width:0;padding:.55rem;display:grid}.selected-choice-summary-heading{color:var(--paper-dim);justify-content:space-between;align-items:center;gap:.5rem;font-size:.68rem;display:flex}.selected-choice-summary-heading span{border:1px solid var(--rule-lit);border-radius:50%;place-items:center;width:1.4rem;min-height:1.4rem;font-size:.62rem;display:grid}.selected-choice-summary ul{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.selected-choice-summary li{border:1px solid var(--rule-lit);min-width:0;color:var(--paper);background:var(--ink-well);align-items:center;gap:.3rem;padding-left:.5rem;font-size:.68rem;display:flex}.selected-choice-summary li>span{overflow-wrap:anywhere}.selected-choice-summary button{min-height:2rem;padding:.25rem .45rem;font-size:.55rem}.selected-choice-summary>p{color:var(--paper-faint);margin:0;font-size:.66rem}.gear-text-picker .hint{margin:0}.starting-shop{gap:.8rem}.shop-ledger{border:1px solid var(--rule-lit);background:#03040547;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.shop-ledger>div{border-right:1px solid var(--rule);gap:.12rem;min-width:0;padding:.55rem;display:grid}.shop-ledger>div:last-child{border-right:0}.shop-ledger small{color:var(--paper-faint);letter-spacing:.05em;text-transform:uppercase;font-size:.54rem;font-weight:800}.shop-ledger strong{overflow-wrap:anywhere;color:var(--paper);font-family:var(--heading);font-size:.9rem}.shop-ledger .over-limit strong{color:#e6a28f}.shop-search{max-width:24rem}.shop-scope-note{color:var(--paper-faint);margin:-.25rem 0 0;font-size:.62rem}.shop-catalog{border:1px solid var(--rule);background:#03040538;gap:.9rem;padding:.55rem;display:grid}.shop-category,.shop-items{gap:.45rem;min-width:0;display:grid}.shop-category h3,.shop-cart h3,.shop-equipped h3{color:var(--paper);font-family:var(--heading);margin:0;font-size:.82rem}.shop-items{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-item{border:1px solid var(--rule);background:var(--ink-surface);grid-template-columns:minmax(0,1fr) auto;gap:.55rem;min-width:0;padding:.55rem;display:grid}.shop-item.selected{background:#d9a05b0e;border-color:#d9a05b94}.shop-item.restricted{opacity:.58}.shop-item-copy{gap:.18rem;min-width:0;display:grid}.shop-item-copy strong{overflow-wrap:anywhere;color:var(--paper);font-size:.74rem}.shop-item-copy>span,.shop-item-copy p,.shop-item-copy em,.shop-item-details summary{overflow-wrap:anywhere;color:var(--paper-dim);margin:0;font-size:.62rem;line-height:1.35}.shop-item-copy>span{color:var(--ember-pale);font-weight:800}.shop-item-copy em{color:#e6a28f}.shop-item-details summary{width:fit-content;min-height:2rem;color:var(--paper-dim);cursor:pointer;text-underline-offset:.2em;align-items:center;text-decoration:underline;display:flex}.shop-item-details[open] summary{color:var(--paper);margin-bottom:.2rem}.shop-quantity{grid-template-columns:repeat(3,minmax(2.5rem,auto));align-content:center;place-items:center;gap:.3rem;display:grid}.shop-quantity button{min-width:2.75rem;min-height:2.75rem;padding:.45rem}.shop-quantity .shop-add{grid-column:1/-1;min-width:4.4rem}.shop-quantity output{text-align:center;min-width:2rem;color:var(--paper);font-size:.72rem;font-weight:800}.shop-cart,.shop-equipped{border:1px solid var(--rule-lit);gap:.55rem;min-width:0;padding:.6rem;display:grid}.shop-cart-summary>summary,.shop-equipped>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;min-height:2.75rem;display:flex}.shop-cart-summary>summary>span:first-child{gap:.08rem;display:grid}.shop-cart-summary>summary small,.shop-equipped>summary span{color:var(--paper-faint);font-size:.6rem}.shop-cart ul{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.shop-cart li{min-width:0;color:var(--paper-dim);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;font-size:.66rem;display:grid}.shop-cart li>span{overflow-wrap:anywhere}.shop-equipped-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:.55rem;display:grid}.shop-equipped-body p{border:1px solid var(--rule);color:var(--paper-dim);margin:0;padding:.55rem;font-size:.66rem}.shop-equipped-body p strong{color:var(--paper)}.shop-checkout-bar{align-items:center;gap:var(--qcard-gap,.65rem);grid-template-columns:minmax(0,1fr) minmax(7rem,.4fr);width:100%;max-width:68rem;margin-inline:auto;display:grid}.shop-checkout-bar>div{gap:.1rem;min-width:0;display:grid}.shop-checkout-bar strong{color:var(--paper);font-family:var(--heading);font-size:.9rem}.shop-checkout-bar small{overflow-wrap:anywhere;color:var(--paper-dim);font-size:.6rem}.shop-checkout-bar button{min-height:3rem}.guided-save-feedback{color:var(--paper-faint);text-align:right;font-size:.65rem}.background-roll-panel{gap:.7rem}.background-visible-result{font-family:var(--heading);text-align:center;font-size:.95rem}.talent-roll-actions{flex:none;gap:.4rem;display:flex}.talent-visible-result,.talent-outcome-review{border:1px solid var(--rule-lit);background:#03040552;gap:.35rem;min-width:0;padding:.65rem;display:grid}.talent-visible-result{text-align:center}.talent-unsaved-review{border-color:#d9a05b9e;gap:.55rem}.talent-unsaved-state{flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem;display:flex}.talent-unsaved-state span,.talent-unsaved-state em{color:#e6a28f;letter-spacing:.05em;text-transform:uppercase;border:1px solid #e6a28f73;padding:.25rem .42rem;font-size:.58rem;font-style:normal;font-weight:850}.talent-unsaved-state em{border-color:var(--rule-lit);color:var(--paper-dim)}.talent-review-dice{justify-content:center}.talent-review-hint{width:min(100%,30rem);color:var(--paper-dim);text-align:left;justify-self:center;margin:0;font-size:.68rem;line-height:1.35}.talent-visible-result strong{color:var(--paper);font-family:var(--heading);font-size:1rem}.talent-visible-result p,.talent-outcome-review strong{overflow-wrap:anywhere;color:var(--paper-dim);margin:0;font-size:.72rem}.talent-outcome-review{border-color:#d9a05b7a}.talent-outcome-review>small{color:var(--ember-pale);letter-spacing:.06em;text-transform:uppercase;font-size:.58rem;font-weight:800}.talent-outcome-review>strong{color:var(--paper);font-family:var(--heading);font-size:.88rem}.talent-decision-picker{text-align:left;justify-self:center;width:min(100%,30rem)}.talent-decision-picker select{text-overflow:ellipsis;width:100%;min-width:0}.talent-resolution-error{color:#f2b2a2;overflow-wrap:anywhere;justify-self:center;width:min(100%,24rem);font-size:.68rem;font-weight:750;line-height:1.4;display:block}.talent-outcome-review .talent-resolution-error{justify-self:stretch;width:100%}.talent-resolved-choice,.talent-recovered-note,.talent-duplicate-warning{border:1px solid var(--rule-lit);width:min(100%,30rem);color:var(--paper-dim);overflow-wrap:anywhere;text-align:left;justify-self:center;padding:.45rem .55rem;font-size:.68rem;line-height:1.4;display:block}.talent-resolved-choice{color:#c0ddba;border-color:#8cbe8e85}.talent-recovered-note{color:var(--ember-pale);border-color:#d9a05b85}.talent-duplicate-warning{color:#f2b2a2;border-color:#e6a28f94}.talent-outcome-review .talent-decision-picker,.talent-outcome-review .talent-resolved-choice,.talent-outcome-review .talent-duplicate-warning{justify-self:stretch;width:100%}.talent-roll-panel>.hint{margin:0}.background-app-fallback{max-width:12rem}.guided-dice-fallback.one-die{grid-template-columns:1fr;max-width:12rem}.guided-dice-fallback.two-dice{grid-template-columns:repeat(2,minmax(0,1fr));max-width:20rem}.ability-roll-details{border-top:1px solid var(--rule);color:var(--paper-faint);padding-top:.45rem;font-size:.7rem}.ability-roll-details summary{cursor:pointer;width:fit-content;font-weight:800}.ability-roll-details p{max-width:48rem;color:var(--paper-faint);margin:.45rem 0 0;line-height:1.45}.player-roll-details{border-bottom:1px solid var(--rule);color:var(--paper-dim);margin:-.35rem 0 1rem;padding:.55rem 0}.player-roll-details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.6rem;width:100%;min-height:2.65rem;font-size:.7rem;font-weight:800;list-style:none;display:flex}.player-roll-details>summary::-webkit-details-marker{display:none}.player-roll-details[open] .guided-sheet-history-mark{transform:rotate(45deg)}.player-roll-details .data-list{margin-top:.45rem}.ability-dice-result{gap:.75rem;display:grid}.dice-engine-stage{contain:layout paint;isolation:isolate;clip-path:inset(0);border:1px solid var(--rule-lit);background:radial-gradient(circle at 16% 4%,#e08e3f38,#0000 31%),radial-gradient(72% 62% at 50% 54%,#292620 0%,#151411 56%,#080807 100%);height:clamp(10.5rem,32vw,16rem);position:relative;overflow:hidden;box-shadow:inset 0 0 0 5px #0a0908,inset 0 0 4.5rem #000000e0,0 .7rem 1.8rem #00000052}.dice-engine-stage:before{z-index:0;content:"";pointer-events:none;background:linear-gradient(115deg,#0000 0 43%,#ecd3a609 44%,#0000 45%),linear-gradient(18deg,#0000 0 67%,#0000004d 68%,#0000 69%),repeating-linear-gradient(96deg,#ffffff05 0 1px,#00000006 2px,#0000 5px);position:absolute;inset:5px}.dice-engine-stage:after{z-index:2;content:"";pointer-events:none;border:1px solid #d9a05b2b;position:absolute;inset:5px;box-shadow:inset 0 0 2rem #00000080,inset 0 1px #f6d7a612}.app-roll-receipt{border:1px solid var(--rule-lit);background:radial-gradient(circle at 50% 32%,#b0652c21,#0000 48%),linear-gradient(155deg,#1c1b18fa,#080807fc);gap:.8rem;min-width:0;padding:clamp(.75rem,2.5vw,1.15rem);display:grid;box-shadow:inset 0 0 0 1px #ebddba09}.app-roll-receipt-heading{justify-content:space-between;align-items:start;gap:.65rem;min-width:0;display:flex}.app-roll-receipt-heading h4{margin:.12rem 0 0}.app-roll-receipt-dice{background:radial-gradient(#24221e,#0b0b09 72%);border:1px solid #ebddba1f;place-items:center;gap:.65rem;min-width:0;padding:clamp(.75rem,3vw,1.2rem);display:grid}.app-roll-receipt-dice .authoritative-dice-row{width:100%}.app-roll-receipt-dice .receipt-d6{width:clamp(3.75rem,16vw,6.25rem);max-width:28%}.app-roll-receipt-dice>strong{font-family:var(--heading);font-size:clamp(1.25rem,5vw,2rem)}.app-roll-receipt-d20{place-items:center;gap:.3rem;padding:.7rem;display:grid}.app-roll-receipt-d20 span{aspect-ratio:1;clip-path:polygon(50% 0%,92% 20%,100% 64%,71% 100%,29% 100%,0% 64%,8% 20%);color:#090908;width:clamp(6.5rem,34vw,9rem);font-family:var(--heading);text-shadow:0 1px #ffffff40;background:#f4eddc;border:2px solid #f4eddc;place-items:center;font-size:clamp(2.5rem,12vw,4.5rem);display:grid}.app-roll-receipt-d20 strong,.app-roll-receipt-outcome small{color:var(--paper-faint);letter-spacing:.09em;text-transform:uppercase;font-size:.58rem}.app-roll-receipt-single-die.d4 span{clip-path:polygon(50% 0%,100% 92%,0% 92%)}.app-roll-receipt-single-die.d6 span{clip-path:none;border-radius:.8rem}.app-roll-receipt-single-die.d8 span{clip-path:polygon(50% 0%,96% 50%,50% 100%,4% 50%)}.app-roll-receipt-outcome{border:1px solid var(--rule-lit);place-items:center;gap:.15rem;padding:.75rem;display:grid}.app-roll-receipt-outcome strong{font-family:var(--heading);font-size:clamp(1.3rem,5vw,2rem)}.background-class-reminder{border-left:2px solid var(--ember);color:var(--paper-dim);text-align:left;background:#d9a05b12;gap:.12rem;padding:.55rem .65rem;font-size:.7rem;line-height:1.35;display:grid}.background-class-reminder strong{color:var(--paper)}.app-roll-receipt-copy{color:var(--paper-dim);text-align:center;margin:0;font-size:.74rem}.app-dice-fallback{border:1px dashed var(--rule-lit);background:var(--ink-well);gap:.65rem;padding:.8rem;display:grid}.app-dice-fallback p{color:var(--paper-dim);margin:0;font-size:.74rem;line-height:1.5}.app-dice-fallback-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.app-dice-fallback-fields label{min-width:0}.app-dice-fallback-fields span{color:var(--paper-faint);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem;font-size:.56rem;font-weight:850;display:block}.app-dice-fallback-fields input{min-height:2.65rem}.authoritative-dice-pose{z-index:2;color:var(--paper);background:radial-gradient(72% 62% at 50% 54%,#20201d 0%,#0d0d0c 56%,#050504 100%);place-content:center;place-items:center;gap:.55rem;padding:1rem;display:grid;position:absolute;inset:5px}.authoritative-dice-row{justify-content:center;align-items:center;gap:clamp(.55rem,3vw,1.2rem);display:flex}.authoritative-d6{aspect-ratio:1;background:#fff;border:2px solid #fff;border-radius:16%;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:clamp(3.5rem,13vw,5.3rem);padding:clamp(.45rem,1.8vw,.72rem);display:grid;transform:perspective(28rem)rotateX(2deg);box-shadow:inset 0 0 0 2px #0505041f,0 .45rem 1rem #00000080}.authoritative-d6 i{aspect-ratio:1;background:0 0;border-radius:50%;place-self:center;width:clamp(.52rem,2vw,.78rem)}.authoritative-d6 i.visible{background:#090908;box-shadow:inset 0 .08rem .12rem #ffffff29}.authoritative-pose-equation{font-family:var(--heading);letter-spacing:.04em;font-size:clamp(1.2rem,4vw,1.7rem)}.authoritative-dice-pose small{color:var(--paper-faint);letter-spacing:.09em;text-transform:uppercase;font-size:.55rem;font-weight:850}.dice-engine-status{z-index:3;color:var(--paper-faint);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;background:#050504b8;border:1px solid #f4f1e81a;padding:.28rem .42rem;font-size:.55rem;font-weight:800;position:absolute;top:.55rem;right:.65rem}.dice-engine-stage.showing-authoritative-pose .dice-engine-status{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;overflow:hidden}.dice-live-status{min-height:1rem;color:var(--paper-faint);letter-spacing:.075em;text-align:right;text-transform:uppercase;font-size:.56rem;font-weight:800;line-height:1.4;display:block}.dice-result-summary,.dice-result-faces{align-items:stretch;gap:.55rem;display:flex}.dice-result-summary{border:1px solid var(--rule);background:linear-gradient(135deg, var(--ink-surface), var(--ink-well));justify-content:space-between;padding:.65rem}.dice-result-faces{flex-wrap:wrap}.dice-result-face,.dice-result-total{min-width:3.25rem;color:var(--ink);background:#fff;border:1px solid #fff;place-items:center;padding:.48rem .62rem .42rem;display:grid;box-shadow:inset 0 0 0 2px #05050414,0 .2rem .5rem #00000052}.check-roller{border:1px solid var(--ember-deep);background:radial-gradient(ellipse 90% 75% at 50% 120%, #d9a05b12, transparent), var(--ink-surface);box-shadow:0 .9rem 2.4rem var(--shadow);gap:.75rem;margin-bottom:1.4rem;padding:clamp(.8rem,3vw,1rem);display:grid}.player-action-disclosure{border:1px solid var(--rule);background:var(--ink-well);margin-bottom:1.4rem}.player-action-disclosure>summary{min-height:3.2rem;color:var(--paper);cursor:pointer;font-family:var(--heading);align-items:center;padding:.7rem .85rem;font-size:1.1rem;font-weight:700;display:flex}.player-action-disclosure[open]>summary{border-bottom:1px solid var(--rule)}.player-action-disclosure .check-roller,.live-play-disclosure .live-play{box-shadow:none;border:0;margin:0}.check-roller-heading{justify-content:space-between;align-items:start;gap:.7rem;min-width:0;display:flex}.check-roller-heading h3{font-family:var(--heading);margin-top:.15rem;font-size:1.4rem}.check-roller-heading p:last-child,.check-roller-note{color:var(--paper-faint);margin:.15rem 0 0;font-size:.68rem;line-height:1.45}.check-mode-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.check-mode-picker button{letter-spacing:.07em;min-width:0;min-height:2.6rem;padding:.5rem .35rem;font-size:.58rem}.check-purpose{gap:.3rem;display:grid}.check-purpose>span{color:var(--paper-dim);letter-spacing:.1em;text-transform:uppercase;font-size:.6rem;font-weight:850}.check-purpose i{color:var(--paper-faint);letter-spacing:.03em;text-transform:none;font-style:normal}.check-purpose input{min-height:2.7rem}.check-result{align-items:stretch;gap:.65rem;display:flex}.check-result span{border:1px solid var(--rule-lit);min-width:0;color:var(--paper-dim);flex:1 1 0;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.55rem .65rem;font-size:.68rem;display:flex}.check-result strong{color:var(--paper);font-family:var(--heading);font-size:1.2rem}.dice-result-face small,.dice-result-total small{letter-spacing:.08em;text-transform:uppercase;font-size:.49rem;font-weight:950;line-height:1}.dice-result-face strong,.dice-result-total strong{font-family:var(--heading);font-size:1.85rem;line-height:1}.dice-result-total{border-color:var(--ember);min-width:5.5rem;color:var(--ink);background:var(--ember);box-shadow:inset 0 0 0 2px #05050429,0 0 1.2rem #d9a05b1f}.sheet-stats{border:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.sheet-stat{border-right:1px solid var(--rule);text-align:center;background:var(--ink-well);min-width:0;padding:.7rem .2rem}.sheet-stat:nth-child(3),.sheet-stat:last-child{border-right:0}.sheet-stat:nth-child(-n+3){border-bottom:1px solid var(--rule)}.sheet-stat small{color:var(--paper-faint);letter-spacing:.14em;text-overflow:ellipsis;text-transform:uppercase;font-size:.56rem;font-weight:850;display:block;overflow:hidden}.sheet-stat strong{font-family:var(--heading);margin-top:.15rem;font-size:1.5rem;font-weight:700;line-height:1;display:block}.sheet-stat em{color:var(--paper-dim);margin-top:.1rem;font-size:.68rem;font-style:normal;font-weight:850;display:block}@media (width>=48rem){.completed-sheet-stats .sheet-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.completed-sheet-stats .sheet-stat:nth-child(3){border-right:1px solid var(--rule)}.completed-sheet-stats .sheet-stat:nth-child(-n+3){border-bottom:0}}.talent-adjustment{color:var(--ember);overflow-wrap:anywhere;margin:.35rem auto 0;font-size:.62rem;font-weight:800;line-height:1.25;display:block}.combat-resolution-note{border-left:2px solid var(--ember-deep);color:var(--paper-dim);background:var(--ink-well);margin-bottom:.75rem;padding:.7rem .75rem}.combat-resolution-note strong{color:var(--paper);font-size:.78rem}.combat-resolution-note p{margin:.25rem 0 0;font-size:.72rem;line-height:1.45}.ability-source{letter-spacing:.06em;overflow-wrap:normal;white-space:normal;width:fit-content;max-width:calc(100% - .4rem);margin-top:.4rem;margin-left:auto;margin-right:auto;padding:.22rem .35rem;line-height:1.2}.ability-source.in_app{border-color:var(--ember-deep);color:var(--ember)}.ability-source.player_reported_physical{color:var(--paper)}.data-list{margin:0;padding:0;list-style:none;display:grid}.data-list li{border-bottom:1px solid var(--rule);padding:.6rem 0;font-size:.78rem;line-height:1.5}.data-list li:first-child{padding-top:0}.data-list li:last-child{border-bottom:0;padding-bottom:0}.data-list strong{font-weight:850}.data-list li:not(:has(small)) strong{color:var(--paper-dim);font-weight:600}.data-list small{color:var(--paper-dim);font-size:.78rem}.data-list strong+small:before{content:" · ";color:var(--paper-faint)}.tag-list{flex-wrap:wrap;gap:.4rem;display:flex}.tag{border:1px solid var(--rule-lit);color:var(--paper);background:var(--ink-well);padding:.32rem .5rem;font-size:.68rem;font-weight:700}.notes{color:var(--paper-dim);white-space:pre-wrap;margin:0;font-size:.8rem;line-height:1.65}.inline-edit{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.error-state{border:1px solid var(--blood);border-left:3px solid var(--blood);background:#c4574a0b;width:min(100%,40rem);margin:8vh auto 0;padding:1.35rem}.error-state .eyebrow{color:var(--blood)}.error-state h1{font-size:clamp(2.4rem,9vw,4rem)}.error-state p:not(.eyebrow){color:var(--paper-dim);margin-top:.9rem}.error-state .authority-recovery{border:1px solid var(--rule-lit);background:var(--ink-well);overflow-wrap:anywhere;padding:.75rem;font-size:.72rem;line-height:1.55;color:var(--paper)!important}.error-state>button,.error-state>.button{margin-top:1rem}.loading{min-height:55vh;color:var(--paper-faint);letter-spacing:.16em;text-transform:uppercase;place-content:center;place-items:center;gap:1.2rem;font-size:.7rem;font-weight:850;display:grid}.ember{background:var(--ember);width:.7rem;height:.7rem;animation:1.3s ease-in-out infinite alternate breathe;box-shadow:0 0 1.4rem #d9a05b99}.toast{z-index:60;right:max(1rem, env(safe-area-inset-right,0px));bottom:max(1rem, env(safe-area-inset-bottom,0px));max-width:min(24rem, calc(100vw - max(1rem, env(safe-area-inset-left,0px)) - max(1rem, env(safe-area-inset-right,0px))));border:1px solid var(--paper);border-left:3px solid var(--paper);opacity:0;color:var(--paper);background:var(--ink);box-shadow:0 1rem 2.4rem var(--shadow);pointer-events:none;padding:.8rem .95rem;font-size:.74rem;transition:all .16s;position:fixed;transform:translateY(1rem)}.toast.show{opacity:1;transform:translateY(0)}.offline-banner{padding:.58rem max(1rem, env(safe-area-inset-right,0px)) .58rem max(1rem, env(safe-area-inset-left,0px));border-bottom:1px solid var(--blood);color:#edbdb6;background:var(--blood-deep);letter-spacing:.04em;text-align:center;font-size:.68rem;font-weight:800}.update-banner{z-index:55;right:max(1rem, env(safe-area-inset-right,0px));bottom:max(1rem, env(safe-area-inset-bottom,0px));left:max(1rem, env(safe-area-inset-left,0px));border:1px solid var(--paper);background:var(--ink);justify-content:space-between;align-items:center;gap:.8rem;max-width:42rem;margin-left:auto;padding:.85rem;display:flex;position:fixed;box-shadow:0 1rem 3rem #000c}.update-banner strong,.update-banner small{display:block}.update-banner strong{font-size:.76rem}.update-banner small{color:var(--paper-faint);margin-top:.22rem;font-size:.65rem}.update-banner button{flex:none;min-height:2.6rem}@keyframes breathe{to{opacity:.45;transform:scale(.72)}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.guided-draft-stage{flex-direction:column;min-height:calc(100dvh - 13rem);display:flex}.guided-draft-stage [data-sheet-section]{scroll-margin-top:calc(3.4rem + env(safe-area-inset-top,0px))}[data-sheet-section].focus-pulse{animation:1.6s ease-out both focus-pulse}@keyframes focus-pulse{0%{box-shadow:0 0 0 2px #d9a05be6,0 0 2.2rem #d9a05b66}to{box-shadow:0 0 0 2px #d9a05b00,0 0 2.2rem #d9a05b00}}@media (prefers-reduced-motion:reduce){[data-sheet-section].focus-pulse{transition:box-shadow .2s;animation:none;box-shadow:0 0 0 2px #d9a05b8c}}.creation-progress{z-index:19;top:env(safe-area-inset-top,0px);background:var(--ink);margin-bottom:1.25rem;padding-top:.5rem;position:sticky}.creation-progress-label{color:var(--paper-dim);justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .4rem;font-size:.8rem;display:flex}.creation-progress-label strong{color:var(--ember);font-weight:700}.creation-progress-label span{white-space:nowrap}.burn-bar{background:var(--ink);grid-template-columns:repeat(9,minmax(0,1fr));gap:.22rem;margin:0;padding:0 0 .65rem;list-style:none;display:grid}.burn-segment{background:var(--rule);height:3px}.burn-segment.spent{background:var(--paper-dim)}.burn-segment.active{background:var(--ember);box-shadow:0 0 .5rem #d9a05b8c}.guided-sheet{background:0 0;border:0;margin-bottom:1.2rem;padding:0}.guided-sheet-header{border-bottom:2px solid var(--paper);margin-bottom:1rem;padding-bottom:.85rem}.guided-sheet-header h1{font-size:clamp(2rem,7vw,2.8rem)}.live-ember:before{content:"● "}.sheet-opening{color:var(--paper-faint);margin:0 0 1.1rem;font-size:.82rem}.stat-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-bottom:1.1rem;display:grid}.stat-tile{border:1px solid var(--rule-lit);background:var(--ink-surface);text-align:center;justify-items:center;min-width:0;padding:.7rem .45rem .6rem;display:grid}.stat-tile small{color:var(--paper-faint);letter-spacing:.17em;text-transform:uppercase;font-size:.56rem;font-weight:850}.stat-tile strong{font-family:var(--heading);font-size:clamp(2rem,10vw,2.9rem);font-weight:700;line-height:1}.stat-tile em{color:var(--paper-dim);font-family:var(--heading);font-size:.9rem;font-style:normal;line-height:1}.stat-tile.unset strong{color:var(--paper-faint)}.stat-tile.awaiting{border-color:var(--ember);background:radial-gradient(ellipse 95% 80% at 50% 125%, #d9a05b26, transparent), var(--ink-surface)}.stat-tile.awaiting strong{color:var(--ember)}.stat-tile .ability-source,.stat-tile .talent-adjustment{letter-spacing:.08em;margin-top:.35rem;padding:.16rem .24rem;font-size:.48rem}.stat-tile .talent-adjustment{color:var(--paper-dim);letter-spacing:normal;text-transform:none;border:0;font-size:.625rem}.guided-sheet .vitals{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}.guided-sheet .vital strong{overflow-wrap:anywhere;text-overflow:clip;font-size:clamp(1.15rem,4.8vw,1.7rem);line-height:1.15;overflow:visible}.guided-sheet-history{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-top:.85rem}.guided-sheet-history>summary{cursor:pointer;min-height:3rem;color:var(--paper-dim);justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem .15rem;display:flex}.guided-sheet-history>summary>span:first-child{gap:.08rem;min-width:0;display:grid}.guided-sheet-history>summary strong{color:var(--paper);font-family:var(--heading);font-size:1.1rem}.guided-sheet-history>summary small{color:var(--paper-faint);font-size:.75rem}.guided-sheet-history-mark{color:var(--ember);font-size:1.1rem;transition:transform .14s}.guided-sheet-history[open] .guided-sheet-history-mark{transform:rotate(45deg)}.guided-sheet-history>.sheet-layout{margin-top:.7rem;padding-bottom:.8rem}.qcard-dock{z-index:18;padding-bottom:max(.5rem, env(safe-area-inset-bottom,0px));background:linear-gradient(180deg, #05050400 0%, #050504f0 14%, var(--ink) 34%);margin-top:auto;position:sticky;bottom:0}.qcard{--qcard-pad-inline:1rem;--qcard-pad-block:.85rem;--qcard-gap:.65rem;--qcard-gap-sm:calc(var(--qcard-gap) * .6);border:1px solid var(--rule-lit);border-top:2px solid var(--paper);background:var(--ink-surface);position:relative;box-shadow:0 -.85rem 2.4rem #00000094}.qcard-dock:has([data-question-step=starting-equipment]){z-index:17;padding-bottom:max(.5rem, env(safe-area-inset-bottom,0px));scroll-margin-top:calc(3.4rem + env(safe-area-inset-top,0px));background:0 0;margin-top:0;position:relative}.qcard-dock:has([data-question-step=portrait]){z-index:17;padding-bottom:max(.5rem, env(safe-area-inset-bottom,0px));scroll-margin-top:calc(3.4rem + env(safe-area-inset-top,0px));background:0 0;margin-top:0;position:relative}[data-question-step=starting-equipment] .qcard-inner,[data-question-step=portrait] .qcard-inner{max-height:none;overflow:visible}.qcard-more-below:after{z-index:3;right:1px;bottom:calc(var(--qcard-footer-h,0px) + 1px);background:linear-gradient(180deg, #13131200, var(--ink-surface) 82%);height:2.6rem;color:var(--ember);content:"⌄";pointer-events:none;place-content:end center;padding-bottom:.1rem;font-size:1.05rem;line-height:1;display:grid;position:absolute;left:1px}.qcard-inner{max-height:min(42dvh,30rem);padding:var(--qcard-pad-block) var(--qcard-pad-inline);gap:var(--qcard-gap);overscroll-behavior:contain;scroll-padding-bottom:max(1rem, env(safe-area-inset-bottom,0px));display:grid;overflow-y:auto}@media (height<=40rem){.qcard-inner{max-height:min(56dvh,30rem)}[data-question-step=stats] .qcard-inner{max-height:none;padding:.65rem .75rem max(.65rem, env(safe-area-inset-bottom,0px));gap:.35rem;overflow:visible}.guided-sheet .sheet-opening{display:none}}@media (width>=45.01rem){.qcard{--qcard-pad-inline:1.5rem;--qcard-pad-block:1.1rem;--qcard-gap:.75rem}}.qcard-header{gap:var(--qcard-gap-sm);padding:var(--qcard-pad-block) var(--qcard-pad-inline) 0;display:grid}.qcard-top{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.qcard-headline:focus{outline:none}.qcard-eyebrow{color:var(--ember);margin:0}.qcard-headline{font-family:var(--heading);letter-spacing:-.004em;margin:0;font-size:clamp(1.45rem,6.2vw,1.95rem);font-weight:700;line-height:1.08}.qcard-guidance,.qcard-consequence{color:var(--paper-dim);margin:0;font-size:.88rem;line-height:1.5}.qcard-body,.qcard-form{gap:var(--qcard-gap);min-width:0;display:grid}.qcard-footer{z-index:2;padding:var(--qcard-gap) var(--qcard-pad-inline) max(var(--qcard-pad-block), env(safe-area-inset-bottom,0px));gap:var(--qcard-gap-sm);border-top:2px solid var(--paper);background:var(--ink-surface);flex:none;display:grid}.qcard-footer:empty{display:none}.qcard .wide,.qcard button[type=submit],.qcard .in-app-roll-toolbar button,.qcard .talent-roll-actions button{width:100%;min-height:3.5rem}.qcard .in-app-roll-toolbar{align-items:stretch;gap:.5rem;display:grid}.qcard-roll-footer-actions{gap:var(--qcard-gap);grid-template-columns:minmax(0,1fr);display:grid}.qcard-roll-footer-actions>:not(.is-active-path){display:none}.qcard .dice-engine-stage{height:11.5rem}.ability-roll-controls.headless,.guided-draft-panel.headless{background:0 0;border:0;margin:0;padding:0}.quiet-alternative>summary{min-height:2.9rem;color:var(--paper-dim);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--rule-lit);text-decoration-color:var(--rule-lit);text-underline-offset:.25em;padding:.7rem 0;font-size:.78rem;list-style:none}.quiet-alternative>summary::-webkit-details-marker{display:none}.quiet-alternative>summary:hover,.quiet-alternative>summary:focus-visible{color:var(--paper);-webkit-text-decoration-color:var(--ember);text-decoration-color:var(--ember)}.quiet-alternative>div{gap:.5rem;padding-bottom:.35rem;display:grid}.spell-picker-tools{gap:.65rem;display:grid}.spell-picker-tools .form-row{margin:0}.spell-selection,.choice-selection{flex-wrap:wrap;gap:.4rem;display:flex}.spell-selection button,.choice-selection button{letter-spacing:normal;text-transform:none;align-items:center;gap:.65rem;min-height:2.75rem;padding:.5rem .65rem;font-size:.8125rem;display:flex}.spell-selection button span,.choice-selection button span{color:var(--ember);font-size:1.1rem}.spell-search-empty{color:var(--paper-dim);margin:0;font-size:.875rem}.guided-sheet-history,.guided-sheet-history>summary,.shop-cart-summary{scroll-margin-top:calc(4.5rem + env(safe-area-inset-top,0px))}.language-picker .choice-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.language-picker .choice-card-name{font-size:1.1rem}.language-picker .choice-card-group-label{color:var(--paper-dim);font-size:.7rem;line-height:1.5}.choice-explanation{border-left:1px solid var(--rule);color:var(--paper-dim);padding-inline:.8rem;font-size:.875rem;line-height:1.5}.choice-explanation>summary{cursor:pointer;text-underline-offset:.2em;align-items:center;min-height:2.75rem;text-decoration:underline;display:flex}.choice-explanation ul{padding-left:1rem}.choice-explanation li+li{margin-top:.5rem}.shop-filters{flex-wrap:wrap;gap:.35rem;display:flex}.shop-filters button{border:1px solid var(--rule-lit);letter-spacing:normal;text-transform:none;flex:1 0 auto;min-height:2.75rem;padding:.45rem .55rem;font-size:.8125rem}.shop-filters button[aria-pressed=true]{color:var(--ink);background:var(--paper);border-color:var(--paper)}.shop-item-limit{color:var(--paper-dim);font-size:.75rem;line-height:1.4}.shop-search-empty{color:var(--paper-dim);font-size:.875rem}.shop-checkout-bar .shop-review-cart{min-height:2.75rem;box-shadow:none;text-align:left;letter-spacing:normal;text-transform:none;background:0 0;border:0;justify-content:start;justify-items:start;gap:.15rem;padding:.2rem 0;display:grid}.shop-review-cart span{text-underline-offset:.2em;font-size:.75rem;text-decoration:underline}.qcard .shop-item-details summary{min-height:2.75rem;font-size:.8125rem}.qcard .shop-item-copy strong{font-size:.875rem}.qcard .shop-item-copy>span,.qcard .shop-item-copy p,.qcard .shop-cart li{font-size:.8125rem}.qcard .shop-cart li>button{min-height:2.75rem}.qcard .spell-preview>summary{align-items:center;min-height:2.75rem;font-size:.8125rem;display:flex}.qcard .spell-preview-body p,.qcard .spell-preview-body dd{font-size:.875rem;line-height:1.5}.qcard .spell-preview-body .spell-card-license{font-size:.7rem}.choice-cards{gap:var(--qcard-gap-sm,.4rem);align-items:start;min-width:0;display:grid}.choice-card-shell{min-width:0;display:grid}.choice-card{border:1px solid var(--rule-lit);width:100%;min-height:3.5rem;color:var(--paper);background:var(--ink-well);box-shadow:none;font-size:inherit;letter-spacing:normal;text-align:left;text-transform:none;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem .8rem;font-weight:400;display:flex}.choice-card:hover{border-color:var(--rule-lit);color:var(--paper);background:var(--ink-raised);box-shadow:none}.choice-card:active{transform:none}.choice-card.chosen,.choice-card.chosen:hover{border-color:var(--paper);color:var(--ink);background:var(--paper)}.choice-card:disabled{cursor:not-allowed;opacity:.4}.choice-card.chosen:disabled{cursor:pointer;opacity:1}.choice-card-text{gap:.16rem;min-width:0;display:grid}.choice-card-name{font-family:var(--heading);overflow-wrap:anywhere;font-size:1.28rem;font-weight:700;line-height:1.06}.choice-card-detail{color:var(--paper-dim);overflow-wrap:anywhere;font-size:.875rem;line-height:1.4}.choice-card.chosen .choice-card-detail{color:#4a463d}.choice-card-tick{opacity:0;flex:none;font-size:1.05rem;line-height:1}.choice-card.chosen .choice-card-tick{opacity:1}.sentence-cards .choice-card-name{font-size:.98rem;font-weight:600;line-height:1.35}.choice-card-group{gap:var(--qcard-gap-sm,.4rem);min-width:0;display:grid}.choice-card-group-label{color:var(--paper-faint);letter-spacing:.17em;text-transform:uppercase;margin:.25rem 0 0;font-size:.6rem;font-weight:850}.talent-decision-picker{gap:.4rem;min-width:0;display:grid}.talent-decision-picker .field-label{margin:0}.choice-card-shell .spell-preview{border-left:1px solid var(--rule);padding-left:.8rem}:root{--dice-box-w:min(92vw, 22rem);--dice-box-h:min(42dvh, 18rem);--dice-result-rail:clamp(6.2rem, 15dvh, 7.4rem);--dice-stack-top:max(calc(env(safe-area-inset-top,0px) + .9rem), calc(50dvh - (var(--dice-box-h) + var(--dice-result-rail) + 5rem) / 2));--dice-stack-bottom:calc(var(--dice-stack-top) + var(--dice-box-h) + var(--dice-result-rail))}.dice-overlay-canvas-layer{z-index:51;top:var(--dice-stack-top);width:var(--dice-box-w);height:var(--dice-box-h);border:1px solid var(--rule-lit);border-top:2px solid var(--paper);background:radial-gradient(ellipse 88% 84% at 50% 46%, #d9a05b1a, transparent 74%), linear-gradient(105deg, #ffffff05, transparent 38%, #00000029), var(--ink);pointer-events:none;position:fixed;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 1.6rem 4.5rem #000000d1}.dice-overlay-canvas-layer[hidden]{display:none}.dice-overlay-dim{z-index:50;-webkit-backdrop-filter:blur(7px);pointer-events:none;background:#0505049e;animation:.18s ease-out both gutter;position:fixed;inset:0}.dice-overlay-result{z-index:52;top:calc(var(--dice-stack-top) + var(--dice-box-h));width:var(--dice-box-w);height:var(--dice-result-rail);border:1px solid var(--rule-lit);background:var(--ink-surface);pointer-events:none;border-top:0;align-content:center;justify-items:center;padding:.5rem .9rem;display:grid;position:fixed;left:50%;transform:translate(-50%)}.dice-overlay-card{text-align:center;justify-items:center;gap:.16rem;width:100%;animation:.2s ease-out both settle;display:grid}.dice-overlay-faces{color:var(--paper-dim);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:850}.dice-overlay-total{color:var(--ember);font-family:var(--display);text-shadow:0 0 2rem #d9a05b47;font-size:clamp(2rem,8vw,2.9rem);font-weight:700;line-height:.94}.dice-overlay-receipt{color:var(--paper-dim);letter-spacing:.05em;background:0 0;margin:.2rem 0 0;padding:0;font-size:.64rem;font-weight:800}.guided-draft-stage>.qcard-dock{background:0 0;min-width:0;margin-top:0;position:relative}.guided-draft-stage .qcard{box-shadow:none;scroll-margin-top:calc(4.5rem + env(safe-area-inset-top,0px))}.guided-draft-stage .qcard-inner{max-height:none;overflow:visible}.guided-draft-stage .qcard-footer{position:sticky;bottom:0}.guided-draft-stage .stat-tile abbr{text-decoration:none}.guided-draft-stage .in-app-roller-cluster{background:0 0;border:0;padding:0}.guided-draft-stage .roll-path-alternative{min-height:2.75rem;font-size:.8125rem}.guided-draft-stage input,.guided-draft-stage textarea{font-size:1rem}@media (width<=63.99rem){.guided-draft-stage:not([data-creation-phase=abilities]) .stat-tiles{grid-template-columns:repeat(6,minmax(0,1fr));gap:.25rem}.guided-draft-stage:not([data-creation-phase=abilities]) .stat-tile{padding:.5rem .1rem}.guided-draft-stage:not([data-creation-phase=abilities]) .stat-tile strong{font-size:1.8rem}.guided-draft-stage:not([data-creation-phase=abilities]) .stat-tile small{letter-spacing:.04em;font-size:.625rem}}@media (width>=64rem){.guided-draft-stage{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-content:start;align-items:start;gap:0 2rem;display:grid}.creation-progress{grid-column:1/-1}.guided-draft-stage>.guided-sheet{top:calc(4.5rem + env(safe-area-inset-top,0px));min-width:0;position:sticky}.guided-draft-stage:has(.guided-sheet-history[open])>.guided-sheet{position:static}.guided-draft-stage [data-question-step=ancestry] .choice-cards,.guided-draft-stage [data-question-step=class] .choice-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}body.dice-overlay-open .qcard-dock{opacity:0;pointer-events:none;z-index:54}body.dice-overlay-result-open .qcard-dock:has(.app-roll-receipt.overlay-presented){opacity:1;pointer-events:auto}body.dice-overlay-result-open .qcard-dock:has(.app-roll-receipt.overlay-presented) .qcard{z-index:54;inset:auto;top:calc(var(--dice-stack-bottom) + .6rem);width:var(--dice-box-w);height:fit-content;min-height:0;max-height:calc(96dvh - var(--dice-stack-bottom));box-shadow:none;background:0 0;border:0;margin:0;position:fixed;left:50%;transform:translate(-50%)}body.dice-overlay-result-open:has(.talent-unsaved-review) .dice-overlay-canvas-layer{top:max(calc(env(safe-area-inset-top,0px) + .75rem), calc(27dvh - var(--dice-box-h) / 2))}body.dice-overlay-result-open:has(.talent-unsaved-review) .dice-overlay-result{display:none}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review){z-index:54;right:max(0px, env(safe-area-inset-right,0px));bottom:0;left:max(0px, env(safe-area-inset-left,0px));width:min(68rem,100%);max-height:min(46dvh,34rem);padding-bottom:max(.5rem, env(safe-area-inset-bottom,0px));opacity:1;pointer-events:auto;margin:0 auto;position:fixed}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .qcard{max-height:inherit;flex-direction:column;display:flex}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .qcard-inner{flex:auto;min-height:0;max-height:none;overflow-y:auto}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) [data-question-step=talents] :is(.qcard-header,.in-app-roll-toolbar,.physical-roll-cluster,.roll-path-alternative,.guided-save-feedback,.roll-save-feedback){display:none}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) [data-question-step=talents] .qcard-inner{max-height:min(46dvh,34rem);padding:.55rem .7rem}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .guided-dice-roll-panel{gap:0}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .ability-roll-paths{grid-template-columns:minmax(0,1fr)}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .in-app-roller-cluster{box-shadow:none;background:0 0;border:0;padding:0}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .talent-unsaved-review{background:0 0;border:0;padding:.25rem 0}body.dice-overlay-result-open .qcard-dock:has(.talent-unsaved-review) .talent-review-dice{display:none}body.dice-overlay-result-open [data-question-step=app-roll-result] .qcard-header{display:none}body.dice-overlay-result-open [data-question-step=app-roll-result] .qcard-inner{max-height:12rem;padding:.45rem .2rem}body.dice-overlay-result-open .app-roll-receipt.overlay-presented{box-shadow:none;background:0 0;border:0;gap:.4rem;padding:0}body.dice-overlay-result-open .app-roll-receipt.overlay-presented .app-roll-receipt-outcome{border:0;padding:0}body.dice-overlay-open .spell-card-toggle{pointer-events:none}body.dice-overlay-open:not(.dice-overlay-result-open) .live-play-dock{opacity:0;pointer-events:none}body.dice-overlay-open .check-roller.live-play-dock :is(.check-roller-heading,.check-mode-picker,.check-purpose,.check-roller-note,.dice-live-status,.app-dice-fallback){display:none}body.dice-overlay-open .live-play-dock{z-index:54;top:calc(var(--dice-stack-bottom) + .6rem);width:var(--dice-box-w);max-height:calc(96dvh - var(--dice-stack-bottom));border:1px solid var(--rule-lit);background:var(--ink-surface);margin:0;padding:.7rem .8rem;position:fixed;bottom:auto;left:50%;right:auto;overflow-y:auto;transform:translate(-50%);box-shadow:0 1rem 2.4rem #0009}@media (orientation:landscape) and (height<=500px){:root{--dice-box-h:min(46dvh, 11rem);--dice-result-rail:clamp(3.6rem, 16dvh, 4.6rem)}}.app-roll-receipt.overlay-presented>.app-roll-receipt-dice,.app-roll-receipt.overlay-presented>.app-roll-receipt-d20,.app-roll-receipt.overlay-presented>.app-roll-receipt-copy{display:none}@keyframes gutter{0%{opacity:0}to{opacity:1}}@keyframes settle{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.dice-lab{gap:.75rem;display:grid}.dice-lab-actions{flex-wrap:wrap;gap:.45rem;display:flex}.dice-lab-result{color:var(--ember);margin:0;font-weight:800}.dice-lab-sample{border:1px solid var(--rule);background:var(--ink-well);gap:.6rem;padding:.9rem;display:grid}.dice-lab-sample h3{margin:0}.spell-cards{gap:.4rem;min-width:0;display:grid}.spell-card{border:1px solid var(--rule);background:var(--ink-well);min-width:0}.spell-card.open{border-color:var(--rule-lit)}.spell-card-heading{margin:0;font-size:1rem;font-weight:400}.spell-card-toggle{width:100%;min-height:3rem;color:var(--paper);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.spell-card-toggle:hover{background:var(--ink-raised)}.spell-card-text{gap:.1rem;min-width:0;display:grid}.spell-card-name{font-family:var(--heading);letter-spacing:.004em;overflow-wrap:anywhere;font-size:1.02rem;font-weight:700}.spell-card-meta{color:var(--paper-faint);letter-spacing:.13em;text-transform:uppercase;font-size:.6rem;font-weight:850}.spell-card-mark{color:var(--ember);font-family:var(--heading);font-size:1.3rem;line-height:1}.spell-card-body{border-top:1px solid var(--rule);color:var(--paper-dim);gap:.5rem;padding:0 .7rem .7rem;font-size:.8rem;line-height:1.55;display:grid}.spell-card-body[hidden]{display:none}.spell-card-body>p{overflow-wrap:anywhere;margin:.55rem 0 0}.spell-card-body>p+p{margin-top:0}.spell-card-check{color:var(--paper-faint);font-size:.68rem}.spell-card-license{color:var(--paper-faint);margin:.2rem 0 0;font-size:.6rem;line-height:1.5}.light-rail{border:1px solid var(--rule-lit);background:var(--ink-well);margin-bottom:.9rem;padding:.65rem .75rem}.light-rail .eyebrow{margin-bottom:.5rem}.light-strip{flex-wrap:wrap;align-items:stretch;gap:.4rem;display:flex}.light-source{border:1px solid var(--rule-lit);background:var(--ink-surface);gap:.1rem;min-width:5.6rem;padding:.35rem .5rem;display:grid}.light-source small{color:var(--paper-faint);letter-spacing:.14em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.55rem;font-weight:850;overflow:hidden}.light-source strong{font-family:var(--heading);font-size:1.15rem;font-weight:700;line-height:1.1}.light-source em{color:var(--paper-dim);font-size:.62rem;font-style:normal}.light-source[data-phase=burning]{border-color:var(--ember-deep)}.light-source[data-phase=burning] strong{color:var(--ember)}.light-source[data-phase=dying-soon]{border-color:var(--ember)}.light-source[data-phase=dying-soon] strong{color:var(--ember);animation:1.8s ease-in-out infinite light-gutter}.light-source[data-phase=out] strong,.light-source[data-phase=out] small{color:var(--paper-faint)}@keyframes light-gutter{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.light-source[data-phase=dying-soon] strong{animation:none}}.light-strip-round{border:1px solid var(--rule);color:var(--paper-dim);letter-spacing:.14em;text-transform:uppercase;align-content:center;padding:.35rem .5rem;font-size:.62rem;font-weight:850;display:grid}.light-strip-dark{color:var(--paper-dim);font-size:.74rem}.light-rail-summary{color:var(--paper-dim);margin:.5rem 0 0;font-size:.72rem;line-height:1.5}.light-rail-action{gap:.4rem;margin-top:.6rem;display:grid}.light-rail-action>button{min-height:3rem}.dm-panel{gap:.85rem;margin-bottom:.9rem;display:grid}.dm-control-group{border:1px solid var(--rule);background:var(--ink-well);gap:.5rem;padding:.7rem;display:grid}.dm-control-group .eyebrow{margin:0}.dm-control-group>button{min-height:2.9rem}.dm-inline-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.dm-button-row{flex-wrap:wrap;gap:.4rem;display:flex}.dm-button-row>button{flex:8rem}.dm-note{color:var(--paper-dim);margin:0;font-size:.72rem;line-height:1.55}.dm-consequences{color:var(--paper-dim);margin:0;padding-left:1.1rem;font-size:.72rem;line-height:1.6}.dm-toggle{color:var(--paper-dim);align-items:flex-start;gap:.5rem;font-size:.72rem;line-height:1.5;display:flex}.dm-toggle input{flex:none;width:1.1rem;height:1.1rem;margin-top:.15rem}.scene-summary{color:var(--paper);margin:0;font-size:.86rem;line-height:1.55}.npc-fact{gap:.3rem;padding-top:.35rem;display:grid}.revealed-panel{gap:.7rem;margin-bottom:.9rem;display:grid}.revealed-group{gap:.35rem;display:grid}.revealed-group .eyebrow{margin:0}.dm-character-controls{border-top:1px solid var(--rule);gap:.6rem;margin-top:.6rem;padding-top:.6rem;display:grid}.party-vitals{gap:.6rem;display:grid}.party-row{border:1px solid var(--rule-lit);background:var(--ink-surface);padding:.75rem}.party-row[data-ember=true]{border-color:var(--ember)}.party-row-top{justify-content:space-between;align-items:flex-start;gap:.7rem;display:flex}.party-row h3{margin:0;font-size:1.05rem}.party-row-meta{color:var(--paper-dim);margin:.3rem 0 0;font-size:.7rem;line-height:1.5}.party-hp{white-space:nowrap;font-family:var(--heading);font-size:1.35rem;font-weight:700}.party-row[data-ember=true] .party-hp{color:var(--ember)}.party-dying{border:1px solid var(--ember-deep);color:var(--ember);background:#d9a05b17;margin:.5rem 0 0;padding:.35rem .5rem;font-size:.68rem;font-weight:800}.party-row-tags{flex-wrap:wrap;gap:.35rem;margin:.55rem 0;display:flex}.party-row-clear{color:var(--paper-faint);font-size:.68rem}.journal-feed{margin:0;padding:0;list-style:none;display:grid}.journal-feed li{border-bottom:1px solid var(--rule);gap:.15rem;padding:.55rem 0;display:grid}.journal-feed li:last-child{border-bottom:0}.journal-stamp{color:var(--paper-faint);letter-spacing:.15em;text-transform:uppercase;font-size:.58rem;font-weight:850}.journal-summary{font-size:.76rem;line-height:1.5}.journal-feed small{color:var(--paper-faint);font-size:.68rem;line-height:1.5}.encounter-order{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.encounter-order li{border:1px solid var(--rule);background:var(--ink-well);padding:.4rem .6rem;font-size:.76rem;font-weight:700}.encounter-order li[data-turn=true]{border-color:var(--ember);color:var(--ember);background:var(--ink-surface)}.encounter-monsters li[data-defeated=true] strong,.encounter-roster li[data-defeated=true] strong{color:var(--paper-faint);text-decoration:line-through}.encounter-strip{gap:.6rem;margin-bottom:.9rem;display:grid}.advisory-card{border:1px solid var(--rule-lit);border-left:3px solid var(--paper);background:var(--ink-surface);padding:.7rem}.advisory-card .eyebrow{margin-bottom:.4rem}.advisory-text{margin:0;font-size:.85rem;line-height:1.55}@media (width>=56rem){.home-entry{padding-right:40%}.home-entry-copy h1{font-size:clamp(3.8rem,5.5vw,5.25rem)}.home-entry-visual img{object-position:center}.home-entry-visual:after{background:linear-gradient(90deg,#050504ed 0%,#050504b3 42%,#05050414 74%),linear-gradient(#0505041f,#05050470)}}@media (width>=44rem){.home-guide-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.home-guide-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.table-invite-display{grid-template-columns:minmax(15rem,.82fr) minmax(0,1.18fr)}.hero-copy{position:relative}.hero-marginalia{margin:0;position:absolute;bottom:-1.8rem;right:-1.25rem}.home-goals{padding-right:6.5rem}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(20rem,.78fr)}.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-section-wide{grid-column:1/-1}.table-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.table-principles>div{padding:1.1rem}.table-principles>div:nth-child(odd){border-right:1px solid var(--rule)}.character-grid,.ability-roll-paths,.choice-grid,.compact-grid,.sheet-grid,.talent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-grid .span-two{grid-column:1/-1}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.update-banner{left:auto}}@media (width<=34rem){.sheet-header.completed-sheet-header.with-portrait{grid-template-columns:5.75rem minmax(0,1fr);align-items:center}.completed-sheet-header .generated-image-preview img{height:7rem}.completed-sheet-header .generated-image-loading{min-height:7rem}.completed-sheet-options{width:100%;min-height:2.5rem}.completed-sheet-header h1{font-size:clamp(2.35rem,12vw,3.4rem)}.completed-sheet-header .sheet-meta{gap:.2rem .55rem;margin-top:.55rem}.home-entry-actions{grid-template-columns:1fr}.campaign-self-start{display:grid}.codex-connection{grid-template-columns:1fr}.codex-connection-actions,.codex-connection-actions button,.campaign-self-start>button{width:100%}.generated-image-reviews>header,.generated-image-history li{display:grid}.generated-image-reviews>header>span{width:fit-content}.generated-image-preview img{max-height:52vh}.campaign-creation-roster li{display:grid}.campaign-creation-roster li>button{width:100%}.manual-host-tools-heading{align-items:stretch;display:grid}.manual-host-tools-heading>button{width:100%}.table-lobby-heading,.lobby-recovery,.table-roster li{grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch;display:grid}.table-lobby-heading .lobby-status{justify-self:start}.table-lobby-actions,.table-roster li .actions,.table-invite-share .actions{grid-template-columns:1fr;width:100%;margin-top:0;display:grid}.table-lobby-actions button,.table-roster li button,.table-invite-share button,.lobby-recovery button{width:100%}.gear-editor-heading{align-items:stretch}.gear-editor-heading,.gear-editor-heading>div{grid-template-columns:1fr;display:grid}.gear-editor-heading>button{width:100%}.gear-editor-row{grid-template-columns:repeat(2,minmax(0,1fr))}.gear-editor-row .gear-name,.gear-editor-row .gear-notes{grid-column:1/-1}.gear-editor-row>button{grid-column:1/-1;justify-self:start}.shop-items{grid-template-columns:1fr}.shop-ledger{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-ledger>div:nth-child(2){border-right:0}.shop-ledger>div:nth-child(-n+2){border-bottom:1px solid var(--rule)}.shop-equipped-body{grid-template-columns:1fr}.shop-item{align-items:center;padding:.65rem}.shop-quantity{grid-template-columns:repeat(3,2.75rem)}.shop-checkout-bar{grid-template-columns:minmax(0,1fr) minmax(6.8rem,.42fr)}.shop-checkout-bar button{min-height:3.1rem}.spell-preview-body dl{grid-template-columns:repeat(2,minmax(0,1fr))}.physical-roll-cluster{grid-template-columns:1fr}.in-app-roll-toolbar{align-items:stretch;display:grid}.in-app-roll-toolbar button{width:100%}.check-roller-heading{display:grid}.guided-draft-heading,.guided-multi-fields{grid-template-columns:1fr;display:grid}.selected-choice-summary ul{display:grid}.selected-choice-summary li{grid-template-columns:minmax(0,1fr) auto;display:grid}.talent-roll-actions{grid-template-columns:1fr;display:grid}.guided-draft-heading .audit-badge,.check-roller-heading .audit-badge{width:fit-content}}@media (width<=22rem){.home-entry{padding:1.35rem 1rem}.home-entry-copy h1{font-size:2.68rem}.lede{margin-top:.9rem;font-size:.9rem;line-height:1.52}.home-entry-actions{gap:.45rem;margin-top:1rem}.home-entry-actions button{min-height:3rem}.home-entry-trust{margin-top:.7rem;font-size:.78rem;line-height:1.5}}@media (width>=25rem) and (width<=34rem){.shop-ledger{grid-template-columns:repeat(4,minmax(0,1fr))}.shop-ledger>div,.shop-ledger>div:nth-child(-n+2){border-right:1px solid var(--rule);border-bottom:0}.shop-ledger>div:last-child{border-right:0}}@media (width<=25rem){.shop-cart li{grid-template-columns:minmax(0,1fr) auto}.shop-cart li>button{grid-column:1/-1;justify-self:start}.brand{gap:.45rem}.brand-mark{width:2rem;height:2rem}.brand strong{font-size:1.4rem}.header-link{padding-left:.55rem;padding-right:.55rem}.in-app-roll-toolbar,.update-banner{align-items:stretch;display:grid}.section-body,.ability-roll-controls{padding:.55rem}.in-app-roller-cluster,.physical-roll-cluster{padding:.5rem}.dice-engine-stage{height:12.5rem}.app-roll-receipt-dice .authoritative-dice-row{gap:clamp(.3rem,2.5vw,.65rem)}.app-dice-fallback-fields,.check-mode-picker{gap:.3rem}.check-mode-picker button{letter-spacing:.035em;min-height:2.5rem;font-size:.53rem}.check-result{display:grid}.dice-result-summary{grid-template-columns:minmax(0,3fr) minmax(4.25rem,1fr);gap:.4rem;padding:.5rem;display:grid}.dice-result-faces{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.dice-result-face,.dice-result-total{min-width:0}.dice-result-total{min-height:0;padding-left:.35rem;padding-right:.35rem;display:grid}.vitals{grid-template-columns:1.3fr 1fr}.vitals .hp-vital{grid-row:1/span 2}.vitals .vital:last-child{grid-column:2}.wizard-heading{display:grid}}@media (width<=21rem){.physical-total-entry{align-items:stretch;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.player-library{border:1px solid color-mix(in srgb, var(--ink) 22%, transparent);background:color-mix(in srgb, var(--paper) 94%, var(--ember) 6%);width:100%;max-width:78rem;color:var(--ink);border-radius:.7rem;margin:0 auto .85rem;overflow:clip}.character-sheet>.player-library{max-width:none}button.player-library-toggle{text-align:left;width:100%;min-height:3.5rem;color:var(--ink);border:0;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .85rem;display:flex}button.player-library-toggle>span:first-child{gap:.15rem;display:grid}button.player-library-toggle small{color:var(--muted);font-weight:500}.player-library-count{min-width:2rem;min-height:2rem;color:var(--paper);background:var(--ink);border-radius:999px;place-items:center;font-weight:800;display:grid}.player-library-content{border-top:1px solid color-mix(in srgb, var(--ink) 18%, transparent);padding:.85rem}.player-library-browser{gap:.9rem;display:grid}.player-library-group+.player-library-group{margin-top:.9rem}.player-library-group h3{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 .4rem;font-size:.8rem}.player-library-group ul{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.player-library-group button{text-align:left;width:100%;min-height:3rem;color:var(--ink);gap:.1rem;padding:.55rem .65rem;display:grid}.player-library-group button.selected{outline:2px solid var(--ember);outline-offset:1px}.player-library-group button span{font-weight:800}.player-library-detail{background:color-mix(in srgb, var(--paper) 78%, white 22%);min-height:7rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:.55rem;padding:.85rem}.player-library-detail.active{order:-1}.player-library-detail h3{color:var(--ink);margin:.2rem 0 .65rem}.player-library-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.player-library-illustration{gap:.65rem;display:grid}.player-library-illustration .generated-image-preview{max-width:100%}@media (width>=48rem){.player-library-browser{grid-template-columns:minmax(13rem,18rem) minmax(0,1fr);align-items:start}.player-library-detail.active{order:0}}.ability-roll-paths :is(.in-app-roll-toolbar,.physical-total-entry) button{width:100%;min-height:2.75rem}
