[hidden]{display:none!important}:root{--bg: #14110f;--panel: #221d19;--text: #ece4d8;--muted: #9a8f80;--accent: #e8b04b;--error: #ef6b5b;--rarity-common: #e8c547;--rarity-uncommon: #5fcf6a;--rarity-rare: #5b9bf0;--rarity-very-rare: #b57cf0;--rarity-legendary: #f0902b;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;min-height:100dvh;padding:env(safe-area-inset-top,0px) 16px env(safe-area-inset-bottom,0px)}.screen{max-width:32rem;margin:0 auto;padding-block:2rem;display:flex;flex-direction:column;gap:1rem}h1{color:var(--accent);font-family:ui-monospace,monospace;text-align:center;margin:2rem 0 1rem}h2{margin:0}label{display:flex;flex-direction:column;gap:.4rem;color:var(--muted)}input,button{font:inherit;min-height:44px;border-radius:8px;border:1px solid #3a322b;padding:.5rem .9rem;color:var(--text);background:var(--panel)}button{cursor:pointer}button.primary{background:var(--accent);color:#1a1408;border-color:var(--accent);font-weight:600}button.link{background:none;border:none;color:var(--accent);padding-inline:.25rem}button:disabled{opacity:.6}form{display:flex;flex-direction:column;gap:.75rem}.error{color:var(--error);margin:0}.muted{color:var(--muted)}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}footer{display:flex;justify-content:space-between;align-items:center;margin-top:2rem}.version{color:var(--muted);font-size:.85rem}.card{background:var(--panel);border-radius:12px;padding:1rem 1.25rem}.prompt{font-size:1.1rem;color:var(--text)}.row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.prologue{gap:.9rem}.options{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem}.option{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left}.option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.roll{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.roll th,.roll td{padding:.35rem .3rem;text-align:center;border-bottom:1px solid #3a322b}.roll .dice{white-space:nowrap}.die{display:inline-block;min-width:1.5em;margin-inline:1px;border:1px solid #3a322b;border-radius:4px}.roll .final{color:var(--accent);font-weight:700}.sheet .stats{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1rem;margin:.75rem 0}.sheet dt{color:var(--muted)}.sheet dd{margin:0}.abilities{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.ability{display:flex;flex-direction:column;align-items:center;background:var(--bg);border-radius:8px;padding:.4rem}.ability .label{font-size:.8rem;color:var(--muted)}.tip{color:var(--accent)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0009;display:grid;place-items:center;padding:16px}.dialog{max-width:26rem}a{color:var(--accent)}.play{font-size:14px;display:grid;gap:.75rem;padding-block:.75rem;max-width:80rem;margin:0 auto}.play-map{display:flex;flex-direction:column;gap:.5rem;min-width:0;height:calc(100dvh - 1.5rem)}.map{position:relative;flex:1 1 auto;min-height:14rem;border-radius:10px;overflow:hidden;background:#0d0b0a;touch-action:none}.map-canvas{display:block;width:100%;height:100%}.zoom{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:6px}.zoom button{min-width:44px;padding:0;opacity:.85}.dpad{position:absolute;left:8px;bottom:8px;display:grid;grid-template:"a up b" "left c right" "d down e" / 48px 48px 48px;gap:2px;opacity:.85}.dpad button{padding:0;min-height:48px}.dpad .up{grid-area:up}.dpad .down{grid-area:down}.dpad .left{grid-area:left}.dpad .right{grid-area:right}.status{display:flex;gap:.5rem;align-items:baseline}.actions{display:flex;gap:.5rem;flex-wrap:nowrap}.actions button{flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log[hidden]{display:none}.log{flex:0 0 auto;background:var(--panel);border-radius:10px;padding:.25rem .75rem;font-size:12px}.log-lines{list-style:none;margin:0;padding:0;min-height:5.6em;max-height:5.6em;overflow-y:auto;color:var(--muted)}.log-lines li:last-child{color:var(--text)}.check{flex-direction:row;align-items:center;gap:.6rem;color:var(--text);min-height:44px}@media(min-width:900px){.play{grid-template-columns:minmax(0,1fr) 20rem;align-items:start}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;max-height:calc(100dvh - 1.5rem)}.sidebar>.sheet-panels{flex:1 1 auto;min-height:0}.sidebar>.sheet-panels>.card{min-height:0;overflow-y:auto}.sidebar>[data-testid=target],.sidebar>.sidebar-tabs,.sidebar>.errand-box{flex:0 0 auto}}.title-art{margin:0 auto;color:var(--accent);line-height:1.15;font-size:min(14px,calc((100vw - 40px) / 26));overflow:hidden;max-width:100%}.prologue p{font-size:1.1rem;line-height:1.6;margin:0}.prologue h1.prologue-title{font-size:2.6rem;margin:1rem 0 0}.prologue h2.prologue-subtitle{font-size:1rem;font-weight:400;text-align:center;color:var(--muted, #b8a98f);margin:0 0 .6rem}.prologue .primary{margin-top:1rem}.new-game{display:flex;flex-direction:column;gap:.25rem}.new-game .check,.new-game .range{min-height:32px;font-size:.95rem}.go-to{flex-direction:row;align-items:center;gap:.6rem}.go-to button{flex:0 0 auto}.controls{width:100%;border-collapse:collapse;table-layout:fixed}.controls td{padding:.35rem .4rem;border-bottom:1px solid #3a322b;vertical-align:top}.controls td:first-child{width:35%}.controls td{overflow-wrap:anywhere}.controls tr.later{opacity:.6}kbd{display:inline-block;min-width:1.6em;margin:0 .15em;padding:.1em .35em;border:1px solid #5a5048;border-radius:4px;text-align:center;font-family:ui-monospace,monospace}.story-panels{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;padding:.5rem;background:#0d0b0a99}.story-panels>*{flex:0 1 auto;min-height:0;overflow-y:auto}.debug-box:empty{display:none}.story-panels:empty{display:none}.panel h3{margin:0 0 .4rem;color:var(--accent)}.panel p{margin:.3rem 0;line-height:1.5}.panel .goal{color:var(--text)}.panel button{margin-top:.5rem}.discovery{border:1px solid var(--accent)}.build-title{margin:0 0 .5rem}.roll tr.main{background:#e8b04b26}.roll tr.main th{color:var(--accent)}.roll .hp-row td{text-align:left}.turn-bar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.turn-bar .turn-info{font-variant-numeric:tabular-nums;color:var(--accent);margin-right:auto}.turn-bar button{min-height:40px;padding:.3rem .7rem}.story-box{position:absolute;top:8px;left:8px;right:64px;background:#000000b3;border-radius:8px;padding:.4rem .75rem;font-size:1.15rem;line-height:1.35}.story-box p{margin:.15rem 0}.dice-roll{z-index:40;position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.3rem;pointer-events:none;text-shadow:0 2px 6px #000}.d20{width:5.5rem;height:5.5rem;display:grid;place-items:center;font-size:2.4rem;font-weight:700;color:#1a1410;background:var(--accent);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.dice-roll.tumbling .d20{animation:tumble .15s linear infinite}@keyframes tumble{to{transform:rotate(60deg)}}.dice-word{font-size:1.6rem;font-weight:700}.dice-sum{font-variant-numeric:tabular-nums}.dice-roll.hit .dice-word,.dice-roll.saved .dice-word{color:#7fd17f}.dice-roll.miss .dice-word,.dice-roll.failed .dice-word{color:#c9c0b8}.dice-roll.crit .dice-word{color:#ffd34d}.dice-roll.fumble .dice-word{color:#e06a5a}.hud h3{margin:0 0 .3rem;color:var(--accent)}.hud p{margin:.2rem 0}.hud .muted{color:var(--muted)}.target-line{font-size:.95rem;color:var(--accent)}.status{cursor:pointer}.status-more{margin-left:auto;color:var(--muted)}.turn-bar .attack{border-color:#e04040;color:#ffb3a8;font-weight:700}.range{display:flex;align-items:center;gap:.6rem;min-height:44px}.settings-group{display:flex;flex-direction:column}@media(min-width:900px){.target-line{display:none}}.status{flex-wrap:wrap;align-items:center}.meter{display:inline-flex;align-items:center;gap:.35rem;font-variant-numeric:tabular-nums}.meter-label{color:var(--muted);font-size:.85rem}.meter-bar{display:inline-block;width:4.5rem;height:.45rem;border-radius:4px;background:#3a322b;overflow:hidden}.meter-fill{display:block;height:100%;background:#e04040}.xp-now+.meter-bar .meter-fill,.meter.xp-now .meter-fill{background:#6fc6e0}.debug .row{display:flex;gap:.5rem}.tooltip{position:absolute;pointer-events:none;background:#000000d9;color:var(--text);padding:.2rem .5rem;border-radius:6px;font-size:.9rem;white-space:nowrap;z-index:5}.poster{text-align:center}.poster-art{display:inline-block;text-align:left;font-size:.85rem;line-height:1.15;margin:.5rem auto;max-width:100%;overflow-x:auto}.poster-svg{width:100%;max-width:30rem;margin:.5rem auto}.poster-svg svg{display:block;width:100%;height:auto;aspect-ratio:96 / 64}.poster-pixels{display:block;width:100%;max-width:30rem;margin:.5rem auto;image-rendering:pixelated}.poster-title{font-size:1.8rem;margin:.3rem 0}.poster-caption{font-style:italic}.inspect{position:absolute;left:8px;right:8px;bottom:8px;max-height:45%;overflow-y:auto;z-index:6}.inspect p{margin:.3rem 0}.inv-item.equipped .inv-name{color:var(--accent)}.inv-buttons button{min-height:44px;padding:.2rem .6rem;margin-right:4px}.inv-table{table-layout:auto}.inv-table td,.inv-table th{white-space:normal}.loot ul{margin:.3rem 0;padding-left:1.2rem}.next-weapon{color:var(--accent)}.story-box p.action{font-size:1rem;color:#f4d58d}.create-buttons{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:1.5rem;gap:.5rem}.create-buttons>:last-child{justify-self:end}.create-buttons>:first-child{justify-self:start}.reroll{background:#2f6f91;border-color:#2f6f91;color:#fff;font-weight:700}.name-step .intro{font-size:1.05rem;line-height:1.55}.name-step label{display:flex;flex-direction:column;gap:.4rem}.options.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.75rem}.card-option{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;text-align:left;padding:.8rem 1rem}.card-option.selected{border:2px solid var(--accent)}.option-bonus{color:var(--accent);font-weight:700}.option-description{color:var(--text);line-height:1.4}.tag{margin-left:.4rem;background:var(--accent);color:#1a1410;font-size:.75rem;font-weight:700;padding:.05rem .4rem;border-radius:4px}.roll .dice{color:var(--muted);white-space:nowrap}.roll .die{margin-right:.25em}.roll .stat-col{background:#ffffff0d;font-weight:700;font-size:1.1rem;text-align:center}.roll .mod{text-align:center}.roll .gap-row td{height:.8rem;border:none}.confirm-panels .sheet-panels{display:grid;gap:.75rem}@media(min-width:900px){.confirm-panels .sheet-panels{grid-template-columns:1fr 1fr;align-items:start}}.pack{margin-top:.75rem}.sheet-panels{display:flex;flex-direction:column;gap:.75rem}.character .hero-name{margin:0;font-size:1.6rem}.row-line{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin:.3rem 0;flex-wrap:wrap}.ability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-top:.5rem}.ability-box{display:flex;flex-direction:column;align-items:center;background:var(--bg);border-radius:8px;padding:.35rem;border:1px solid transparent}.ability-box.main{border-color:var(--accent)}.ability-box .label{font-size:.8rem;color:var(--muted)}.ability-box .mod{color:var(--muted);font-size:.85rem}.ability-label{color:var(--accent);font-size:.75rem;text-align:center}.combat h3,.character h3{margin:0 0 .3rem;color:var(--muted);text-transform:uppercase;font-size:.85rem;letter-spacing:.08em}.combat .ac-total{font-size:1.6rem}.ac-parts{margin:0 0 .3rem;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.hud.combat{line-height:1.25}.hud.combat p{margin:.1rem 0}.weapon{border-top:1px solid #3a322b;padding-top:.25rem;margin-top:.25rem}.weapon p{margin:.1rem 0}.weapon.dim{opacity:.55}.effect-chips{display:flex;flex-wrap:wrap;gap:.25rem;margin:.2rem 0}.effect-chip{font-size:12px;padding:.05rem .45rem;border-radius:999px;border:1px solid;cursor:help}.effect-chip.buff{color:#8fd694;border-color:#4f8a53;background:#4f8a5326}.effect-chip.debuff{color:#f08a80;border-color:#a0453d;background:#a0453d26}.next-attack{color:var(--accent);font-weight:700}.hit-need{color:var(--accent);font-weight:700;font-size:calc(1em + 2px)}[data-testid=target]{border:2px solid #c0392b}.meter{width:100%;justify-content:space-between;flex-wrap:wrap}.meter .meter-bar{width:100%}@media(min-width:900px){.status{display:none}}.turn-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-right:auto;flex:1}.move-boxes{display:inline-flex;gap:3px;vertical-align:middle}.move-boxes .box{width:14px;height:14px;border-radius:3px;background:#3a322b}.move-boxes .box.lit{background:var(--accent)}.pill{padding:.15rem .7rem;border-radius:999px;font-weight:700}.pill.ready{background:#2e7d4f;color:#fff}.pill.used{background:#3a322b;color:var(--muted);text-decoration:line-through}.turn-hint{color:var(--accent)}.spell-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.spell-row button[data-testid=spell-option]{min-height:44px}.targeting{background:#2f6f91;color:#fff;padding:.4rem .75rem;border-radius:8px}.class-ability{border-top:1px solid #3a322b;padding-top:.25rem;margin:.25rem 0 0;cursor:help}.class-ability.dim{opacity:.55}.turn-actions{display:inline-flex;gap:.3rem}.rest-wait{text-align:center}.rest-wait progress{width:100%;height:1rem}.roll .hp-row td.stat-col{text-align:center}.story-box{position:absolute;top:8px;left:8px;right:64px;background:#000000bf;border-radius:8px;padding:.4rem 1.6rem .4rem .75rem}.story-lines{max-height:9.5em;overflow-y:auto;font-size:1.05rem;line-height:1.35}.story-box.collapsed .story-lines{max-height:1.6em;overflow:hidden}.story-line{margin:.1rem 0}.story-line.old{opacity:.6}.story-line.milestone{color:#ffd23f;font-weight:700}.story-line.action{color:#f4c96b;font-size:1rem}.story-line.hint{color:var(--muted);font-size:.95rem}.story-line.event{color:#d8cfc4}.story-line .speaker{color:#7fb3ff}.story-line .discovery{border-left:3px solid var(--accent);padding-left:.6rem;margin:.3rem 0}.discovery-title{color:var(--accent);font-weight:700;margin:0}.story-toggle{position:absolute;top:4px;right:6px;min-height:28px;min-width:28px;padding:0}.attack-name{color:#5fd3c6;font-style:italic}.card,.dialog,.screen.prologue,.screen.create,.panel{padding:24px}@media(max-width:899px){.card,.dialog,.screen.prologue,.screen.create,.panel{padding:16px}}.asi .row{flex-wrap:wrap;gap:6px}.asi button{min-height:44px}.asi button.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.close-row{display:flex;justify-content:flex-end;margin-top:.75rem}button.close{background:var(--accent);border-color:var(--accent);color:#1b1b1b;font-weight:600;min-height:44px}.inv-table,.spell-table{width:100%;border-collapse:collapse;text-align:left}.inv-table th,.inv-table td,.spell-table th,.spell-table td{text-align:left;padding:4px 8px;vertical-align:middle;border-bottom:1px solid rgba(255,255,255,.08)}.inv-table tr.equipped{background:#ffaa3c1f}.inv-table td.inv-buttons{white-space:nowrap}.sidebar-tabs{display:flex;gap:4px;margin-bottom:6px}.sidebar-tabs button{flex:1;min-height:44px}.sidebar-tabs button.active{border-color:var(--accent);color:var(--accent);font-weight:600}.play.intro-open>:not(.intro-layer){display:none!important}.intro-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;background:var(--bg)}.intro-body{flex:1;overflow-y:auto;padding:24px;max-width:720px;width:100%;margin:0 auto;box-sizing:border-box}.intro-body p{font-size:1.1rem;line-height:1.6}.intro-foot{padding:12px 24px 20px;display:flex;justify-content:center;border-top:1px solid rgba(255,255,255,.1)}.intro-foot button{min-height:44px;min-width:160px}@media(max-width:600px){.intro-body{padding:16px}.intro-foot{padding:10px 16px 16px}}.intro-layer{display:contents}.screen>*{flex-shrink:0}.tooltip{position:fixed;z-index:60}.tooltip.long{white-space:normal;max-width:min(28rem,90vw)}.tooltip p{margin:.2rem 0}.turn-bar{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:.35rem}.turn-status{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.turn-buttons{display:flex;flex-wrap:nowrap;gap:.4rem}.turn-buttons button{flex:1 1 0;min-width:0;min-height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:600px){.turn-buttons button{padding:.2rem .25rem;font-size:.85rem}}.inventory{overflow-x:auto}.play{position:relative}.menu-button{position:absolute;top:4px;right:8px;z-index:20;min-width:44px;min-height:44px;font-size:1.3rem}.feedback-button{right:60px}.feedback-text{width:100%;box-sizing:border-box;font:inherit;resize:vertical}.feedback-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0}.feedback-notes{max-height:40vh;overflow-y:auto}.feedback-note{white-space:pre-wrap;border-top:1px solid var(--muted);padding-top:.3rem;margin:.3rem 0 0}.sidebar{padding-top:52px}.turn-buttons .end-turn{margin-left:auto}button:disabled{box-shadow:none!important;border-color:var(--muted)!important;color:var(--muted)!important;background:transparent!important}.hotkey-strip{display:flex;flex-wrap:wrap;gap:.25rem .75rem;font-size:12px;padding:.1rem .25rem}.hotkey-strip button{min-height:28px;padding:0 .2rem}kbd.keycap{min-width:1.3em;margin:0;padding:0 .25em;font-size:.85em;line-height:1.3;border-bottom-width:2px;background:#ffffff0f}.hit-burst{position:absolute;pointer-events:none;z-index:40}.burst-body{display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:0;width:100%;min-width:260px;min-height:150px;text-align:center;font-weight:900;font-size:18px;letter-spacing:.02em;color:#fff7e6;-webkit-text-stroke:1px #2b1300;text-shadow:0 0 3px #2b1300,2px 2px 0 #2b1300;background:#ff8a1e;clip-path:polygon(50% 0%,66% 15%,92% 8%,85% 36%,100% 50%,85% 64%,92% 92%,66% 85%,50% 100%,34% 85%,8% 92%,15% 64%,0% 50%,15% 36%,8% 8%,34% 15%);animation:burst-pop 1s ease-out forwards;white-space:nowrap}.hit-burst.miss .burst-body{background:#9a948d}.hit-burst.crit .burst-body{background:#ff3d1a;font-size:22px;min-width:320px;min-height:180px;animation:burst-pop 1s ease-out forwards,burst-shake .12s linear 5}.hit-burst.save .burst-body{background:#7fb3ff}.hit-burst.heal .burst-body{display:block;position:relative;min-height:0;clip-path:none;background:transparent;padding:.4rem 0 .4rem 44px;min-width:96px;box-sizing:content-box;text-align:left;font-size:24px;color:#d6ffe2;text-shadow:0 0 3px #062a12,2px 2px 0 #062a12;-webkit-text-stroke:1px #062a12}.hit-burst.heal .burst-body:before{content:"";position:absolute;left:0;top:50%;width:36px;height:36px;transform:translateY(-50%);border-radius:4px;background:linear-gradient(#fff,#fff) center / 22px 7px no-repeat,linear-gradient(#fff,#fff) center / 7px 22px no-repeat,#d52b1e}@keyframes burst-pop{0%{opacity:0;scale:.5}12%{opacity:1;scale:1.1}20%{scale:1}70%{opacity:1;scale:1}to{opacity:0;scale:.95}}@keyframes burst-shake{0%,to{translate:0 0}25%{translate:-3px 1px}75%{translate:3px -1px}}@media(max-width:899px){.zoom{top:56px}}.intro-body .title-art{display:block;width:fit-content;margin:.75rem auto}.intro-body p{margin:0 0 1.2em}.space-default{outline:2px solid var(--accent);outline-offset:2px}.errand-box{border:4px double var(--accent);border-radius:6px;padding:.35rem .6rem;margin-bottom:.5rem;font-weight:700;text-align:center}.shop-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0}.shop-col{display:flex;flex-direction:column;gap:.15rem;min-width:0;padding:0 .75rem}.shop-col+.shop-col{border-left:1px solid #3a322b}.shop-list{overflow-y:auto;max-height:40vh;display:flex;flex-direction:column;gap:.15rem}.shop-deal{text-align:center}.shop-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:auto;padding-top:.5rem;align-items:end}.shop-actions button{width:100%;min-height:44px;margin:0}.shop-row.showpiece span:first-child{color:#ffd23f}.shop-slogan{font-size:.85rem;font-style:italic;color:var(--muted);text-align:center;margin:.6rem 0 0}.shop-col h4,.shop-deal h4{margin:.2rem 0;color:var(--accent)}.shop-row{display:flex;justify-content:space-between;gap:.5rem;text-align:left;min-height:32px}.shop-row:disabled{opacity:.45}[data-testid=shop-balance]{font-weight:700;margin-top:.5rem}@media(max-width:899px){.shop-columns{grid-template-columns:1fr}.shop-col+.shop-col{border-left:0;border-top:1px solid #3a322b}.shop-row{min-height:44px}}.game-over h2{margin:0 0 .5rem;color:var(--accent)}.game-over-lines p{margin:.2rem 0;font-style:italic}.game-over-stats{margin:.6rem 0;border-collapse:collapse}.game-over-stats td{padding:.1rem 1rem .1rem 0}.game-over-score strong{font-size:2.2rem;color:#ffd23f}.new-best{color:#ffd23f;font-weight:700}.ability-buttons{display:contents}.meter.waiting .meter-label:after{content:" ▲";color:#ffd23f}button.pinned{position:sticky;bottom:0;margin-top:.75rem}.spells-section{border-top:1px solid var(--border, #444);margin-top:.5rem;padding-top:.4rem}.spells-section h4{margin:0 0 .2rem;font-size:.75rem;letter-spacing:.08em;color:var(--muted, #aaa)}.spell-big{font-weight:700;font-size:1.05rem;margin:.15rem 0}.spell-big.pips{letter-spacing:.05em}.hero-roll{font-weight:700;color:#f2c14e}.hud h3.target-title{color:var(--muted);text-transform:uppercase;font-size:.85rem;letter-spacing:.08em}button.target-name{display:block;max-width:100%;margin:0 0 .2rem;padding:0;min-height:0;font-size:20px;font-weight:700;color:#9ec9ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}button.target-name.hostile{color:#e04040}button.target-name.neutral{color:#9a9a9a}.hud[data-testid=target]{max-height:45vh;overflow-y:auto}.target-head{position:sticky;top:0;z-index:1;background:var(--panel)}.block-line{margin:0;font-size:12px;font-variant-numeric:tabular-nums}.turn-ability{min-height:28px;padding:.1rem .6rem;font-size:12px}.turn-abilities{display:inline-flex;gap:.3rem;flex-wrap:wrap;margin-left:auto}.detail{font-size:12px;color:var(--muted);margin:0}.tip-warn{color:#ff6b5a;font-weight:600}.unusable .inv-name,.shop-row.unusable span:first-child{opacity:.55}.block{margin:.35rem 0}.attack-name{color:#5fd3c4;font-weight:700}.block.dim{opacity:.5}.block-head{margin:0 0 .1rem}.block-rows{border-collapse:collapse;font-size:12px}.block-label{color:var(--muted);padding:0 .9rem 0 0}.block-value{font-variant-numeric:tabular-nums}.room-info .poster{margin-top:.75rem}[data-style=historical],[data-style=player],[data-style=reply]{font-style:italic}[data-style=xp]{color:#e8c547;font-weight:700}.plea-options{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.talk{max-width:640px}.talk-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.talk-sprite{width:64px;height:64px;image-rendering:pixelated;flex:none}.talk-speaker{margin:0;font-size:1.2rem}.talk-kind{color:var(--muted, #9a9a9a);font-weight:400;font-size:1rem}.talk-line{font-size:1.05rem;margin:.5rem 0}.talk-reply{margin:.25rem 0;opacity:.9}.talk-bill{margin:.5rem 0;padding:.5rem .75rem;border:1px dashed var(--accent);border-radius:6px;font-family:monospace}.talk-bill-item{margin:.15rem 0}.talk-bill-item[data-struck=true]{text-decoration:line-through;opacity:.55}.talk-bill-item[data-current=true]{font-weight:700}.talk-bill-total{margin:.35rem 0 0;font-weight:700}.talk-results{margin:.5rem 0;padding:.5rem .75rem;border:2px solid var(--accent);border-radius:6px}.talk-result{margin:.3rem 0}.talk-score{font-weight:700;color:var(--accent);margin:.25rem 0}.talk-timer{font-weight:700;margin:.25rem 0}.talk-timer.urgent{color:#e04040}.talk-answer{display:flex;gap:.5rem;margin:.5rem 0}.talk-input{flex:1;font-size:1rem;padding:.4rem .6rem}.talk-choices{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.talk-choices button{text-align:left}.talk-choices button.attack{color:#f08a80}.talk-n{display:inline-block;min-width:1.4em;font-weight:700;color:var(--accent)}.hidden-esc{display:none}.report-card{max-height:55vh;overflow-y:auto;margin:.5rem 0;padding:.5rem .75rem;border:2px solid var(--accent);border-radius:6px}.report-title{margin:0 0 .5rem;text-align:center;letter-spacing:.1em}.report-row{padding:.35rem 0;border-top:1px solid rgba(128,128,128,.3)}.report-row p{margin:.15rem 0}.report-mark{font-weight:700;min-width:1.4em;display:inline-block}.report-row.right .report-mark{color:#58c060}.report-row.wrong .report-mark{color:#e04040}.report-a{font-size:.95rem}.report-why{font-size:.9rem;font-style:italic;color:var(--muted)}.talk-picture{margin:.5rem auto;text-align:center}.eye-chart .eye-row{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700;letter-spacing:.3em;line-height:1.25;color:#111}.eye-chart{background:#fdfdf8;padding:.75rem;border-radius:6px}.ab-images{display:flex;justify-content:center;gap:1.5rem}.ab-images figure{margin:0}.ab-images figcaption{font-weight:700;margin-top:.25rem}.talk-art{display:inline-block;text-align:left;font-size:.8rem;line-height:1.1;margin:0}.color-plate{border-radius:50%;background:#f4f1e8}.snooze{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#000000c7;color:var(--text);text-align:center;padding:24px}.snooze h2{font-size:3rem;margin:0;letter-spacing:.3em}.snooze-count{font-size:1.4rem;margin:0}.snooze-dream{font-style:italic;max-width:32rem;color:var(--muted)}.ending-title{color:var(--gold, #f4c96b);font-size:1.8rem;margin:0 0 .75rem}.ending-player{margin-top:1.5rem;font-style:italic;color:var(--muted);border-left:3px solid var(--muted);padding-left:.75rem}.shop-money{font-size:1.3rem;font-weight:700;margin:0 0 .5rem}.money-up{color:#5fbf6a}.money-down{color:#e0453a}.install-slot:empty{display:none}.install-box{display:flex;flex-direction:column;align-items:center;gap:.25rem;border:4px double var(--accent);border-radius:6px;padding:.4rem .8rem;margin-bottom:.5rem}.install-box .link{background:none;border:0;color:inherit;font-size:.8rem;text-decoration:underline;cursor:pointer;padding:0}.name{font-weight:700}.loot{color:var(--rarity-common);font-weight:700}.rarity-common{color:var(--rarity-common)}.rarity-uncommon{color:var(--rarity-uncommon)}.rarity-rare{color:var(--rarity-rare)}.rarity-very-rare{color:var(--rarity-very-rare)}.rarity-legendary{color:var(--rarity-legendary)}.tip-name{font-weight:700}.update-banner{position:fixed;top:0;left:0;right:0;z-index:10000;display:flex;justify-content:center;align-items:center;gap:.75rem;padding:.3rem .5rem;background:var(--accent);color:#000;font-size:.9rem}
