/* A continuous world: no rescaling sprites or uncovered scene swaps. */
.scene-curtain{position:fixed;inset:0 0 var(--ad-space);z-index:115;background:#030605;opacity:0;transition:opacity .65s ease;pointer-events:auto}.scene-curtain.covered{opacity:1}
.travel-veil{inset:0 0 var(--ad-space);padding-bottom:25px;transition:opacity .65s ease}.travel-skip{bottom:18px}
.stage-enter>.screen{animation:scene-arrival .8s ease both}@keyframes scene-arrival{from{opacity:0}to{opacity:1}}
.combat-entering .combat-foot{animation:commands-arrive 1.1s ease both;animation-delay:var(--entry-age);pointer-events:none}.combat-entering .keyboard{animation:keys-arrive 1.1s ease both;animation-delay:var(--entry-age)}
@keyframes commands-arrive{0%,12%{opacity:0;translate:0 14px}70%,100%{opacity:1;translate:0 0}}@keyframes keys-arrive{0%,40%{opacity:0;translate:0 14px}100%{opacity:1;translate:0 0}}
/* A carved oak portrait, with the rank centered on its own axis. */
.home .knight-dossier{display:flex;align-items:center;gap:10px;min-width:0}.home .portrait-button{width:100%;clip-path:none;background:repeating-linear-gradient(4deg,#6c4b2b 0 3px,#4b321e 3px 5px,#7a5935 5px 6px,#513922 6px 10px);padding:10px;border:1px solid #b49865;border-radius:4px 4px 2px 2px;box-shadow:0 2px 0 #e2bf6c66,inset 0 0 0 2px #292115,inset 0 0 0 4px #b18a4e66,0 10px 22px #0009;overflow:visible}
.home .portrait-button:before,.home .portrait-button:after{inset:auto;top:5px;width:7px;height:7px;border:1px solid #f0cf83;background:#a58244;box-shadow:0 2px #261b11,0 1px 5px #0008;transform:rotate(45deg)}.home .portrait-button:before{left:6px}.home .portrait-button:after{right:6px}
.home .portrait-button .scene{border:2px solid #1e1e16;border-image:none;border-radius:45% 45% 1px 1px;clip-path:none;overflow:hidden;background:#152018;box-shadow:0 0 0 1px #c1a67066,inset 0 0 0 3px #101610}.home .portrait-button .scene:before{display:none}
.home .portrait-button .pixel-scene{display:block;aspect-ratio:96/108;width:100%;height:auto;object-fit:contain;clip-path:none}
.home .portrait-label{position:relative;display:block;inset:auto;width:100%;transform:none;margin:10px 0 2px;padding:0;background:none;border:0;white-space:normal;color:#e6cf9c;letter-spacing:1.4px;font:10px 'Knightle Herald'}.home .portrait-label small{font:7px 'Knightle Quill';color:#bbad8b;margin-top:5px}
.home .knight-dossier .level-panel{width:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:9px 5px 2px;border:0;border-radius:0;background:none;box-shadow:none;text-align:center}.home .legacy-rank{width:100%;display:flex;justify-content:center;align-items:center;text-align:center;gap:10px}.home .legacy-rank>b{clip-path:none;background:radial-gradient(circle,#84714b44,transparent 70%);border-bottom:1px solid #d5b772;height:38px;min-width:34px;font-size:30px;color:#f5dca1}.home .legacy-rank>span{font-size:7px;letter-spacing:2px}.home .legacy-rank strong{font-size:11px;letter-spacing:1px}.home .level-panel .meter{width:100%;margin:3px 0;height:7px;border:0;box-shadow:0 -1px #b69b62,0 1px #54472c}.home .level-panel .meter i{background:linear-gradient(90deg,#64838b,#a7bbb0,#e3c682)}.home .level-panel small{font-size:8px;letter-spacing:.8px}
/* Feats can arrive between attacks, tucked into the top left. */
body:has(.stage-combat) #achievement-toast{visibility:visible}#achievement-toast{top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:auto;bottom:auto;transform:translate(-12px,0);width:280px;max-width:calc(100vw - 84px);padding:11px 10px;gap:10px;border:1px solid #9c89535c;border-left:3px solid #d6bd7d;border-radius:3px;background:linear-gradient(110deg,#20291ff7,#101a17f5);box-shadow:0 8px 24px #0008;clip-path:none;transition:opacity .4s,transform .4s;text-align:left}
#achievement-toast.show{transform:translate(0,0)}#achievement-toast .notice-seal{width:27px;height:29px;background:none;clip-path:none;color:#e3c774;font-size:25px}#achievement-toast strong{font:12px 'Knightle Herald';color:#f0dfb6}#achievement-toast small{font:6px 'Knightle Quill';letter-spacing:1.8px;color:#b5a77f}#achievement-toast span{font:italic 11px/1.3 Georgia;color:#aaa993}#achievement-toast button{min-width:24px;min-height:28px;font-size:18px;color:#b5b299}body:has(.travel-veil) #achievement-toast,body:has(.death-screen) #achievement-toast,body:has(.execution-cinema) #achievement-toast{visibility:hidden}
/* Stable rows keep a slime-bound column in one place for the whole fight. */
.guess-row,.guess-row.current{height:32px;margin:0;gap:5px}.tile,.guess-row.current .tile{height:32px;font-size:19px}.guess-row.current .tile{box-shadow:0 0 10px #bbaa5430,inset 0 2px #e5cf7b55}.tile .cipher-glyph,.current .cipher-glyph,.last-attack .cipher-glyph{height:23px;width:20px}.tile.gooped{color:transparent;overflow:visible}.tile.gooped .slime-coat,.current .slime-coat{animation:goop-seal .85s cubic-bezier(.15,.7,.2,1) both;animation-delay:var(--goop-delay);background:linear-gradient(115deg,#afcf59dc,#5f9027e6 45%,#284924d9);clip-path:polygon(0 5px,4px 5px,4px 0,calc(100% - 5px) 0,calc(100% - 5px) 3px,100% 3px,100% calc(100% - 2px),85% calc(100% - 2px),85% 100%,71% 100%,71% calc(100% - 3px),35% calc(100% - 3px),35% 100%,15% 100%,15% calc(100% - 3px),0 calc(100% - 3px));box-shadow:inset 2px 2px #dff19377,inset -2px -3px #173917}.slime-coat .trapped-vowel{font-size:19px;color:#ecf6bb;opacity:.78;text-shadow:1px 2px #204517}.slime-coat.goop-origin{outline:2px solid #cbdf89}.slime-coat i,.slime-coat .goop-drip{animation:none}.slime-coat .goop-drip{height:5px;opacity:.8}.guess-row:not(:last-child) .gooped:before{content:'';display:block;position:absolute;top:100%;left:43%;width:4px;height:7px;background:#709537bb;border:0;z-index:2;opacity:.7}
@keyframes goop-seal{0%{opacity:0;translate:0 -28px;scale:.5}45%{opacity:1;translate:0 2px;scale:1.13 .78}70%{translate:0 -1px;scale:.96 1.06}100%{translate:0 0;scale:1}}
/* Sand runs only while composing a word; a missed deadline consumes its row. */
.turn-clock{position:relative;display:flex;justify-content:center;align-items:center;gap:8px;max-width:300px;margin:10px auto 5px;height:21px;color:#d4c093;font-size:7px;letter-spacing:1px}.turn-clock b{font:16px 'Knightle Herald';min-width:24px;color:#f5dfac}.turn-clock-track{height:2px;position:absolute;inset:auto 0 0;background:#93805c33;overflow:hidden}.turn-clock-track i{height:100%;display:block;background:#c9b57c;transform-origin:left;transition:transform .12s linear}.hourglass{width:8px;height:12px;background:linear-gradient(150deg,#e9d3a1,#856939);clip-path:polygon(0 0,100% 0,100% 20%,60% 50%,100% 80%,100% 100%,0 100%,0 80%,40% 50%,0 20%)}.clock-danger{color:#efb0a1}.clock-danger b{color:#ffb294}.clock-danger .turn-clock-track i{background:#f18465}.clock-danger .hourglass{animation:sand-warning 1s ease infinite}.clock-paused{opacity:.45}.expired-row .tile{--rune-edge:#ad716566;--rune-fill:#49272366;color:#ac8274}.timeout-impact .tile{animation:row-wounded .8s ease both;animation-delay:calc(var(--tile-index)*35ms)}.timeout-impact .row-damage{color:#ffba99}
@keyframes sand-warning{50%{opacity:.4}}@keyframes row-wounded{0%{box-shadow:inset 0 0 30px #ee695388,0 0 18px #ed704766;translate:0 0}20%{translate:-3px 0}40%{translate:3px 0}65%{translate:-1px 0}100%{box-shadow:none;translate:0 0}}
/* Latin lettering is deliberately consumed once, at the wizard's entrance. */
.cipher-keyboard .key:not(.wide){position:relative}.cipher-human,.cipher-morph{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.cipher-morph .cipher-glyph{height:24px;width:22px}.cipher-human{animation:human-tongue 2.1s linear both;animation-delay:var(--cipher-age)}.cipher-morph{animation:lost-tongue 2.1s steps(1) both;animation-delay:var(--cipher-age);color:#e1a9ca}.combat-entering .cipher-symbol{animation:ancient-tongue 2.1s ease both;animation-delay:var(--cipher-age)}.wizard-weave .key:not(.wide){animation:none}.wizard-weave .cipher-symbol{animation:seal-reweave 1.2s ease both}
@keyframes human-tongue{0%,32%{opacity:1;font-family:'Knightle Quill';transform:none}38%{font-family:Georgia;transform:scaleX(-1)}44%{font-family:monospace;transform:translateY(-2px)}50%{font-family:'Knightle Herald';transform:scaleX(-1)}56%,100%{opacity:0}}
@keyframes lost-tongue{0%,35%{opacity:0}36%,45%{opacity:.9;transform:none}46%,57%{transform:scaleX(-1)}58%,68%{transform:rotate(180deg)}69%,100%{opacity:0}}
@keyframes ancient-tongue{0%,62%{opacity:0}76%{opacity:.6}100%{opacity:1}}@keyframes seal-reweave{0%,100%{opacity:1;filter:none}40%{opacity:.45;filter:drop-shadow(0 0 7px #e0b2b2)}65%{opacity:.9;filter:drop-shadow(0 0 12px #e8be89)}}
/* The six curses have a readable silhouette and a distinct palette. */
.chamber-ritual{position:absolute;left:50%;bottom:0;width:220px;height:180px;translate:-50% 0;pointer-events:none;z-index:1;opacity:.75;--spell:#e4c487}.chamber-ritual svg{width:100%;height:100%;overflow:visible}.chamber-ritual.ritual-0{--spell:#a3d46c}.chamber-ritual.ritual-2{--spell:#d3e6e0}.chamber-ritual.ritual-3{--spell:#a8e5d9}.chamber-ritual.ritual-4{--spell:#e5a9c8}.chamber-ritual.ritual-5{--spell:#ffa551}
.slime-pool{position:absolute;left:15%;right:15%;bottom:0;height:14px;border:1px solid #a1c56b66;border-radius:50%;box-shadow:0 0 12px #a6cf4b33,inset 0 0 10px #8cb94644}.curse-vial{position:absolute;left:3%;bottom:25%;color:#d4eda1;filter:drop-shadow(0 0 6px #8ec44b);width:26px;text-align:center}.curse-vial b{font:22px 'Knightle Herald'}.curse-vial small{font:6px 'Knightle Quill';letter-spacing:1px}
.guard-blade{position:absolute;width:19px;height:65px;top:26%;opacity:.35}.guard-blade.left{left:5%;rotate:-22deg}.guard-blade.right{right:5%;rotate:22deg}.guard-target{position:absolute;right:10%;top:28%;width:38px;height:38px;display:grid;place-items:center;color:#ffe0a1;font:20px 'Knightle Herald'}.guard-target i{position:absolute;inset:-6px;border:1px solid #e0bb7577;rotate:45deg;box-shadow:0 0 12px #e9c77c44}.ritual-guard .guard-blade{animation:guard-flies .7s ease both}.ritual-guard .guard-target{animation:spell-bloom .8s ease both}
.iron-ward{position:absolute;width:104px;height:122px;left:calc(50% - 52px);bottom:7%;opacity:.3}.iron-ward svg{fill:#b2c6c009;stroke:#d5dfc5;stroke-width:2}.iron-ward .ward-crack{stroke:#efaf75;stroke-width:4;opacity:0}.iron-ward.shattered{opacity:.1}.iron-ward.shattered .ward-crack{opacity:1}.ritual-armor .iron-ward{animation:ward-shatter 1s ease both}.heavy-warning{position:absolute;bottom:1px;width:100%;text-align:center;font:7px 'Knightle Quill';letter-spacing:3px;color:#ffc18a;text-shadow:0 0 10px #ee714e}
.ossuary-wheel{position:absolute;inset:10px 10px 20px}.ossuary-wheel>span{position:absolute;left:calc(50% + (var(--orb) - 1)*70px - 8px);top:calc(65% - var(--orb)*12%);height:34px;width:18px;color:#a3b9aa;opacity:.32;rotate:calc((var(--orb) - 1)*24deg)}.ossuary-wheel svg{fill:currentColor}.ossuary-wheel .lit{opacity:.95;color:#d2f8e3;filter:drop-shadow(0 0 9px #9de8c4)}.bones-fallen{opacity:0}.ritual-bones .ossuary-wheel{animation:bones-release 1.2s ease both}
.wizard-circle{position:absolute;width:165px;height:165px;left:calc(50% - 82px);bottom:0;opacity:.33}.wizard-circle>svg{fill:none;stroke:#e6b4cd;stroke-width:1}.wizard-circle>span{position:absolute;left:calc(50% - 10px);top:calc(50% - 12px);transform:rotate(calc(var(--orb)*60deg)) translateY(-78px) rotate(calc(var(--orb)*-60deg));color:#edd0a9}.wizard-circle>span svg{width:17px;height:21px}.ritual-cipher .wizard-circle{animation:spell-bloom 1.2s ease both}.ritual-unravel .wizard-circle{animation:seal-unravels 1.3s ease both}
.dragon-furnace{position:absolute;inset:15% 15% 4%;opacity:.25}.dragon-furnace.charge-1{opacity:.5}.dragon-furnace.charge-2{opacity:.9}.dragon-furnace>i{position:absolute;inset:25%;border:1px solid #ffc06766;border-radius:50%;box-shadow:0 0 18px #ed903944;transform:rotateX(50deg)}.dragon-furnace>i:nth-child(2){inset:12%;rotate:20deg}.dragon-furnace>i:nth-child(3){inset:2%;rotate:-20deg}.furnace-core{position:absolute;inset:20%;background:radial-gradient(ellipse,#ffd08966,#ea5a2522 40%,transparent 70%)}.charge-2 .furnace-core{animation:furnace-coals 1.4s ease infinite}.ritual-inferno .dragon-furnace{animation:inferno-bloom 1s ease both}.ritual-interrupt .dragon-furnace{animation:seal-unravels 1.1s ease both;filter:hue-rotate(150deg)}
.ritual-debris{position:absolute;left:50%;top:50%;width:5px;height:3px;background:var(--spell);box-shadow:0 0 5px var(--spell);animation:spell-fragments 1s ease-out both;transform:rotate(var(--angle))}.ritual-active{opacity:1}
@keyframes spell-fragments{from{opacity:1;translate:0 0}to{opacity:0;transform:rotate(var(--angle)) translateX(95px)}}@keyframes spell-bloom{25%{opacity:1;filter:drop-shadow(0 0 16px var(--spell))}100%{opacity:.33;filter:none}}@keyframes guard-flies{to{translate:0 -24px;opacity:0}}@keyframes ward-shatter{20%{opacity:.9;filter:brightness(2)}100%{opacity:0;scale:1.25}}@keyframes bones-release{0%{opacity:1}70%{opacity:.7;translate:0 -30px}100%{opacity:0;translate:0 20px}}@keyframes seal-unravels{20%{opacity:.85;filter:brightness(1.8)}100%{opacity:0;scale:1.3;rotate:20deg}}@keyframes furnace-coals{50%{opacity:.5}}@keyframes inferno-bloom{30%{opacity:1;scale:1.2}100%{opacity:0;scale:2}}
/* Stronger hits use saturated shards and a single, readable impact bloom. */
.tile .rune-damage{font:bold 28px 'Knightle Herald';animation:damage-ascends 2.1s cubic-bezier(.12,.7,.25,1) both;animation-delay:var(--impact-delay);text-shadow:2px 3px #101a14,0 0 10px #efce7788;color:#ffe19b;z-index:15}.tile.crit .rune-damage{font-size:32px;color:#bcff8d;text-shadow:2px 3px #13211b,0 0 15px #8eff6388}.tile.resonant-rune .rune-damage{font-size:calc(29px + var(--chain)*3px);color:#dfb4ff;text-shadow:2px 3px #171b24,0 0 18px #e6adff99}.tile.resonant-rune:nth-child(2n) .rune-damage{color:#94fff1}.tile.resonant-rune:nth-child(3n) .rune-damage{color:#ffc797}.floating-damage{font-size:42px!important;text-shadow:3px 4px #102016,0 0 16px #d2df7b77}.floating-damage.rainbow-damage{font-size:calc(39px + var(--chain)*5px)!important;color:#e5b9ff;animation:resonance-total 1.35s ease-out both}.floating-damage.player-hit{font-size:28px!important;color:#ffc1ac}.weakpoint-burst{filter:drop-shadow(0 0 12px #b6fb9f88)}
@keyframes damage-ascends{0%{opacity:0;transform:translate(-50%,4px) scale(.45)}12%{opacity:1;transform:translate(-50%,-14px) scale(1.35)}25%{transform:translate(-50%,-23px) scale(1)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-74px) scale(.95)}}
.execution-impact .execution-words{animation:legend-impact 1.8s ease-out both}.execution-impact .execution-words h2{font-size:clamp(34px,6vw,68px);color:#fff0b5;text-shadow:3px 4px #472849,-2px -2px #204b50,0 0 20px #d4a0f0aa;letter-spacing:2px}.execution-impact .execution-runes span{color:#baffdf;text-shadow:0 0 15px #8ceac6}.execution-impact .execution-prism{position:absolute;inset:0;background:conic-gradient(from 20deg at 50% 46%,#e6577744,#eab85466,#baf28844,#64ccda66,#ae7bea66,#ef74b744,#e6577744);mask-image:radial-gradient(ellipse,transparent 8%,#000 32%,transparent 72%);animation:prismatic-detonation 1.5s ease-out both}.execution-shockwave{display:none}.execution-impact .execution-shockwave{display:block;position:absolute;left:50%;top:46%;width:120px;height:120px;translate:-50% -50%;border:4px solid #bbfff0;border-radius:50%;box-shadow:0 0 15px #a7e1db,inset 0 0 20px #e4b2ef;animation:shock-expands 1.3s ease-out both}.execution-impact .execution-shockwave.second{animation-delay:.15s;border-color:#f4baf0}.execution-impact .execution-fragment{width:5px;height:6px;background:hsl(calc(var(--n)*29deg) 90% 76%);box-shadow:0 0 10px currentColor;animation:prism-fragments 1.65s cubic-bezier(.1,.65,.4,1) both;transform:rotate(var(--angle))}.execution-impact .execution-light{animation:execution-flash 1.4s ease-out both}.execution-impact .execution-bolt{width:140px;left:calc(50% - 70px);filter:drop-shadow(0 0 18px #8ae9ef)}.dragon-execution .execution-prism{filter:saturate(1.3)}
@keyframes legend-impact{0%{opacity:0;transform:scale(.7)}17%{opacity:1;transform:scale(1.12)}32%,82%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-8px)}}@keyframes prismatic-detonation{0%{opacity:0;scale:.2}20%{opacity:1;scale:1}100%{opacity:0;scale:1.7}}@keyframes shock-expands{0%{opacity:.9;scale:.1}100%{opacity:0;scale:6}}@keyframes prism-fragments{0%{opacity:0}12%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(var(--distance))}}
/* Keep the knight under a fading shaft of light. The epitaph waits for input. */
.death-screen{isolation:isolate;background:radial-gradient(ellipse at 50% 60%,#1e2420,#040806 65%);overflow:hidden}.death-spotlight{position:absolute;z-index:-1;top:-8%;left:18%;width:64%;height:77%;background:linear-gradient(#eff0cf44,#d5dbb624 65%,transparent);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);filter:blur(10px);animation:spotlight-fades 7s ease both}.death-floor{position:absolute;width:60%;height:14%;top:58%;background:radial-gradient(ellipse,#b9bc8b22,transparent 70%);animation:spotlight-fades 8s ease both}.death-screen .death-scene{position:absolute;top:14%;width:min(560px,96vw);height:48%;border:0;background:none;box-shadow:none;z-index:1;opacity:1;animation:fallen-knight-hold 8s ease both}.death-scene canvas{width:100%;height:100%;object-fit:contain}.death-veil{z-index:0;background:#020503;animation:chamber-extinguish 5s 1.8s ease forwards}.death-epitaph{position:absolute;top:62%;left:10px;right:10px;text-align:center;z-index:2;opacity:0;animation:epitaph-arrives 1.8s 3.2s ease forwards}.death-epitaph small{font:7px 'Knightle Quill';letter-spacing:3px;color:#858a7c}.death-epitaph h1{font:bold clamp(24px,5vw,38px)/1.5 'Knightle Herald';letter-spacing:2px;color:#d5c8ac;margin:15px 0}.death-return{position:absolute;top:80%;left:12px;right:12px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:7px;opacity:0;animation:epitaph-arrives 1.8s 6s ease forwards}.death-return>span{font:7px 'Knightle Quill';letter-spacing:2px;color:#aaa28e}.death-return>strong{font:23px 'Knightle Herald';letter-spacing:4px;color:#e1cda4}.death-return>small,.death-return>em{font:italic 11px Georgia;color:#797f73}.death-screen .death-skip{position:relative;inset:auto;margin-top:5px;animation:none;opacity:.3;pointer-events:none;min-height:40px;padding:9px 18px;background:none;border:0;border-bottom:1px solid #a7926155;font:9px 'Knightle Quill';letter-spacing:2px}.death-screen.epitaph-ready .death-skip{opacity:1;pointer-events:auto;transition:opacity .7s}.death-return>em{font-size:10px}
@keyframes spotlight-fades{0%,20%{opacity:0}35%,50%{opacity:1}100%{opacity:.05}}@keyframes chamber-extinguish{to{opacity:1}}@keyframes fallen-knight-hold{0%{opacity:0}12%,55%{opacity:1}100%{opacity:.22}}
.loot-sparks i{background-image:url('assets/quest/gold-coin.svg')}.combat-entering .trait-emblem{opacity:0}.combat-entering .chamber-ritual{animation:scene-arrival 1.1s ease both}
@media(max-width:700px){.home .portrait-button{padding:7px}.home .legacy-rank>b{font-size:25px}.home .legacy-rank strong{font-size:9px}.home .level-panel small{font-size:7px}.home .portrait-label{font-size:8px}.home .portrait-label small{font-size:6px}.guess-row,.guess-row.current,.tile,.guess-row.current .tile{height:29px}.tile,.guess-row.current .tile{font-size:17px}.turn-clock{margin:7px auto 4px;height:19px;font-size:6px;max-width:270px}.turn-clock b{font-size:14px}.chamber-ritual{width:180px;height:140px}.wizard-circle{width:135px;height:135px;left:calc(50% - 67px)}.wizard-circle>span{transform:rotate(calc(var(--orb)*60deg)) translateY(-62px) rotate(calc(var(--orb)*-60deg))}.iron-ward{width:78px;height:100px;left:calc(50% - 39px)}.ossuary-wheel>span{left:calc(50% + (var(--orb) - 1)*53px - 8px)}.trait-emblem{transform:scale(.8)}.death-return{top:79%}.death-screen .death-scene{top:16%;height:43%}.death-epitaph{top:59%}.death-epitaph h1{font-size:26px}.death-epitaph small{font-size:6px}.death-return>strong{font-size:21px}.death-return>small{font-size:10px}.execution-impact .execution-words h2{font-size:34px}.execution-words small{letter-spacing:1px;font-size:7px}.battle-wrap{min-height:110px}#achievement-toast strong{font-size:10px}#achievement-toast span{font-size:10px}}
@media(max-width:700px) and (max-height:760px){.combat.screen{min-height:655px}.battle-wrap{min-height:70px}.combat-head h1{font-size:21px}.turn-clock{margin:5px auto 3px;height:18px}.chamber-ritual{height:110px;scale:.85;transform-origin:bottom}.guess-row,.guess-row.current,.tile,.guess-row.current .tile{height:26px}.tile,.guess-row.current .tile{font-size:16px}.inscription{margin:3px 0}.belt-pouch{margin-top:4px}.death-return{top:76%;gap:6px}.death-epitaph{top:57%}.death-epitaph h1{font-size:24px}.death-return>em{display:none}}
@media(prefers-reduced-motion:reduce){.scene-curtain,.travel-veil{transition:opacity .08s}.combat-entering .combat-foot,.combat-entering .keyboard,.chamber-ritual *,.slime-coat,.tile .rune-damage,.timeout-impact .tile,.clock-danger .hourglass{animation:none!important}.cipher-human,.cipher-morph{display:none}.combat-entering .cipher-symbol{animation:none;opacity:1}.execution-prism,.execution-shockwave,.execution-fragment{display:none!important}.execution-impact .execution-words{animation:none;opacity:1}.death-epitaph,.death-return{animation:epitaph-arrives 1s 1s forwards}.death-spotlight,.death-floor{animation:none;opacity:.3}.death-screen .death-scene{animation:none;opacity:.8}.death-veil{animation:none;opacity:.3}}

/* Keep resolved and active rows identical in size, including older overrides. */
.guess-row.last-attack,.guess-row.last-attack .tile{height:32px}.guess-row.last-attack .tile{font-size:19px}
.home .portrait-button:before,.home .portrait-button:after{display:block}
.preview-card .scene{clip-path:none;border:7px solid #66482d;border-radius:42% 42% 2px 2px;background:repeating-linear-gradient(4deg,#815b35 0 3px,#4e3723 3px 5px);box-shadow:0 0 0 1px #ad915d,inset 0 0 0 2px #221d15;padding:0}.preview-card .pixel-scene{clip-path:none;aspect-ratio:96/108}
@media(max-width:700px){.guess-row.last-attack,.guess-row.last-attack .tile{height:29px}.guess-row.last-attack .tile{font-size:17px}}
@media(max-width:700px) and (max-height:760px){.guess-row.last-attack,.guess-row.last-attack .tile{height:26px}.guess-row.last-attack .tile{font-size:16px}}
