@font-face{font-family:IM Fell English;font-style:normal;font-display:swap;font-weight:400;src:url(/game/assets/im-fell-english-latin-400-normal-BhowGHCQ.woff2) format("woff2"),url(/game/assets/im-fell-english-latin-400-normal-CxhBQSzl.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(/game/assets/im-fell-english-latin-400-italic-DD_ylKHZ.woff2) format("woff2"),url(/game/assets/im-fell-english-latin-400-italic-hN89MLGX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #15110f;--bone: #e6d9bf;--blood: #a3171b;--red-text: #e5533f;--page: #000000;--text: var(--bone);--bg: var(--ink);--border: 1px;--focus: 2px;--body-size: 1.0625rem;--fs-note: .9em;--fs-small: .85em;--fs-fine: .8em;--font: "IM Fell English", Georgia, serif;--font-sc: "IM Fell English SC", Georgia, serif}html.font-atkinson{--font: "Atkinson Hyperlegible", Verdana, sans-serif;--font-sc: "Atkinson Hyperlegible", Verdana, sans-serif}html.text-125{--body-size: 1.3125rem}html.text-150{--body-size: 1.59375rem}html.hc{--text: #ffffff;--bg: #000000;--border: 2px;--focus: 3px;--bone: #ffffff}*{box-sizing:border-box}:root{color-scheme:only dark}html,body{margin:0;background:var(--page)}body{color:var(--text);font-family:var(--font);font-size:var(--body-size);line-height:1.45}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-sc);font-weight:400;letter-spacing:.03em;margin:0 0 .4em}h1:focus{outline:none}:focus-visible{outline:var(--focus) solid var(--bone);outline-offset:2px}button,input,select{font:inherit;color:inherit}button{background:transparent;border:var(--border) solid var(--bone);color:var(--text);padding:.4em .8em;min-height:44px;min-width:44px;cursor:pointer}button:hover:not(:disabled){background:var(--bone);color:var(--ink)}html.hc button:hover:not(:disabled){color:#000}button:disabled{opacity:.6;cursor:not-allowed}.opt:disabled .hint.why{opacity:1}input,select{background:var(--bg);border:var(--border) solid var(--bone);padding:.35em .5em;min-height:44px}a{color:var(--bone)}.screen{max-width:980px;margin:0 auto;padding:16px}.screen-narrow{max-width:640px}.stack{display:flex;flex-direction:column;gap:10px}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.muted{opacity:.8}.banner{background:var(--blood);color:var(--bone);padding:6px 12px;outline:1.5px solid var(--bone)}.scene-frame{border:2px solid var(--bone);background:var(--ink);line-height:0}.scene-frame svg{width:100%;height:auto;display:block}.scene-frame{container-type:inline-size}@container (max-width: 760px){.scene-frame svg{--label-scale: 1.25}}@container (max-width: 560px){.scene-frame svg{--label-scale: 1.6}}@container (max-width: 420px){.scene-frame svg{--label-scale: 1.9}}.title-name{font-size:2.4em}.game{display:grid;gap:10px;padding:10px;max-width:1600px;margin:0 auto}.game.layout-wide{grid-template-columns:58fr 42fr;height:100vh}.game.layout-wide .left{display:flex;flex-direction:column;gap:8px;min-width:0}.game.layout-wide .right{display:flex;flex-direction:column;gap:8px;min-height:0;position:relative}.game.layout-mid,.game.layout-narrow{grid-template-columns:1fr}.game.layout-mid .scene-frame svg{max-height:45vh}.game.layout-narrow .scene-frame svg{max-height:40vh}.game.layout-narrow{padding-bottom:64px}.party-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border:var(--border) solid var(--bone);padding:6px 10px}.member{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.hp{width:120px;height:10px;background:var(--ink);display:inline-block;position:relative}.hp>span{display:block;height:100%;background:var(--blood)}.log{flex:1;min-height:30vh;overflow-y:auto;border:var(--border) solid var(--bone);padding:8px 12px;background:var(--bg)}.game.layout-wide .log{min-height:0}.log p{margin:0 0 6px}.log .room{font-family:var(--font-sc);color:var(--red-text);letter-spacing:.06em;margin-top:8px}html.hc .log .room{color:#fff;text-decoration:underline}.log .system{opacity:.85;font-style:italic}.log .roll,.roll-line{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-fine);border-left:3px solid var(--blood);padding-left:8px;overflow-wrap:anywhere}.roll-line{min-height:1.6em}.tier-bad{color:var(--red-text)}html.hc .tier-bad{color:#fff;text-decoration:underline}.initiative{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--fs-small)}.initiative .current{text-decoration:underline}.options{display:grid;gap:6px;grid-template-columns:1fr;margin:0;padding:0;list-style:none}.options[data-columns="2"]{grid-template-columns:1fr 1fr}.opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;min-height:44px}.opt .badge{font-family:ui-monospace,monospace;min-width:1.2em}.opt .label{flex:1}.opt .dmg{font-family:ui-monospace,monospace;font-size:var(--fs-small);white-space:nowrap}.opt .odds{font-family:ui-monospace,monospace;font-size:var(--fs-small)}.command{display:flex;gap:6px}.command input{flex:1;min-width:0}.drawer{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);border:var(--border) solid var(--bone);padding:12px;overflow-y:auto;z-index:5}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:60vh;overflow-y:auto;background:var(--bg);border-top:2px solid var(--bone);padding:12px 16px;z-index:5}.tabbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--bg);border-top:2px solid var(--bone);z-index:6}.tabbar button{border:none;border-right:1px solid var(--bone)}.tabbar button[aria-pressed=true]{background:var(--bone);color:var(--ink)}.panel h2{margin-top:0}.panel table{border-collapse:collapse;width:100%}.panel td,.panel th{border-bottom:1px solid rgba(230,217,191,.3);padding:4px 6px;text-align:left;vertical-align:top}.map svg{width:100%;max-height:50vh;background:var(--ink);border:var(--border) solid var(--bone)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:grid;place-items:center;z-index:20;padding:16px}.modal{background:var(--bg);border:2px solid var(--bone);padding:18px;max-width:560px;width:100%;max-height:90vh;overflow-y:auto}.reveal{text-align:center;border:4px double var(--bone)}.grid-ach{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.card{border:var(--border) solid var(--bone);padding:10px}.bar{height:10px;border:1px solid var(--bone);margin-top:6px}.bar>span{display:block;height:100%;background:var(--bone)}fieldset{border:var(--border) solid var(--bone);margin:0 0 12px}legend{font-family:var(--font-sc)}.choice{display:flex;gap:8px;align-items:center;min-height:44px}.steps{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--fs-small);list-style:none;padding:0}.steps [aria-current=step]{text-decoration:underline}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.dev-scenes .scene-frame{margin-bottom:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::selection{background:var(--blood);color:var(--bone)}html{scrollbar-color:rgba(230,217,191,.35) var(--page)}body{background:radial-gradient(ellipse at 50% 0%,#15110f 0%,var(--page) 70%) fixed}html.hc body{background:#000}button{transition:background-color .12s ease,color .12s ease,transform 80ms ease,box-shadow .12s ease}button:active:not(:disabled){transform:translateY(1px)}button.primary{border-width:2px;font-family:var(--font-sc);letter-spacing:.04em;box-shadow:inset 0 0 0 1px var(--ink),0 0 0 1px #a3171b00}button.primary:not(:disabled){box-shadow:0 0 0 1px var(--blood)}button.quiet{border-style:dashed;opacity:.9}button.danger{color:var(--red-text);border-color:var(--red-text)}button.danger:hover:not(:disabled){background:var(--blood);color:var(--bone);border-color:var(--bone)}html.hc button.danger{color:#fff;border-color:#fff}input[type=radio],input[type=checkbox]{accent-color:var(--blood);width:1.1em;height:1.1em}select{cursor:pointer}kbd{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-fine);border:1px solid var(--bone);border-bottom-width:2px;padding:0 .4em}.small{font-size:var(--fs-small)}.warn{color:var(--red-text);margin:0}html.hc .warn{color:#fff;text-decoration:underline}#root>main{animation:screen-in .38s ease-out both}@keyframes screen-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.title-screen{max-width:1100px;display:flex;flex-direction:column;gap:18px;padding-top:24px}.title-hero,.title-art{position:relative}.title-hero .scene-frame{border-width:2px;box-shadow:0 0 0 6px var(--page),0 0 0 7px #e6d9bf59}.title-veil{position:absolute;top:2px;right:2px;bottom:2px;left:2px;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,#0000 35%,#000000bf),linear-gradient(to bottom,#000c,#0000 32%)}.title-card{position:absolute;left:0;right:0;top:1.5%;z-index:1;text-align:center;pointer-events:none}.title-kicker{margin:0;color:var(--red-text);font-size:1.1em;letter-spacing:.4em;animation:title-in 1.4s ease-out both}.title-card .seal-corona{width:54px;height:54px;margin-bottom:0}.title-name{font-size:clamp(2.2em,6vw,4em);line-height:1.08;margin:0;letter-spacing:.08em;text-shadow:0 2px 0 var(--ink),0 0 24px rgba(0,0,0,.9);animation:title-in 1.6s ease-out both}.title-mode{margin:0;font-family:var(--font-sc);letter-spacing:.3em;text-transform:uppercase;font-size:clamp(.8em,1.8vw,1.05em);color:var(--bone);text-shadow:0 0 2px var(--ink),0 0 12px rgba(0,0,0,.9);animation:title-in 2s ease-out both}.title-bubble{position:absolute;transform:translate(-50%);margin:0;max-width:46%;width:max-content;padding:.35em .8em;background:var(--bone);color:var(--ink);border:2px solid var(--ink);border-radius:12px;font-style:italic;letter-spacing:.03em;text-align:center;pointer-events:none;box-shadow:0 0 18px #000c;animation:fade-late 2.6s ease-out both}.title-bubble-who{display:block;font-style:normal;font-family:var(--font-sc);font-size:var(--fs-fine);letter-spacing:.06em;opacity:.8}.title-bubble:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border:9px solid transparent;border-top-color:var(--bone)}html.hc .title-bubble{background:#fff;color:#000;border-color:#000}html.hc .title-bubble:after{border-top-color:#fff}@keyframes title-in{0%{opacity:0;letter-spacing:.3em;filter:blur(3px)}60%{opacity:0}to{opacity:1;filter:none}}@keyframes fade-late{0%,55%{opacity:0}to{opacity:1}}.title-lower{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;animation:fade-late 1.8s ease-out both}.title-menu{display:flex;flex-direction:column;gap:8px;width:min(320px,100%)}.title-menu button{width:100%;font-family:var(--font-sc);letter-spacing:.06em;font-size:1.08em;position:relative}.title-menu button:before,.title-menu button:after{content:"";position:absolute;top:50%;width:0;height:2px;background:var(--blood);transition:width .16s ease}.title-menu button:before{right:calc(100% + 8px)}.title-menu button:after{left:calc(100% + 8px)}.title-menu button:hover:before,.title-menu button:hover:after,.title-menu button:focus-visible:before,.title-menu button:focus-visible:after{width:28px}.title-blurb{max-width:560px;margin:0 auto;text-align:center;font-style:italic;opacity:.9;animation:fade-late 2.2s ease-out both}.title-career,.title-foot{margin:0;font-size:var(--fs-small)}.creation{max-width:980px}.creation-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 14px;font-size:var(--fs-note);counter-reset:none}.steps li{display:flex}.steps .step-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;min-height:44px;border:1px solid rgba(230,217,191,.35);opacity:.7}.steps button.step-btn{min-width:0;cursor:pointer;opacity:.9}.steps .step-n{display:inline-grid;place-items:center;width:1.6em;height:1.6em;border:1px solid var(--bone);font-family:ui-monospace,monospace;font-size:var(--fs-small)}.steps .done .step-n{background:var(--bone);color:var(--ink)}.steps .now .step-btn{opacity:1;border-color:var(--bone);border-width:2px}.steps .now .step-n{background:var(--blood);color:var(--bone);outline:1.5px solid var(--bone)}.steps [aria-current=step]{text-decoration:none}.creation-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start}@media (max-width: 760px){.creation-grid{grid-template-columns:1fr}.life-card{order:-1}}.creation-step{animation:step-in .24s ease-out both}@keyframes step-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.creation-nav{justify-content:space-between}.creation-nav .primary{min-width:140px}.cards{display:grid;gap:10px}.pick-card{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid rgba(230,217,191,.4);cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.pick-card:hover{border-color:var(--bone);background:#e6d9bf0a}.pick-card.on{border:2px solid var(--bone);padding:11px;box-shadow:inset 4px 0 0 var(--blood)}.pick-card input{margin-top:.3em}.pick-body{display:flex;flex-direction:column;gap:4px}.pick-name{font-family:var(--font-sc);font-weight:400;font-size:1.15em;letter-spacing:.03em}.pick-blurb{font-style:italic;opacity:.9}.pick-facts{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:var(--fs-small);opacity:.85}.pick-facts>span:before{content:"· ";color:var(--red-text)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.stat-pick{display:grid;grid-template-columns:4.2em auto 2.4em;gap:8px;align-items:center;min-height:44px;padding:4px 8px;border:1px solid transparent}.stat-pick.key{border-color:#e6d9bf59}.stat-pick.dup select{border-color:var(--red-text);color:var(--red-text)}.stat-key{display:flex;flex-direction:column;line-height:1.1}.key-tag{font-size:var(--fs-fine);color:var(--red-text);text-transform:uppercase;letter-spacing:.1em}html.hc .key-tag{color:#fff}.stat-mod{font-family:ui-monospace,monospace;font-size:var(--fs-note)}.name-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.name-row .grow{flex:1}.name-row input{flex:1;min-width:0}.life-card{border:1px solid var(--bone);padding:12px 14px;position:sticky;top:12px;background:var(--bg);box-shadow:4px 4px 0 var(--page),5px 5px #e6d9bf4d}.life-card p{margin:0 0 6px}.life-title{font-family:var(--font-sc);font-size:var(--fs-fine);letter-spacing:.1em;opacity:.8}.life-name{font-family:var(--font-sc);font-size:1.5em;line-height:1.1}.life-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 8px;font-size:var(--fs-note)}.scene-frame{position:relative;transition:border-color .3s ease,box-shadow .3s ease}.game.in-combat .left .scene-frame{border-color:var(--blood);box-shadow:0 0 0 1.5px var(--bone),inset 0 0 0 1px var(--blood)}.scene-frame.hurt{animation:hurt .42s ease-out}.scene-frame.hurt:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 60px 10px #a3171bbf;animation:hurt-flash .42s ease-out forwards}@keyframes hurt{0%,to{transform:none}20%{transform:translate(-4px,2px)}45%{transform:translate(4px,-2px)}70%{transform:translate(-2px,1px)}}@keyframes hurt-flash{0%{opacity:1}to{opacity:0}}.party-bar{gap:8px 12px}.party-bar .menu-btn{margin-left:auto}.hp{transition:none;overflow:visible;border:1px solid rgba(230,217,191,.45)}.hp>span[data-hp-fill]{transition:width .42s cubic-bezier(.2,.8,.2,1)}.hp.hp-low>span[data-hp-fill]{animation:pulse-low 1.2s ease-in-out infinite alternate}@keyframes pulse-low{0%{opacity:1}to{opacity:.55}}.hp.hp-hurt{animation:bar-shake .3s linear}@keyframes bar-shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.hp-float{position:absolute;right:-4px;top:-1.1em;font-family:ui-monospace,monospace;font-size:var(--fs-small);font-weight:700;pointer-events:none;animation:float-up 1.1s ease-out forwards;text-shadow:0 1px 0 var(--ink)}.hp-float.neg{color:var(--red-text)}.hp-float.pos{color:var(--bone)}html.hc .hp-float.neg{color:#fff}@keyframes float-up{0%{opacity:1;transform:translateY(4px)}to{opacity:0;transform:translateY(-14px)}}.hp-small{width:80px;height:7px}.status-words{font-style:italic;color:var(--red-text)}html.hc .status-words{color:#fff}.journal{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,42%);gap:12px;border:var(--border) solid rgba(230,217,191,.5);padding:10px 12px;min-height:0;flex:1;overflow:hidden}.journal p{margin:0 0 6px}.journal-room{font-family:var(--font-sc);color:var(--red-text);letter-spacing:.06em;font-size:1.15em}html.hc .journal-room{color:#fff}.exit-chip{display:inline-block;border:1px solid var(--bone);padding:0 6px;margin:0 4px 4px 0;font-size:var(--fs-small);font-family:var(--font-sc)}.journal-meter{display:grid;grid-template-columns:1fr;gap:2px;margin-bottom:8px;font-size:var(--fs-small)}.bar.thin{height:6px;margin-top:0;display:block}.bar>span{transition:width .5s ease}.bar.light>span{background:var(--red-text)}html.hc .bar.light>span{background:#fff}.bar.out{opacity:.5}.journal-turn{font-size:var(--fs-fine)}.journal-map{display:grid;place-items:center;min-height:0}.journal-map svg{width:100%;height:100%;max-height:220px}.map-here{animation:here 1.6s ease-in-out infinite alternate}@keyframes here{0%{opacity:1}to{opacity:.6}}.log{scroll-behavior:smooth}.log p.old{opacity:.68}.log p.old.room{opacity:.8}.log p.fresh{animation:line-in .32s ease-out both}@keyframes line-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.log .room{border-top:1px solid rgba(230,217,191,.2);padding-top:8px}.log .room:first-child{border-top:none;padding-top:0}.roll-line.empty{border-left-color:transparent}.roll-line:not(.empty){animation:roll-pop .26s ease-out}@keyframes roll-pop{0%{background:#e6d9bf24}to{background:transparent}}.tier-crit{text-decoration:underline double}.log .roll .tier-bad,.roll-line .tier-bad{font-weight:700}.initiative{align-items:center}.initiative .round{font-family:var(--font-sc);letter-spacing:.06em;margin-right:4px}.initiative span.ally,.initiative span.foe{border:1px solid rgba(230,217,191,.4);padding:0 6px}.initiative span.foe{color:var(--red-text)}html.hc .initiative span.foe{color:#fff}.initiative span.current{background:var(--bone);color:var(--ink);text-decoration:none;border-color:var(--bone)}.initiative .enemies-act{color:var(--red-text);font-style:italic;animation:pulse-low .6s ease-in-out infinite alternate}html.hc .initiative .enemies-act{color:#fff}.foes{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--fs-small)}.foes li{display:flex;align-items:center;gap:6px}.foes li.current .foe-name{text-decoration:underline}.foe-name{font-family:var(--font-sc);letter-spacing:.03em}.guide{border:1px solid var(--bone);border-left:4px solid var(--blood);padding:8px 12px;background:#e6d9bf0d;animation:guide-in .36s ease-out both}.guide p{margin:0 0 4px}.guide-title{font-family:var(--font-sc);letter-spacing:.05em;color:var(--red-text)}html.hc .guide-title{color:#fff}.guide-actions{gap:6px}.guide-actions button{min-height:44px;padding:.2em .7em;font-size:var(--fs-note)}@keyframes guide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.option-wrap.is-locked .options{opacity:.7}.options li{animation:opt-in .22s ease-out both;animation-delay:calc(var(--i, 0) * 18ms)}@keyframes opt-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.options li.group-start{margin-top:6px}.options[data-columns="2"] li.group-start{margin-top:0}.opt{position:relative}.opt:hover:not(:disabled) .badge,.opt:focus-visible .badge{color:var(--blood)}.opt:not(:disabled):hover{box-shadow:inset 4px 0 0 var(--blood)}.opt .badge{display:inline-grid;place-items:center;width:1.5em;height:1.5em;border:1px solid rgba(230,217,191,.45);font-size:var(--fs-small)}.opt .badge:empty{border-color:transparent}.opt .label{display:block}.opt .glyph{font-family:ui-monospace,monospace;margin-right:2px}.opt .hint{display:block;font-size:var(--fs-fine);opacity:.75;line-height:1.25;margin-top:1px}.opt .hint.why{font-style:italic}.opt .cost{font-size:var(--fs-fine);text-transform:uppercase;letter-spacing:.08em;border:1px solid currentColor;padding:0 4px;opacity:.8}.opt .odds{min-width:3em;text-align:right}.opt .odds.good{font-weight:700}.opt .odds.poor{color:var(--red-text)}.opt:hover:not(:disabled) .odds.poor{color:var(--blood)}html.hc .opt .odds.poor{color:#fff;text-decoration:underline}.opt-gear{opacity:.85}.more{display:inline-flex;align-items:center;gap:8px;margin-top:6px}.kbd-hint{font-family:ui-monospace,monospace;font-size:var(--fs-fine);border:1px solid currentColor;padding:0 4px;opacity:.7}.command input{transition:border-color .12s ease}.command input:focus{border-color:var(--bone);box-shadow:inset 0 -2px 0 var(--blood);outline:none}.drawer,.sheet{animation:drawer-in .22s ease-out both}@keyframes drawer-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.sheet{animation-name:sheet-in}@keyframes sheet-in{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.drawer>button:first-child,.sheet>button:first-child{float:right;margin-left:8px}.map-legend{font-size:var(--fs-fine);display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.swatch{display:inline-block;width:12px;height:12px;border:1.5px solid var(--bone)}.swatch.here{background:var(--blood)}.swatch.seen{background:var(--bone)}.swatch.unknown{background:var(--ink)}.map-travel{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.map-travel label{font-family:var(--font-sc);letter-spacing:.04em}.map-travel select{flex:1 1 12em;min-width:0;min-height:44px;background:var(--ink);color:var(--bone);border:var(--border) solid var(--bone);font:inherit;padding:4px 8px}.map-travel button{min-height:44px}.map-route-line{font-size:var(--fs-small);margin-top:6px}.map svg .map-target{cursor:pointer}.map svg .map-target:focus-visible{outline:2px solid var(--bone);outline-offset:2px}.map-route{stroke-dasharray:5 4;animation:route .9s linear infinite}@keyframes route{to{stroke-dashoffset:-9}}.reduced-motion .map-route,.map.still .map-route{animation:none}@media (prefers-reduced-motion: reduce){.map-route{animation:none}}.modal-back{animation:fade-in .16s ease-out both;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{animation:modal-in .2s ease-out both;box-shadow:0 0 0 6px var(--bg),0 0 0 7px #e6d9bf66}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.menu-list button{width:100%;text-align:left;font-family:var(--font-sc);letter-spacing:.04em}.menu-list button.danger{margin-top:8px}.levelup .levelup-opt .label{display:block}.reveal{padding:24px}.reveal-seal{font-size:2.4em;color:var(--red-text);margin:0;animation:seal .7s cubic-bezier(.2,1.4,.4,1) both}html.hc .reveal-seal{color:#fff}@keyframes seal{0%{transform:scale(2.2) rotate(-20deg);opacity:0}to{transform:none;opacity:1}}.reveal-kicker{letter-spacing:.2em;text-transform:uppercase;font-size:var(--fs-fine)}.reveal{position:relative;overflow:hidden}.reveal>:not(.reveal-rays){position:relative}.reveal-rays{position:absolute;left:50%;top:64px;width:520px;height:520px;margin:-260px 0 0 -260px;background:repeating-conic-gradient(rgba(163,23,27,.22) 0deg 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000000 0 20%,transparent 62%);mask:radial-gradient(circle,#000000 0 20%,transparent 62%);animation:rays 14s linear infinite,fade-in .6s ease-out both;pointer-events:none}@keyframes rays{to{transform:rotate(360deg)}}.reveal.tier-mythic{box-shadow:0 0 0 1px var(--blood),0 0 40px #a3171b99}.reveal.tier-mythic .reveal-rays{background:repeating-conic-gradient(rgba(229,83,63,.3) 0deg 5deg,transparent 5deg 12deg)}.reveal .reveal-seal{line-height:0}.reveal-count{display:flex;flex-direction:column;align-items:center;gap:4px;margin:10px auto 0;max-width:240px}.reveal-count .bar{width:100%}.reveal-count .bar>span{background:var(--blood)}html.hc .reveal-rays{display:none}.settings-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-head h1{margin:0}.settings-section{border-top:1px solid rgba(230,217,191,.3);padding-top:12px;display:flex;flex-direction:column;gap:10px}.settings-section h2{font-size:1.1em;margin:0;opacity:.9}.seg-group{border:none;padding:0;margin:0}.seg-group legend{padding:0;margin-bottom:6px;font-size:.95em}.seg{display:inline-flex;flex-wrap:wrap;border:var(--border) solid var(--bone)}.seg label{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;cursor:pointer;border-right:1px solid rgba(230,217,191,.4);transition:background-color .12s ease,color .12s ease}.seg label:last-child{border-right:none}.seg label:hover{background:#e6d9bf14}.seg label.on{background:var(--bone);color:var(--ink)}html.hc .seg label.on{color:#000}.seg input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;cursor:pointer}.seg label:has(input:focus-visible){outline:var(--focus) solid var(--bone);outline-offset:2px;z-index:1}.toggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;position:relative}.toggle input{position:absolute;opacity:0;width:44px;height:24px;margin:0;cursor:pointer}.toggle-track{width:44px;height:24px;border:var(--border) solid var(--bone);position:relative;flex:none;transition:background-color .15s ease}.toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--bone);transition:transform .15s ease}.toggle input:checked+.toggle-track{background:var(--blood);outline:1.5px solid var(--bone)}.toggle input:checked+.toggle-track:after{transform:translate(20px)}.toggle input:focus-visible+.toggle-track{outline:var(--focus) solid var(--bone);outline-offset:2px}.preview{border:1px dashed rgba(230,217,191,.4);padding:8px 12px;margin:0;font-style:italic}.keys{display:grid;grid-template-columns:1fr;gap:4px;margin:0}.keys div{display:grid;grid-template-columns:8em 1fr;gap:8px;align-items:baseline}.keys dd{margin:0}.danger-zone h2{color:var(--red-text)}html.hc .danger-zone h2{color:#fff}.ach-screen{gap:14px}.ach-kicker{margin:0;font-family:var(--font-sc);letter-spacing:.2em;text-transform:uppercase;font-size:var(--fs-fine);opacity:.8}.ach-summary{margin:0;font-family:var(--font-sc);letter-spacing:.04em;font-size:1.35em}.ach-hero{display:flex;align-items:center;gap:18px;padding:14px 16px;border:3px double var(--bone);background:radial-gradient(ellipse at 20% 50%,rgba(163,23,27,.16),transparent 60%);animation:screen-in .3s ease-out both}.ach-hero-text{display:flex;flex-direction:column;gap:4px;min-width:0}.ach-secrets{margin:0}.ach-new-count{color:var(--red-text);font-family:var(--font-sc);letter-spacing:.06em}html.hc .ach-new-count{color:#fff}.ach-tiers{list-style:none;display:flex;flex-wrap:wrap;gap:4px 14px;padding:0;margin:4px 0 0;font-size:var(--fs-small)}.ach-tiers li{display:inline-flex;align-items:center;gap:6px}.tier-mark{display:inline-block;width:9px;height:9px;transform:rotate(45deg);border:1px solid var(--bone)}.tier-grim .tier-mark{background:var(--bone)}.tier-mythic .tier-mark{background:var(--blood);outline:1.5px solid var(--bone);outline-offset:1px}.seal-ring{flex:none}.seal-ring .ring-outer{fill:none;stroke:var(--bone);stroke-width:1;stroke-dasharray:2 4;opacity:.6}.seal-ring .ring-track{fill:none;stroke:#e6d9bf24;stroke-width:10}.seal-ring .ring-fill{fill:none;stroke:var(--blood);stroke-width:10;animation:ring-fill 1.1s cubic-bezier(.2,.8,.2,1) .15s both}.seal-ring .ring-tick{stroke:var(--bone);stroke-width:1;opacity:.5}.seal-ring .ring-pct{fill:var(--bone);font-family:var(--font-sc);font-size:22px}html.hc .seal-ring .ring-fill{stroke:#fff}.ach-hero.complete .seal-ring{animation:ring-glow 2.4s ease-in-out infinite alternate}@keyframes ring-fill{0%{stroke-dashoffset:var(--ring-c)}}@keyframes ring-glow{0%{filter:none}to{filter:drop-shadow(0 0 10px rgba(229,83,63,.7))}}.ach-closest h2,.ach-chapter h2{font-size:1.15em}.ach-closest ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.ach-closest li{animation:opt-in .26s ease-out both;animation-delay:calc(var(--i, 0) * 70ms + .2s)}.ach-closest-card{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:6px;text-align:left;border-color:var(--blood);background:#a3171b1a}.ach-closest-card:hover:not(:disabled) .muted{opacity:1}.ach-closest-name{display:flex;align-items:center;gap:6px;font-family:var(--font-sc)}.tip{position:fixed;left:0;top:0;z-index:60;max-width:min(340px,calc(100vw - 16px));padding:7px 12px 8px;background:var(--bg);color:var(--text);border:1px solid var(--bone);border-left:4px solid var(--blood);box-shadow:0 8px 20px #000000d9;font-size:var(--fs-note);line-height:1.35;text-align:left;pointer-events:none;animation:tip-in .14s ease-out both}.tip p{margin:0}.tip p+p{margin-top:5px;padding-top:5px;border-top:1px dotted rgba(230,217,191,.35)}.tip-term{font-family:var(--font-sc);letter-spacing:.05em;color:var(--red-text)}html.hc .tip{border-left-color:#fff}html.hc .tip-term{color:#fff}@keyframes tip-in{0%{opacity:0;transform:translateY(3px)}}.glyph{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.ach-filter{display:flex;flex-wrap:wrap;gap:6px}.ach-filter button{display:inline-flex;align-items:center;gap:6px;padding:.3em .7em;font-size:var(--fs-note);border-radius:999px}.ach-filter button[aria-pressed=true]{background:var(--bone);color:var(--ink)}html.hc .ach-filter button[aria-pressed=true]{color:#000}.ach-filter button.done{border-color:var(--blood);box-shadow:inset 0 0 0 1px var(--blood)}.ach-chapter{display:flex;flex-direction:column;gap:10px}.ach-chapter-head{display:flex;gap:12px;align-items:flex-start}.ach-chapter-head>div{flex:1;min-width:0}.ach-chapter-head p{margin:0 0 6px}.ach-chapter-count{font-size:var(--fs-fine)}.ach-crest{display:grid;place-items:center;width:46px;height:46px;border:2px solid var(--bone);transform:rotate(45deg);flex:none;margin:6px}.ach-crest svg{transform:rotate(-45deg)}.ach-chapter.complete .ach-crest{background:var(--blood);box-shadow:0 0 0 2px var(--ink),0 0 0 3.5px var(--bone)}.ach-screen .bar>span,.ach-sheet .bar>span{width:var(--w, 0%);transform-origin:left;animation:bar-grow .9s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 30ms + .25s)}.ach-screen .bar.thin>span{background:var(--blood)}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.grid-ach{list-style:none;padding:0;margin:0}.card.ach{position:relative;display:flex;flex-direction:column;gap:4px;animation:opt-in .26s ease-out both;animation-delay:calc(var(--i, 0) * 25ms);border-color:#e6d9bf73;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.card.ach:hover,.card.ach:focus-within{transform:translateY(-2px);border-color:var(--bone);box-shadow:0 6px 16px #000000b3}.card.ach h3{font-size:1.08em;margin:0;padding-right:2.2em}.card.ach p{margin:0}.card.ach .bar{margin-top:auto}.ach-top{display:flex;align-items:center;gap:8px;font-size:var(--fs-fine);min-height:24px}.ach-glyph{display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(230,217,191,.5);border-radius:50%;opacity:.85;font-family:var(--font-sc)}.ach-tier{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sc);letter-spacing:.1em;text-transform:uppercase;opacity:.85}.ach-flag{font-family:var(--font-sc);letter-spacing:.1em;text-transform:uppercase;padding:0 6px;border:1px solid var(--bone)}.ach-flag.new{background:var(--blood);animation:flag-pulse 1.2s ease-in-out infinite alternate}.ach-flag.near{border-color:var(--red-text);color:var(--red-text)}html.hc .ach-flag.near{color:#fff;border-color:#fff}@keyframes flag-pulse{0%{box-shadow:0 0 #e5533f00}to{box-shadow:0 0 10px 1px #e5533fb3}}.ach-open{all:unset;cursor:pointer;font:inherit}.card.ach .ach-open:hover:not(:disabled),.card.ach .ach-open:active:not(:disabled){background:transparent;color:inherit;transform:none}.ach-open:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.ach-open:focus-visible{outline:none}.card.ach:has(.ach-open:focus-visible){outline:var(--focus) solid var(--bone);outline-offset:2px}.ach-text{line-height:1.35}.ach-hint{font-style:italic;opacity:.75;font-size:var(--fs-note)}.ach-reward{font-size:var(--fs-small);border-top:1px dotted rgba(230,217,191,.35);padding-top:5px;margin-top:2px!important}.ach-foot{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:var(--fs-small)}.card.ach.unlocked{border:3px double var(--bone);background:linear-gradient(160deg,#a3171b24,#e6d9bf0a 55%)}.card.ach.unlocked .bar>span{background:var(--blood);outline:1.5px solid var(--bone)}.card.ach.unlocked .ach-glyph{border-color:var(--bone);opacity:1}.card-seal{position:absolute;top:6px;right:6px}.card.ach.tier-mythic.unlocked{box-shadow:inset 0 0 0 1px var(--blood);overflow:hidden}.card.ach.tier-mythic.unlocked:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(230,217,191,.12) 50%,transparent 60%);background-size:250% 100%;animation:sheen 5s ease-in-out infinite;pointer-events:none}@keyframes sheen{0%{background-position:150% 0}to{background-position:-100% 0}}.card.ach.capstone{border-style:solid;border-width:2px}.card.ach.capstone:not(.unlocked){background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(230,217,191,.03) 8px 9px)}.card.ach.near:not(.unlocked){border-color:var(--blood);animation:opt-in .26s ease-out both,ember 1.8s ease-in-out .6s infinite alternate;animation-delay:calc(var(--i, 0) * 25ms),calc(var(--i, 0) * 25ms + .6s)}@keyframes ember{0%{box-shadow:0 0 #a3171b00}to{box-shadow:0 0 14px 1px #a3171b8c}}.card.ach.secret{border-style:dashed;background:repeating-linear-gradient(45deg,transparent 0 6px,rgba(230,217,191,.025) 6px 7px)}.card.ach.secret h3{letter-spacing:.3em;animation:secret-flicker 4s steps(1) infinite}@keyframes secret-flicker{0%,to{opacity:1}91%{opacity:.4}93%{opacity:1}95%{opacity:.6}}.card.ach.fresh .card-seal,.ach-sheet.fresh .wax-seal{animation:stamp .65s cubic-bezier(.2,1.5,.4,1) both;animation-delay:calc(var(--i, 0) * 25ms + .45s)}.card.ach.fresh{border-color:var(--red-text)}@keyframes stamp{0%{transform:scale(2.6) rotate(-25deg);opacity:0}60%{transform:scale(.92) rotate(4deg);opacity:1}to{transform:none;opacity:1}}.wax-seal .wax-body{fill:var(--blood);stroke:var(--bone);stroke-width:1.2}.wax-seal .wax-rim{fill:none;stroke:#e6d9bf8c;stroke-width:1}.wax-seal .wax-cross{stroke:var(--bone);stroke-width:2.4;stroke-linecap:square;fill:none}.wax-seal{filter:drop-shadow(0 2px 2px rgba(0,0,0,.8))}html.hc .wax-seal .wax-body{fill:#000;stroke:#fff}html.hc .wax-seal .wax-cross{stroke:#fff}.empty-seal circle,.empty-seal path{fill:none;stroke:var(--bone);stroke-width:1.2;stroke-dasharray:3 3;opacity:.7}.empty-seal text{fill:var(--bone);font-family:var(--font-sc);font-size:18px;opacity:.8}.ach-sheet{text-align:center;border:4px double var(--bone)}.ach-sheet.tier-mythic{box-shadow:0 0 0 1px var(--blood),0 0 28px #a3171b73}.ach-sheet h2{font-size:1.5em}.ach-sheet .sheet-seal{display:grid;place-items:center;margin:4px 0 8px}.ach-sheet.unlocked .sheet-seal{animation:sheet-glow 2.2s ease-in-out infinite alternate}@keyframes sheet-glow{0%{filter:none}to{filter:drop-shadow(0 0 12px rgba(229,83,63,.6))}}.ach-sheet .sheet-desc{font-size:1.08em;margin:6px 0}.ach-sheet .bar{margin:8px auto 4px;max-width:320px}.sheet-rewards{display:flex;flex-direction:column;gap:10px;margin:12px 0;text-align:left}.sheet-reward{display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(230,217,191,.45);padding:10px 12px}.sheet-reward .glyph{width:30px;height:30px;margin-top:4px}.sheet-reward p{margin:0 0 2px}.sheet-reward-name{font-family:var(--font-sc);font-size:1.12em}.sheet-lines{margin:4px 0;padding-left:1.1em;font-size:var(--fs-note)}.title-ach{position:relative;display:flex}.title-ach>button{flex:1}.title-badge{position:absolute;top:-8px;right:-8px;background:var(--blood);color:var(--bone);border:1px solid var(--bone);font-family:var(--font-sc);font-size:var(--fs-fine);letter-spacing:.06em;padding:1px 7px;pointer-events:none;animation:flag-pulse 1.2s ease-in-out infinite alternate}html.hc .title-badge{background:#000;color:#fff}.end-screen{max-width:820px}.end-title{font-size:clamp(2em,6vw,3.4em);text-align:center;margin:12px 0 0;animation:title-in 1.4s ease-out both}.end-death .end-title{color:var(--red-text)}html.hc .end-death .end-title{color:#fff}.end-who{text-align:center;margin:0;font-style:italic;animation:fade-late 1.6s ease-out both}.end-scene{animation:end-scene 2.2s ease-out both}@keyframes end-scene{0%{opacity:0;filter:grayscale(1) brightness(.3)}to{opacity:1;filter:none}}.end-cause{margin:0;padding:10px 16px;border-left:4px solid var(--blood);font-size:1.15em;font-style:italic;animation:fade-late 2.4s ease-out both}.end-actions{justify-content:center;animation:fade-late 2.6s ease-out both}.run-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:0}.run-stats div{border:1px solid rgba(230,217,191,.35);padding:8px 10px;display:flex;flex-direction:column;animation:opt-in .3s ease-out both;animation-delay:calc(1.8s + var(--i, 0) * 80ms)}.run-stats dd{margin:0;font-size:1.6em;font-family:var(--font-sc);line-height:1.1}.run-stats dt{font-size:var(--fs-fine)}@media (max-width: 599px){.party-bar{padding:6px 8px;flex-wrap:nowrap}.party-bar .member{gap:4px 8px;min-width:0}.party-bar .hp{width:64px}.party-bar .menu-btn{padding:.2em .6em}.title-screen{padding-top:12px}.title-card{top:3%}.title-name{font-size:2em}.title-bubble{font-size:var(--fs-fine);border-width:1px}.title-blurb{font-size:var(--fs-note)}.title-kicker,.opt .hint{display:none}.creation-nav{position:sticky;bottom:0;background:var(--page);padding:8px 0}}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.title-hero{width:min(100%,calc((100vh - 300px)*1.7778));min-width:min(100%,520px);margin:0 auto}.game.layout-wide,.game.layout-wide .right{overflow:hidden}.game.layout-wide .log{flex:1 1 30%;min-height:24vh}.game.layout-wide .option-wrap{flex:0 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.opt{padding-top:.25em;padding-bottom:.25em}.opt .hint{white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%}.opt .label{min-width:0}.guide{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;padding:6px 10px}.guide p{margin:0}.guide-title{grid-column:1}.guide-body{grid-column:1;font-size:var(--fs-note)}.guide-actions{grid-column:2;grid-row:1 / span 2;flex-direction:column;align-items:stretch}@media (max-width: 599px){.guide{grid-template-columns:1fr}.guide-actions{grid-column:1;grid-row:auto;flex-direction:row}}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.stat-pick{grid-template-columns:4.5em 5em 2.5em}.stat-pick select{width:100%}.options>li{min-width:0}.opt{min-width:0}.opt .label{overflow:hidden}.options{gap:5px}.roll-line.empty{min-height:0;padding:0}.game.layout-mid .log{max-height:38vh}.game.layout-narrow .log{min-height:22vh;max-height:34vh}@media (max-width: 599px){.life-card.early{display:none}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent}button,select,label,input{touch-action:manipulation}.step-progress{display:none}@media (hover: none){button:hover:not(:disabled){background:transparent;color:var(--text)}button.danger:hover:not(:disabled){background:transparent;color:var(--red-text);border-color:var(--red-text)}.opt:not(:disabled):hover{box-shadow:none}.opt:hover:not(:disabled) .badge{color:inherit}.pick-card:hover,.seg label:hover{background:transparent}.seg label.on:hover{background:var(--bone)}button:active:not(:disabled){background:var(--bone);color:var(--ink);transform:none}.opt:active:not(:disabled){box-shadow:inset 4px 0 0 var(--blood)}.title-menu button:hover:before,.title-menu button:hover:after{width:0}.title-foot>.title-keys{display:none}}.game.layout-mid,.game.layout-narrow{height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none}.game.layout-mid{display:flex;flex-direction:column;gap:8px}.game.layout-mid .left,.game.layout-narrow .left{flex:none;display:flex;flex-direction:column;gap:6px}.game.layout-mid .right,.game.layout-narrow .right{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:6px}.game.layout-mid .log,.game.layout-narrow .log{flex:1 1 0;min-height:72px;max-height:none}.game.layout-mid .option-wrap,.game.layout-narrow .option-wrap{flex:0 1 auto;min-height:0;max-height:56%;overflow-y:auto;overscroll-behavior:contain}.game.layout-mid .scene-frame svg{max-height:36vh;max-height:36dvh}.game.layout-mid .sheet{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.game.layout-narrow{gap:6px;padding:calc(6px + env(safe-area-inset-top)) calc(6px + env(safe-area-inset-right)) calc(58px + env(safe-area-inset-bottom)) calc(6px + env(safe-area-inset-left));display:flex;flex-direction:column}.game.layout-narrow .scene-frame svg{max-height:28vh;max-height:28dvh}.game.layout-narrow .right>.panel{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 2px 12px}.game.layout-narrow .tabbar{padding-bottom:env(safe-area-inset-bottom)}.game.layout-narrow .tabbar button{min-height:52px;font-family:var(--font-sc);letter-spacing:.05em}.game.compact .log{padding:6px 10px;font-size:.95em}.game.compact .log p{margin-bottom:4px}.game.compact .roll-line{font-size:var(--fs-small)}.game.compact .initiative{font-size:var(--fs-fine);gap:4px}.game.compact .foes{font-size:var(--fs-fine);gap:2px 10px}.game.compact .options{gap:4px}.game.compact .opt{padding:.15em .6em;gap:6px}.game.compact .opt .hint{display:block;font-size:var(--fs-fine)}.game.compact .opt .cost{font-size:var(--fs-fine)}.game.compact .more{min-height:44px;width:100%;justify-content:center}.game.layout-narrow .command input{min-height:44px;font-size:16px}.game.compact .party-bar{padding:4px 8px}.game.compact .party-bar strong{max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game.compact .party-bar .menu-btn{min-height:44px}.game.compact .guide{grid-template-columns:minmax(0,1fr) auto;padding:4px 8px;gap:0 8px}.game.compact .guide-title{font-size:var(--fs-note)}.game.compact .guide-body{font-size:var(--fs-fine);grid-column:1 / span 2}.game.compact .guide-actions{grid-column:2;grid-row:1;flex-direction:row;gap:4px}.game.compact .guide-actions button{min-height:44px;min-width:0;padding:0 .6em;font-size:var(--fs-fine)}.game.layout-narrow.in-combat .scene-frame svg{max-height:24vh;max-height:24dvh}@media (orientation: landscape) and (max-height: 540px){.game.layout-mid{display:grid;grid-template-columns:44fr 56fr;grid-template-rows:minmax(0,1fr);padding:6px calc(6px + env(safe-area-inset-right)) 6px calc(6px + env(safe-area-inset-left))}.game.layout-mid .left{min-height:0;overflow-y:auto}.game.layout-mid .scene-frame svg{max-height:60vh;max-height:60dvh}.game.layout-mid .option-wrap{max-height:55%}}@media (max-width: 599px){.panel table.inv,.panel table.inv tbody,.panel table.inv tr,.panel table.inv td{display:block;width:100%}.panel table.inv tr{border-bottom:1px solid rgba(230,217,191,.3);padding:6px 0}.panel table.inv td{border:none;padding:2px 0}.panel table.inv .row{gap:6px}.panel table.inv button{min-height:44px;padding:.2em .6em;font-size:var(--fs-note)}.panel .stat-table{display:block;overflow-x:auto}.panel ul{padding-left:1.1em}.modal-back{place-items:end center;padding:0}.modal{max-width:100%;max-height:85vh;max-height:85dvh;border-bottom:none;padding:16px 16px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -1px 0 var(--bone);animation-name:sheet-in}.reveal{border-bottom:4px double var(--bone)}.screen{padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))}h1{font-size:1.7em}.settings-head button,.creation-head p{min-height:44px}.creation-head{align-items:center}.creation-head h1{margin:0}.steps{gap:4px;margin-bottom:8px;flex-wrap:nowrap}.steps .step-btn{padding:2px;min-height:44px}.steps li:not(.now) .step-label{display:none}.steps .now .step-btn{padding-right:10px}.step-progress{display:block;height:3px;background:#e6d9bf33;margin:-4px 0 10px}.step-progress>span{display:block;height:100%;background:var(--blood);transition:width .24s ease}.creation-grid{gap:10px}.life-card{position:static;padding:8px 10px;box-shadow:none;display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-items:baseline}.life-card p{margin:0}.life-card .life-title,.life-card .life-hd{display:none}.life-card .life-name{font-size:1.15em}.life-card .life-stats{grid-column:1 / span 2;grid-template-columns:repeat(6,1fr);font-size:var(--fs-fine);text-align:center;margin-top:4px}.life-card .life-stats>span{display:flex;flex-direction:column}.pick-card{padding:10px;gap:10px}.pick-card.on{padding:9px}.pick-facts{font-size:var(--fs-small)}.stat-grid{grid-template-columns:1fr 1fr;gap:6px}.stat-pick{grid-template-columns:3.2em minmax(0,1fr) 2em;padding:2px 4px;gap:4px}.creation-nav{position:sticky;bottom:0;margin:0 -12px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--page);border-top:1px solid rgba(230,217,191,.25);z-index:3}.creation-nav .primary{flex:1}.name-row .grow{flex-basis:100%}.choice input,.choice select{min-width:0;max-width:100%}.seg{display:flex;width:100%}.seg label{flex:1;justify-content:center;padding:0 8px;text-align:center}.keys div{grid-template-columns:6.5em 1fr}.grid-ach{grid-template-columns:1fr}.ach-hero{flex-direction:column;text-align:center}.ach-hero-text{align-items:center}.ach-tiers{justify-content:center}.ach-filter{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:2px 16px 6px;scrollbar-width:none}.ach-filter button{flex:none}.end-actions{flex-direction:column;align-items:stretch}.end-actions button{width:100%}.run-stats{grid-template-columns:repeat(3,1fr)}.run-stats dd{font-size:1.3em}.title-lower{gap:10px}.title-menu{width:100%}.title-menu button{min-height:50px}}@media (pointer: coarse){.steps button.step-btn{min-height:44px}.exit-chip{padding:2px 8px}}.game.compact .party-bar{flex-wrap:nowrap}.game.compact .party-bar .member{min-width:0;flex-wrap:nowrap}.game.compact .party-bar .hp{width:56px;flex:none}.game.compact .party-bar .status-words{font-size:var(--fs-fine);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.game .option-wrap{background:linear-gradient(to top,var(--page) 40%,rgba(0,0,0,0)) bottom / 100% 24px no-repeat local,linear-gradient(to top,#e6d9bf38,#e6d9bf00) bottom / 100% 16px no-repeat scroll}html.hc .game .option-wrap{background:none}@media (orientation: landscape) and (max-height: 540px){.game.layout-mid .journal{flex:1 1 auto;min-height:0;font-size:var(--fs-small);padding:6px 8px}.game.layout-mid .journal-map svg{max-height:120px}.game.layout-mid .journal :is(.journal-meter,.journal-turn,.exit-chip){font-size:.94em}}@media (max-width: 599px){.stat-pick{grid-template-columns:2.8em minmax(3.8em,1fr) 1.8em}.stat-pick select{padding:.2em .1em .2em .35em;min-width:3.8em}}fieldset{min-inline-size:0;min-width:0}.creation-grid>*{min-width:0}@media (max-width: 599px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 380px){.stat-grid{grid-template-columns:1fr}.stat-pick{grid-template-columns:3.2em 5em 2em}}body{overflow-x:clip}.options{grid-auto-flow:row dense}.options[data-columns="2"]>li.span{grid-column:1 / -1}.target-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:var(--border) solid rgba(230,217,191,.45);padding:3px 3px 3px 10px}.target-action{font-family:var(--font-sc);letter-spacing:.03em;min-width:5em}.target-list{display:flex;flex-wrap:wrap;gap:4px;flex:1}.target-item{flex:1 1 8em;display:flex;min-width:0}.opt.opt-target{min-height:44px;padding:.1em .5em}.action-bar{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.action-bar>button{min-height:44px;display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-note);margin:0}.action-bar .more{width:auto}.pack-btn{font-family:var(--font-sc);letter-spacing:.04em}.more-menu{display:flex;flex-direction:column;gap:8px;animation:step-in .2s ease-out both}.more-heading{margin:0 0 4px;font-family:var(--font-sc);font-size:var(--fs-small);letter-spacing:.08em;opacity:.85;border-bottom:1px solid rgba(230,217,191,.25)}.more-section .options li{animation:none}.more-note{margin:0;font-size:var(--fs-small)}.option-wrap.is-more .more{background:var(--bone);color:var(--ink)}html.hc .option-wrap.is-more .more{color:#000}.options li.group-start{margin-top:0}.scene-wrap{position:relative}.guide.guide-over{position:absolute;left:6px;right:6px;bottom:6px;background:#15110ff0;z-index:2;box-shadow:0 0 0 1px var(--ink)}html.hc .guide.guide-over{background:#000}.game.compact .target-row{padding:2px 2px 2px 8px;gap:4px 6px}.game.compact .target-action{min-width:0;font-size:var(--fs-note)}.game.compact .action-bar{margin-top:4px;gap:4px;flex-wrap:nowrap}.game.compact .action-bar>button{min-height:44px;padding:0 .7em;font-size:var(--fs-small)}.game.compact .option-wrap{max-height:none;overflow:visible;background:none}.game.compact .more-menu{max-height:46vh;max-height:46dvh;overflow-y:auto}.action-bar .more{flex:1 1 auto;justify-content:center}.opt .label{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;min-width:0;white-space:normal}.opt .label>.hint{flex:1 1 0;min-width:0;margin:0}.opt .label>.hint.why{white-space:normal}.target-row{flex-wrap:wrap}.target-action{flex:0 1 auto;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.target-list{flex:1 1 14em;min-width:0}.target-item{flex:1 1 7.5em}.opt.opt-target .label{overflow:hidden;text-overflow:ellipsis}.game.compact .foes li{gap:4px}.game.compact .foes .hp-small{width:40px}.game.compact .initiative span.ally:not(.current),.game.compact .initiative span.foe:not(.current){display:none}.game.compact .options[data-columns="2"]>li:not(.span) .opt .label{overflow:hidden;text-overflow:ellipsis}.target-list{flex:1 1 17.5em}.target-item{flex:1 1 8.5em;min-width:8.5em}.game.compact .roll-line{display:none}.game.layout-narrow.in-combat .scene-frame svg{max-height:20vh;max-height:20dvh}@media (max-height: 700px) and (orientation: portrait){.game.layout-narrow .scene-frame svg{max-height:20vh;max-height:20dvh}.game.layout-narrow.in-combat .scene-frame svg{max-height:14vh;max-height:14dvh}.game.layout-narrow .tabbar button{min-height:46px}.game.layout-narrow{padding-bottom:calc(52px + env(safe-area-inset-bottom))}}@media (max-width: 380px){.game.compact li:not(.span) .opt .cost{display:none}}.game.compact .log{min-height:calc(6.2em + 58px)}.game.compact .option-wrap{overflow-y:auto;max-height:calc(100% - 96px)}.target-list{flex-basis:16em}.target-item{flex-basis:7.75em;min-width:7.75em}.game.layout-mid.in-combat .scene-frame svg{max-height:28vh;max-height:28dvh}.game:not(.compact) .guide.guide-over{left:12px;right:12px;bottom:12px}.game:not(.compact) .target-item{flex-basis:9.5em;min-width:9.5em}.game:not(.compact) .target-list{flex-basis:19.5em}.action-bar>button:not(.more){flex-shrink:0}.opt .label{white-space:normal;line-height:1.2}.opt.opt-target .label{white-space:nowrap}.opt .badge:empty{display:none}@media (hover: none) and (pointer: coarse){.kbd-hint{display:none}.opt .badge{border-color:transparent;width:1.1em;opacity:.55}}@media (max-width: 599px){.screen{padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right))}.game.layout-narrow{padding-left:calc(8px + env(safe-area-inset-left));padding-right:calc(8px + env(safe-area-inset-right))}.creation{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding-bottom:0}.creation-grid{flex:1;display:flex;flex-direction:column;align-items:stretch}.creation-step{flex:1}.creation-nav{margin:auto -16px 0;padding-left:16px;padding-right:16px}.creation fieldset{border:none;padding:0;margin:0}.creation fieldset>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.choice{flex-direction:column;align-items:stretch;gap:4px;min-height:0;margin-bottom:8px}.choice select,.choice input{width:100%}.name-row{align-items:flex-end}.name-row .choice{margin-bottom:0}.life-card>p{grid-column:1 / -1}.life-card>.life-name,.life-card>.life-name+p{grid-column:auto}.stat-pick{border-color:#e6d9bf26}.stat-pick.key{border-color:#e6d9bf73}}@media (max-width: 599px) and (orientation: portrait){.title-screen{min-height:100vh;min-height:100dvh;gap:14px}.title-hero{display:flex;flex-direction:column}.title-art{order:1}.title-card{order:2;position:static;padding-top:18px}.title-card .seal-corona{width:72px;height:72px;margin-bottom:2px}.title-name{font-size:clamp(2.3em,11.5vw,3.2em);line-height:1.1}.title-mode{font-size:var(--fs-note);margin-top:.4em}.title-veil{background:radial-gradient(ellipse at 50% 42%,#0000 35%,#000000bf)}.title-lower{flex:1;gap:12px}.title-blurb{order:1;margin:0 auto;font-size:1.08em;line-height:1.5;max-width:32ch}.title-blurb:before{content:"";display:block;width:64px;height:2px;margin:0 auto 14px;background:var(--blood);outline:1px solid rgba(230,217,191,.5)}.title-menu{order:2;margin-top:auto;padding-top:12px}.title-career{order:3}.title-foot{order:4}}@media (max-width: 599px) and (orientation: portrait) and (max-height: 700px){.title-card{padding-top:10px}.title-name{font-size:clamp(2em,10vw,2.6em)}.title-blurb{font-size:1em}.title-blurb:before{margin-bottom:10px}}@media (orientation: landscape) and (max-height: 540px){.title-screen{flex-direction:row;align-items:center;max-width:none;min-height:100vh;min-height:100dvh;gap:24px;padding-top:calc(12px + env(safe-area-inset-top))}.title-hero{flex:1 1 58%;width:auto;min-width:0;max-width:calc((100dvh - 40px)*1.7778)}.title-lower{flex:1 1 42%;gap:8px}.title-menu{width:100%}.title-blurb{font-size:var(--fs-note)}.title-kicker{display:none}.title-card{top:0}.title-card .seal-corona{width:22px;height:22px}.title-name{font-size:clamp(1.4em,3.8vw,2em);line-height:1}.title-mode{font-size:var(--fs-fine);letter-spacing:.2em}.title-bubble{font-size:var(--fs-fine);border-width:1px;padding:.2em .6em}}@media (orientation: landscape) and (max-height: 540px){.creation-nav{position:sticky;bottom:0;z-index:3;background:var(--page);padding:8px 0 calc(8px + env(safe-area-inset-bottom));border-top:1px solid rgba(230,217,191,.25)}.life-card{top:8px}}.options>li{display:flex}.options>li>.opt{flex:1}.options[data-columns="2"]>li[data-group=end]{grid-column:1 / -1}.game.compact .action-bar{position:sticky;bottom:0;z-index:1;background:var(--page);padding-top:4px;margin-top:0}.log.paged{position:relative;display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.log-body{flex:1 1 0;min-height:0;overflow:hidden;outline-offset:-2px}.log-body{display:flex;flex-direction:column}.log-track{position:relative;flex:none}.log-body.scrolls{overflow-y:auto;overscroll-behavior:contain}.log-body.scrolls .log-track{overflow:hidden}.log-track p{animation:line-in .32s ease-out both}.log-track p.off{visibility:hidden;animation:none}.log .room.context{opacity:.7;font-size:var(--fs-small);margin:0 0 4px}.log.is-past .log-body p{opacity:.75}.log-pager{flex:none;display:flex;align-items:center;gap:8px;min-height:44px;border-top:1px solid rgba(230,217,191,.2);margin:0 -12px;padding:0 4px}.log-turn{border:none;min-height:44px;min-width:44px;padding:0;font-size:1.3em;line-height:1}.log-turn:disabled{opacity:.25}.log-where{flex:1;text-align:center;font-size:var(--fs-fine);opacity:.75}.log-continue{flex:1;min-height:44px;margin:3px 0;border-color:var(--blood);font-family:var(--font-sc);letter-spacing:.06em;color:var(--red-text);animation:pulse-low 1.1s ease-in-out infinite alternate}html.hc .log-continue{color:#fff;border-color:#fff}.game.compact .log-pager{margin:0 -10px;min-height:44px}.game.compact .log-turn{min-height:44px}@media (hover: none){.log-continue:active{background:var(--blood);color:var(--bone)}}.log-track p.off+p.room:not(.off){border-top:none;padding-top:0;margin-top:0}.splash{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--page);isolation:isolate}.splash:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--page);z-index:6;pointer-events:none;opacity:0;animation:sp-dawn 1.8s ease-out both}@keyframes sp-dawn{0%{opacity:1}to{opacity:0}}.splash-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.splash-sun{animation:sp-sink 22s cubic-bezier(.3,0,.4,1) both;transform-box:view-box}@keyframes sp-sink{0%{transform:translateY(-70px)}to{transform:translateY(18px)}}.splash-glow{transform-origin:1300px 700px;animation:sp-breathe 4.5s ease-in-out infinite alternate}@keyframes sp-breathe{0%{transform:scale(.92);opacity:.75}to{transform:scale(1.08);opacity:1}}.splash-crows .crow{animation:sp-crow 26s linear infinite}.splash-crows .c2{animation-duration:34s;animation-delay:-12s}.splash-crows .c3{animation-duration:30s;animation-delay:-20s}@keyframes sp-crow{0%{transform:translate(-420px,20px)}25%{transform:translate(-200px,-10px)}50%{transform:translate(20px,14px)}75%{transform:translate(240px,-12px)}to{transform:translate(460px,10px)}}.splash-grain{animation:sp-grain .5s steps(4) infinite}@keyframes sp-grain{0%{transform:translate(0)}25%{transform:translate(-18px,12px)}50%{transform:translate(14px,-20px)}75%{transform:translate(-10px,-8px)}}.splash-embers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.ember{position:absolute;bottom:-8px;border-radius:50%;opacity:0;animation:sp-ember linear infinite}.ember.e0{background:var(--red-text);box-shadow:0 0 6px 1px #e5533fb3}.ember.e1{background:var(--blood);box-shadow:0 0 6px 1px #a3171bcc}.ember.e2{background:var(--bone);box-shadow:0 0 5px #e6d9bf99}@keyframes sp-ember{0%{transform:translate(0);opacity:0}10%{opacity:.95}60%{opacity:.7}to{transform:translate(var(--drift, 0px),-105vh);opacity:0}}html.reduce-motion .splash-embers{display:none}.splash-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 50% 60%,#0000 40%,#000000d9);animation:sp-flicker 5s steps(1) infinite}@keyframes sp-flicker{0%,to{opacity:1}12%{opacity:.9}14%{opacity:1}47%{opacity:.94}49%{opacity:1}81%{opacity:.88}83%{opacity:1}}.splash-card{position:absolute;left:0;right:0;top:max(12vh,calc(24px + env(safe-area-inset-top)));z-index:3;text-align:center;padding:0 16px;pointer-events:none}.splash-kicker{margin:0 0 6px;color:var(--red-text);font-size:1.3em;animation:sp-fade 1.2s .4s ease-out both}.splash-title{margin:0;font-size:clamp(2.6rem,12vw,6.4rem);line-height:1.05;letter-spacing:.08em;text-shadow:0 2px 0 var(--ink),0 0 28px rgba(0,0,0,.95),0 0 60px rgba(163,23,27,.35)}.splash-word{display:inline-block;white-space:nowrap;margin:0 .18em}.splash-letter{display:inline-block;animation:sp-letter .9s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(.7s + var(--n, 0) * 70ms)}@keyframes sp-letter{0%{opacity:0;transform:translateY(-.5em) scale(1.35);filter:blur(8px)}60%{opacity:1;filter:blur(0)}to{opacity:1;transform:none;filter:none}}.splash-rule{display:block;height:2px;width:min(62vw,440px);margin:14px auto 12px;background:var(--blood);outline:1.5px solid var(--bone);transform-origin:center;animation:sp-rule .9s 1.9s cubic-bezier(.6,0,.2,1) both}@keyframes sp-rule{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.splash-tagline{margin:0;font-style:italic;font-size:1.15em;letter-spacing:.06em;text-shadow:0 1px 0 var(--ink),0 0 14px var(--ink);animation:sp-fade 1.4s 2.4s ease-out both}@keyframes sp-fade{0%{opacity:0}to{opacity:1}}.splash-hit,.splash-hit:hover:not(:disabled),.splash-hit:active:not(:disabled){position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;width:100%;height:100%;border:none;background:transparent;color:var(--bone);transform:none;cursor:pointer;padding:0}.splash-hit:focus-visible{outline:var(--focus) solid var(--bone);outline-offset:-8px}.splash-prompt{position:absolute;left:0;right:0;bottom:calc(10vh + env(safe-area-inset-bottom));font-family:var(--font-sc);letter-spacing:.3em;font-size:1.05em;text-shadow:0 0 10px var(--ink),0 1px 0 var(--ink);animation:sp-fade 1s 3.1s ease-out both,sp-pulse 1.6s 4.1s ease-in-out infinite alternate}@keyframes sp-pulse{0%{opacity:1}to{opacity:.35}}.splash-prompt .touch{display:none}@media (hover: none) and (pointer: coarse){.splash-prompt .touch{display:inline}.splash-prompt .keys{display:none}}.splash-flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;background:var(--bone);opacity:0}.splash.leaving .splash-flash{animation:sp-flash .75s ease-out both}@keyframes sp-flash{0%{opacity:0}12%{opacity:.28}to{opacity:0}}.splash.leaving .splash-glow{animation:sp-flare .75s ease-in both}@keyframes sp-flare{to{transform:scale(1.7);opacity:1}}.splash.leaving .splash-card,.splash.leaving .splash-prompt{animation:sp-out .5s ease-in both}@keyframes sp-out{to{opacity:0;transform:translateY(-10px);letter-spacing:.14em}}.splash.leaving:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;background:var(--page);animation:sp-dawn .75s ease-in reverse both}html.hc .splash-title,html.hc .splash-tagline,html.hc .splash-kicker{color:#fff}@media (orientation: landscape) and (max-height: 540px){.splash-card{top:max(6vh,calc(12px + env(safe-area-inset-top)))}.splash-title{font-size:clamp(2.2rem,8vw,4.4rem)}.splash-prompt{bottom:calc(6vh + env(safe-area-inset-bottom))}}.creation fieldset{border:none;padding:0;margin:0}.creation fieldset>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.step-ask{margin:0 0 4px}.step-ask h2{font-size:1.55em;margin:0 0 2px;line-height:1.15}.step-ask p{margin:0}.step-kicker{font-family:var(--font-sc);letter-spacing:.12em;font-size:var(--fs-fine);color:var(--red-text)}html.hc .step-kicker{color:#fff}.creation-step.fwd{animation:step-fwd .28s cubic-bezier(.2,.8,.2,1) both}.creation-step.back{animation:step-back .28s cubic-bezier(.2,.8,.2,1) both}@keyframes step-fwd{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes step-back{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}.step-progress>span,.steps .now .step-n{box-shadow:0 0 8px 1px #e5533f8c}.pick-card{position:relative;overflow:hidden;transition:border-color .14s ease,background-color .14s ease,transform .14s ease,box-shadow .14s ease}.pick-card input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}.pick-card:has(input:focus-visible){outline:var(--focus) solid var(--bone);outline-offset:2px}.pick-card:active{transform:scale(.99)}.pick-card.on{transform:translateY(-1px);box-shadow:inset 4px 0 0 var(--blood),0 6px 18px -8px #a3171b99;background:#e6d9bf0a}.pick-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--blood);transform:scaleY(0);transform-origin:top}.pick-card.on:before{animation:sweep .32s cubic-bezier(.2,.8,.2,1) both}@keyframes sweep{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.pick-seal{position:absolute;top:8px;right:12px;color:var(--red-text);font-size:1.3em;opacity:0;transform:scale(0)}.pick-card.on .pick-seal{opacity:1;transform:none;animation:seal .52s cubic-bezier(.2,1.4,.4,1) both}html.hc .pick-seal{color:#fff}.pick-name{padding-right:1.6em}.pick-facts>span:before{content:none}.pick-facts>span{border:1px solid rgba(230,217,191,.3);padding:0 7px}.pick-rows{display:grid;grid-template-columns:auto 1fr auto;gap:3px 12px;margin-top:4px;font-size:var(--fs-note);align-items:baseline}.pick-row{display:contents}.pick-what{opacity:.72;font-style:italic}.pick-tag{font-family:var(--font-sc);font-size:var(--fs-fine);letter-spacing:.08em;color:var(--red-text)}html.hc .pick-tag{color:#fff}.stat-pool{display:flex;flex-wrap:wrap;gap:8px}.stat-token{min-width:52px;min-height:48px;padding:0 10px;font-family:var(--font-sc);font-size:1.25em;border-color:#e6d9bf80;transition:transform .16s ease,opacity .16s ease,background-color .12s ease,box-shadow .16s ease}.stat-token.lit{background:var(--bone);color:var(--ink);border-color:var(--bone);box-shadow:0 0 0 1.5px var(--blood),0 0 14px 2px #a3171b8c;animation:token-glow 1.4s ease-in-out infinite alternate}html.hc .stat-token.lit{color:#000}@keyframes token-glow{0%{box-shadow:0 0 0 1.5px var(--blood),0 0 6px #a3171b66}to{box-shadow:0 0 0 1.5px var(--blood),0 0 16px 3px #a3171bb3}}.stat-token.spent,.stat-token.spent:disabled{opacity:.18;transform:scale(.86)}.stat-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px}.stat-slot{display:grid;grid-template-columns:1fr auto;grid-template-areas:"head mod" "name name" "val val" "bar bar";align-items:baseline;gap:0 6px;text-align:left;padding:8px 10px 9px;border-color:#e6d9bf66;min-height:96px}.stat-slot.key{border:2px solid var(--bone);padding:7px 9px 8px}.stat-slot.empty{border-style:dashed}.slot-head{grid-area:head;display:flex;align-items:baseline;gap:6px}.slot-k{font-family:var(--font-sc);letter-spacing:.06em}.slot-name{grid-area:name;font-size:var(--fs-fine);opacity:.65;line-height:1.1}.slot-val{grid-area:val;font-family:var(--font-sc);font-size:1.9em;line-height:1.05;animation:val-pop .32s cubic-bezier(.2,1.5,.4,1) both}@keyframes val-pop{0%{transform:scale(1.6);opacity:0}to{transform:none;opacity:1}}.stat-slot.empty .slot-val{opacity:.3;animation:none}.slot-bonus{font-size:.45em;vertical-align:super;margin-left:3px;color:var(--red-text)}html.hc .slot-bonus{color:#fff}.slot-mod{grid-area:mod;font-family:ui-monospace,monospace;font-size:var(--fs-small)}.slot-bar{grid-area:bar;display:block;height:3px;margin-top:4px;background:#e6d9bf24}.slot-bar>span{display:block;height:100%;background:var(--blood);transition:width .36s cubic-bezier(.2,.8,.2,1)}.stat-actions{margin-top:4px}button.primary-quiet{border-width:2px;font-family:var(--font-sc);letter-spacing:.04em}.chip-group{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.chip-label{margin:0;font-family:var(--font-sc);letter-spacing:.06em;font-size:var(--fs-note);opacity:.85}.chips-row{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px;padding:4px 12px;border-color:#e6d9bf73;line-height:1.15}.chip.on{background:var(--bone);color:var(--ink);border-color:var(--bone);box-shadow:0 0 0 1.5px var(--blood);animation:chip-on .26s cubic-bezier(.2,1.4,.4,1)}html.hc .chip.on{color:#000}@keyframes chip-on{0%{transform:scale(.9)}to{transform:none}}.chip-sub{font-size:var(--fs-fine);opacity:.8;font-family:ui-monospace,monospace}.no-choice{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:20px 12px;border:1px dashed rgba(230,217,191,.35)}.no-choice p{margin:0}.no-choice-mark{width:40px;height:52px;fill:var(--red-text);filter:drop-shadow(0 0 8px rgba(229,83,63,.6));animation:flame 1.3s ease-in-out infinite alternate;transform-origin:50% 100%}html.hc .no-choice-mark{fill:#fff}@keyframes flame{0%{transform:scale(1);opacity:1}to{transform:scale(.94,1.06) skew(-3deg);opacity:.85}}.nameplate{font-family:var(--font-sc);letter-spacing:.08em;font-size:var(--fs-note)}.nameplate input{font-family:var(--font-sc);font-size:1.55em;letter-spacing:.06em;text-align:center;background:transparent;border:none;border-bottom:2px solid var(--bone);padding:.1em .2em}.nameplate input:focus{outline:none;border-bottom-color:var(--red-text);box-shadow:0 6px 12px -8px #e5533fb3}.nameplate input.shuffling{filter:blur(1.2px);opacity:.75}.dice{display:inline-flex;align-items:center;gap:6px}.dice-face{display:inline-block;font-size:1.3em;line-height:1}.dice.rolling .dice-face{animation:roll .42s cubic-bezier(.3,.7,.4,1)}@keyframes roll{0%{transform:rotate(0) scale(1.2)}to{transform:rotate(720deg)}}.sheet-tiles{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.tile{flex:1 1 80px;display:flex;flex-direction:column-reverse;align-items:center;border:1px solid rgba(230,217,191,.45);padding:8px 6px;animation:opt-in .3s ease-out both}.tile:nth-child(3){animation-delay:80ms}.tile:nth-child(4){animation-delay:.16s}.tile.wide{flex:2 1 140px}.tile-v{font-family:var(--font-sc);font-size:1.8em;line-height:1.05}.tile-v small{font-size:.5em;opacity:.8}.tile-k{font-family:var(--font-sc);font-size:var(--fs-fine);letter-spacing:.1em;opacity:.75}.sheet-skills{flex-basis:100%;margin:2px 0 0;font-size:var(--fs-note)}.seed-box{margin-top:8px;border-top:1px solid rgba(230,217,191,.2);padding-top:8px}.seed-box summary{cursor:pointer;font-family:var(--font-sc);letter-spacing:.06em;font-size:var(--fs-note);opacity:.8;min-height:44px;display:flex;align-items:center}.seed-box[open] summary{opacity:1}.sheet-head{display:grid;grid-template-columns:104px minmax(0,1fr);gap:0 12px;align-items:start}.sheet-head>div>p:first-child{margin-top:0}.sheet-effigy{display:block;width:104px;overflow:visible}.life-effigy{display:block;width:100%;max-width:220px;margin:0 auto 6px;overflow:visible;animation:forge .52s ease-out both}@keyframes forge{0%{opacity:0;transform:translateY(6px);filter:brightness(2.2)}60%{opacity:1;filter:brightness(1.3)}to{transform:none;filter:none}}.effigy .eff-body{transform-origin:100px 236px;animation:breathe 3.6s ease-in-out infinite alternate}@keyframes breathe{0%{transform:scaleY(1)}to{transform:scaleY(1.014)}}.effigy .eff-sun{transform-origin:100px 112px;animation:sp-breathe 4.5s ease-in-out infinite alternate}.effigy .eff-eyes{animation:eyes 2.2s steps(1) infinite}@keyframes eyes{0%,to{opacity:1}48%{opacity:1}50%{opacity:.2}53%{opacity:1}}.effigy .eff-sparks circle{animation:spark 2.8s ease-out infinite}.effigy .eff-sparks circle:nth-child(2){animation-delay:.7s}.effigy .eff-sparks circle:nth-child(3){animation-delay:1.4s}.effigy .eff-sparks circle:nth-child(4){animation-delay:2.1s}@keyframes spark{0%{transform:translateY(0);opacity:1}to{transform:translateY(-70px);opacity:0}}.life-stats b{font-weight:400;display:inline-block;animation:val-pop .3s ease-out both}.life-name{transition:color .2s ease}.creation.sealing .life-effigy{animation:seal-flare .7s ease-in both}@keyframes seal-flare{0%{filter:none}30%{filter:brightness(2) drop-shadow(0 0 12px rgba(229,83,63,.9))}to{filter:brightness(.2);transform:scale(1.04)}}.creation.sealing:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:var(--page);z-index:30;pointer-events:none;animation:sp-dawn .7s ease-in reverse both}.creation.sealing .begin{background:var(--blood);color:var(--bone)}@media (min-width: 761px){.life-card{padding:14px 16px 16px}.creation-grid{grid-template-columns:minmax(0,1fr) 280px}}@media (max-width: 760px){.life-card{position:sticky;top:env(safe-area-inset-top,0px);z-index:3;box-shadow:0 -16px 0 var(--page),0 8px 12px #000000d9;display:grid;grid-template-columns:78px minmax(0,1fr);gap:0 12px;align-items:center;padding:6px 10px}.life-effigy{width:78px;margin:0}.life-text>p{margin:0}.life-card .life-hd,.life-card .life-title{display:none}.life-card .life-name{font-size:1.15em}.life-card .life-calling{font-size:var(--fs-note)}.life-card .life-stats{display:grid;grid-template-columns:repeat(6,1fr);font-size:var(--fs-fine);text-align:center;margin-top:4px}.life-card .life-stats>span{display:flex;flex-direction:column}.life-card .life-hpac,.life-card .life-kit{font-size:var(--fs-small)}}@media (max-width: 599px){.step-ask h2{font-size:1.3em}.stat-slot{min-height:86px;padding:6px 8px 7px}.stat-slot.key{padding:5px 7px 6px}.slot-val{font-size:1.6em}.stat-token{flex:1 1 0;min-width:0;padding:0}.stat-pool{gap:6px;flex-wrap:nowrap}.pick-rows{font-size:var(--fs-small);gap:2px 8px}}@media (max-width: 380px){.stat-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}.life-name.unnamed{font-style:italic;opacity:.5;font-family:var(--font)}.life-name:not(.unnamed){animation:val-pop .36s ease-out both}.goal{margin:0 0 6px}.goal-line{display:flex;align-items:baseline;gap:8px;width:100%;min-height:44px;padding:4px 8px;text-align:left;background:transparent;border:none;border-bottom:1px solid rgba(230,217,191,.2);color:var(--text);font:inherit;font-size:var(--fs-small)}.goal-line:disabled{cursor:default;opacity:1}.goal-mark{color:var(--red-text);flex:none}.goal-text{flex:1;font-style:italic}.goal-count{flex:none;font-family:var(--font-sc);font-size:var(--fs-small);letter-spacing:.05em;color:var(--red-text)}.goal-count:after{content:" ▾"}.goal.open .goal-count:after{content:" ▴"}.goal.fresh .goal-line{animation:goal-glow 1.6s ease-out 2}@keyframes goal-glow{0%,to{box-shadow:none}30%{box-shadow:inset 4px 0 0 var(--blood);background:#a3171b2e}}.goal-clues{margin:4px 0 6px;padding:0 8px 0 28px;font-size:var(--fs-small)}.goal-clues li{margin:0 0 3px}html.hc .goal-mark,html.hc .goal-count{color:#fff}.game.compact .goal-line{padding:2px 6px}.sealed-kits ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}.pick-card.sealed{cursor:default;opacity:.72;border-style:dashed}.pick-card.sealed:hover{background:transparent;border-color:#e6d9bf66}.pick-card.sealed .pick-seal{color:var(--blood)}.sealed-tag{font-size:var(--fs-fine);letter-spacing:.08em;margin-left:6px;padding:0 6px;border:1px solid var(--blood);color:var(--red-text);vertical-align:2px}.sealed-how{display:block;margin-top:4px;font-size:var(--fs-note);font-style:italic}html.hc .sealed-tag{color:#fff;border-color:#fff}.end-next{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px;text-align:left}.end-next li{display:grid;gap:3px;padding:10px 12px;border:1px dashed rgba(230,217,191,.4)}.end-next-head{display:flex;justify-content:space-between;gap:8px}.end-next-hint{font-style:italic}@media (prefers-reduced-motion: reduce){.goal.fresh .goal-line{animation:none}}html.reduce-motion .goal.fresh .goal-line{animation:none}.paywall{padding-top:12vh}.paywall p{max-width:52ch}.key-form input{font:inherit;background:var(--bg);color:var(--bone);border:var(--border) solid var(--bone);padding:8px 10px;min-height:44px;max-width:24em;letter-spacing:.06em}.key-form input:focus-visible{outline:var(--focus) solid var(--bone);outline-offset:2px}.license-key code{font-size:1.15em;letter-spacing:.08em;border:1px dashed var(--bone);padding:6px 10px;display:inline-block;-webkit-user-select:all;user-select:all;word-break:break-all}@media (max-width: 599px){.title-mode{letter-spacing:.16em}}html.hc .title-kicker{color:#fff}html.hc button:disabled{opacity:1;border-style:dashed}html.hc .muted,html.hc .opt .hint{opacity:1}html.hc .ach-flag.new,html.hc .banner{background:#000;color:#fff;border:2px solid #ffffff}.journal{overflow-y:auto}.target-action,.opt.opt-target .label,.game.compact .options[data-columns="2"]>li:not(.span) .opt .label{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word}.opt .hint{display:block;overflow:visible;-webkit-line-clamp:unset}.game.compact .opt .hint:not(.why){display:none}.game.compact .party-bar strong{max-width:34vw;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.1;overflow-wrap:break-word}.game.compact .party-bar .member{flex-wrap:wrap;row-gap:0}.game.compact .party-bar .status-words{flex-basis:100%;white-space:normal;overflow:visible;text-overflow:clip}.pick-rows .pick-tag{font-size:.94em}.game.compact .log :is(.log-where,.roll){font-size:.84em}.game.in-combat:is(.layout-narrow,.layout-mid) .scene-frame .zone-hud{--label-scale: 2.4}@media (max-height: 700px) and (orientation: portrait){.game.layout-narrow.in-combat .scene-frame svg{max-height:18vh;max-height:18dvh}}.life-card .life-stats{grid-template-columns:repeat(6,minmax(0,1fr))}@media (max-width: 380px){.life-card .life-stats{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2px}}.region-step{border:0;padding:0;margin:0 0 14px;min-width:0}.region-step legend{font-family:var(--font-sc);letter-spacing:.06em;margin-bottom:8px}.region-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.region-pick{display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px 12px;min-height:44px;white-space:normal}.region-pick.on{border-color:var(--bone);box-shadow:inset 3px 0 0 var(--blood)}.region-name{font-family:var(--font-sc);letter-spacing:.06em;font-size:1em}.region-blurb{font-size:var(--fs-note);opacity:.85}.seal-corona{display:block;width:72px;height:72px;margin:0 auto 2px;overflow:visible;animation:title-in 1.4s ease-out both}.seal-corona.complete .seal-eye{transform-origin:60px 60px;animation:sp-breathe 4.5s ease-in-out infinite alternate}.seal-corona.still,.seal-corona.still .seal-eye{animation:none}.title-menu .deeper{border-color:var(--blood)}.tier-row{display:flex;align-items:center;gap:12px}.tier-row button{min-width:44px;min-height:44px}.tier-value{font-family:var(--font-sc);letter-spacing:.06em;min-width:9em;text-align:center}.hall-wings{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.hall-wing{border:1px solid var(--bone);padding:12px 14px;display:flex;flex-direction:column;gap:6px}.hall-wing h2{margin:0;font-family:var(--font-sc);letter-spacing:.06em;font-size:1.1em}.hall-wing.built{box-shadow:inset 3px 0 0 var(--blood)}.hall-blurb{margin:0;font-style:italic}.hall-effect,.hall-state{margin:0}.hall-purse{font-family:var(--font-sc);letter-spacing:.06em;font-size:1.15em}.hall-wing button{min-height:44px;align-self:flex-start}.obituary{display:flex;flex-direction:column;align-items:center;gap:8px}.obit-card{width:100%;max-width:420px;height:auto;font-family:var(--font-sc)}.obit-copy{min-height:44px}.end-remembrance{font-family:var(--font-sc);letter-spacing:.04em}.daily-card{border:1px solid var(--bone);padding:12px 14px;box-shadow:inset 3px 0 0 var(--blood);display:flex;flex-direction:column;gap:4px}.daily-card p{margin:0}.daily-date{font-family:var(--font-sc);letter-spacing:.08em}.daily-hero{font-size:1.15em}.daily-result,.end-daily{font-family:var(--font-sc);letter-spacing:.04em}.daily-post{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end}.daily-post label{display:flex;flex-direction:column;gap:4px}.daily-post input{min-height:44px;min-width:12ch}.daily-post button,.daily-screen .row button{min-height:44px}.daily-post p{flex-basis:100%;margin:0}.daily-board{border-collapse:collapse;width:100%;max-width:640px}.daily-board th,.daily-board td{text-align:left;padding:6px 10px 6px 0;border-bottom:1px solid var(--bone)}.daily-board tr.you td{box-shadow:inset 0 -2px 0 var(--blood);font-weight:700}.curse-step .region-pick[aria-pressed=true]{border-color:var(--bone);box-shadow:inset 3px 0 0 var(--blood)}.goal-threads h3{margin:6px 0 2px 28px;font-family:var(--font-sc);letter-spacing:.06em;font-size:var(--fs-small)}.codex-section h2{font-family:var(--font-sc);letter-spacing:.06em;font-size:1.1em;margin:14px 0 6px}.codex-list,.codex-foes{list-style:none;padding:0;margin:0}.codex-list li{margin:0 0 6px}.codex-foes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.codex-foes li{border:1px solid var(--bone);padding:10px 12px}.codex-foes h3{margin:0;font-size:1.05em;text-transform:capitalize}.codex-foes p{margin:4px 0 0}.codex-screen .row button{min-height:44px}.file-pick{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--bone);cursor:pointer}.file-pick:focus-within{outline:2px solid var(--blood);outline-offset:2px}.curse-head{font-family:var(--font-sc);letter-spacing:.06em;margin:0 0 4px}.juice{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:3;font-family:var(--font-sc);line-height:1}.juice-stage{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);aspect-ratio:800 / 450;max-width:100%;container-type:inline-size}.juice [data-t]:after{content:attr(data-t)}.j-roll{position:absolute;top:calc(7% + var(--row, 0) * 25%);left:50%;display:flex;align-items:center;gap:2.2cqw;transform:translate(-50%);animation:j-roll-life 3.2s linear both}.juice-stage:has(.j-room) .j-roll.mine{top:calc(26% + var(--row, 0) * 25%)}.j-roll.theirs{left:auto;right:3%;top:calc(5% + var(--row, 0) * 19%);transform:none}@keyframes j-roll-life{0%{opacity:0}3%,90%{opacity:1}to{opacity:0}}.j-die{position:relative;width:14cqw;min-width:54px;aspect-ratio:1;display:grid;place-items:center;animation:j-tumble var(--land, .85s) cubic-bezier(.3,.7,.35,1.2) both;animation-delay:inherit;filter:drop-shadow(0 3px 0 rgba(0,0,0,.6))}.j-roll.theirs .j-die{width:8cqw;min-width:36px}.j-die svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;fill:var(--ink);stroke:var(--bone);stroke-width:3.5;stroke-linejoin:round}.j-roll.theirs .j-die svg{fill:var(--blood)}.j-roll.nat20 .j-die svg{fill:var(--bone);stroke:var(--ink)}.j-roll.nat1 .j-die svg{stroke:var(--red-text)}.j-face{position:relative;font-size:clamp(1.1rem,5.4cqw,3rem);color:var(--bone);transform:translateY(-4%);font-variant-numeric:lining-nums}.j-roll.theirs .j-face{font-size:clamp(.85rem,3.2cqw,1.7rem)}.j-roll.nat20 .j-face{color:var(--ink)}.j-roll.nat1 .j-face{color:var(--red-text)}@keyframes j-tumble{0%{transform:translate(-120%,-170%) rotate(-540deg) scale(.7)}45%{transform:translate(-20%,8%) rotate(-150deg) scale(1.05)}62%{transform:translate(6%,-12%) rotate(-40deg)}80%{transform:translate(2%,4%) rotate(8deg)}to{transform:none}}.j-verdict{display:flex;flex-direction:column;align-items:flex-start;gap:.8cqw;animation:j-stamp .32s cubic-bezier(.2,1.4,.4,1) both;transform-origin:20% 50%}@keyframes j-stamp{0%{opacity:0;transform:scale(2.6) rotate(-14deg)}70%{opacity:1;transform:scale(.94) rotate(-5deg)}to{opacity:1;transform:rotate(-5deg)}}.j-stamp{font-size:clamp(1.2rem,6.2cqw,3.4rem);letter-spacing:.04em;padding:.12em .4em .16em;border:3px double currentColor;background:var(--ink);color:var(--bone);white-space:nowrap;box-shadow:4px 4px #0000008c}.j-roll.theirs .j-stamp{font-size:clamp(.9rem,3.4cqw,1.9rem)}.tier-success .j-stamp{background:var(--bone);color:var(--ink)}.tier-critical .j-stamp{background:var(--blood);color:var(--bone)}.tier-fail .j-stamp{color:var(--red-text)}.tier-backfire .j-stamp{color:var(--red-text);border-style:dashed}.j-sum{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:clamp(.7rem,1.9cqw,1rem);color:var(--bone);background:var(--ink);padding:2px 6px}.j-num{position:absolute;transform:translate(-50%,-100%);font-size:clamp(1.3rem,6cqw,3.2rem);color:var(--bone);-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;animation:j-float 1.7s cubic-bezier(.2,.7,.3,1) both}.j-num.hurt{color:var(--red-text)}.j-num.hit:after{content:"−" attr(data-t)}.j-num.hurt:after{content:"−" attr(data-t)}.j-num.big{font-size:clamp(1.8rem,9cqw,4.6rem)}@keyframes j-float{0%{opacity:0;transform:translate(-50%,-60%) scale(.4)}10%{opacity:1;transform:translate(-50%,-110%) scale(1.3)}20%{transform:translate(-50%,-105%) scale(1)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-170%) scale(1)}}.j-slain{position:absolute;transform:translate(-50%,-50%) rotate(-9deg);font-size:clamp(.9rem,3.4cqw,1.8rem);letter-spacing:.1em;text-transform:uppercase;color:var(--bone);background:var(--blood);padding:.1em .5em .16em;border:2px solid var(--bone);animation:j-slain 2.4s ease-out both}@keyframes j-slain{0%{opacity:0;transform:translate(-50%,-50%) rotate(-9deg) scale(2.4)}8%{opacity:1;transform:translate(-50%,-50%) rotate(-9deg) scale(1)}88%{opacity:1}to{opacity:0}}.j-card{position:absolute;left:0;top:6%;max-width:86%;padding:.22em .9em .3em .7em;font-size:clamp(1.1rem,4.6cqw,2.6rem);color:var(--bone);background:var(--ink);border:2px solid var(--bone);border-left:0;box-shadow:.3em 0 0 var(--blood);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:j-card 3.6s cubic-bezier(.2,.8,.2,1) both}@keyframes j-card{0%{transform:translate(-105%)}9%{transform:translate(0)}90%{transform:translate(0);opacity:1}to{transform:translate(-30%);opacity:0}}.j-card.j-fight,.j-card.j-level{left:0;right:0;bottom:auto;top:38%;max-width:none;text-align:center;border-left:0;border-right:0;box-shadow:none;font-size:clamp(1.6rem,9cqw,5rem);letter-spacing:.12em;text-transform:uppercase;animation-name:j-band}.j-card.j-fight{background:var(--blood);top:27%;display:flex;flex-direction:column;align-items:center;gap:.1em;font-size:clamp(1.4rem,7cqw,4rem);padding-block:.12em .2em}.j-fight .j-who{font-size:clamp(.85rem,2.6cqw,1.5rem);letter-spacing:.08em;max-width:92%;overflow:hidden;text-overflow:ellipsis}.j-card.j-level{background:var(--bone);color:var(--ink);border-color:var(--ink)}@keyframes j-band{0%{opacity:0;transform:scaleY(.05)}7%{opacity:1;transform:scaleY(1.15)}12%{transform:none}88%{opacity:1;transform:none}to{opacity:0;transform:scaleY(.05)}}.juice.still *{animation:none!important}.juice.still .j-roll{opacity:1}.game.in-combat .scene-frame{border-color:var(--blood);box-shadow:0 0 0 2px var(--blood);animation:j-frame 1.6s ease-in-out infinite alternate}@keyframes j-frame{0%{box-shadow:0 0 0 1px var(--blood)}to{box-shadow:0 0 0 4px var(--blood)}}.scene.reduced-motion{animation:none}.opt:not(:disabled){transition:transform 90ms ease-out,box-shadow 90ms ease-out}.opt:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 4px 0 0 var(--blood),3px 3px 0 var(--blood)}.opt:not(:disabled):active{transform:translate(2px,2px);box-shadow:inset 4px 0 0 var(--blood)}.opt .odds{position:relative;padding-bottom:6px}.opt .odds:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;border:1px solid currentColor;background:linear-gradient(to right,currentColor calc(var(--odds, 0) * 100%),transparent 0);opacity:.85}@media (prefers-reduced-motion: reduce){.game.in-combat .scene-frame{animation:none}.opt:not(:disabled),.opt:not(:disabled):hover,.opt:not(:disabled):active{transition:none;transform:none}}.game>.banner{grid-column:1 / -1}.game.layout-wide:has(>.banner){grid-template-rows:auto minmax(0,1fr)}.game.layout-mid>.banner,.game.layout-narrow>.banner{flex:none}.game.compact.reading .option-wrap,.game.compact.reading .goal,.game.compact.reading .roll-line,.game.compact.reading .initiative,.game.compact.reading .foes{display:none}.game.compact.reading .log{flex:1 1 auto;max-height:none}.game.compact.reading .log-continue{min-height:56px;font-size:1.1em;letter-spacing:.1em}.game.compact.reading .log-body{font-size:1.04em}.game.compact:not(.reading) .option-wrap{animation:phone-rise .22s cubic-bezier(.2,.8,.2,1) both}@keyframes phone-rise{0%{transform:translateY(18px);opacity:.4}to{transform:none;opacity:1}}.game.layout-narrow .tabbar{grid-template-columns:repeat(5,1fr)}.game.layout-narrow .tabbar button:last-child{border-right:none}.game.layout-narrow .tabbar button{font-size:var(--fs-note);padding-inline:2px}.game.layout-narrow .pack-btn{display:none}.game.layout-narrow .party-bar{padding:3px 8px;border-top:none}.game.layout-narrow .left{gap:0}.game.layout-narrow .goal{margin:0}.game.layout-narrow .target-row[data-group=move]{padding:3px;border:none}.game.layout-narrow .target-row[data-group=move] .target-action{display:none}.game.layout-narrow .target-row[data-group=move] .target-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:4px;flex:1 1 100%}.game.layout-narrow .target-row[data-group=move] .target-item{display:flex;min-width:0}.game.layout-narrow .target-row[data-group=move] .opt{flex-direction:column;justify-content:center;gap:0;min-height:54px;padding:4px 2px;text-align:center}.game.layout-narrow .target-row[data-group=move] .opt .badge{display:none}.game.layout-narrow .target-row[data-group=move] .opt .label{flex:none;font-family:var(--font-sc);font-size:var(--fs-small);letter-spacing:.04em;line-height:1.1;text-align:center;overflow-wrap:anywhere}.game.layout-narrow .target-row[data-group=move] .opt .glyph{display:block;margin:0 0 2px;font-size:1.5em;line-height:1}.game.layout-narrow .target-row[data-group=move] .opt .hint{display:none}@media (hover: none) and (pointer: coarse){.opt .badge,.kbd-hint{display:none}.game.layout-narrow .opt{min-height:48px}}@media (max-width: 520px){.title-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px}.title-menu>.primary,.title-menu>.deeper,.title-menu>p,.title-menu>button:first-of-type{grid-column:1 / -1}.title-menu>button,.title-menu>.title-ach>button{min-height:48px;font-size:1em;padding-inline:4px}.title-menu>button.primary{min-height:56px;font-size:1.15em}.title-blurb{font-size:var(--fs-note)}}@media (prefers-reduced-motion: reduce){.game.compact:not(.reading) .option-wrap{animation:none}}.game.layout-narrow .target-row[data-group=move] .opt .label{display:block;white-space:normal}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":w"]){order:1}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":n"]){order:2}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":s"]){order:3}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":e"]){order:4}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":u"]){order:5}.game.layout-narrow .target-row[data-group=move] .target-item:has([data-option$=":d"]){order:6}@media (orientation: landscape) and (max-height: 500px){.game.layout-mid .scene-frame svg,.game.layout-mid.in-combat .scene-frame svg{max-height:58vh;max-height:58dvh}.game.layout-mid.reading .log{flex:1 1 auto;max-height:none}.title-menu{display:grid;grid-template-columns:1fr 1fr;gap:6px}.title-menu>.primary,.title-menu>.deeper,.title-menu>p{grid-column:1 / -1}.title-menu>button,.title-menu>.title-ach>button{min-height:44px}}@media (orientation: landscape) and (max-height: 540px){.game.layout-mid:has(>.banner){grid-template-rows:auto minmax(0,1fr)}}a.button{display:inline-flex;align-items:center;min-height:44px;padding:.4em .9em;border:2px solid var(--bone);color:var(--text);text-decoration:none;font-family:var(--font-sc);letter-spacing:.04em;box-shadow:0 0 0 1px var(--blood)}a.button:hover,a.button:focus-visible{background:var(--bone);color:var(--ink)}.title-cloud{margin:0;font-size:var(--fs-note)}.title-cloud a{color:var(--bone)}.frame-corner{position:fixed;top:6px;right:6px;z-index:15;min-height:32px;padding:.15em .6em;background:var(--bg);font-size:var(--fs-note);opacity:.9}
