.mode-art{background:radial-gradient(ellipse at 60% 30%,var(--edge),var(--bg));pointer-events:none;display:block;position:relative;overflow:hidden}.mode-art img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.mode-art>.glyph{width:48px;height:48px;margin:var(--space-6) auto;color:var(--icon);display:block}.coop-rules{padding:var(--space-3) var(--space-4);background:var(--bg);margin-bottom:var(--space-4)}.coop-rules h3{font-size:var(--size-m);color:var(--ink)}.coop-rules p{font-size:var(--read-m);color:var(--dim);line-height:1.6}.coop-active{pointer-events:none;position:static!important}.coop-active button,.coop-active input,.coop-active dialog{pointer-events:auto}.coop-active .race-room-meta{display:none!important}.coop-active .race-header{z-index:12!important}.coop-active .race-error{z-index:30;position:fixed;bottom:190px;left:50%;transform:translate(-50%)}.coop-roster{background:color-mix(in srgb,var(--bg) 85%,transparent);border:1px solid var(--edge);width:220px;padding:var(--space-3);z-index:6;font-size:var(--size-xs);position:fixed;top:144px;right:18px}.coop-roster header{justify-content:space-between;gap:var(--space-2);color:var(--dim);margin-bottom:var(--space-1);display:flex}.coop-roster>div{gap:var(--space-1);padding:var(--space-2);grid-template-columns:1fr;display:grid}.coop-roster>div.own{border-color:var(--ink)}.coop-roster small{font-size:var(--size-xs);color:var(--faint);line-height:1.8}.coop-roster progress{width:100%;height:5px;accent-color:var(--heal)}.coop-roster>small{margin-top:var(--space-2);display:block}.coop-down,.coop-network{z-index:15;max-width:480px;font-size:var(--size-m);text-align:center;background:color-mix(in srgb,var(--bg-2) 93%,transparent);padding:20px;line-height:2;position:fixed;top:45%;left:50%;transform:translate(-50%)}.coop-network{color:var(--ink);top:32%}.coop-play .dungeon-dialog,.coop-play .skill-dock{pointer-events:auto}.coop-play .target-labels{pointer-events:none}@media (width<=760px){.coop-active .run-hud{top:48px}.coop-roster{width:128px;padding:var(--space-1);font-size:var(--size-xs);top:175px;right:8px}.coop-roster header{display:block}.coop-roster>div{padding:var(--space-1)}.coop-roster small{font-size:var(--size-xs)}.coop-roster>small{display:none}.coop-active .skill-mode-hint{font-size:var(--size-xs)}}@media (height<=700px){.coop-roster{top:100px}.coop-active .build-strip{display:none}}@media (prefers-reduced-motion:reduce){.mode-art img{transition:none}.room-mode-card:hover img{transform:none}}.coop-play{pointer-events:none;position:fixed;inset:0}.coop-member-stats,.coop-vitals,.coop-vitals>span,.coop-mana{align-items:center;gap:var(--space-1);display:flex}.coop-member-stats{column-gap:var(--space-2);row-gap:var(--space-1);font-size:var(--size-xs);flex-wrap:wrap}.coop-vitals{justify-content:center;gap:var(--space-2);white-space:nowrap;font-size:inherit;font-variant-numeric:tabular-nums}.coop-vitals b{font-weight:400}.coop-vitals .glyph,.coop-mana .glyph{flex:none;width:11px;height:11px}.coop-level{color:var(--ink)}.coop-health{color:var(--heal)}.coop-health.low{color:color-mix(in srgb,var(--danger) 55%,var(--ink))}.coop-health.down{color:var(--danger)}.coop-health.down .glyph{opacity:.45}.party-name .coop-vitals{margin-top:var(--space-1);font-size:var(--size-xs)}.party-name:has(.coop-vitals)>strong{text-overflow:ellipsis;display:block;overflow:hidden}@media (width<=760px){.coop-member-stats{font-size:var(--size-xs);column-gap:var(--space-1)}.coop-roster .coop-vitals{gap:var(--space-1)}.coop-roster .coop-vitals .glyph,.coop-roster .coop-mana .glyph{width:9px;height:9px}}@media (width<=600px){.party-name .coop-vitals{font-size:var(--size-xs);gap:var(--space-1)}.party-name .coop-vitals .glyph{width:9px;height:9px}}.coop-active .race-header{display:none!important}.race-config>label{min-width:0;overflow:hidden}.race-config>label>select{outline-offset:-3px;width:100%;min-width:0;max-width:100%}@media (width<=600px) and (height>=520px){.coop-roster{gap:var(--space-1);grid-template-columns:repeat(4,minmax(0,1fr));width:auto;display:grid;top:240px;left:8px;right:8px}.coop-roster header{grid-column:1/-1;margin-bottom:0;display:flex}.coop-roster>div{min-width:0}.coop-roster>div>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}@media (height<=520px){.coop-play .run-hud{flex-wrap:nowrap!important}.coop-play .run-hud>.hud-plate{flex:0 45%;width:auto;min-width:0;max-width:300px}.coop-roster{gap:var(--space-1);width:auto;padding:var(--space-1);grid-template-columns:100px repeat(4,minmax(0,1fr));display:grid;top:106px;left:8px;right:8px}.coop-roster header{font-size:var(--size-xs);gap:var(--space-1);align-content:center;margin:0;display:grid}.coop-roster>div{padding:var(--space-1);font-size:var(--size-xs);min-width:0}.coop-roster>div>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.coop-roster small{font-size:var(--size-xs)}.coop-roster>small{display:none}}.race-config select{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=600px){.scene-multiplayer:has(.coop-play) .party-labels{display:none}}.scene-multiplayer:has(.race-screen.phase-setup){height:100svh;min-height:0;overflow:hidden}.scene-multiplayer:has(.race-screen.phase-setup) .scene-shade{background:color-mix(in srgb,var(--well) 55%,transparent)}.race-screen.phase-setup{gap:var(--space-3);max-width:none;height:100svh;min-height:0;padding:var(--space-4);flex-direction:column;display:flex;overflow:hidden}.phase-setup .race-error{z-index:20;max-width:90vw;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.coop-play .upgrade-dock{z-index:14;pointer-events:auto;background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);max-height:min(68vh,540px);box-shadow:inset 0 1px 0 var(--edge-lit);padding:12px 14px;position:fixed;bottom:12px;left:50%;overflow:auto;transform:translate(-50%)}.coop-play .upgrade-dock .draft-guide{margin-bottom:6px}.coop-draft-ready{font-size:var(--size-xs);color:var(--faint);letter-spacing:.04em;margin:0 0 6px}.coop-draft-ready.ready{color:var(--ink)}@media (height<=520px){.coop-play .upgrade-dock{max-height:calc(100vh - 24px)}}.race-text-preview{margin:var(--space-2) 0 var(--space-3);padding:var(--space-3) var(--space-3);background:color-mix(in srgb,var(--well) 80%,transparent)}.race-text-preview h3{margin:0 0 var(--space-1);font-size:var(--size-xs);color:var(--dim)}.race-text-preview p{overflow-wrap:anywhere;margin:0}.race-text-preview small{margin-top:var(--space-1);color:var(--faint);font-size:var(--size-m);display:block}.race-attribution{margin:var(--space-1) 0 0;color:var(--faint);font-size:var(--size-m);font-style:italic}.race-fields label small[data-testid=custom-count]{margin-top:var(--space-1);color:var(--faint);display:block}.sprint-active .race-room-meta{display:none!important}.sprint-field{pointer-events:none;z-index:5;position:fixed;inset:0}.sprint-word{padding:var(--space-1) var(--space-2);background:color-mix(in srgb,var(--bg) 91%,transparent);border:1px solid var(--edge);color:var(--dim);white-space:pre;text-align:center;box-shadow:0 2px 0 var(--well);opacity:.86;border-bottom-width:2px;line-height:1.25;position:absolute;top:0;left:0;transform:translate(-50%,-100%)}.sprint-word .typed{color:var(--heal)}.sprint-word.current{opacity:1;color:var(--ink);border-color:var(--accent);background:var(--bg-2);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent),0 2px 0 var(--well)}.sprint-word.current .rest{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 53%,transparent);-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 53%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 53%,transparent);text-underline-offset:3px}.sprint-word.keyword{border-color:var(--accent);color:var(--ink)}.sprint-word.current.keyword{color:var(--ink)}.sprint-word.miss{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 20%,var(--bg));animation:.18s steps(2,end) sprint-miss}.sprint-queue{justify-content:center;gap:var(--space-2);flex-wrap:wrap;max-height:3.2em;display:flex;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}.sprint-queue .sprint-word{opacity:.8;position:static;transform:none}.sprint-speed{pointer-events:none;z-index:3;opacity:0;background:repeating-conic-gradient(at 50% 52%,#0000 0deg 3.4deg,#ffecd28c 3.4deg 3.8deg,#0000 3.8deg 7.1deg);transition:opacity .4s;animation:.18s steps(3,end) infinite sprint-speed;position:fixed;inset:-5%;-webkit-mask-image:radial-gradient(60% 55% at 50% 52%,#0000 45%,#000 95%);mask-image:radial-gradient(60% 55% at 50% 52%,#0000 45%,#000 95%)}.sprint-speed[data-tier="1"]{opacity:.18}.sprint-speed[data-tier="2"]{opacity:.32;filter:sepia()saturate(2)hue-rotate(-20deg)}@keyframes sprint-speed{0%{transform:scale(1)rotate(0)}50%{transform:scale(1.03)rotate(1.2deg)}to{transform:scale(1.06)rotate(-.8deg)}}.sprint-field.fogged .sprint-word{filter:blur(5px);transition:filter .2s}.sprint-danger-glow{pointer-events:none;z-index:4;box-shadow:inset 0 0 160px 40px color-mix(in srgb,var(--danger) 70%,transparent);transition:opacity .3s;position:fixed;inset:0}.sprint-danger,.sprint-fogged{left:50%;top:var(--space-3);z-index:6;padding:var(--space-1) var(--space-3);background:color-mix(in srgb,var(--danger) 25%,var(--bg));border:1px solid var(--danger);color:var(--ink);pointer-events:none;margin:0;font-weight:700;position:fixed;transform:translate(-50%)}.sprint-fogged{top:calc(var(--space-3) + 2.4em);background:var(--bg-2);border-color:var(--edge)}@keyframes sprint-miss{50%{transform:translate(calc(3px - 50%),-100%)}}.sprint-badge{min-width:20px;height:20px;padding:0 var(--space-1);border-radius:var(--radius-s);background:var(--racer);color:var(--well);font-size:var(--size-xs);text-align:center;box-shadow:0 0 0 2px var(--well);font-weight:800;line-height:20px;position:absolute;top:0;left:0;transform:translate(-50%,-100%)}.sprint-badge.own{background:var(--ink);font-size:var(--size-xs);letter-spacing:.06em}.sprint-badge.status-out{opacity:.45}.sprint-badge.status-finished{box-shadow:0 0 0 2px var(--well),0 0 0 4px var(--accent)}.sprint-panel{z-index:7;background:var(--grain),var(--bg);border:2px solid var(--edge);border-radius:var(--radius);width:288px;box-shadow:inset 0 1px 0 var(--edge-lit),0 4px 0 var(--well);pointer-events:auto;margin:0;position:fixed;bottom:16px;left:16px;overflow:hidden}.sprint-panel>header{background:var(--bg-2);border-bottom:2px solid var(--edge-dim);justify-content:space-between;display:flex}.sprint-pos{align-items:baseline;gap:var(--space-1);padding:var(--space-2) var(--space-3);margin:0;display:flex}.sprint-pos small,.sprint-clock small,.sprint-stats dt{letter-spacing:.1em;color:var(--dim);text-transform:uppercase;font-size:8px}.sprint-pos small{margin-right:var(--space-1);align-self:center}.sprint-pos strong{font-size:var(--size-l);zoom:2;color:var(--accent);text-shadow:0 1px 0 var(--accent-deep);line-height:1}.sprint-pos span{color:var(--dim);font-size:16px}.sprint-clock{align-content:center;justify-items:end;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-left:2px solid var(--edge-dim);margin:0;display:grid}.sprint-clock strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:16px}.sprint-clock.grace :is(small,strong){color:var(--danger)}.sprint-legend{padding:var(--space-1) 0;margin:0;list-style:none;display:grid}.sprint-legend li{align-items:center;gap:var(--space-2);height:24px;padding-right:var(--space-3);color:var(--ink);grid-template-columns:24px minmax(0,1fr) auto;font-size:12px;font-weight:700;display:grid;position:relative}.sprint-legend li:before,.sprint-legend li:after{content:"";height:2px;position:absolute;bottom:1px;left:32px}.sprint-legend li:before{right:var(--space-3);background:var(--edge-dim)}.sprint-legend li:after{width:calc((100% - 32px - var(--space-3)) * var(--share));background:var(--racer);transition:width .3s}.sprint-legend i{color:var(--well);background:var(--racer);align-self:stretch;place-items:center;font-size:16px;font-style:normal;font-weight:400;display:grid}.sprint-legend span{align-items:center;gap:var(--space-2);white-space:nowrap;text-overflow:ellipsis;min-width:0;display:flex;overflow:hidden}.sprint-legend strong{color:var(--dim);font-variant-numeric:tabular-nums;font-size:8px;font-weight:400}.sprint-legend li.you{background:var(--accent-soft)}.sprint-legend li.you strong{color:var(--accent)}.sprint-legend li.status-finished strong{color:var(--gold)}.sprint-legend li.status-out{opacity:.5}.sprint-stats{border-block:2px solid var(--edge-dim);grid-auto-columns:1fr;grid-auto-flow:column;margin:0;display:grid}.sprint-stats>div{gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-3);display:grid}.sprint-stats>div+div{border-left:2px solid var(--edge-dim)}.sprint-stats dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:16px}.sprint-panel>footer{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);display:flex}.sprint-course-line{align-items:center;gap:var(--space-2);white-space:nowrap;min-width:0;color:var(--dim);margin:0;font-size:12px;display:flex;overflow:hidden}.sprint-checks{gap:5px;padding-left:2px;display:flex}.sprint-checks i{border:2px solid var(--edge-lit);width:7px;height:7px;rotate:45deg}.sprint-checks i.on{background:var(--shield);border-color:var(--shield)}.sprint-panel>footer button{min-height:28px;padding:0 var(--space-2);flex:none;font-size:8px}.sprint-panel .race-attribution{padding:0 var(--space-3) var(--space-2);font-size:var(--size-m);color:var(--dim);display:block}@media (width<=600px){.sprint-panel{width:216px;bottom:8px;left:8px}.sprint-legend li:not(.you):nth-child(n+4),.sprint-panel .race-attribution,.sprint-panel>footer button{display:none}.sprint-stats>div{padding:var(--space-1) var(--space-2)}}@media (height<=520px){.sprint-legend li:not(.you),.sprint-panel>footer{display:none}.sprint-panel{bottom:8px}}.race-countdown{z-index:20;place-content:center;justify-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4) 28vh;text-align:center;pointer-events:none;background:color-mix(in srgb,var(--well) 30%,transparent);margin:0;display:grid;position:fixed;inset:0}.race-countdown>span{letter-spacing:.2em;color:var(--ink);text-shadow:0 2px 0 var(--well);font-size:16px}.race-countdown>strong{font-size:var(--size-l);zoom:10;color:var(--ink);text-shadow:0 1px 0 var(--well);animation:race-count 1s var(--ease) both;font-weight:400;line-height:1}.race-countdown>p{font-size:var(--size-m);color:var(--ink);text-shadow:0 1px 0 var(--well);margin:0}.race-go{background:0 0;padding-bottom:6vh}.race-go>strong{color:var(--accent);animation:race-go .9s var(--ease) both}.phase-countdown>.race-room-meta{display:none}@keyframes race-count{0%{opacity:0;scale:1.8}16%{opacity:1;scale:1}82%{opacity:1;scale:1}to{opacity:0;scale:.92}}@keyframes race-go{0%{opacity:0;scale:.6}12%{opacity:1;scale:1.12}24%{scale:1}72%{opacity:1;scale:1}to{opacity:0;scale:1.3}}@media (width<=600px){.race-countdown>strong{zoom:6}}.sprint-finish{z-index:8;justify-items:center;gap:var(--space-2);width:min(440px,100vw - 32px);padding:var(--space-3) var(--space-4);text-align:center;pointer-events:none;background:var(--grain),var(--bg);border:2px solid var(--accent);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit),0 4px 0 var(--well);animation:keep-enter .3s var(--ease) both;margin:0;display:grid;position:fixed;top:72px;left:50%;translate:-50%}.sprint-finish h2{letter-spacing:.24em;color:var(--ink);margin:0;font-size:16px;font-weight:400}.sprint-finish>strong{font-size:var(--size-l);zoom:2;text-transform:uppercase;color:var(--accent);text-shadow:0 2px 0 var(--accent-deep);font-weight:400;line-height:1}.sprint-finish dl{justify-content:center;gap:var(--space-5);margin:0;display:flex}.sprint-finish dl>div{gap:var(--space-1);display:grid}.sprint-finish dt{letter-spacing:.1em;color:var(--dim);font-size:8px}.sprint-finish dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:16px}.sprint-finish p{font-size:var(--size-m);color:var(--dim);margin:0}.sprint-finish.winner{border-color:var(--gold)}.sprint-finish.winner>strong{color:var(--gold);text-shadow:0 2px 0 color-mix(in srgb,var(--gold) 45%,var(--well))}.sprint-finish.held{gap:var(--space-3);padding:var(--space-5) var(--space-6);animation:sprint-finish-in .5s var(--ease) both;top:50%;translate:-50% -60%}.sprint-finish.held h2{font-size:24px}.sprint-finish.held>strong{zoom:6;text-shadow:0 1px 0 var(--accent-deep),0 2px 0 var(--well)}.sprint-finish.held.winner>strong{text-shadow:0 1px 0 color-mix(in srgb,var(--gold) 45%,var(--well)),0 2px 0 var(--well)}@keyframes sprint-finish-in{0%{opacity:0;scale:1.6}60%{opacity:1;scale:.96}to{scale:1}}@media (width<=600px){.sprint-finish.held>strong{zoom:4}.sprint-finish.held{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){.race-countdown>strong,.sprint-finish{animation:none}.sprint-legend li:after{transition:none}}.sprint-banner{z-index:8;max-width:min(480px,100vw - 32px);padding:var(--space-3) var(--space-4);background:color-mix(in srgb,var(--bg-2) 93%,transparent);border:1px solid var(--accent);font-size:var(--size-m);text-align:center;margin:0;line-height:1.7;position:fixed;top:72px;left:50%;transform:translate(-50%)}.sprint-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.phase-racing .race-type.sprint-text{top:calc(var(--space-6) * 2.5);width:min(760px,100vw - 32px);bottom:auto;left:50%;transform:translate(-50%)}.sprint-text.fogged .race-passage{filter:blur(5px);transition:filter .2s}.phase-racing .race-type.sprint-fallback{top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%)}.sprint-fallback>small{margin-top:var(--space-1);font-size:var(--size-xs);color:var(--dim);display:block}.race-variety{gap:var(--space-2) var(--space-4);border:1px solid var(--edge);padding:var(--space-2) var(--space-3);flex-wrap:wrap;margin:0;display:flex}.race-variety legend{font-size:var(--size-xs);padding:0 var(--space-1);color:var(--ink)}@media (prefers-reduced-motion:reduce){.sprint-word.miss{animation:none}.sprint-danger-glow,.sprint-field.fogged .sprint-word{transition:none}.sprint-speed{opacity:0;animation:none}}.coop-horde{justify-content:space-between;gap:var(--space-2);margin:0 0 var(--space-1);padding:var(--space-1) var(--space-2);background:var(--accent-soft);color:var(--accent);font-size:var(--size-xs);line-height:1.6;display:flex}.coop-horde strong{letter-spacing:.04em}.coop-horde span{color:var(--dim);font-variant-numeric:tabular-nums}@media (width<=760px){.coop-horde{font-size:var(--size-xs);padding:var(--space-1) var(--space-1);margin-bottom:var(--space-1)}}@media (height<=520px){.coop-horde{display:none}}.race-screen>.screen-bar{flex:none}.phase-racing .race-header{z-index:8;flex-wrap:nowrap;width:auto;min-height:0;margin:0;padding:0;position:fixed;top:16px;right:20px}.phase-racing .race-header .screen-title{display:none}.phase-racing .race-header .screen-actions{width:auto;margin:0}.phase-racing .race-header button{min-height:36px;padding:var(--space-2) var(--space-3);font-size:var(--size-xs)}@media (width<=600px){.phase-racing .race-header{top:8px;right:8px}.phase-racing .race-header button{min-height:44px;padding:var(--space-1) var(--space-2)}}.coop-revive{color:var(--heal)!important}.coop-rescue{z-index:14;max-width:min(460px,100vw - 32px);padding:var(--space-3) var(--space-4);font-size:var(--size-xs);text-align:center;background:color-mix(in srgb,var(--bg-2) 90%,transparent);color:var(--ink);pointer-events:none;line-height:1.9;position:fixed;top:22%;left:50%;transform:translate(-50%)}.coop-spectating{max-width:520px;font-size:var(--size-m);text-align:center;margin:40px auto;padding:20px;line-height:2}.race-kick{padding:var(--space-1) var(--space-2);font-size:var(--size-xs)}.coop-roster .race-kick{justify-self:start;margin:0}.account-gate{gap:var(--space-2);padding:var(--space-3);margin-bottom:var(--space-3);border:1px solid var(--edge);background:var(--bg);color:var(--ink);font-size:var(--size-m);align-items:flex-start;line-height:1.8;display:flex}.account-gate .glyph{flex:none;width:18px;height:18px}.race-waiting-actions{z-index:2;padding:var(--space-3) 0;background:linear-gradient(transparent,var(--bg) 30%);margin-bottom:-12px;position:sticky;bottom:0}.scene-multiplayer .scene-shade{background:color-mix(in srgb,var(--bg) 20%,transparent)}.race-screen{z-index:3;max-width:1280px;min-height:100svh;margin:0 auto;padding:20px 28px 40px;position:relative}.race-check{align-items:center;gap:var(--space-2);display:flex}.race-error{color:var(--ink);border:2px solid var(--danger);border-radius:var(--radius-s);padding:var(--space-3);background:var(--bg)}.race-config,.race-join{padding:var(--space-5)}.race-fields{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0;display:grid}.race-fields label>span{color:var(--faint);font-size:var(--size-xs)}.race-fields textarea{min-height:90px}.race-room-meta{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);margin-bottom:20px;display:flex}.race-room-meta>div{gap:var(--space-2);display:grid}.race-room-meta span{font-size:var(--size-m);color:var(--dim)}.race-online{color:var(--heal)!important}.race-offline{color:var(--ink)!important}.race-waiting,.race-results{padding:var(--space-5)}.race-waiting-head,.race-board-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.race-waiting-head p,.race-waiting-grid p{font-size:var(--size-m);color:var(--dim)}.race-waiting-grid{gap:var(--space-6);margin:var(--space-5) 0;grid-template-columns:1fr 1fr;display:grid}.race-waiting-grid ol{padding:0;list-style:none}.race-waiting-grid li{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--edge);font-size:var(--size-m);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.race-waiting-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.race-preview{border:1px solid var(--edge);padding:var(--space-4);color:var(--dim)!important}.race-play{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 270px;display:grid}.race-stage{background:color-mix(in srgb,var(--bg-2) 60%,transparent);height:300px;position:relative;overflow:hidden}.race-type{padding:var(--space-4);margin-top:var(--space-4)}.race-type-top{font-size:var(--size-xs);color:var(--dim);margin-bottom:var(--space-4);justify-content:space-between;gap:20px;display:flex}.race-type-top strong{color:var(--accent)}.race-passage{max-height:190px}.race-input-label{color:var(--dim);font-size:var(--size-xs);margin-top:var(--space-3)}.race-board-dialog{color:var(--ink);width:min(850px,95vw);max-height:85svh;padding:var(--space-5)}.race-board-dialog::backdrop{background:color-mix(in srgb,var(--well) 79%,transparent)}.race-board-dialog label{margin:var(--space-4) 0}.race-leaderboard{padding:0;list-style:none}.race-leaderboard li{gap:var(--space-2);font-size:var(--size-m);padding:var(--space-3) 0;border-bottom:1px solid var(--edge);grid-template-columns:45px 1fr 60px 60px 80px;display:grid}.race-leaderboard .you{color:var(--accent)}.race-leaderboard em{color:var(--dim);font-style:normal}.race-loading{text-align:center;font-size:var(--size-m);padding:80px}@media (width<=900px){.race-play{grid-template-columns:1fr}}@media (width<=600px){.race-screen{padding:var(--space-3) var(--space-3) var(--space-5)}.race-fields{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.race-config,.race-join{padding:var(--space-4)}.race-waiting-head{display:block}.race-waiting-head button{font-size:var(--size-xs)}.race-waiting-grid{grid-template-columns:1fr;gap:20px}.race-room-meta{padding:var(--space-3)}.race-room-meta span{font-size:var(--size-xs)}.race-stage{height:280px}.race-type{padding:var(--space-4)}.race-type-top{gap:var(--space-2);flex-direction:column}.race-leaderboard li{gap:var(--space-1);font-size:var(--size-xs);grid-template-columns:30px 1fr 40px 40px}.race-leaderboard em{display:none}.race-waiting,.race-results{padding:var(--space-4)}}.party-labels{pointer-events:none;z-index:4;position:fixed;inset:0}.party-name{text-align:center;background:color-mix(in srgb,var(--bg) 85%,transparent);padding:var(--space-1) var(--space-2);white-space:nowrap;text-shadow:1px 1px var(--well);border-bottom:2px solid;position:absolute;transform:translate(-50%,-100%)}.party-name strong{font-size:var(--size-m)}.party-name small{font-size:var(--size-xs);color:var(--dim);display:block}.race-stage{box-shadow:none;background:0 0;border:0;height:330px}.race-play{grid-template-rows:auto auto;position:relative}.party-skill-dock{padding:0 var(--space-4);grid-column:1}.party-skill-dock>p{font-size:var(--size-xs);color:var(--dim);text-align:center}.party-skill-dock.casting button{border-color:var(--dim)}.battle-hud{pointer-events:none;position:absolute;inset:0}.battle-party{gap:var(--space-2);display:flex;position:absolute;top:0;left:0}.battle-party>div{gap:var(--space-1);background:color-mix(in srgb,var(--bg) 91%,transparent);min-width:100px;padding:var(--space-2);display:grid}.battle-party strong{font-size:var(--size-m);color:var(--party-color)}.battle-party span{font-size:var(--size-xs);color:var(--dim)}.battle-party progress{width:100%;height:6px;accent-color:var(--party-color)}.raid-boss-status,.sprint-course,.clash-status{gap:var(--space-2);max-width:480px;padding:var(--space-3) var(--space-4);background:color-mix(in srgb,var(--bg-2) 88%,transparent);border:1px solid var(--edge-lit);margin:auto;display:grid;position:absolute;bottom:18px;left:0;right:0}.raid-boss-status strong,.sprint-course strong,.clash-status strong{font-size:var(--size-m);color:var(--ink)}.raid-boss-status progress,.sprint-course progress{width:100%;height:9px;accent-color:var(--danger)}.raid-boss-status small,.sprint-course small,.clash-status small{font-size:var(--size-xs);color:var(--dim)}.battle-action-log{gap:var(--space-1);font-size:var(--size-xs);text-align:right;color:var(--ink);display:grid;position:absolute;bottom:100px;right:12px}.downed-banner{padding:var(--space-4);text-align:center;background:color-mix(in srgb,var(--danger) 25%,var(--bg));color:var(--ink);font-size:var(--size-m);position:absolute;top:130px;left:0;right:0}@media (width<=900px){.race-play{grid-template-columns:1fr}.party-skill-dock{grid-column:1}.battle-party>div{min-width:75px}.battle-party strong{font-size:var(--size-xs)}}@media (width<=600px){.party-name strong,.party-name small{font-size:var(--size-xs)}.party-name{padding:var(--space-1) var(--space-1)}.battle-party{gap:var(--space-1);flex-wrap:wrap}.battle-party>div{min-width:65px;padding:var(--space-2)}.battle-party strong,.battle-party span{font-size:var(--size-xs)}.party-skill-dock{padding:0}.race-stage{height:290px}.raid-boss-status,.sprint-course,.clash-status{padding:var(--space-2);bottom:0}.raid-boss-status strong,.sprint-course strong,.clash-status strong{font-size:var(--size-xs)}.battle-action-log{font-size:var(--size-xs);bottom:72px}.race-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.race-screen.phase-racing{max-width:none;height:100svh;min-height:0;padding:0;overflow:hidden}.phase-racing .race-room-meta{z-index:5;gap:var(--space-1);padding:var(--space-3);background:color-mix(in srgb,var(--bg) 72%,transparent);box-shadow:none;font-size:var(--size-xs);border:0;margin:0;display:grid;position:fixed;bottom:22px;left:22px}.phase-racing .race-room-meta>div{gap:var(--space-1)}.phase-racing .race-room-meta span{font-size:var(--size-xs)}.phase-racing .race-play,.phase-racing .race-main{display:contents}.phase-racing .race-stage{pointer-events:none;height:100svh;position:fixed;inset:0}.phase-racing .battle-party{gap:var(--space-2);max-height:40svh;display:grid;position:fixed;top:20px;left:22px;overflow:hidden}.phase-racing .battle-party>div{padding:var(--space-2) var(--space-3);background:color-mix(in srgb,var(--bg) 73%,transparent);gap:var(--space-1);border:0;min-width:155px}.phase-racing .battle-party strong{font-size:var(--size-m)}.phase-racing .battle-party span{font-size:var(--size-xs)}.phase-racing .raid-boss-status,.phase-racing .sprint-course,.phase-racing .clash-status{background:color-mix(in srgb,var(--bg) 91%,transparent);width:min(480px,42vw);padding:var(--space-3) var(--space-4);position:fixed;inset:20px auto auto 50%;transform:translate(-50%)}.phase-racing .battle-action-log{font-size:var(--size-m);text-shadow:2px 2px var(--well);position:fixed;bottom:240px;right:24px}.phase-racing .race-type{width:min(860px,100vw - 48px);padding:var(--space-3) var(--space-4);background:color-mix(in srgb,var(--bg) 93%,transparent);z-index:6;margin:0;position:fixed;bottom:110px;left:50%;transform:translate(-50%)}.phase-racing .race-type-top{margin-bottom:var(--space-1);gap:var(--space-2)}.phase-racing .race-passage{max-height:4em;font-size:var(--read-xl)!important}.phase-racing .race-input-label{margin-top:var(--space-1);font-size:var(--size-xs);line-height:1.4;display:block}.phase-racing .party-skill-dock{z-index:6;width:min(560px,100vw - 32px);padding:0;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.phase-racing .party-skill-dock>p{margin:0 0 var(--space-2)}.phase-racing .downed-banner{top:35svh}@media (width<=1000px){.phase-racing .battle-party>div{min-width:125px}.phase-racing .raid-boss-status,.phase-racing .sprint-course,.phase-racing .clash-status{width:42vw}.phase-racing .race-room-meta{display:none}}@media (width<=600px){.phase-racing .battle-party{gap:var(--space-1);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;top:45px;left:8px;right:8px}.phase-racing .battle-party>div{padding:var(--space-1);border-left-width:2px;gap:2px;min-width:0}.phase-racing .battle-party strong{font-size:var(--size-xs);text-overflow:ellipsis;overflow:hidden}.phase-racing .battle-party span{font-size:var(--size-xs)}.phase-racing .raid-boss-status,.phase-racing .sprint-course,.phase-racing .clash-status{width:calc(100vw - 20px);padding:var(--space-2) var(--space-3);gap:var(--space-1);top:106px}.phase-racing .raid-boss-status strong,.phase-racing .sprint-course strong,.phase-racing .clash-status strong,.phase-racing .raid-boss-status small,.phase-racing .sprint-course small,.phase-racing .clash-status small{font-size:var(--size-xs)}.phase-racing .race-type{width:calc(100vw - 16px);padding:var(--space-2) var(--space-3);bottom:104px}.phase-racing .race-type-top{font-size:var(--size-xs);gap:var(--space-2);flex-direction:row}.phase-racing .race-type-top>span{font-size:var(--size-xs);text-align:right}.phase-racing .race-passage{font-size:var(--read-l)!important}.phase-racing .race-input-label{font-size:var(--size-xs)}.phase-racing .party-skill-dock{width:calc(100vw - 16px);bottom:12px}.phase-racing .party-skill-dock>p{font-size:var(--size-xs)}.phase-racing .battle-action-log{font-size:var(--size-xs);bottom:280px;right:12px}}@media (height<=520px) and (width>=601px){.phase-racing .battle-party{gap:var(--space-1);top:10px;left:10px}.phase-racing .battle-party>div{padding:var(--space-1) var(--space-2);min-width:115px}.phase-racing .battle-party strong,.phase-racing .battle-party span{font-size:var(--size-xs)}.phase-racing .raid-boss-status,.phase-racing .sprint-course,.phase-racing .clash-status{padding:var(--space-2) var(--space-3);gap:var(--space-1);top:10px}.phase-racing .race-type{width:calc(100vw - 190px);padding:var(--space-2) var(--space-3);bottom:15px;left:20px;transform:none}.phase-racing .race-passage{font-size:var(--read-l)!important}.phase-racing .race-type-top,.phase-racing .race-input-label{font-size:var(--size-xs)}.phase-racing .party-skill-dock{width:145px;bottom:15px;left:auto;right:14px;transform:none}.phase-racing .party-skill-dock>p{font-size:var(--size-xs)}}.race-results{animation:.28s ease-out both keep-enter}.sprint-fallback .typing-word{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.phase-setup>.race-invite{gap:var(--space-3);flex-direction:column;width:100%;max-width:560px;margin:auto;padding:20px;display:flex}.phase-setup>.race-invite :is(h2,p,label){margin:0}.phase-setup>.race-loading{text-align:center;margin:auto}.race-screen:is(.phase-waiting,.phase-countdown,.phase-finished){flex-direction:column;display:flex}.race-screen:is(.phase-waiting,.phase-countdown,.phase-finished)>:is(.race-room-meta,.race-waiting,.race-results){align-self:center;width:100%;max-width:880px}.race-screen:is(.phase-waiting,.phase-countdown,.phase-finished)>.race-room-meta{margin:auto 0 var(--space-3)}.race-screen:is(.phase-waiting,.phase-countdown,.phase-finished)>:is(.race-waiting,.race-results){margin-bottom:auto}.race-waiting-grid{margin:20px 0}.race-results>h2{margin:0 0 var(--space-2)}.race-leaderboard li{white-space:nowrap;grid-template-columns:40px minmax(0,1fr) 80px 56px 110px;align-items:center}.race-leaderboard li>strong{text-overflow:ellipsis;overflow:hidden}@media (width<=600px){.race-leaderboard li{grid-template-columns:30px minmax(0,1fr) 64px 40px}}.phase-racing .race-room-meta{display:none}.phase-racing .race-type{bottom:176px}.phase-racing .race-passage{font-size:var(--read-xl)!important}@media (width<=600px){.phase-racing .race-type{bottom:186px}.phase-racing .race-passage{font-size:var(--read-l)!important}}@media (height<=520px) and (width>=601px){.phase-racing .race-type{bottom:15px}}.race-waiting-head>button{white-space:nowrap;flex:none}.scene-multiplayer:has(.race-screen:is(.phase-waiting,.phase-countdown,.phase-finished)) .party-labels{display:none}.party-labels{z-index:2!important}.race-help{color:var(--ink);line-height:1.7;font-size:var(--size-xs)!important}.race-invite{max-width:520px;margin:var(--space-5) auto;gap:var(--space-3);display:grid}.party-name.own{color:var(--accent);border-bottom-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 90%,transparent);z-index:1}.party-name .you-tag{margin-right:var(--space-1);padding:0 var(--space-1);color:var(--accent-soft);background:var(--accent);font-weight:400}.race-tag{margin-left:var(--space-2);font-size:var(--size-xs);color:var(--dim);text-transform:uppercase;font-weight:400}.race-facts{gap:0 var(--space-4);flex-wrap:wrap;display:inline-flex}.coop-level:before{content:"LV";color:var(--faint);margin-right:2px}.coop-mana{color:var(--mana)}.coop-mana:before{content:"MP";color:var(--faint);margin-right:2px}.coop-roster{top:168px}.coop-roster .coop-support{margin-top:var(--space-2);color:var(--accent);background:0 0;padding:0;display:block;position:static}.coop-keys{gap:var(--space-2) var(--space-3);margin:var(--space-2) 0 0;font-size:var(--size-xs);color:var(--dim);flex-wrap:wrap;line-height:1;display:flex}.coop-keys span{align-items:center;gap:var(--space-1);display:inline-flex}.coop-draft-ready kbd{margin-left:var(--space-1)}@media (width<=760px){.coop-keys{display:none}}.coop-objective{z-index:7;padding:var(--space-1) var(--space-3);font-size:var(--size-xs);color:var(--gold);white-space:nowrap;pointer-events:none;margin:0;position:fixed;top:92px;left:50%;transform:translate(-50%)}.coop-travel{z-index:5;left:calc(50% + var(--ax) * clamp(0px,50vw - 260px,42vw));top:calc(50% + var(--ay) * 36vh);justify-items:center;gap:var(--space-1);pointer-events:none;display:grid;position:fixed;transform:translate(-50%,-50%)}.coop-travel-arrow{border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:12px solid var(--gold);width:0;height:0;transform:rotate(var(--turn))}.coop-travel-word{padding:2px var(--space-2);font-size:var(--size-s);color:var(--ink);background:var(--bg);border:2px solid var(--gold);border-radius:var(--radius)}.coop-travel-word .typed{color:var(--gold)}.objective-line{display:block}.objective-line small{color:var(--muted);display:block}@media (width<=600px){.coop-objective{top:auto;bottom:212px}.coop-travel{top:auto;left:50%;bottom:calc(176px + var(--slot,0) * 52px);transform:translate(-50%)}.coop-horde span:last-child{display:none}}@media (height<=520px){.coop-objective{top:78px}}.race-bot-line{gap:var(--space-2);flex-wrap:wrap;align-items:end;display:flex}.race-bot-line small{flex-basis:100%}.lantern-hud{z-index:7;gap:var(--space-1);min-width:min(420px,100vw - 32px);padding:var(--space-2) var(--space-3);font-size:var(--size-xs);pointer-events:none;margin:0;display:grid;position:fixed;top:12px;left:50%;transform:translate(-50%)}.lantern-lane{align-items:center;gap:var(--space-2);grid-template-columns:5.5em 1fr auto;display:grid}.lantern-lane progress{width:100%;height:8px}.lane-blue span{color:var(--gold)}.lane-red span{color:var(--muted)}.lantern-status,.lantern-notice{color:var(--muted);margin:0}.lantern-notice{color:var(--gold)}.keep-hud{z-index:7;gap:var(--space-1);min-width:min(520px,100vw - 32px);max-width:calc(100vw - 32px);padding:var(--space-2) var(--space-3);font-size:var(--size-xs);pointer-events:none;margin:0;display:grid;position:fixed;top:12px;left:50%;transform:translate(-50%)}.keep-top,.keep-line{gap:var(--space-1) var(--space-3);flex-wrap:wrap;align-items:baseline;margin:0;display:flex}.keep-line{color:var(--muted)}.keep-call{color:var(--gold)}.keep-danger{color:var(--danger)}.keep-duel,.keep-draft{z-index:7;gap:var(--space-2);width:min(640px,100vw - 32px);padding:var(--space-3);margin:0;display:grid;position:fixed;bottom:96px;left:50%;transform:translate(-50%)}.keep-duel p{font-size:var(--size-m);margin:0;line-height:1.5}.keep-typed{color:var(--gold)}.keep-cards{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.keep-card{gap:var(--space-1);text-align:left;display:grid}.keep-card kbd{font-size:var(--size-m)}.keep-card small{color:var(--muted)}.duel-screen{align-content:start;gap:var(--space-4);max-width:1100px;padding:var(--space-4);margin:0 auto;display:grid}.duel-menu{gap:var(--space-3);width:100%;max-width:640px;padding:var(--space-4);border:2px solid var(--edge);border-radius:var(--radius);background:var(--bg);box-shadow:inset 0 1px 0 var(--edge-lit), 0 4px 0 var(--n-02);margin:0 auto;display:grid}.duel-menu>:is(.duel-casual,.duel-ranked).plate{padding:var(--space-4) 0 0!important;border:0!important;border-top:2px solid var(--edge-dim)!important;box-shadow:none!important;background:0 0!important;border-radius:0!important}.duel-rules{color:var(--dim);font-size:var(--size-s);margin:0;line-height:1.7}.duel-menu :is(.duel-casual,.duel-ranked)>p{font-size:var(--size-m);color:var(--ink);margin:0;line-height:1.6}.duel-menu>label+.race-help{margin:calc(-1 * var(--space-2)) 0 0}.duel-casual,.duel-ranked{gap:var(--space-3);padding:var(--space-4);display:grid}.duel-casual form{gap:var(--space-2);grid-template-columns:1fr auto;align-items:end;display:grid}.duel-queue{gap:var(--space-2);display:grid}.duel-standing{color:var(--ink)}.duel-lobby ol{gap:var(--space-2);padding:0;list-style:none;display:grid}.duel-lobby li{gap:var(--space-3);grid-template-columns:1fr auto auto;align-items:center;display:grid}.duel-screen.fighting{gap:var(--space-2);height:100svh;min-height:0;padding-bottom:var(--space-4);flex-direction:column;display:flex;overflow:hidden}.duel-arena{gap:var(--space-2);flex:1;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid}.duel-top{gap:var(--space-1) var(--space-6);padding:var(--space-2) var(--space-4);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.duel-facts{gap:var(--space-1) var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.duel-vitals.own .duel-facts{flex-direction:row-reverse}.duel-name{gap:var(--space-3);align-items:center;display:flex}.duel-vitals.own .duel-name{flex-direction:row-reverse}.duel-vitals{gap:var(--space-1);min-width:0;display:grid}.duel-vitals.own{text-align:right}.duel-vitals progress{width:100%;height:10px;accent-color:var(--heal)}.duel-pips{gap:var(--space-1);display:inline-flex}.duel-pips i{border:1px solid var(--edge-lit);border-radius:var(--radius-s);width:10px;height:10px}.duel-pips i.won{background:var(--accent);border-color:var(--accent)}.duel-clock{justify-items:center;gap:var(--space-1);font-size:var(--size-m);font-variant-numeric:tabular-nums;display:grid}.duel-offline{color:var(--danger)}.duel-vitals small{font-variant-numeric:tabular-nums}.duel-arena.sudden .duel-clock span{color:var(--danger)}.duel-field{background:var(--bg-2);border:1px solid var(--edge);border-radius:var(--radius);position:relative;overflow:hidden}.duel-label{left:calc((var(--x) + .5) / 6 * 100%);top:calc(var(--space-3) + var(--p) * (100% - 120px));padding:var(--space-2) var(--space-3);color:var(--ink);background:var(--well);border:1px solid var(--edge-lit);border-radius:var(--radius-s);justify-items:center;gap:2px;transition:top 50ms linear;display:grid;position:absolute;translate:-50%}.duel-label small{color:var(--dim);font-size:var(--size-m);font-variant-numeric:tabular-nums}.duel-label.sent{border-color:var(--accent-deep)}.duel-label.winding{border-color:var(--danger)}.duel-label.locked{border-color:var(--accent);background:var(--accent-soft)}.duel-label.ball{border-color:var(--danger);padding-bottom:var(--space-3)}.duel-label.ball:after{content:"";left:var(--space-2);right:var(--space-2);bottom:var(--space-1);background:var(--danger);transform-origin:0;height:2px;transform:scaleX(var(--left,0));position:absolute}.duel-label.ball.spent:after{display:none}.duel-label.ball.spent{opacity:.8;place-content:center;width:28px;height:28px;padding:0}.duel-word{font-size:var(--read-l)}.duel-word .typed{color:var(--accent)}.duel-hero{left:50%;bottom:var(--space-3);padding-top:var(--space-2);color:var(--dim);font-size:var(--size-m);border-top:1px solid var(--edge);position:absolute;translate:-50%}.duel-countdown{text-align:center;font-size:var(--size-xl);color:var(--gold);position:absolute;inset:40% 0 auto}.duel-events{right:var(--space-3);bottom:var(--space-3);justify-items:end;gap:var(--space-1);font-size:var(--size-m);display:grid;position:absolute}.duel-events .own{color:var(--accent)}.duel-events .rival{color:var(--danger)}.duel-bottom{gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.duel-bottom>.quiet{padding:var(--space-2);margin-left:auto}.duel-skills{gap:var(--space-4);opacity:.6;flex-wrap:wrap;flex-basis:100%;order:2;display:flex}.duel-skills.casting{opacity:1}.duel-skill{justify-items:start;gap:var(--space-1);display:grid}.duel-skill .typed,.duel-offer kbd .typed{color:var(--accent-deep)}.duel-skill small{color:var(--dim);font-size:var(--size-m);font-variant-numeric:tabular-nums}.duel-meters{font-size:var(--size-m);font-variant-numeric:tabular-nums}.duel-pressure{color:var(--dim);font-size:var(--size-m);font-variant-numeric:tabular-nums}.duel-input{gap:var(--space-4);color:var(--dim);font-size:var(--size-m);align-items:center;display:flex}.duel-cards h3{font-size:var(--size-m);color:var(--dim);font-weight:400}.duel-cards ul{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.duel-cards li{padding:var(--space-1) var(--space-2);border:1px solid var(--edge);border-radius:var(--radius-s);font-size:var(--size-m);gap:2px;display:grid}.duel-cards.compact :is(h3,p){display:none}.duel-cards.compact li{padding:0 var(--space-2)}.duel-draft{gap:var(--space-4);padding:var(--space-5);display:grid}.duel-offers{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.duel-offer{align-content:start;justify-items:start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--edge);border-radius:var(--radius);display:grid}.duel-offer.picked{border-color:var(--accent)}.duel-offer p{color:var(--dim);font-size:var(--size-m)}.duel-held{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.duel-result{gap:var(--space-4);padding:var(--space-5);width:100%;max-width:640px;margin:0 auto;display:grid}.duel-score{font-size:var(--size-l);font-variant-numeric:tabular-nums}.duel-stats td{font-variant-numeric:tabular-nums}.duel-stats{border-collapse:collapse;width:100%;font-size:var(--size-m)}.duel-stats :is(th,td){padding:var(--space-2);text-align:right;border-bottom:1px solid var(--edge-dim)}.duel-stats th[scope=row]{text-align:left;color:var(--dim);font-weight:400}@media (prefers-reduced-motion:reduce){.duel-label{transition:none}}@media (width<=700px){.duel-top{grid-template-columns:1fr 1fr}.duel-clock{grid-area:1/1/auto/-1}.duel-offers,.duel-held{grid-template-columns:1fr}.duel-word{font-size:var(--size-m)}}.duel-arena.scene .duel-field{background:0 0;border-color:#0000}.duel-arena.scene .target-labels{position:fixed}.duel-arena .target-labels .next-words{display:none}.duel-screen.fighting>.duel-draft{z-index:20;width:min(880px, calc(100vw - var(--space-6)));max-height:84svh;position:fixed;top:50%;left:50%;overflow:auto;translate:-50% -50%}.duel-pack-line{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.duel-pack-line input{min-width:96px;font-size:var(--size-s);flex:1 1 0}.duel-pack-editor fieldset{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--edge);border-radius:var(--radius-s);display:grid}.duel-pack-rules{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.duel-pack-rules small,.duel-pack-words small,.duel-pack-cards>small{color:var(--dim);font-size:var(--size-m)}.duel-pack-card{gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--edge-dim);grid-template-columns:1fr 2fr;display:grid}.duel-pack-card>:nth-child(3){grid-column:1/-1}.duel-pack-card>select{min-width:0}.duel-replay{gap:var(--space-2);flex-direction:column;height:100%;min-height:0;display:flex}.duel-replay-bar{gap:var(--space-3);padding:var(--space-2) var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.duel-replay-bar strong{margin-right:auto}.duel-replay-speeds{gap:var(--space-1);display:inline-flex}.duel-replay-speeds .active{color:var(--accent)}.duel-arena.scene :is(.duel-top,.duel-bottom){background:color-mix(in srgb, var(--bg) 88%, transparent)}.duel-vitals.own small{justify-content:flex-end}.duel-hero-pick{gap:var(--space-3);display:grid}.duel-hero-pick.plate{padding:var(--space-5);width:100%;max-width:640px;margin:0 auto}.duel-hero-passive{color:var(--dim);font-size:var(--size-m)}.duel-emblems{gap:var(--space-2);color:var(--dim);flex-wrap:wrap;align-items:center;display:flex}.duel-emblem{padding:var(--space-1) var(--space-2);color:var(--ink);border:1px solid var(--edge);border-radius:var(--radius-s)}.duel-gallery-list{gap:var(--space-2);padding:0;list-style:none;display:grid}.duel-gallery-list li{gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--edge-dim);grid-template-columns:1fr auto auto;align-items:center;display:grid}.duel-gallery-list span{gap:var(--space-1);display:grid}.duel-gallery-list small{color:var(--dim);font-size:var(--size-m)}@media (width<=700px){.duel-screen.fighting{padding:var(--space-2) var(--space-2) var(--space-3);gap:var(--space-1)}.duel-screen.fighting>.screen-bar{gap:var(--space-2);flex-wrap:nowrap}.duel-screen.fighting>.screen-bar .screen-title{display:none}.duel-screen.fighting>.screen-bar button{padding:var(--space-2) var(--space-3)}.duel-arena .duel-top{gap:var(--space-1) var(--space-2);padding:var(--space-2);grid-template-columns:1fr auto 1fr}.duel-arena .duel-clock{grid-area:auto}.duel-arena .duel-name strong{font-size:var(--size-m)}.duel-arena .duel-facts .race-facts span:not(:first-child),.duel-arena .duel-pressure,.duel-arena .duel-facts .duel-cards{display:none}.duel-arena .duel-bottom{gap:var(--space-1) var(--space-3);padding:var(--space-2)}.duel-arena .duel-input>span{display:none}.duel-arena .duel-skills{gap:var(--space-3);flex-wrap:nowrap;overflow-x:auto}.duel-arena .duel-skill small{font-size:var(--size-xs)}}.scene-dojo .scene-shade{background:color-mix(in srgb,var(--well) 20%,transparent)}.practice-screen{z-index:3;max-width:1280px;min-height:100svh;padding:var(--space-4) var(--space-5) var(--space-6);flex-direction:column;margin:0 auto;display:flex;position:relative}.practice-screen>.screen-bar{margin-top:0;margin-bottom:var(--space-4)}.practice-clock{font-size:var(--size-m);color:var(--ink);font-weight:400}.practice-best{font-size:var(--size-m);color:var(--dim)}.practice-run-meta,.practice-stats span,.practice-keys,.dojo-objective>span,.practice-config-heading small,.practice-config-grid>label:not(.pixel-check),.practice-result>small,.practice-result-stats span{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);font-weight:400}.dojo-objective{top:122px;left:var(--space-5);gap:var(--space-2);max-width:340px;padding:var(--space-3) var(--space-4);display:grid;position:absolute}.dojo-objective>span{justify-content:space-between;gap:var(--space-3);display:flex}.dojo-objective b{color:var(--ink);font-weight:400}.dojo-objective strong{font-size:var(--size-m);color:var(--ink);font-weight:400}.dojo-objective small{color:var(--dim)}.practice-racing{width:100%;max-width:1000px;padding:var(--space-4) var(--space-5) var(--space-5);margin:auto auto 0;position:relative}.practice-racing-head{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}.practice-run-meta{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.practice-run-meta .practice-attempts{color:var(--ink)}.practice-stats{gap:var(--space-5);display:flex}.practice-stats strong{margin-right:var(--space-1);font-size:var(--size-l);color:var(--ink);font-weight:400}.practice-typing{margin:var(--space-4) 0 var(--space-5);position:relative}.practice-typing button.practice-refocus{z-index:2;width:100%;font-size:var(--size-m);color:var(--ink);position:absolute;inset:0;background:color-mix(in srgb,var(--bg) 92%,transparent)!important}.practice-controls{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.practice-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.practice-actions button{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--size-m)}.practice-keys{gap:var(--space-2) var(--space-5);flex-wrap:wrap;margin:0;line-height:2;display:flex}.practice-keys kbd{margin:0 var(--space-1)}.practice-keyboard{gap:var(--space-1);max-width:650px;margin:0 auto;display:grid}.practice-keyboard>div{justify-content:center;gap:var(--space-1);display:flex}.practice-keyboard button{min-width:0;max-width:55px;font-size:var(--size-m);white-space:nowrap;flex:1;padding:2px 0}.practice-keyboard button.wide-key{flex:1.7;max-width:80px}.practice-keyboard button.space-key{flex:4;max-width:240px}.practice-racing .practice-keyboard{margin-top:var(--space-5)}@media (hover:hover) and (pointer:fine){.practice-racing:not(.keys-on) .practice-keyboard{display:none}}.practice-config,.practice-result{padding:var(--space-5);animation:keep-enter var(--t-move) var(--ease) backwards}.practice-config-heading{justify-content:space-between;align-items:end;gap:var(--space-5);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--edge);display:flex}.practice-config-heading h2{margin:var(--space-2) 0 0;font-size:var(--size-l);color:var(--ink);font-weight:400}.practice-config-heading>span{max-width:320px;color:var(--dim)}.practice-config-grid{gap:var(--space-5) var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.practice-config-grid>label{align-content:start;gap:var(--space-2)}.practice-wide{grid-column:1/-1}.practice-wide textarea{min-height:100px}.practice-options{gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.pixel-check{align-items:center;gap:var(--space-3);font-size:var(--size-m);color:var(--ink);display:flex}.practice-range{align-items:center;gap:var(--space-3);min-height:40px;display:flex}.practice-range input{flex:1;min-width:0}.practice-range output{min-width:3ch;font-size:var(--size-m);color:var(--ink);text-align:right}.practice-config footer{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-5);color:var(--dim);flex-wrap:wrap;display:flex}.practice-config footer>span{flex:240px;max-width:60ch}.practice-config footer>button{min-height:48px}.practice-error{margin:var(--space-4) 0 0;padding:var(--space-3);color:color-mix(in srgb,var(--danger) 70%,var(--ink));background:var(--well);border:1px solid var(--danger);border-radius:var(--radius-s)}.practice-result{text-align:center;max-width:800px;margin:80px auto}.practice-result h2{margin:var(--space-2) 0 0;font-size:var(--size-xl);color:var(--ink);font-weight:400}.practice-result-stats{justify-content:center;gap:var(--space-6);margin:var(--space-5) 0;display:flex}.practice-result-stats strong{font-size:var(--size-xl);color:var(--ink);font-weight:400}.practice-result-stats span{margin-top:var(--space-2);display:block}.practice-result>p:not(.read){font-size:var(--size-m);color:var(--dim);margin:0}.practice-result>p.practice-unranked{margin-top:var(--space-3);color:var(--dim)}.practice-result-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.practice-result-actions>button{flex:160px;min-height:48px}@media (width<=900px){.practice-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.scene-dojo .scene-shade{background:color-mix(in srgb,var(--well) 8%,transparent)}.practice-screen{padding:var(--space-2) var(--space-4) var(--space-5)}.dojo-objective{top:128px;left:var(--space-4);max-width:260px;padding:var(--space-2) var(--space-3)}.practice-racing{padding:var(--space-3)}.practice-passage{font-size:var(--read-l)!important}.practice-stats{gap:var(--space-4)}.practice-stats strong{font-size:var(--size-m)}.practice-actions button{padding:var(--space-2);font-size:var(--size-xs);flex:auto}.practice-keys{display:none}.practice-keyboard button{font-size:var(--size-xs)}.practice-keyboard button.wide-key{font-size:var(--size-m)}.practice-config{padding:var(--space-4)}.practice-config-grid{gap:var(--space-4);grid-template-columns:1fr}.practice-config-heading{display:block}.practice-config footer{flex-direction:column;align-items:stretch}.practice-config footer>span{flex:auto}.practice-result{margin-top:var(--space-6);padding:var(--space-4)}.practice-result-stats{gap:var(--space-5)}.practice-result-stats strong{font-size:var(--size-l)}}@media (height<=520px) and (width>=600px){.dojo-objective{max-width:none;margin-bottom:var(--space-3);position:static}.practice-racing{margin-top:0}.practice-keyboard{max-width:540px}}@media (prefers-reduced-motion:reduce){.practice-config,.practice-result{animation:none}}[data-reduced-effects=true] :is(.practice-config,.practice-result){animation:none}@media (height<=520px) and (width>=600px){.practice-screen{min-height:0;padding:var(--space-2) var(--space-4)}.practice-header{margin-bottom:var(--space-1)}.dojo-objective{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-1);grid-template-columns:auto 1fr}.dojo-objective>p,.dojo-objective>small{display:none}.practice-racing{padding:var(--space-2) var(--space-3)}.practice-typing{margin:var(--space-1) 0 var(--space-2)}.practice-passage{font-size:var(--read-l)!important}}.spar-hud{pointer-events:none;position:absolute;inset:0}.spar-meter{top:122px;right:var(--space-5);align-items:center;gap:var(--space-1) var(--space-4);padding:var(--space-3) var(--space-4);grid-template-columns:auto auto;display:grid;position:absolute}.spar-combo{font-size:var(--size-xl);color:var(--ink);animation:spar-bump var(--t-move) var(--ease);font-weight:400}.spar-combo small,.spar-total small{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);display:block}.spar-mult{padding:var(--space-1) var(--space-2);font-size:var(--size-l);color:var(--ink);background:var(--danger);border-radius:var(--radius-s);animation:spar-bump var(--t-move) var(--ease);justify-self:end}.spar-total{font-size:var(--size-m);color:var(--gold);grid-column:1/-1}.spar-popups{position:absolute;top:20%;left:56%}.spar-pop{left:calc((var(--slot,1) - 1) * 90px);top:calc((var(--slot,1) - 1) * -40px);align-items:center;gap:var(--space-1);white-space:nowrap;font-size:var(--size-l);color:var(--ink);text-shadow:2px 2px var(--well);animation:spar-rise 1.4s var(--ease) forwards;display:flex;position:absolute}.spar-chips,.spar-x{padding:var(--space-1) var(--space-2);border:2px solid var(--well);border-radius:var(--radius-s);text-shadow:none}.spar-chips{background:var(--mana);color:var(--key-ink)}.spar-x{background:var(--danger);color:var(--key-ink)}.spar-pop b{margin-left:var(--space-2);font-size:var(--size-l);color:var(--gold);font-weight:400}.spar-pop.big b{font-size:var(--size-xl)}.spar-pop.counter{font-size:var(--size-xl);color:var(--danger)}.spar-hud.tier-2 .spar-mult,.spar-hud.tier-3 .spar-mult{animation:spar-bump var(--t-move) var(--ease),spar-wobble .5s ease-in-out infinite}.spar-hud.tier-3 .spar-meter{border-color:var(--danger);animation:.18s linear infinite spar-shake}@keyframes spar-bump{0%{transform:scale(1.5)}}@keyframes spar-rise{0%{opacity:0;transform:translateY(12px)scale(.6)rotate(-6deg)}15%{opacity:1;transform:translateY(0)scale(1.2)rotate(3deg)}30%{transform:scale(1)rotate(0)}to{opacity:0;transform:translateY(-72px)}}@keyframes spar-wobble{50%{transform:rotate(-6deg)scale(1.08)}}@keyframes spar-shake{25%{translate:1px -1px}75%{translate:-1px 1px}}@media (width<=600px){.dojo-objective{max-width:calc(100% - 150px)}.dojo-objective>small{display:none}.spar-meter{top:128px;right:var(--space-4);gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3)}.spar-combo{font-size:var(--size-l)}.spar-popups{top:22%;left:50%}}@media (height<=520px) and (width>=600px){.spar-meter{top:var(--space-2);grid-template-columns:repeat(3,auto);right:50%;translate:50%}.spar-total{grid-column:auto}.spar-popups{top:30%}}@media (prefers-reduced-motion:reduce){.spar-meter,.spar-meter *{animation:none!important}.spar-pop{animation-name:spar-fade!important}}[data-reduced-effects=true] :is(.spar-meter,.spar-meter *){animation:none!important}[data-reduced-effects=true] .spar-pop{animation-name:spar-fade!important}@keyframes spar-fade{to{opacity:0}}@font-face{font-family:KeepPixel;src:url(/assets/dungeon/fonts/pixel.ttf)format("truetype");font-display:swap}:root{color:var(--paper-200);background:var(--n-10);font-synthesis:none;--muted:var(--n-72)}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{padding:var(--space-3) var(--space-4);cursor:pointer;transition:background .12s,transform .12s}button:active{box-shadow:0 1px 0 var(--n-06);transform:translateY(2px)}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--paper)}label{gap:var(--space-2);font-size:12px;display:grid}small{line-height:1.7}h1,h2,h3,p{margin-top:0}h2{font-size:17px;line-height:1.8}h3{font-size:16px;line-height:1.5}p{line-height:1.8}.glyph{flex-shrink:0;width:24px;height:24px}kbd{border:1px solid var(--n-48);padding:var(--space-1) var(--space-2);color:var(--n-88);background:var(--n-15);border-bottom-width:3px;font-family:inherit;font-size:11px}.quiet{box-shadow:none;color:var(--muted);padding:var(--space-3);background:0 0;border:0}.quiet:hover{background:var(--n-18);color:#fff}.muted{color:var(--muted);font-size:12px}.dungeon-app{isolation:isolate;min-height:100svh;position:relative}.dungeon-canvas{z-index:-3;background:var(--n-12);position:fixed;inset:0;overflow:hidden}.dungeon-canvas canvas{width:100%;height:100%;display:block}.scene-shade{pointer-events:none;z-index:-2;background:linear-gradient(90deg,#080e16f2,#0a111ac7 29%,#0a111a1a 64%,#09101a1a);position:fixed;inset:0}.eyebrow{letter-spacing:2px;color:var(--brand-text);margin-bottom:var(--space-5);font-size:10px;line-height:1.8;display:block}.eyebrow i{width:6px;height:6px;margin-right:var(--space-2);background:var(--brand);display:inline-block}.typing-native-input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;bottom:0;left:50%}.typing-passage{white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere;scrollbar-width:none;line-height:2;position:relative;overflow:hidden}.typing-lines{line-height:inherit;position:relative}.typing-word{white-space:pre;display:inline-block}.typing-passage .ghost{color:var(--n-56)}.typing-passage .done{color:#a2d787}.typing-passage .incorrect{color:#e58b82;text-decoration:underline}.typing-passage .next{color:var(--paper-300);background:color-mix(in srgb,var(--n-48) 15%,transparent);border-bottom:2px solid var(--brand-400)}.typing-passage .mistake{background:#b3474740}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.typing-word.long{white-space:pre-wrap;overflow-wrap:anywhere;display:inline}@keyframes keep-enter{0%{opacity:0;translate:0 calc(-1 * var(--space-2))}to{opacity:1;translate:0}}[data-reduced-effects=true] *,[data-reduced-effects=true] :before,[data-reduced-effects=true] :after{transition:none!important;animation:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--bg:#14161d;--bg-2:#1b1e27;--well:#0e1016;--edge:#3a3f4d;--edge-lit:#4e5567;--edge-dim:#262a35;--ink:#f1ebdc;--dim:#a3a7b2;--faint:#949aa6;--accent:#ff9a4a;--accent-deep:#b85a1c;--accent-soft:#3a2416;--danger:#ff5f49;--mana:#7f9fff;--heal:#7fe08f;--shield:#7fd8e6;--gold:#f0cb7a;--arcane:#b98cff;--key-ink:#24211c;--key-cream:#ede4cf;--font:KeepPixel, monospace;--font-read:ui-monospace, "Cascadia Mono", "Cascadia Code", Consolas, "SF Mono", Menlo, "DejaVu Sans Mono", monospace;--size-xs:8px;--size-m:12px;--size-l:16px;--size-xl:24px;--read-m:14px;--read-l:20px;--read-xl:26px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius:8px;--radius-s:5px;--t-fast:.12s;--t-move:.2s;--ease:cubic-bezier(.2, .8, .2, 1);--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--mark-ember:#ff7a2f;--mark-ember-hot:#ffc35a;--mark-ember-deep:#b23d14;--mark-iron:#12161d;--mark-bone:#f3e6c8;--coin:#d8a64a;--coin-light:#f0cb7a;--coin-dark:#8a6524;--n-02:#050505;--n-04:#0a0a0b;--n-06:#0f0e10;--n-08:#141316;--n-10:#19181b;--n-12:#1e1d20;--n-15:#252429;--n-18:#2d2b31;--n-22:#37353b;--n-27:#434149;--n-33:#524f59;--n-40:#6a6762;--n-48:#7f7c76;--n-56:#969288;--n-64:#aaa79c;--n-72:#c0bcaf;--n-80:#d6d1c2;--n-88:#eae5d7;--n-94:#f6f3ea;--brand:var(--accent);--brand-text:var(--accent);--brand-deep:var(--accent-deep);--brand-950:var(--accent-soft);--brand-900:#2a1a10;--brand-800:#4a2a14;--brand-700:var(--accent-deep);--brand-400:#ffb47a;--brand-300:#ffc08f;--brand-200:#ffd9b8;--paper:var(--ink);--paper-200:var(--ink);--paper-300:var(--ink);--paper-400:var(--dim);--text:var(--ink);--text-dim:var(--dim);--text-faint:var(--faint);--iron-900:var(--well);--iron-800:var(--bg-2);--iron-700:var(--bg-2);--iron-600:var(--edge-dim);--iron-500:var(--edge);--bevel-light:var(--n-33);--bevel-dark:var(--n-02);--bronze:var(--n-33);--rarity-starter:var(--faint);--rarity-common:var(--dim);--rarity-rare:var(--mana);--rarity-epic:var(--arcane);--rarity-legendary:var(--accent);--red:var(--danger);--green:var(--heal);--focus:var(--accent);--icon:var(--ink);--size-s:10px;--hud-bg:var(--bg);--hud-bg-2:var(--bg-2);--hud-well:var(--well);--hud-edge:var(--edge);--hud-edge-lit:var(--edge-lit);--hud-edge-dim:var(--edge-dim);--hud-ink:var(--ink);--hud-dim:var(--dim);--hud-faint:var(--faint);--hud-accent:var(--accent);--hud-accent-deep:var(--accent-deep);--hud-accent-soft:var(--accent-soft);--hud-key:var(--key-cream);--hud-key-ink:var(--key-ink);--hud-mana:var(--mana);--hud-heal:var(--heal);--hud-arcane:var(--arcane);--hud-danger:var(--danger);--hud-shield:var(--shield);--hud-gold:var(--gold);--hud-radius:var(--radius);--hud-radius-s:var(--radius-s);--frame-iron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' shape-rendering='crispEdges'%3E%3Cpath fill='%2305070b' d='M3 0h12l3 3v12l-3 3H3l-3-3V3z'/%3E%3Cpath fill='%232d2b31' d='M3 1h12l2 2v12l-2 2H3l-2-2V3z'/%3E%3Cpath fill='%23524f59' d='M3 1h12v1H3zM1 3h1v9H1z'/%3E%3Cpath fill='%230f0e10' d='M3 16h12v1H3zM16 6h1v9h-1z'/%3E%3C/svg%3E");--frame-iron-hover:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' shape-rendering='crispEdges'%3E%3Cpath fill='%23434149' d='M3 0h12l3 3v12l-3 3H3l-3-3V3z'/%3E%3Cpath fill='%2337353b' d='M3 1h12l2 2v12l-2 2H3l-2-2V3z'/%3E%3Cpath fill='%236a6762' d='M3 1h12v1H3zM1 3h1v9H1z'/%3E%3Cpath fill='%2319181b' d='M3 16h12v1H3zM16 6h1v9h-1z'/%3E%3C/svg%3E");--frame-paper:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' shape-rendering='crispEdges'%3E%3Cpath fill='%23d6ccb4' d='M3 0h12l3 3v12l-3 3H3l-3-3V3z'/%3E%3Cpath fill='%23252429' d='M3 1h12l2 2v12l-2 2H3l-2-2V3z'/%3E%3Cpath fill='%236a6762' d='M3 1h12v1H3zM1 3h1v9H1z'/%3E%3C/svg%3E");--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .92 0 0 0 0 .78 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='96' height='96' filter='url(%23n)'/%3E%3C/svg%3E")}body{font-family:var(--font);color:var(--ink);background:var(--well)}kbd,code,pre,samp{font-family:inherit}*{letter-spacing:0!important}.glyph{flex:none}.plate,.pixel-panel,.hud-plate{filter:none;border:2px solid var(--edge)!important;border-radius:var(--radius)!important;background:var(--bg)!important;box-shadow:inset 0 1px 0 var(--edge-lit), 0 4px 0 #000000a0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-image: !important;background-clip:padding-box!important}:root{--key-paper-face:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M2 1h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M2 2h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M3 2h7v1h-7z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23f7f1e3%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%23e9e1ce%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%23d6ccb4%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-paper-wall:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M2 1h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M3 1h6v1h-6z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M9 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 2h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23c4b89c%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%23b3a688%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%238c805f%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-accent-face:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M2 1h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M2 2h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M3 2h7v1h-7z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23ffffff%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%23f6f3ea%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%23d6d1c2%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-accent-wall:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M2 1h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M3 1h6v1h-6z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M9 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 2h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23aaa79c%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%23969288%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%237f7c76%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-mod-face:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M2 1h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%235a5761%27 d=%27M2 2h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M3 2h7v1h-7z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%2347454c%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%233a383e%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%23302e33%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-mod-wall:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M2 1h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M3 1h6v1h-6z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M9 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 2h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%2329282d%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%231f1e22%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%23141316%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-ember-face:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M2 1h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M2 2h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M3 2h7v1h-7z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23ffc590%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%23ff9a4a%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%23d97a30%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E");--key-ember-wall:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 12 12%27 shape-rendering=%27crispEdges%27%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 0h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 1h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M2 1h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M3 1h6v1h-6z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M9 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 1h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 2h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 2h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 2h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 2h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 3h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 3h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 3h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 3h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 4h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 4h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 4h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 4h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 5h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 5h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 5h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 5h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 6h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 6h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 6h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 6h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 7h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 7h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 7h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 7h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 8h1v1h-1z%27/%3E%3Cpath fill=%27%23b85a1c%27 d=%27M1 8h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 8h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 8h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M0 9h1v1h-1z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M1 9h1v1h-1z%27/%3E%3Cpath fill=%27%239a4814%27 d=%27M2 9h8v1h-8z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M10 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M11 9h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M1 10h1v1h-1z%27/%3E%3Cpath fill=%27%237a3810%27 d=%27M2 10h8v1h-8z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M10 10h1v1h-1z%27/%3E%3Cpath fill=%27%230e0d0f%27 d=%27M2 11h8v1h-8z%27/%3E%3C/svg%3E")}button,.key{--d:8px;--o:0px;--kp:3px;--kf:var(--key-mod-face);--kw:var(--key-mod-wall);--cap-ink:var(--ink);--cap-surface:#2a2d38;isolation:isolate;font-size:var(--size-s);color:var(--cap-ink);text-shadow:none;cursor:pointer;text-decoration:none;transition:border-width .11s steps(3,end);position:relative;background:var(--cap-surface)!important;border-style:solid!important;border-color:#0000!important;border-width:calc(var(--kp) + var(--o)) 6px calc(var(--kp) + var(--d) - var(--o))!important;box-shadow:none!important;border-image: !important;background-clip:padding-box!important;border-radius:0!important;transform:none!important}:is(button,.key):before,:is(button,.key):after{content:"";z-index:-1;left:0;right:0;top:calc(-1 * var(--kp));pointer-events:none;border:8px solid #0000;transition:bottom .11s steps(3,end);position:absolute}:is(button,.key):before{bottom:calc(var(--o) - var(--kp) - var(--d));border-image:var(--kw) 4 fill / 8px / 0 6px stretch}:is(button,.key):after{bottom:calc(-1 * var(--kp));border-image:var(--kf) 4 fill / 8px / 0 6px stretch}:is(button,.key):is(:hover,:focus-visible):not(:disabled):not([aria-disabled=true]){--o:2px}:is(button,.key):is(:hover,:focus-visible):not(:disabled):not([aria-disabled=true]):after{filter:brightness(1.07)}:is(button,.key):is(:active,.is-down):not(:disabled):not([aria-disabled=true]),button[aria-pressed=true]{--o:calc(var(--d) - 2px);transition-duration:50ms;transition-timing-function:steps(2,end)}:is(button,.key):is(:active,.is-down):not(:disabled):not([aria-disabled=true]):before{transition-duration:50ms;transition-timing-function:steps(2,end)}:is(a,button,input,select,textarea,summary,.key,[role=button],[role=tab],[role=switch]):focus-visible{outline:2px solid var(--accent)!important;outline-offset:3px!important}button:disabled{cursor:not-allowed;color:var(--cap-ink);opacity:1}button:disabled:before,button:disabled:after{filter:saturate(.3)brightness(.85)}button[aria-disabled=true]{cursor:not-allowed}button[aria-busy=true]{cursor:progress}button[aria-busy=true]:after{animation:.8s steps(2,end) infinite key-busy}@keyframes key-busy{50%{filter:brightness(1.18)}}.practice-keyboard button{--kf:var(--key-paper-face);--kw:var(--key-paper-wall);--cap-ink:var(--key-ink);--cap-surface:var(--key-cream)}button[aria-pressed=true]:not(.quiet,.hero-card),.practice-keyboard button.expected-key{--kf:var(--key-accent-face);--kw:var(--key-accent-wall);--cap-ink:var(--key-ink);--cap-surface:#f6f3ea}.primary-action,.start-button{--kf:var(--key-ember-face);--kw:var(--key-ember-wall);--cap-ink:var(--key-ink);--cap-surface:var(--accent)}.primary-action .glyph,.start-button .glyph{color:currentColor}.primary-action{font-size:var(--size-m)}button[aria-pressed=true]:not(.quiet):not(.tree-node,.hero-card) *{color:inherit}.danger-action{--cap-ink:color-mix(in srgb, var(--danger) 70%, var(--ink))}:is(button,.key):not(.quiet):not(.tree-node,.hero-card) :is(small,.glyph),button[aria-pressed=true]:not(.quiet):not(.tree-node,.hero-card) :is(span,strong,small,b,i,.glyph){color:var(--cap-ink)}button.quiet{--o:0px;color:var(--dim);transition:none;background:0 0!important;border-width:6px!important}button.quiet:before,button.quiet:after{content:none}button.quiet:is(:hover,:focus-visible):not(:disabled){color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}button.dialog-close{--d:4px;--kp:2px;width:44px;height:44px;font-size:var(--size-l);flex:none;place-items:center;line-height:1;display:inline-grid;padding:0!important}@media (prefers-reduced-motion:reduce){:is(button,.key),:is(button,.key):before{transition:none!important}button[aria-busy=true]:after{filter:brightness(1.12);animation:none}}[data-reduced-effects=true] :is(button,.key),[data-reduced-effects=true] :is(button,.key):before{transition:none!important}kbd{font-size:var(--size-xs);padding:var(--space-1) var(--space-1) 2px;color:var(--key-ink);background:var(--key-cream);box-shadow:0 0 0 2px var(--n-02), 0 3px 0 0 #b3a688, 0 3px 0 2px var(--n-02);text-shadow:none;border:0;border-radius:0}.eyebrow{font-size:var(--size-xs)!important;color:var(--text-dim)!important;text-shadow:none!important}.section-label{align-items:center;gap:var(--space-2);margin:var(--space-4) 0 var(--space-2);font-size:var(--size-s);color:var(--text-dim);font-weight:400;display:flex}.section-label:after{content:"";background:var(--hud-edge);flex:1;height:1px}.text-tabs{gap:2px var(--space-3);flex-wrap:wrap;display:flex}.text-tabs button{--cap-ink:var(--text);min-height:44px;color:var(--text-faint);text-shadow:none;font-size:var(--size-s);padding:var(--space-2) 0!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;transform:none!important}.text-tabs button:before,.text-tabs button:after{content:none}.text-tabs button:hover:not(:disabled){color:var(--text)}.text-tabs button.active{color:var(--brand-text);box-shadow:inset 0 -3px 0 var(--brand)!important}.text-tabs button.active .glyph{color:var(--icon)}.coin{width:10px;height:10px;margin-right:var(--space-1);vertical-align:-1px;background:var(--coin);box-shadow:inset 2px 2px 0 var(--coin-light), inset -2px -2px 0 var(--coin-dark);display:inline-block}.coin-icon{vertical-align:-2px;width:12px;height:12px;image-rendering:pixelated;flex:none;display:inline-block}.font-warm{visibility:hidden;pointer-events:none;font-weight:800;position:fixed;top:0;left:0;font-family:var(--font-read)!important}.read{font-family:var(--font-read);font-size:var(--read-m);font-weight:400;line-height:1.6}.leaderboard-help,.ranking-state p,.leaderboard-note,.sprint-legend li,.sprint-course-line,.sprint-panel .race-attribution,.race-countdown>p,.sprint-finish p{font-family:var(--font-read)}.sprint-legend :is(i,strong){font-family:var(--font)}.target-labels .enemy-label strong,.target-labels .enemy-label strong *,.duel-word,.duel-word *,.typing-bar,.typing-bar *,.boss-passage,.boss-passage *,[data-testid=upgrade-keyword],[data-testid=upgrade-keyword] *,.skill-card strong,.skill-card strong *,.practice-passage,.practice-passage *,.race-passage,.race-passage *{font-weight:700;font-family:var(--font-read)!important;letter-spacing:.04em!important}.target-labels .enemy-label strong{font-size:var(--read-l)!important;-webkit-text-stroke:3px #05070b!important}.typing-bar{font-size:20px!important}:is(.dialog-body p,.dialog-body li,.feedback-dialog textarea,.feedback-dialog small,.armory-detail p,.tree-intro,.run-notice,.upgrade-card p):where(:not(.read)){font-family:var(--font)!important;font-size:var(--size-m)!important;letter-spacing:0!important;font-weight:400!important;line-height:1.9!important}.boot-splash{z-index:-2;pointer-events:none;background:var(--grain), radial-gradient(80% 70% at 68% 45%, var(--bg-2) 0%, var(--mark-iron) 62%, var(--well) 100%);place-items:center;transition:opacity .4s ease-out,visibility 0s linear .4s;display:grid;position:fixed;inset:0}.boot-splash.done{opacity:0;visibility:hidden}.boot-splash.done .boot-mark img,.boot-splash.done .boot-mark i{animation:none}.boot-mark{justify-items:center;gap:var(--space-3);display:grid;transform:translate(22vw)}.boot-mark img{width:56px;height:56px;image-rendering:pixelated;filter:drop-shadow(0 4px #000);animation:1.6s ease-in-out infinite boot-breathe}.boot-mark span{font-size:var(--size-xs);color:var(--text-dim);text-shadow:1px 1px #000}.boot-mark i{background:linear-gradient(90deg, transparent, #ff713f, transparent) 0 0 / 50% 100% no-repeat var(--iron-600);width:120px;height:6px;animation:1.1s steps(12,end) infinite boot-bar;display:block}@keyframes boot-bar{0%{background-position:-100% 0}to{background-position:200% 0}}@keyframes boot-breathe{50%{filter:drop-shadow(0 7px #000)brightness(1.2);transform:translateY(-3px)}}@media (width<=760px){.boot-mark{align-self:end;margin-bottom:18svh;transform:none}}.dungeon-app:not(.scene-title) .boot-mark{transform:none}@media (prefers-reduced-motion:reduce){.boot-splash{transition:none}.boot-mark img,.boot-mark i{animation:none}}[data-reduced-effects=true] .boot-splash{transition:none}.boot-splash.failed .boot-mark{pointer-events:auto}.boot-splash.failed .boot-mark img,.boot-splash.failed .boot-mark i{animation:none}.dungeon-app:is(.scene-endless,.scene-tutorial) .boot-mark,.dungeon-app:is(.scene-multiplayer,.scene-leaderboard,.scene-armory) .boot-splash:not(.failed) .boot-mark{visibility:hidden}.boot-splash:not(.done) .boot-mark{animation:.2s ease-out .25s both keep-enter}@media (prefers-reduced-motion:reduce){.boot-splash .boot-mark{animation:none}}.dungeon-app:is(.scene-title,.scene-dojo):has(>.boot-splash:not(.done,.failed)) .keep-loading.is-floating{visibility:hidden}.keep-loading{align-content:center;justify-items:center;gap:var(--space-3);padding:var(--space-5);text-align:center;font-size:var(--size-xs);color:var(--text-dim);text-shadow:1px 1px #000;display:grid}.keep-loading i,.keep-skeleton:not(.is-loaded){background:linear-gradient(90deg, transparent, #ff713f, transparent) 0 0 / 50% 100% no-repeat var(--iron-600);animation:1.1s steps(12,end) infinite boot-bar}.keep-loading i{width:120px;height:6px;display:block}.keep-loading.is-floating{z-index:30;background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);width:max-content;height:max-content;box-shadow:inset 0 1px 0 var(--edge-lit), 0 4px 0 var(--well);margin:auto;animation:.2s ease-out .15s both keep-enter;position:fixed;inset:0}.keep-loading.is-inline{align-items:center;gap:var(--space-2);text-shadow:none;padding:0;display:inline-flex}.keep-loading.is-inline i{width:48px;height:4px}.keep-skeleton:not(.is-loaded){background-image:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 22%, transparent), transparent);background-color:var(--well)}@media (prefers-reduced-motion:reduce){.keep-loading i,.keep-skeleton:not(.is-loaded){background-position:50% 0;animation:none}}[data-reduced-effects=true] .keep-loading i,[data-reduced-effects=true] .keep-skeleton:not(.is-loaded){background-position:50% 0}.screen-bar{align-items:center;gap:var(--space-3) var(--space-4);box-sizing:border-box;width:100%;min-width:0;padding:calc(var(--space-1) + var(--safe-top)) max(var(--space-4), var(--safe-right)) var(--space-1) max(var(--space-4), var(--safe-left));flex-wrap:nowrap;display:flex}.screen-bar .screen-back{min-height:44px;padding:var(--space-3) var(--space-4);font-size:var(--size-s);white-space:nowrap;flex:none}.screen-back-arrow{width:10px;height:10px;margin-right:var(--space-2);vertical-align:-1px;background:currentColor;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges'%3E%3Cpath d='M4 1h2v2H4zM2 3h2v2H2zM0 5h10v0H0zM0 4h10v2H0zM2 5h2v2H2zM4 7h2v2H4z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges'%3E%3Cpath d='M4 1h2v2H4zM2 3h2v2H2zM0 5h10v0H0zM0 4h10v2H0zM2 5h2v2H2zM4 7h2v2H4z'/%3E%3C/svg%3E") 50%/contain no-repeat}.screen-title{gap:var(--space-1);flex:auto;min-width:0;display:grid}.screen-title h1{font-size:var(--size-l);color:var(--paper);text-overflow:ellipsis;white-space:nowrap;-webkit-text-stroke:3px #05070b;paint-order:stroke fill;text-shadow:2px 2px #05070b;margin:0;font-weight:400;line-height:1.3;overflow:hidden}.screen-actions{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:nowrap;flex:none;min-width:0;margin-left:auto;display:flex}.screen-actions>button{min-height:44px;font-size:var(--size-s)}.screen-actions>button.quiet{-webkit-text-stroke:3px #05070b;paint-order:stroke fill}@media (width<=600px){.screen-bar{gap:var(--space-2)}.screen-bar .screen-back{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--size-s)}.screen-title h1{font-size:var(--size-m)}.screen-actions>button{min-height:44px;font-size:var(--size-s)}}*{scrollbar-width:thin;scrollbar-color:var(--edge) transparent}:where(textarea,input:not([type]),input[type=text],input[type=email],input[type=search],input[type=password],input[type=number],input[type=url]){min-width:0;padding:var(--space-3);color:var(--ink);background:var(--well);border:1px solid var(--edge);border-radius:var(--radius-s);transition:border-color var(--t-fast) var(--ease);box-shadow:inset 0 1px #000}:where(textarea,input:not([type]),input[type=text],input[type=email],input[type=search],input[type=password],input[type=number],input[type=url]):focus{border-color:var(--accent)}select{appearance:none;min-width:0;min-height:44px;padding:0 var(--space-6) 0 var(--space-3);font-size:var(--size-m);color:var(--ink);background-color:var(--well);border:1px solid var(--edge);border-radius:var(--radius-s);cursor:pointer;transition:border-color var(--t-fast) var(--ease);background-image:linear-gradient(45deg, transparent 50%, var(--dim) 50%), linear-gradient(135deg, var(--dim) 50%, transparent 50%)!important;background-position:calc(100% - 17px),calc(100% - 12px)!important;background-repeat:no-repeat!important;background-size:5px 5px!important}select:hover{border-color:var(--edge-lit)}@media (width<=600px){select{min-height:44px;padding:0 var(--space-5) 0 var(--space-2);font-size:var(--size-s)}}input[type=checkbox]{appearance:none;vertical-align:middle;background:var(--well);border:2px solid var(--edge);border-radius:var(--radius-s);cursor:pointer;width:44px;height:24px;transition:border-color var(--t-fast) var(--ease);flex:none;margin:0;padding:0;position:relative}input[type=checkbox]:before{content:"";background:var(--dim);width:16px;height:16px;transition:translate var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);border-radius:2px;position:absolute;top:2px;left:2px}input[type=checkbox]:checked{border-color:var(--accent)}input[type=checkbox]:checked:before{background:var(--accent);translate:20px}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}input[type=range]{appearance:none;cursor:pointer;background:0 0;border:0;height:44px;margin:0;padding:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(var(--accent), var(--accent)) 0 0 / var(--fill,0%) 100% no-repeat, var(--well);height:6px;box-shadow:inset 0 0 0 1px var(--edge)}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--well);border-radius:0;width:14px;height:14px;margin-top:-4px}input[type=range]::-moz-range-track{background:var(--well);height:6px;box-shadow:inset 0 0 0 1px var(--edge)}input[type=range]::-moz-range-progress{background:var(--accent);height:6px}input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--well);border-radius:0;width:14px;height:14px}.title-menu,.armory-screen,.practice-screen,.race-screen:not(.phase-racing),.screen-bar:not(:is(.armory-screen,.practice-screen,.race-screen) *){animation:keep-enter var(--t-move) var(--ease) backwards}.dungeon-dialog[open]{animation:dialog-in var(--t-move) var(--ease) both}.dungeon-dialog[open]::backdrop{animation:fade-in var(--t-move) var(--ease) both}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.97)}}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.dungeon-dialog[open]::backdrop{animation:none}:is(textarea,input,select),input[type=checkbox]:before{transition:none}}[data-reduced-effects=true] .dungeon-dialog[open]::backdrop{animation:none}.dungeon-dialog{width:min(560px,100vw - 32px);max-width:calc(100vw - 32px - var(--safe-left) - var(--safe-right));max-height:calc(100svh - 48px - var(--safe-top) - var(--safe-bottom));color:var(--ink);overflow:visible;padding:var(--space-4) var(--space-5) var(--space-5)!important}.dungeon-dialog[open]{flex-direction:column;display:flex}.dungeon-dialog::backdrop{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--well) 60%, transparent), color-mix(in srgb, var(--well) 94%, transparent) 70%)}.tone-relic{--accent:var(--arcane)}.dungeon-dialog>header{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-1) 0 var(--space-3);border:0;display:flex;position:relative}.dungeon-dialog>header h2{overflow-wrap:anywhere;min-width:0;font-size:var(--size-l);color:var(--ink);flex:1;margin:0;font-weight:400;line-height:1.6}.dungeon-dialog>header:after{content:"";background:var(--edge);height:1px;position:absolute;bottom:0;left:0;right:0}.dungeon-dialog>.dialog-body{min-height:0;padding:2px var(--space-2);scrollbar-width:thin;scrollbar-color:var(--edge) transparent;flex:auto;margin:0 -8px;overflow:hidden auto}.dungeon-dialog .dialog-body>p{color:var(--dim);line-height:1.8}.dungeon-dialog .dialog-body>.eyebrow{margin:0 0 var(--space-3);display:block}.dungeon-dialog form{gap:var(--space-4);display:grid}.dungeon-dialog .dialog-body>button,.dungeon-dialog .dialog-body>form>button,.dialog-actions button{justify-content:center;align-items:center;gap:var(--space-2);width:min(100%,340px);min-height:48px;padding:var(--space-3) var(--space-5);font-size:var(--size-m);text-align:center;line-height:1.6;display:flex}.dungeon-dialog .dialog-body>button{margin:var(--space-3) auto 0}.dungeon-dialog .dialog-body>form>button{margin:0 auto}.dungeon-dialog .dialog-body>button.primary-action,.dungeon-dialog .dialog-body>form>button.primary-action,.dialog-actions .primary-action{min-height:56px}.dungeon-dialog .dialog-body>:is(button,form)+p{margin-top:var(--space-3)}.dungeon-dialog .dialog-body button .glyph{width:16px;height:16px}.dialog-actions{justify-items:center;gap:var(--space-2);margin-top:var(--space-4);display:grid}.dialog-actions-row{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,144px),1fr));grid-auto-rows:1fr;width:min(100%,340px);display:grid}.dialog-actions-row button{width:100%;min-height:56px;padding-inline:var(--space-3);overflow-wrap:anywhere}.dialog-actions .quiet{min-height:44px;padding-inline:var(--space-2)}.dialog-links{justify-content:center;gap:var(--space-1) var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.dialog-links .quiet{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--size-m);align-items:center;display:inline-flex}.control-list{gap:var(--space-2);margin:var(--space-4) 0;padding:0;list-style:none;display:grid}.control-list li{align-items:center;gap:var(--space-3);color:var(--dim);grid-template-columns:112px 1fr;display:grid}.control-list kbd{justify-self:start}.confirm-dialog p{line-height:1.8}.compact-help{margin:var(--space-2) 0;color:var(--dim)}.compact-help>summary{width:fit-content;max-width:100%;min-height:44px;font-size:var(--size-m);color:var(--dim);cursor:pointer;align-content:center}.compact-help>summary:is(:hover,:focus-visible){color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.compact-help[open]>summary{margin-bottom:var(--space-2)}.compact-help p{margin:var(--space-2) 0}.settings-tabs{margin-bottom:var(--space-2);border-bottom:1px solid var(--edge-dim);flex-wrap:nowrap;overflow-x:auto}.settings-tabs button{white-space:nowrap;flex:none}.settings-panel{min-height:min(384px,50svh)}.settings-row[data-tip]{position:relative}.settings-row[data-tip]:after{content:attr(data-tip);z-index:5;max-width:min(360px,100%);padding:var(--space-2) var(--space-3);font-size:var(--size-xs);color:var(--ink);background:var(--bg-2);border:1px solid var(--edge-lit);border-radius:var(--radius-s);pointer-events:none;line-height:1.6;display:none;position:absolute;top:calc(100% - 4px);left:0}.settings-row[data-tip]:is(:hover,:has(:focus-visible)):after{display:block}.settings-row{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-2) 0;font-size:var(--size-m);border-bottom:1px solid var(--edge-dim);display:flex}.settings-row>span{overflow-wrap:anywhere;flex:1;min-width:0}.settings-row small{margin-top:var(--space-1);font-size:var(--size-xs);color:var(--faint);line-height:1.6;display:block}.settings-row select{border-radius:var(--radius-s);flex:none;min-width:156px;max-width:62%}.settings-row input[type=range]{flex:none;width:150px}.settings-row input[type=checkbox]{flex:none}.settings-row output{min-width:3ch;font-size:var(--size-m);text-align:right;color:var(--dim);flex:none}.stat-grid{gap:var(--space-2);margin:var(--space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stat-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-tile{justify-items:center;gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-1);background:var(--bg-2);border:1px solid var(--edge);border-radius:var(--radius-s);display:grid}.stat-tile b{font-size:var(--size-m);color:var(--ink);font-weight:400}.stat-tile span{font-size:var(--size-xs);text-align:center;text-transform:uppercase;overflow-wrap:anywhere;color:var(--faint);line-height:1.4}.build-showcase{gap:var(--space-2);margin:var(--space-2) 0;flex-wrap:wrap;display:flex}.build-count{align-items:baseline;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);background:var(--bg-2);border:1px solid var(--edge);border-radius:var(--radius-s);cursor:default;display:inline-flex;position:relative}.build-count b{font-size:var(--size-m);color:var(--ink);font-weight:400}.build-tooltip{z-index:5;gap:var(--space-1);min-width:max-content;padding:var(--space-2) var(--space-3);text-transform:none;color:var(--ink);background:var(--bg-2);border:1px solid var(--edge-lit);border-radius:var(--radius-s);flex-direction:column;display:none;position:absolute;bottom:calc(100% + 6px);left:0}.build-tooltip small{color:var(--faint)}.build-count:is(:hover,:focus-visible) .build-tooltip{display:flex}.level-pips{vertical-align:middle;gap:2px;display:inline-flex}.level-pips i{background:var(--edge);width:5px;height:5px;box-shadow:none;border:0;transform:none}.level-pips i.on{background:var(--accent)}.level-pips i.next{background:var(--faint);animation:1s steps(2,end) infinite pip-step}@keyframes pip-step{50%{background:var(--edge)}}.result-dialog{width:min(640px,100vw - 32px)}.result-hero{align-items:stretch;gap:var(--space-4);margin:var(--space-1) 0 var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);display:grid}.result-time{align-content:center;justify-items:start;gap:var(--space-2);display:grid}.result-time small,.result-time span{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);line-height:1.6}.result-time b{font-size:var(--size-xl);color:var(--ink);font-weight:400}.result-time .record-ribbon{padding:var(--space-1) var(--space-2);color:var(--key-ink);background:var(--accent);border-radius:var(--radius-s)}.result-dialog .run-embers{align-items:baseline;gap:var(--space-2);margin:var(--space-2) 0;color:var(--ink);flex-wrap:wrap;display:flex}.result-dialog .run-embers small{font-size:var(--size-xs);color:var(--dim)}.result-dialog .section-label{margin:var(--space-3) 0 var(--space-2)}.result-dialog .dialog-actions{z-index:2;margin:var(--space-3) -8px 0;padding:var(--space-3) var(--space-2) 2px;background:var(--bg);border-top:1px solid var(--edge-dim);position:sticky;bottom:0}.run-reward{gap:var(--space-2);padding:var(--space-3);background:var(--bg-2);border:1px solid var(--edge-dim);border-radius:var(--radius-s);display:grid}.run-reward.empty{font-size:var(--size-xs);color:var(--faint);grid-template-columns:auto 1fr;align-items:center;line-height:1.8}.run-reward.empty p{margin:0}.run-reward.empty .reward-coin{filter:grayscale()brightness(.6);width:24px;height:24px}.reward-total{align-items:center;gap:var(--space-3);display:flex}.reward-coin{width:32px;height:32px;animation:1.6s steps(8,end) coin-spin}@keyframes coin-spin{25%,75%{transform:scaleX(.2)}50%{transform:scaleX(1)}}.reward-total small{margin-bottom:var(--space-1);font-size:var(--size-xs);color:var(--dim);display:block}.reward-total b{font-size:var(--size-xl);color:var(--accent);font-weight:400}.reward-lines{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.reward-lines li{justify-content:space-between;gap:var(--space-2);color:var(--dim);display:flex;line-height:1.8!important}.reward-lines li b{color:var(--ink);font-weight:400}.reward-lines li.bonus,.reward-lines li.bonus b{color:var(--accent)}.reward-wallet{align-items:center;gap:var(--space-2);padding-top:var(--space-2);color:var(--ink);border-top:1px solid var(--edge-dim);margin:0;display:flex}.reward-wallet span{color:var(--faint)}.pause-dialog{width:min(520px,100vw - 32px)}.pause-dialog>header h2{text-align:center;font-size:var(--size-xl);padding-left:44px;line-height:1.4}.pause-dialog .dialog-body>.eyebrow{text-align:center}.pause-dialog .stat-grid{margin:var(--space-3) 0}.pause-dialog .build-showcase{justify-content:center}.play-dialog .play-section{gap:var(--space-3);display:grid}.play-dialog .play-section>h3{margin:0}.play-dialog .play-section>button{justify-items:center;gap:var(--space-1);width:100%;min-height:64px;padding:var(--space-3) var(--space-4);font-size:var(--size-m);margin:0;display:grid}.play-dialog .play-section>.primary-action{min-height:72px;font-size:var(--size-l)}.play-dialog .play-length{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.play-dialog .play-length legend{margin-bottom:var(--space-1);font-size:var(--size-xs);color:var(--dim)}.play-dialog .play-length label{align-items:center;gap:var(--space-3);cursor:pointer;line-height:1.3;display:flex}.play-dialog .play-length label>span{gap:2px;display:grid}.play-dialog .play-length small,.pause-dialog .dialog-actions>button small{font-size:var(--size-xs);color:var(--faint);display:block}.play-dialog button small{font-size:var(--size-xs);opacity:.8}.dungeon-dialog.draft-dialog{width:min(1220px,100vw - 24px);padding:var(--space-4) var(--space-3)!important;box-shadow:none!important;filter:none!important;border:0!important;border-image: !important;background:0 0!important;outline:none!important}.dungeon-dialog.draft-dialog::backdrop{background:radial-gradient(ellipse 70% 60% at 50% 52%, color-mix(in srgb, var(--well) 62%, transparent), color-mix(in srgb, var(--well) 94%, transparent) 76%)}.dungeon-dialog.draft-dialog>header{margin-bottom:var(--space-2);justify-content:center;padding:0 40px}.dungeon-dialog.draft-dialog>header:after{content:none}.dungeon-dialog.draft-dialog>header h2{text-align:center;font-size:var(--size-xl);color:var(--ink);text-shadow:4px 4px 0 var(--well);flex:0 auto}.dungeon-dialog.draft-dialog>header .dialog-close{position:absolute;top:0;right:0}@media (width>=900px) and (height>=600px){.dungeon-dialog.draft-dialog>.dialog-body{overflow:visible}}.draft-guide{margin:0;padding:0}.draft-world-state{text-align:right;font-size:var(--size-l);color:var(--dim);display:block}.dungeon-dialog .dialog-body>.draft-ribbon{width:max-content;max-width:100%;margin:0 auto var(--space-2);padding:var(--space-1) var(--space-6);font-size:var(--size-m);text-align:center;color:var(--key-ink);background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 12px) 50%,100% 100%,0 100%,12px 50%);box-shadow:inset 0 2px 0 color-mix(in srgb, var(--ink) 40%, transparent), inset 0 -4px 0 color-mix(in srgb, var(--well) 30%, transparent)}.draft-dialog .upgrade-cards{justify-content:center;gap:var(--space-4);padding:var(--space-4) var(--space-2) var(--space-3);grid-auto-columns:minmax(0,272px);grid-auto-flow:column;margin:0;display:grid}.draft-card{--family:var(--dim);--frame-lit:var(--edge-lit);--frame:var(--edge);--frame-deep:var(--well);--spread:24%;isolation:isolate;cursor:text;min-width:0;transition:transform var(--t-move) var(--ease);animation:card-deal .42s var(--ease) calc(var(--i,0) * 60ms) backwards;display:grid;position:relative;container:card/inline-size}.draft-card.family-skill{--family:var(--mana)}.draft-card.family-weapon{--family:var(--shield)}.draft-card.family-relic{--family:var(--gold)}:is(.draft-milestone,.draft-boss) .draft-card{--frame-lit:color-mix(in srgb, var(--accent) 60%, var(--edge-lit));--frame:color-mix(in srgb, var(--accent) 45%, var(--edge));--frame-deep:color-mix(in srgb, var(--accent) 25%, var(--well))}.draft-card:before,.draft-card:after{content:"";pointer-events:none;position:absolute}.draft-card:before{z-index:-2;background:color-mix(in srgb, var(--n-02) 75%, transparent);clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);inset:0;transform:translateY(4px)}.draft-card:after{z-index:-1;background:var(--accent);opacity:0;transition:opacity var(--t-move) var(--ease);clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);inset:-4px}@keyframes card-deal{0%{opacity:0;transform:translate(calc((var(--mid,0) - var(--i,0)) * var(--spread)), 48px) scale(.92)}}.card-face{isolation:isolate;justify-items:center;gap:var(--space-2);min-width:0;padding:var(--space-3) var(--space-4) var(--space-4);text-align:center;background:linear-gradient(135deg, var(--frame-lit), var(--frame) 32%, var(--frame-deep));clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);grid-template-rows:auto auto auto auto 1fr auto;grid-template-areas:"family""art""name""stage""desc""cmd";display:grid;position:relative}.card-face:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(to bottom, var(--bg-2), color-mix(in srgb, var(--bg-2) 70%, var(--well)));box-shadow:inset 0 2px 0 color-mix(in srgb, var(--ink) 10%, transparent), inset 0 -2px 0 color-mix(in srgb, var(--well) 70%, transparent);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);position:absolute;inset:4px}.card-rank{z-index:2;width:36px;height:36px;font-size:var(--size-m);color:var(--ink);text-shadow:2px 2px 0 var(--n-02);background:linear-gradient(135deg, var(--frame-lit), var(--frame) 40%, var(--frame-deep));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);place-items:center;display:grid;position:absolute;top:-8px;left:-8px}.card-rank:before{content:"";z-index:-1;background:linear-gradient(135deg, var(--bg-2), var(--well));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);position:absolute;inset:4px}.upgrade-family{font-size:var(--size-xs);text-transform:uppercase;color:var(--family);grid-area:family}.card-art{background:radial-gradient(ellipse 46% 62% at 50% 58%, color-mix(in srgb, var(--family) 40%, transparent), transparent), radial-gradient(ellipse 80% 95% at 50% 60%, transparent 50%, color-mix(in srgb, var(--n-02) 75%, transparent)), url(/assets/dungeon/ui/card-stone.svg) 0 0 / 32px 24px, var(--well);height:112px;image-rendering:pixelated;border-radius:120px 120px var(--radius-s) var(--radius-s) / 62px 62px var(--radius-s) var(--radius-s);box-shadow:inset 0 4px 0 color-mix(in srgb, var(--n-02) 65%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--frame-deep) 80%, transparent), 0 1px 0 color-mix(in srgb, var(--ink) 10%, transparent);grid-area:art;justify-self:stretch;place-items:center;display:grid;position:relative;overflow:hidden}.card-art:after{content:"";background:radial-gradient(ellipse 52% 70% at 50% 58%, color-mix(in srgb, var(--accent) 50%, transparent), transparent);opacity:0;transition:opacity var(--t-move) var(--ease);position:absolute;inset:0}.upgrade-medallion{z-index:1;background:linear-gradient(135deg, color-mix(in srgb, var(--family) 50%, var(--ink)), var(--family) 38%, color-mix(in srgb, var(--family) 35%, var(--well)));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);width:84px;height:84px;transition:transform var(--t-move) var(--ease);animation:medal-pop .32s var(--ease) calc(var(--i,0) * 60ms + .2s) backwards;place-items:center;display:grid;position:relative}.upgrade-medallion:before{content:"";background:linear-gradient(135deg, var(--bg-2), var(--well));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);position:absolute;inset:4px}.upgrade-medallion .glyph{width:36px;height:36px;color:color-mix(in srgb, var(--family) 30%, var(--ink));filter:drop-shadow(2px 2px 0 var(--n-02));position:relative}.upgrade-medallion .skill-icon{width:42px;height:42px;box-shadow:0 0 0 1px var(--n-02);border-radius:2px;position:relative}@keyframes medal-pop{0%{opacity:0;transform:scale(.7)}}.draft-card h3{font-size:var(--size-l);color:var(--ink);text-wrap:balance;text-shadow:2px 2px 0 var(--well);grid-area:name;margin:0;font-weight:400;line-height:1.4}.upgrade-rank{justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--size-xs);color:var(--dim);flex-wrap:wrap;grid-area:stage;display:flex}.upgrade-stage{color:var(--ink)}.upgrade-stage.new{color:var(--accent)}.upgrade-stage.restore{color:var(--heal)}.draft-card .level-pips{gap:var(--space-1)}.draft-card .level-pips i{background:var(--well);width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--edge-lit);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.draft-card .level-pips i.on{background:var(--ink);box-shadow:none}.draft-card .level-pips i.next{background:var(--accent);box-shadow:none;animation:none}.draft-card p{color:var(--dim);text-wrap:pretty;grid-area:desc;place-self:start stretch;margin:0}.draft-card .card-pair{margin-top:var(--space-1);color:var(--ink);display:block}.draft-card .card-pair b,.draft-card .card-pair.active{color:var(--heal);font-weight:400;display:block}.upgrade-command{padding:var(--space-3) var(--space-2) var(--space-2);background:var(--well);border-radius:var(--radius-s);box-shadow:inset 0 3px 0 color-mix(in srgb, var(--n-02) 70%, transparent), inset 0 0 0 1px var(--edge), 0 1px 0 color-mix(in srgb, var(--ink) 12%, transparent);grid-area:cmd;justify-self:stretch;position:relative;overflow:hidden}.upgrade-command:before,.upgrade-command:after{content:"";transform:scaleX(var(--typed,0));transform-origin:0;transition:transform var(--t-fast) var(--ease);position:absolute;left:0;right:0}.upgrade-command:before{background:linear-gradient(to bottom, color-mix(in srgb, var(--accent) 34%, transparent), color-mix(in srgb, var(--accent) 16%, transparent));top:0;bottom:0}.upgrade-command:after{background:var(--accent);height:4px;bottom:0}.upgrade-command>small{z-index:1;top:0;right:var(--space-2);font-size:var(--size-xs);color:var(--faint);line-height:1.7;position:absolute}.upgrade-command strong{white-space:nowrap;color:var(--ink);text-shadow:2px 2px 0 var(--n-02);line-height:1.25;display:block;position:relative;font-size:var(--read-xl)!important}.upgrade-command .typed{color:var(--accent)}.upgrade-command .typed-last{animation:letter-pop .18s var(--ease);display:inline-block}@keyframes letter-pop{0%{opacity:.4;transform:translateY(-4px)scale(1.25)}}.upgrade-command .next-letter{display:inline-block;position:relative}.upgrade-command .next-letter:after{content:"";background:var(--accent);height:2px;animation:1s step-end infinite caret-blink;position:absolute;bottom:-4px;left:0;right:0}@keyframes caret-blink{50%{opacity:0}}.upgrade-command.nudged{animation:.36s steps(6,end) keyword-nudge}@keyframes keyword-nudge{0%,to{transform:none}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.draft-card:focus-visible{outline:none}.draft-card:is(:hover,:focus-visible){transform:translateY(-4px)}.draft-card:hover:after{opacity:.6}.draft-card:focus-visible:after,.draft-card.typing:after{opacity:1}.draft-card.typing{z-index:1;transform:translateY(-8px)}.draft-card.typing .card-art:after{opacity:1}.draft-card.typing .upgrade-medallion{transform:scale(1.06)}.draft-card.typing .upgrade-command{box-shadow:inset 0 3px 0 color-mix(in srgb, var(--n-02) 70%, transparent), inset 0 0 0 1px var(--accent)}.draft-card.unmatched :is(.card-face>*,.card-rank){opacity:.45}@container card (width>=300px){.card-face{place-items:center start;gap:var(--space-1) var(--space-3);padding:var(--space-3);text-align:left;grid-template:"art family cmd""art name cmd""art stage cmd"1fr"desc desc desc"/56px minmax(0,1fr) auto}.card-art{border-radius:var(--radius-s);align-self:start;width:56px;height:56px}.upgrade-medallion{width:44px;height:44px}.upgrade-medallion:before{inset:4px}.upgrade-medallion .glyph{width:20px;height:20px}.upgrade-medallion .skill-icon{width:22px;height:22px}.card-rank{width:28px;height:28px;font-size:var(--size-xs);top:-4px;left:-4px}.card-rank:before{inset:4px}.draft-card h3{font-size:var(--size-m);line-height:1.5}.upgrade-rank{justify-content:flex-start}.upgrade-command{padding:var(--space-2) var(--space-3);place-self:center end}.upgrade-command>small{top:0;right:4px}.upgrade-command strong{font-size:var(--read-l)!important}.draft-card p{margin-top:var(--space-1)}}@container card (width>=300px) and (width<=419px){.card-face{grid-template:"art family""art name""art stage"1fr"desc desc""cmd cmd"/56px minmax(0,1fr)}.upgrade-command{text-align:center;justify-self:stretch}}@media (width<=899px){.draft-dialog .upgrade-cards{gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-2);grid-template-columns:minmax(0,560px);grid-auto-flow:row}.draft-dialog.draft-milestone .upgrade-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-card{--spread:0px}.draft-card.typing,.draft-card:is(:hover,:focus-visible){transform:translateY(-4px)}}@media (width<=600px){.draft-dialog.draft-milestone .upgrade-cards{grid-template-columns:minmax(0,1fr)}.draft-dialog .upgrade-cards{gap:var(--space-2)}.dungeon-dialog .dialog-body>.draft-ribbon{padding-inline:var(--space-5);font-size:var(--size-xs)!important}}@media (height<=560px) and (width>=900px){.dungeon-dialog{max-height:calc(100svh - 20px)}.draft-dialog .upgrade-cards{padding-top:var(--space-3)}.card-art{height:60px}.upgrade-medallion{width:48px;height:48px}.upgrade-medallion .glyph{width:22px;height:22px}.upgrade-medallion .skill-icon{width:24px;height:24px}}.draft-dialog .draft-notice{min-height:0;margin:var(--space-1) 0 0;font-size:var(--size-xs);text-align:center;color:var(--danger);line-height:1.7}.draft-dialog .draft-notice:empty{display:none}.draft-dialog .draft-notice.hint{color:var(--accent);font-size:var(--size-m)!important}.upgrade-dock{width:min(1080px,100vw - 24px)}.upgrade-dock .upgrade-cards{gap:var(--space-3);padding:var(--space-3) var(--space-1) var(--space-1);grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));grid-auto-flow:row}.upgrade-dock .draft-card{--spread:0px}.draft-flourish{z-index:40;pointer-events:none;position:fixed;inset:0}.draft-ghost{animation:ghost-dismiss .32s var(--ease) calc(var(--i,0) * 40ms) both;position:fixed}.draft-ghost.chosen{z-index:1;animation:ghost-chosen .78s var(--ease) both}.draft-ghost.chosen:before{border-radius:var(--radius);box-shadow:0 0 0 2px var(--accent);clip-path:none;animation:ghost-burst .52s var(--ease) both;background:0 0;inset:-4px}.draft-ghost .upgrade-medallion,.draft-ghost .typed-last,.draft-ghost .next-letter:after{animation:none}@keyframes ghost-dismiss{to{opacity:0;transform:translateY(48px)scale(.94)}}@keyframes ghost-chosen{0%{transform:translateY(-8px)}30%{transform:translateY(-16px)scale(1.06)}60%{opacity:1}to{opacity:0;transform:translateY(-96px)scale(.8)}}@keyframes ghost-burst{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.22,1.14)}}[data-reduced-effects=true] .draft-flourish{display:none}@media (prefers-reduced-motion:reduce){.draft-flourish{display:none}}.controls-dialog{width:min(900px,100vw - 32px)}.controls-guide{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.control-group .section-label{margin-top:0}.control-group ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.control-group li{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);padding-bottom:var(--space-2);color:var(--dim);border-bottom:1px solid var(--edge-dim);flex-wrap:wrap;display:flex}.control-group li>span:first-child{flex:12em;min-width:0}.control-group .keys,.control-group .keys>span{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.control-group .keys{max-width:100%;margin-left:auto}.keycap{min-width:26px;height:22px;padding:0 var(--space-1);white-space:nowrap;place-items:center;display:inline-grid}.keycap.wide{min-width:52px}.through{font-size:var(--size-xs);color:var(--dim)}.example{font-size:var(--size-m);color:var(--ink)}.howto-dialog{width:min(1040px,100vw - 32px)}.how-to-play{gap:var(--space-4) 0;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.how-step{align-content:start;gap:var(--space-2);padding:0 var(--space-3);display:grid}.how-step+.how-step{border-left:1px solid var(--edge-dim)}.how-step h3{font-size:var(--size-m);color:var(--ink);margin:0;font-weight:400;line-height:1.5}.how-step p{color:var(--dim);margin:0}.intro-optout{align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-2);font-size:var(--size-xs);color:var(--dim);display:flex}.intro-optout small{font-size:var(--size-xs);color:var(--faint);display:block}.lesson-visual{place-content:center;align-items:center;gap:var(--space-2);height:74px;padding:0 var(--space-2);margin-bottom:var(--space-2);background:var(--well);border-radius:var(--radius-s);flex-wrap:wrap;display:flex;position:relative;overflow:hidden}.how-step .lesson-visual{height:96px;margin:0}.mini-foe{padding:var(--space-1) var(--space-2);font-size:var(--size-m);color:var(--ink);background:var(--bg);border:1px solid var(--edge);position:relative}.mini-foe b{color:var(--accent);font-weight:400}.mini-foe.locked{border-color:var(--accent);animation:3s infinite lock-release}.mini-foe.target{animation:3s infinite target-hit}.mini-foe.typing span{color:var(--ink);animation:3.2s infinite type-in}.mini-hero{background:var(--dim);width:14px;height:22px;box-shadow:0 -6px 0 -2px var(--ink), inset 0 -6px var(--edge);animation:3.2s infinite hero-dash}.lesson-visual .keycap.pressed{animation:3s infinite key-press}.mini-command{font-size:var(--size-m);color:var(--faint);display:flex}.mini-command span{animation:3s infinite type-in}.mini-pause{padding:var(--space-1) var(--space-2);font-size:var(--size-m);color:var(--ink);border:1px solid var(--danger);animation:3s infinite pause-show}.how-step .visual-cancel{place-content:center;gap:var(--space-3) var(--space-2);padding-top:var(--space-3);grid-template-columns:auto auto;grid-template-areas:"decoy goal""key key";display:grid}.how-step .visual-cancel .mini-foe.locked{grid-area:decoy}.how-step .visual-cancel .mini-foe.target{grid-area:goal}.how-step .visual-cancel .through{grid-area:key;justify-self:center}@keyframes type-in{0%,8%{color:var(--ink)}12%,78%{color:var(--accent)}90%,to{color:var(--ink)}}@keyframes hero-dash{0%,55%{transform:translate(-40px)}70%,85%{transform:translate(0)}to{transform:translate(-40px)}}@keyframes lock-release{0%,30%{border-color:var(--accent);opacity:1}40%,to{border-color:var(--edge);opacity:.55}}@keyframes key-press{0%,25%{transform:none}32%{filter:brightness(1.2);transform:translateY(2px)}42%,to{transform:none}}@keyframes target-hit{0%,55%{border-color:var(--edge);transform:none}62%{border-color:var(--accent);transform:scale(1.12)}75%,to{opacity:.2;transform:scale(.8)}}@keyframes pause-show{0%,30%{opacity:0}40%,90%{opacity:1}to{opacity:0}}.key-short{display:none}@media (width<=760px){.controls-guide{grid-template-columns:1fr}}@media (width<=600px){.dungeon-dialog{padding:var(--space-4)!important}.dungeon-dialog>header{margin-bottom:var(--space-3);padding-bottom:var(--space-2)}.dungeon-dialog>header h2{font-size:var(--size-m)}.pause-dialog>header h2,.dungeon-dialog.draft-dialog>header h2{font-size:var(--size-l)}.key-short{display:inline}.key-long{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.settings-row input[type=range]{width:100px}.stat-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.result-hero{grid-template-columns:1fr}.result-time{align-items:baseline;column-gap:var(--space-3);grid-template-columns:auto auto}.result-time small,.result-time b{grid-column:1/-1}.how-to-play{grid-template-columns:1fr}.how-step{padding:0}.how-step+.how-step{padding-top:var(--space-4);border-left:0;border-top:1px solid var(--edge-dim)}}@media (width<=420px){:is(.settings-row:has(select),.settings-row:has(input[type=range])){grid-template-columns:minmax(0,1fr) auto;display:grid}:is(.settings-row:has(select)>span,.settings-row:has(input[type=range])>span){grid-column:1/-1}.settings-row select{grid-column:1/-1;width:100%;max-width:none}.settings-row input[type=range]{width:100%}}.scene-title{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100svh;min-height:0;display:grid;overflow:hidden}.scene-title .scene-shade{background:linear-gradient(90deg,color-mix(in srgb,var(--n-06) 98%,transparent) 0%,color-mix(in srgb,var(--n-06) 96%,transparent) 35%,color-mix(in srgb,var(--n-06) 78%,transparent) 46%,color-mix(in srgb,var(--n-06) 12%,transparent) 57%,transparent 66%),linear-gradient(0deg,color-mix(in srgb,var(--n-06) 65%,transparent),transparent 18%)}.title-nav,.title-footer{z-index:3;align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-1) max(var(--space-5),var(--safe-right)) var(--space-1) max(var(--space-5),var(--safe-left));font-size:var(--size-s);color:var(--dim);background:var(--well);line-height:1.6;display:flex;position:relative}.title-nav{padding-top:calc(var(--space-1) + var(--safe-top));border-bottom:1px solid var(--edge-dim);grid-row:1}.title-footer{min-height:48px;padding-bottom:calc(var(--space-1) + var(--safe-bottom));border-top:1px solid var(--edge-dim);flex-wrap:wrap;grid-row:3}.title-footer>span:first-child{margin-right:auto}.title-record{align-items:center;gap:var(--space-4);min-width:0;display:inline-flex}.title-footer strong{margin-left:var(--space-2);color:var(--ink);font-weight:400}.title-wallet{align-items:center;gap:var(--space-2);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;display:inline-flex}.title-wallet .coin-icon{width:16px;height:16px}.title-nav-actions{align-items:center;gap:var(--space-4);min-width:0;margin-left:auto;display:flex}.title-nav .quiet,.title-footer .quiet{align-items:center;gap:var(--space-2);min-width:0;min-height:44px;padding:0 var(--space-1);font-size:var(--size-s);color:var(--dim);text-decoration:none;display:inline-flex;border-width:0!important}.title-nav .quiet:is(:hover,:focus-visible),.title-footer .quiet:is(:hover,:focus-visible){color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.title-nav .account-link{text-align:left;max-width:220px}.title-nav .account-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.beta-label{color:var(--dim);font-size:var(--size-s);flex:none;line-height:1.6}.scene-title .title-menu{z-index:2;justify-content:safe center;justify-self:start;gap:var(--space-5);width:min(480px,40vw);min-height:0;margin-left:max(var(--space-5),6vw);padding:var(--space-4) var(--space-2);scroll-padding-block:var(--space-3);flex-direction:column;grid-area:2/1;display:flex;position:relative;overflow:hidden auto}.scene-title .title-menu>*{flex-shrink:0}.title-brand>p{font-size:var(--size-m);color:var(--dim);margin:0;line-height:1.6}.title-actions{gap:var(--space-5);width:100%;display:grid}.title-actions .start-button{isolation:isolate;min-height:96px;padding:var(--space-4) var(--space-5);text-align:left;align-items:center;display:flex;position:relative}.title-actions .start-button .start-text{z-index:1;gap:var(--space-2);min-width:0;font-size:var(--size-xl);overflow-wrap:anywhere;line-height:1.25;display:grid;position:relative}.title-actions .start-button .start-text small{font-size:var(--size-m);line-height:1.4}.title-actions .glyph{flex:none;width:20px;height:20px}.destination-text{gap:var(--space-1);min-width:0;display:grid}.title-modes{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.title-modes .key{align-items:center;gap:var(--space-3);min-width:0;min-height:64px;padding:var(--space-3);font-size:var(--size-m);text-align:left;color:var(--cap-ink);line-height:1.5;text-decoration:none;display:flex}.scene-title .title-modes .key small.destination-detail{font-size:var(--size-xs);color:var(--dim);line-height:1.5}.scene-title .title-modes .key:is(:hover,:focus-visible) .glyph{color:var(--accent)}.title-more{gap:var(--space-1) var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--edge-dim);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.title-more .quiet{align-items:center;gap:var(--space-3);min-width:0;min-height:44px;padding:0 var(--space-1);font-size:var(--size-m);text-align:left;color:var(--ink);line-height:1.4;text-decoration:none;display:flex;border-width:0!important}.title-more .glyph{box-sizing:content-box;width:16px;height:16px;padding:var(--space-1);color:var(--dim);background:var(--well);border:1px solid var(--edge-dim)}.title-more .quiet:is(:hover,:focus-visible){color:var(--ink)}.title-more .quiet:is(:hover,:focus-visible) .destination-label{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.title-more .quiet:is(:hover,:focus-visible) .glyph{color:var(--accent);border-color:var(--accent-deep)}.title-cast{display:none}@media (width>=901px) and (height>=521px){.scene-title .title-cast{z-index:1;pointer-events:none;display:block;position:absolute;inset:0}.title-cast .title-actor{min-width:44px;min-height:44px;box-shadow:none;pointer-events:auto;touch-action:manipulation;padding:0;position:absolute;background:0 0!important;border:0!important}.title-cast .title-actor:before,.title-cast .title-actor:after{display:none}.title-actor .showcase-plate{translate:-50% var(--space-2);justify-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);visibility:hidden;pointer-events:none;display:grid;position:absolute;top:100%;left:50%}.title-actor:is(:hover,:focus-visible) .showcase-plate{visibility:visible}.showcase-plate>strong{font-size:var(--size-m);color:var(--ink);white-space:nowrap;font-weight:400;line-height:1.4}}.title-menu h1.title-logo{--logo:clamp(32px,3.4vw,48px);font-size:var(--logo);letter-spacing:-1px;color:var(--mark-bone);text-shadow:3px 3px #000;-webkit-text-fill-color:currentColor;-webkit-text-stroke:3px #05070b;paint-order:stroke fill;filter:none;background:0 0;margin:0 0 12px;font-weight:400;line-height:1.2;animation:none}.title-menu h1.title-logo>span{margin:10px 0 0 calc(var(--logo) * 1.625 - 1px);letter-spacing:8px;color:color-mix(in srgb,var(--mark-bone) 72%,transparent);text-shadow:2px 2px #000;-webkit-text-fill-color:currentColor;font-size:10px;line-height:1.6;display:block}.title-menu h1.title-logo>.title-mark{vertical-align:-.0125em;width:1.15em;height:1.15em;margin-right:.35em;display:inline-block}@media (width<=700px){.title-menu h1.title-logo>span{letter-spacing:4px}}@media (width<=600px),(height<=760px){.title-menu h1.title-logo{--logo:30px}}@media (height<=520px) and (width>=520px){.title-menu h1.title-logo{--logo:22px}.title-menu h1.title-logo>span{font-size:8px}}@media (height<=520px) and (width>=600px){.title-menu h1.title-logo>span{letter-spacing:3px}}@media (height<=760px){.title-brand>p{display:none}}@media (height<=700px),(width<=480px){.scene-title .title-modes .key small.destination-detail{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.title-modes .key{min-height:56px}}@media (width<=900px){.scene-title .scene-shade{background:color-mix(in srgb,var(--n-06) 81%,transparent)}.scene-title .title-menu{width:calc(100% - var(--space-6));justify-self:center;max-width:480px;margin:0}.title-nav,.title-footer{padding-right:max(var(--space-4),var(--safe-right));padding-left:max(var(--space-4),var(--safe-left))}}@media (width<=760px){.title-nav .beta-label{display:none}}@media (width<=600px){.title-nav{gap:var(--space-2);padding-right:max(var(--space-3),var(--safe-right));padding-left:max(var(--space-3),var(--safe-left))}.title-nav-actions{gap:var(--space-2)}.title-nav .account-link{max-width:40vw}.title-nav .profile-picture{--profile-picture-size:32px}.title-footer{justify-content:center;gap:var(--space-1) var(--space-4)}.title-footer>.title-record{margin-right:0}.title-footer .title-best{display:none}.scene-title .title-menu{gap:var(--space-4);width:calc(100% - var(--space-5))}.title-actions{gap:var(--space-4)}.title-modes{gap:var(--space-2)}.title-actions .start-button{min-height:80px;padding:var(--space-3) var(--space-4)}}@media (width<=480px){.title-modes{grid-template-columns:minmax(0,1fr)}.title-more{column-gap:var(--space-2)}.title-more .glyph{background:0 0;border:0;padding:0}.title-more .quiet{gap:var(--space-2)}}@media (width<=360px){.title-more{column-gap:var(--space-2)}.title-more .quiet{gap:var(--space-2);font-size:var(--size-s);padding-inline:0}.title-footer{column-gap:var(--space-3)}.title-footer .quiet{padding-inline:0}}@media (height<=520px) and (width>=520px){.scene-title .scene-shade{background:color-mix(in srgb,var(--n-06) 81%,transparent)}.scene-title .title-menu{align-content:start;align-items:start;gap:var(--space-5);width:calc(100% - var(--space-6));max-width:850px;padding-block:var(--space-2);grid-template-columns:minmax(max-content,.6fr) minmax(280px,1.4fr);justify-self:center;margin:0;display:grid}.title-actions{gap:var(--space-2);max-width:520px}.title-modes{gap:var(--space-2)}.title-modes .key{min-height:48px;padding-block:var(--space-2)}.title-actions .start-button{min-height:64px;padding:var(--space-2) var(--space-4)}.title-modes .key{padding-inline:var(--space-3)}.title-more{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.title-footer{min-height:40px}}@media (height<=520px) and (width>=520px) and (width<=640px){.scene-title .title-menu{column-gap:var(--space-4)}.title-modes{grid-template-columns:minmax(0,1fr)}}.page-fallback{max-width:48rem;color:var(--ink);margin:auto;padding:clamp(20px,5vw,64px);font-size:16px;line-height:1.8}.page-fallback a{color:var(--dim)}.page-fallback nav{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (width<=600px) and (height<=700px){.scene-title .title-menu{gap:var(--space-2);padding-block:var(--space-1)}.title-menu h1.title-logo{margin-bottom:var(--space-1)}.scene-title .title-actions{gap:var(--space-2)}.scene-title .start-button{min-height:64px;padding-block:var(--space-2)}.scene-title .title-modes>*{min-height:44px;padding-block:var(--space-2)}.scene-title .title-more{row-gap:0;padding-top:0}.scene-title .title-more>*{min-height:44px}.scene-title .title-actions .glyph{width:16px;height:16px}}@media (height<=520px) and (width>=520px){.scene-title .title-menu{padding-block:var(--space-1)}.scene-title .title-more{row-gap:0;padding-top:0}.scene-title .title-more>*{min-height:44px}.scene-title .start-button{min-height:56px;padding-block:var(--space-1)}}.title-nav,.title-footer,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){--crenel:8px;z-index:3;background:var(--well);position:relative}.title-nav,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){border-bottom:2px solid var(--edge);margin-bottom:var(--crenel)}.title-footer{border-top:2px solid var(--edge)}.title-nav,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){height:calc(54px + var(--safe-top));flex-wrap:nowrap}@media (width<=480px){.screen-bar:not(.phase-racing *,.duel-screen.fighting *) .screen-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=360px){.screen-bar .screen-actions>:not(button){display:none}}.title-nav,.title-footer,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){padding-left:max(var(--space-5), var(--safe-left));padding-right:max(var(--space-5), var(--safe-right))}.screen-bar:not(.phase-racing *,.duel-screen.fighting *){width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}:is(.race-screen,.practice-screen):not(.phase-racing,.fighting){padding-top:0}:is(.title-nav,.title-footer,.screen-bar:not(.phase-racing *,.duel-screen.fighting *)):after{content:"";height:var(--crenel);background:var(--edge);pointer-events:none;position:absolute;left:0;right:0;-webkit-mask:linear-gradient(90deg,#000 50%,#0000 0) 6px 0/24px 100% repeat-x;mask:linear-gradient(90deg,#000 50%,#0000 0) 6px 0/24px 100% repeat-x}:is(.title-nav,.screen-bar:not(.phase-racing *,.duel-screen.fighting *)):after{top:100%}.title-footer:after{bottom:100%}.title-wallet,.title-best,.beta-label{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-3);border:2px solid var(--edge-dim);background:var(--n-06);box-shadow:inset 0 2px 0 var(--n-02);white-space:nowrap;display:inline-flex}.beta-label{min-height:24px;padding:0 var(--space-2);font-size:var(--size-xs);color:var(--accent);border-color:var(--accent-deep)}.title-best strong{margin-left:0}:is(.title-nav,.title-footer) .bar-key{--d:6px;box-sizing:border-box;min-height:44px;padding:var(--space-1) var(--space-3);font-size:var(--size-s);color:var(--cap-ink);white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}:is(.title-nav,.title-footer) .bar-key:is(:hover,:focus-visible){color:var(--cap-ink);text-decoration:none}@media (width<=600px){.title-nav,.title-footer,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){padding-left:max(var(--space-3), var(--safe-left));padding-right:max(var(--space-3), var(--safe-right))}.title-nav .bar-key{padding:var(--space-1) var(--space-2);font-size:var(--size-xs)}.title-nav .account-link{max-width:34vw}.title-footer{justify-content:center;gap:var(--space-1);flex-wrap:nowrap}.title-footer .title-domain{display:none}.title-footer .bar-key{padding:var(--space-1);font-size:var(--size-xs)}.title-wallet,.title-best{min-height:28px;padding:0 var(--space-2)}}@media (width<=360px){.title-footer{flex-wrap:wrap}.title-nav .account-link:has(.profile-picture) .account-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.title-wallet{padding:0 var(--space-1)}}@media (height<=520px) and (orientation:landscape){.title-nav,.title-footer,.screen-bar:not(.phase-racing *,.duel-screen.fighting *){--crenel:5px}}.scene-endless,.scene-tutorial{height:100svh;min-height:550px;overflow:hidden}.scene-endless .scene-shade{background:linear-gradient(color-mix(in srgb, var(--bg) 17%, transparent), transparent 24%, transparent 78%, color-mix(in srgb, var(--bg) 31%, transparent))}.scene-tutorial .scene-shade{background:linear-gradient(color-mix(in srgb, var(--bg) 17%, transparent), transparent 30%, color-mix(in srgb, var(--bg) 19%, transparent))}.run-hud{z-index:8;justify-content:space-between;align-items:flex-start;gap:var(--space-4);pointer-events:none;display:flex;position:absolute;top:20px;left:24px;right:24px}.run-hud .hud-plate{padding:var(--space-2) var(--space-3);color:var(--ink)}.vitals.hud-plate{align-items:center;gap:var(--space-1) var(--space-3);width:336px;font-size:var(--size-xs);grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);display:grid}.hero-portrait{grid-row:1/3;align-self:center}.portrait-tile{background:color-mix(in srgb, var(--hero-cloth) 62%, black);border:2px solid var(--hero-trim);border-radius:var(--radius-s);place-items:center;width:48px;height:48px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff3}.portrait-tile .glyph{width:26px;height:26px;color:var(--hero-trim)}.portrait-tile img{object-fit:cover;transform-origin:50% 12%;filter:brightness(.88)saturate(.92);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.9)}.hero-identity{align-items:center;gap:var(--space-1);min-width:0;display:flex}.hero-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink);overflow:hidden}.level-badge{padding:var(--space-1) var(--space-1) 2px;font-size:var(--size-xs);color:var(--key-ink);background:var(--accent);box-shadow:0 2px 0 var(--accent-deep);border-radius:4px;flex:none;font-weight:400;line-height:1}.vitals-bars{gap:var(--space-1);min-width:0;display:grid}.vitals .health-row,.vitals .resource-row{align-items:center;gap:var(--space-2);font-size:var(--size-xs);grid-template-columns:44px minmax(0,1fr) 64px;display:grid}.vitals .health-row>span,.vitals .resource-row>span{color:var(--dim);white-space:nowrap}.hearts{gap:2px var(--space-1);flex-wrap:wrap;min-width:0;display:flex}.hearts i{background:var(--edge-dim);clip-path:polygon(25% 0,50% 22%,75% 0,100% 22%,100% 55%,50% 100%,0 55%,0 22%);width:13px;height:12px;display:block}.hearts i.filled{background:var(--danger)}.hearts .hearts-count{color:var(--ink);font-variant-numeric:tabular-nums;display:none}.gold-count{justify-self:end;align-items:center;gap:var(--space-1);font-size:var(--size-xs);color:var(--gold);white-space:nowrap;font-weight:400;display:inline-flex}.gold-count .coin-icon{width:12px;height:12px}.vitals .resource-row>small{font-size:var(--size-xs);color:var(--faint);white-space:nowrap;font-variant-numeric:tabular-nums;justify-self:end}.resource-row meter,.resource-row progress{appearance:none;background:var(--edge-dim);border:0;border-radius:4px;width:100%;height:8px;overflow:hidden}.resource-row meter::-webkit-meter-bar{background:var(--edge-dim);border:0;border-radius:4px}.resource-row progress::-webkit-progress-bar{background:var(--edge-dim);border:0;border-radius:4px}.mana-row meter::-webkit-meter-optimum-value{background:var(--mana)}.mana-row meter::-webkit-meter-suboptimum-value{background:var(--mana)}.mana-row meter::-webkit-meter-even-less-good-value{background:var(--mana)}.mana-row meter::-moz-meter-bar{background:var(--mana)}.shield-row meter::-webkit-meter-optimum-value{background:var(--shield)}.shield-row meter::-webkit-meter-suboptimum-value{background:var(--shield)}.shield-row meter::-webkit-meter-even-less-good-value{background:var(--shield)}.shield-row meter::-moz-meter-bar{background:var(--shield)}.xp-row progress::-webkit-progress-value{background:var(--heal)}.xp-row progress::-moz-progress-bar{background:var(--heal)}.combat-metrics.hud-plate{min-width:300px;max-width:380px}.hud-topline{align-items:center;gap:var(--space-2);font-size:var(--size-xs);display:flex}.hud-topline>span:not(.wave-chip){color:var(--ink)}.hud-topline strong{font-size:var(--size-m);color:var(--ink);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-weight:400}.pause-button{width:28px;height:28px;font-size:var(--size-xs);pointer-events:auto;flex:none;line-height:1;padding:0!important}.metric-values{gap:var(--space-3);margin-top:var(--space-2);font-size:var(--size-xs);color:var(--faint);display:flex}.metric-values b{margin-bottom:var(--space-1);font-size:var(--size-m);color:var(--ink);font-variant-numeric:tabular-nums;font-weight:400;display:block}.metric-values .streak-hot b{color:var(--accent)}.metric-values .streak-hot .glyph{display:none}.wave-chip{padding:var(--space-1) var(--space-1) 2px;font-size:var(--size-xs);white-space:nowrap;color:var(--dim);background:var(--bg-2);border:1px solid var(--edge);border-radius:4px;flex:none;line-height:1}.wave-build{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-deep)}.wave-surge{color:var(--ink);background:color-mix(in srgb, var(--danger) 55%, black);border-color:var(--danger);animation:1s steps(2,end) infinite surge-blink}.wave-breather{color:var(--heal);background:color-mix(in srgb, var(--heal) 10%, var(--bg));border-color:color-mix(in srgb, var(--heal) 30%, var(--bg))}@keyframes surge-blink{50%{background:color-mix(in srgb, var(--danger) 35%, black)}}.contract-chip{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--edge-dim);font-size:var(--size-xs);color:var(--faint);line-height:1.6;display:block}.contract-line{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.contract-goal{min-width:0;color:var(--ink)}.contract-percent{color:var(--dim);font-variant-numeric:tabular-nums;flex:none}.contract-reward{margin-top:var(--space-1);display:block}.contract-bar{height:5px;margin-top:var(--space-1);background:var(--edge-dim);border-radius:3px;display:block;overflow:hidden}.contract-bar:before{content:"";width:calc(var(--p) * 1%);background:var(--accent);border-radius:3px;height:100%;display:block}.contract-chip.done .contract-goal,.contract-chip.done .contract-percent{color:var(--heal)}.contract-chip.done .contract-bar:before{background:var(--heal)}.boss-hud{z-index:9;gap:var(--space-1);width:30%;max-width:400px;padding:var(--space-2) var(--space-3);text-align:center;background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit), 0 4px 0 #0009;display:grid;position:absolute;top:20px;left:50%;transform:translate(-50%)}.boss-hud strong{font-size:var(--size-m);color:var(--ink);font-weight:400}.boss-hud progress{appearance:none;background:var(--edge-dim);border:0;border-radius:4px;width:100%;height:8px;overflow:hidden}.boss-hud progress::-webkit-progress-bar{background:var(--edge-dim);border-radius:4px}.boss-hud progress::-webkit-progress-value{background:var(--danger)}.boss-hud progress::-moz-progress-bar{background:var(--danger)}.boss-hud small{font-size:var(--size-xs);color:var(--accent)}.boss-banner{z-index:6;width:max-content;max-width:calc(100% - 32px);padding:var(--space-2) var(--space-6);text-align:center;pointer-events:none;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--danger) 14%, var(--well)) 18%, color-mix(in srgb, var(--danger) 14%, var(--well)) 82%, transparent);-webkit-text-stroke:3px var(--well);paint-order:stroke fill;gap:2px;animation:2.4s ease-out forwards banner-strip;display:grid;position:fixed;top:104px;left:50%;transform:translate(-50%)}.boss-banner strong{font-size:var(--size-l);color:var(--ink);text-shadow:3px 3px #000;font-weight:400}.boss-banner span{font-size:var(--size-xs);color:var(--ink)}.boss-banner.banner-surge{opacity:.92;background:linear-gradient(90deg, transparent, color-mix(in srgb, color-mix(in srgb, var(--danger) 14%, var(--well)) 75%, transparent) 20%, color-mix(in srgb, color-mix(in srgb, var(--danger) 14%, var(--well)) 75%, transparent) 80%, transparent)}@keyframes banner-strip{0%{opacity:0;translate:0 -8px}8%{opacity:1;translate:0}75%{opacity:1}to{opacity:0}}.low-hp-warning{z-index:4;pointer-events:none;box-shadow:inset 0 0 80px 12px color-mix(in srgb, var(--danger) 40%, transparent);position:absolute;inset:0}.low-hp-warning:after{content:"";opacity:0;box-shadow:inset 0 0 120px 24px color-mix(in srgb, var(--danger) 50%, transparent);will-change:opacity;animation:1s ease-in-out infinite low-hp;position:absolute;inset:0}.low-hp-warning span{padding:var(--space-1) var(--space-2);font-size:var(--size-xs);color:var(--ink);white-space:nowrap;background:color-mix(in srgb, var(--danger) 25%, var(--well));border:2px solid var(--danger);border-radius:var(--radius-s);position:absolute;top:104px;left:50%;transform:translate(-50%)}@keyframes low-hp{50%{opacity:1}}.target-labels{z-index:5;pointer-events:none;contain:layout paint;position:absolute;inset:0}.target-labels .typing-bar,.target-labels .caps-chip,.party-labels .party-name{will-change:transform;top:0;left:0}.target-labels .enemy-label{justify-content:flex-end;align-items:center;gap:var(--space-1);text-align:center;white-space:nowrap;will-change:transform;flex-direction:column;display:flex;position:absolute}.target-labels .enemy-label strong{color:var(--ink);background:color-mix(in srgb, var(--well) 70%, transparent);paint-order:stroke fill;text-shadow:2px 2px 0 var(--well);align-items:center;padding:1px 6px;font-weight:400;line-height:1.2;display:inline-flex}.target-labels .enemy-label.object-label strong{color:var(--accent)}.target-labels .enemy-label .typed{color:var(--heal)}.target-labels .enemy-label .rest{color:var(--faint)}.target-labels .enemy-label .current-letter{color:var(--accent);-webkit-text-decoration:underline 3px var(--accent);-webkit-text-decoration:underline 3px var(--accent);text-decoration:underline 3px var(--accent);text-underline-offset:4px}.target-labels .enemy-label .next-words{font-size:var(--size-xs);color:var(--faint);-webkit-text-stroke:3px var(--well);paint-order:stroke fill;word-spacing:.5em;line-height:1.2}.target-labels .enemy-label.dimmed strong,.target-labels .enemy-label.auto-marked strong{color:var(--dim)}.target-labels .enemy-label.locked{z-index:3}.target-labels .enemy-label.locked strong{background:color-mix(in srgb, var(--accent-soft) 94%, transparent);outline:2px solid var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--well) 80%, transparent), 0 0 14px color-mix(in srgb, var(--ink) 53%, transparent);padding:2px 8px;animation:1.1s ease-in-out infinite lock-pulse}.target-labels .enemy-label.locked:after{content:"";border:7px solid #0000;border-top-color:var(--accent);width:0;height:0;filter:drop-shadow(0 2px 0 var(--well));margin-top:-2px}@keyframes lock-pulse{50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--well) 80%, transparent), 0 0 22px color-mix(in srgb, var(--ink) 80%, transparent)}}.target-labels .enemy-label.suggested{z-index:2}.target-labels .enemy-label.suggested strong{background:color-mix(in srgb, var(--bg) 80%, transparent);outline:2px dashed var(--ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--well) 70%, transparent);padding:2px 8px}.target-labels .enemy-label.wasted strong{-webkit-text-decoration:line-through 2px color-mix(in srgb, var(--ink) 55%, transparent);-webkit-text-decoration:line-through 2px color-mix(in srgb, var(--ink) 55%, transparent);text-decoration:line-through 2px color-mix(in srgb, var(--ink) 55%, transparent)}.target-labels .enemy-label :is(.affix-tag,.auto-tag,.full-tag){font-size:var(--size-xs);-webkit-text-stroke:3px var(--well);paint-order:stroke fill;white-space:nowrap}.target-labels .enemy-label .affix-tag{color:var(--affix,var(--ink));order:-1}.target-labels .enemy-label .auto-tag{color:var(--ink);order:-1}.target-labels .enemy-label .full-tag{color:var(--dim)}.target-labels .enemy-label.leaving{pointer-events:none;animation:.22s ease-in forwards label-leave}.target-labels .enemy-label.leaving:has(.full-tag){animation-duration:.7s}.target-labels .enemy-label.leaving strong{color:var(--dim)}@keyframes label-leave{to{opacity:0;translate:0 -6px}}.target-labels .enemy-label .label-word{animation:.35s ease-out word-swap}@keyframes word-swap{0%{filter:brightness(2.2);transform:scale(1.35)}to{filter:none;transform:scale(1)}}.target-labels .enemy-label .trait-tag{font-size:var(--size-xs);color:var(--ink);-webkit-text-decoration:underline dashed 2px var(--faint);-webkit-text-decoration:underline dashed 2px var(--faint);text-decoration:underline dashed 2px var(--faint);text-underline-offset:3px;-webkit-text-stroke:3px var(--well);paint-order:stroke fill;white-space:nowrap;order:-1}.target-labels .enemy-label .label-word.shift-word{animation:.4s ease-out shift-in}.target-labels .enemy-label.shift-soon .label-word{color:var(--dim);animation:.35s ease-in-out infinite shift-wobble}.target-labels .enemy-label.shift-soon .trait-tag{color:var(--accent)}.target-labels .enemy-label .boss-tag{font-size:var(--size-xs);color:var(--boss-accent,var(--ink));-webkit-text-stroke:3px var(--well);paint-order:stroke fill;white-space:nowrap;order:-1}.target-labels .enemy-label.boss-label{z-index:3}.target-labels .boss-pointer{z-index:3;border:3px solid var(--boss-accent,var(--ink));background:color-mix(in srgb, var(--bg) 78%, transparent);color:var(--boss-accent,var(--ink));font-size:var(--size-xs);white-space:nowrap;pointer-events:none;padding:2px 8px;position:absolute;top:0;left:0}.target-labels .enemy-label.boss-label strong{border:3px solid var(--boss-accent,var(--ink));background:color-mix(in srgb, var(--bg) 78%, transparent);clip-path:polygon(0 6px,6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%);padding:2px 8px;font-size:16px}@keyframes shift-in{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:none}}@keyframes shift-wobble{50%{filter:blur(.6px);translate:0 -2px}}.target-labels .enemy-label .target-leader{z-index:-1;width:var(--lead-length);opacity:.35;height:2px;transform:rotate(var(--lead-angle));transform-origin:0;background:linear-gradient(90deg, color-mix(in srgb, var(--ink) 80%, transparent), color-mix(in srgb, var(--ink) 20%, transparent));box-shadow:0 1px 0 var(--well);pointer-events:none;display:block;position:absolute;top:100%;left:50%}.life-drops{filter:drop-shadow(1px 1px 0 var(--well));order:-1;align-items:center;gap:2px;display:inline-flex}.life-drop{width:12px;height:15px;image-rendering:pixelated}.life-drops b{font-size:var(--size-xs);color:var(--danger);-webkit-text-stroke:3px var(--well);paint-order:stroke fill;margin-left:3px;font-weight:400}[data-graphics=low] .target-labels .enemy-label strong{box-shadow:none;text-shadow:none;animation:none}[data-graphics=low] :is(.target-labels .enemy-label,.typing-bar,.skill-dock .skill-card){filter:none}.typing-bar{z-index:6;min-width:220px;max-width:90%;padding:var(--space-2) var(--space-3);text-align:center;white-space:nowrap;color:var(--faint);pointer-events:none;background:color-mix(in srgb, var(--bg) 92%, transparent);border:2px solid var(--edge);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit), 0 3px 0 #0009;line-height:1;position:absolute;top:56%;left:50%;transform:translate(-50%)}.typing-bar.active{color:var(--ink);border-color:var(--dim)}.typing-bar .typed{color:var(--ink);-webkit-text-decoration:underline 2px var(--ink);-webkit-text-decoration:underline 2px var(--ink);text-decoration:underline 2px var(--ink);text-underline-offset:5px}.typing-bar .rest{color:var(--faint)}.typing-bar .rest.suggestion{color:var(--dim)}.typing-bar .placeholder{font-size:var(--read-m);color:var(--dim)}.typing-bar .lock-hint{margin-left:var(--space-2);font-size:var(--size-xs);color:var(--dim);text-transform:uppercase}.typing-bar.skill-mode .typed{color:var(--accent);-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.typing-bar.skill-mode .placeholder{color:var(--ink)}.typing-bar .refused{max-width:276px;font-size:var(--read-m);white-space:normal;line-height:1.4;display:inline-block}.typing-bar.invalid .refused{color:var(--danger);-webkit-text-decoration:underline 2px var(--danger);-webkit-text-decoration:underline 2px var(--danger);text-decoration:underline 2px var(--danger);text-underline-offset:4px}.caps-chip{z-index:6;padding:2px var(--space-2);font-size:var(--size-xs);color:var(--key-ink);white-space:nowrap;background:var(--accent);border-radius:var(--radius-s);pointer-events:none;position:absolute;transform:translate(-50%)}.skill-dock,.phase-racing .party-skill-dock{padding:var(--space-2);background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit), 0 3px 0 #0009}.skill-dock{z-index:9;align-items:stretch;gap:var(--space-2);flex-wrap:wrap;width:min(720px,100% - 32px);display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.skill-dock.casting{border-color:var(--accent);box-shadow:inset 0 1px 0 var(--edge-lit), 0 3px 0 #0009, 0 0 0 1px var(--accent-deep)}.skill-dock>.coop-draft-ready{flex-basis:100%;order:-1;margin:0}.skill-dock :is(.skill-mode-hint,.run-notice),.skill-guide p{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;min-height:0;margin:0;position:absolute;overflow:hidden}.run-notice{margin:var(--space-2) 0 0;text-align:center;min-height:16px;color:var(--ink);text-shadow:1px 1px #000;line-height:1.5}.skill-guide{justify-content:center;align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;flex:none;margin:0;display:flex}.skill-guide button.skill-toggle{min-height:0;padding:var(--space-1) var(--space-3);font-size:var(--size-m);flex:none;line-height:1.2;display:block}.skill-guide-copy{min-width:0}.skill-guide-copy>strong{font-size:var(--size-xs);color:var(--dim);text-transform:uppercase;white-space:nowrap;font-weight:400;line-height:1.2;display:block}.casting .skill-guide-copy>strong{color:var(--accent)}.skill-cards{align-items:stretch;gap:var(--space-2);flex:1;min-width:0;display:flex}.skill-group{gap:var(--space-1);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-width:0;margin:0;display:grid}.skill-group-hero{flex:3}.skill-group-shared{padding-left:var(--space-2);border-left:2px solid var(--edge-dim);flex:1}.skill-dock .skill-card,.party-skill-command{--slot:var(--shield);align-items:center;gap:var(--space-1);min-width:0;padding:var(--space-1) var(--space-2) var(--space-2);text-align:left;color:var(--ink);background:var(--bg-2);border:2px solid var(--edge);border-radius:var(--radius-s);box-shadow:inset 0 1px 0 var(--edge-lit);cursor:default;grid-template-columns:auto minmax(0,1fr);display:grid;position:relative;overflow:hidden}.skill-dock .skill-card.skill-s2{--slot:var(--accent)}.skill-dock .skill-card.skill-s3{--slot:var(--gold)}.skill-dock .skill-card.skill-mend{--slot:var(--heal)}.skill-card .skill-face{place-items:center;width:18px;height:18px;display:grid}.party-skill-command>.glyph{width:18px;height:18px;color:var(--slot);filter:drop-shadow(1px 1px #000)}.skill-card .skill-face .skill-icon,.party-skill-command>.skill-icon{border-radius:2px;width:18px;height:18px;display:block;box-shadow:0 0 0 1px #000}.skill-dock .skill-card.ready .skill-face{animation:.25s ease-out skill-ready}@keyframes skill-ready{0%{filter:brightness(1.35)}to{filter:none}}.skill-command{min-width:0;display:block}.skill-dock .skill-word,.party-skill-command strong{padding:2px var(--space-1);font-size:var(--read-m);white-space:nowrap;text-overflow:ellipsis;color:var(--ink);background:var(--well);border-radius:3px;margin:0;line-height:1.25;display:block;overflow:hidden;box-shadow:inset 0 1px #000}.skill-dock .skill-word b,.party-skill-command .typed{color:var(--accent)}.skill-dock.casting .skill-word .current-letter{-webkit-text-decoration:underline 2px var(--accent);-webkit-text-decoration:underline 2px var(--accent);text-decoration:underline 2px var(--accent);text-underline-offset:2px}.skill-dock .skill-card small,.party-skill-command small{margin:var(--space-1) 0 0;font-size:var(--size-xs);color:var(--dim);line-height:1.3;display:block}.skill-dock .skill-card .skill-meta{justify-content:space-between;gap:var(--space-1);white-space:nowrap;display:flex;overflow:hidden}.skill-dock .skill-card .skill-cost{color:var(--mana)}.skill-dock .skill-card .skill-wait{text-overflow:ellipsis;overflow:hidden}.skill-dock .skill-card.cooling .skill-wait{color:var(--ink)}.skill-dock .skill-card.poor .skill-wait{color:var(--mana)}.skill-dock .skill-card .skill-reach{color:var(--dim);align-items:center;gap:2px;display:inline-flex}.skill-dock .skill-card .skill-reach .glyph{color:currentColor;width:9px;height:9px}.skill-card .skill-marks{top:var(--space-1);align-items:center;gap:var(--space-1);display:flex;position:absolute;right:5px}.skill-card .skill-level{gap:2px;margin:0;display:flex}.skill-card .skill-level i{background:var(--edge-dim);border-radius:1px;width:4px;height:4px;display:block}.skill-card .skill-level i.on{background:var(--dim)}.skill-card :is(.skill-tier,.skill-evo){padding:2px var(--space-1) 1px;font-size:var(--size-xs);color:var(--ink);background:var(--edge);border-radius:3px;font-style:normal;line-height:1}.skill-card .skill-charge{background:var(--well);height:4px;position:absolute;bottom:0;left:0;right:0}.skill-card .skill-charge:before{content:"";transform:scaleX(var(--charge));transform-origin:0;background:var(--slot);transition:transform var(--t-move) ease-out;position:absolute;inset:0}.skill-card.cooling .skill-charge{background:var(--edge-dim)}.skill-card.cooling .skill-charge:before{background:var(--dim)}.skill-card.cooling .skill-charge:after{content:"";background:repeating-linear-gradient(90deg, transparent 0 calc(100% / var(--steps) - 2px), var(--well) calc(100% / var(--steps) - 2px) calc(100% / var(--steps)));position:absolute;inset:0}.skill-card.poor .skill-charge:before{background:var(--mana)}.skill-card.full .skill-charge:before{background:var(--edge-lit)}.skill-dock .skill-card.ready{border-color:var(--edge-lit)}.skill-dock .skill-card.unavailable{background:var(--bg);border-color:var(--edge-dim);box-shadow:none;animation:none}.skill-dock .skill-card.unavailable .skill-word{color:var(--faint)}.skill-dock .skill-card.unavailable .skill-face{opacity:.5}.skill-dock.casting .skill-card.ready.matching{border-color:var(--accent)}.skill-dock.casting .skill-card.offmatch{border-color:var(--edge-dim);filter:saturate(.45)}.skill-dock.casting .skill-card.offmatch .skill-face{opacity:.45}.skill-cast-flare{pointer-events:none;background:radial-gradient(circle at 18% 50%, color-mix(in srgb, var(--slot) 90%, white) 0, color-mix(in srgb, var(--slot) 55%, transparent) 30%, transparent 70%);mix-blend-mode:screen;animation:.55s cubic-bezier(.2,.8,.3,1) both slot-flare;position:absolute;inset:0}.skill-cast-flare:before{content:"";border:2px solid color-mix(in srgb, var(--slot) 80%, white);border-radius:2px;width:14px;height:14px;margin:-8px 0 0 -8px;animation:.5s ease-out both slot-ring;position:absolute;top:50%;left:18%}.skill-mend .skill-cast-flare:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--heal) 50%, white) 0 1.5px, transparent 2px) 10% 100% / 22px 18px;animation:.9s ease-out both slot-motes;position:absolute;inset:0}.skill-card:has(.skill-cast-flare){animation:.3s cubic-bezier(.2,1.6,.4,1) slot-pop}@keyframes slot-flare{0%{opacity:0}12%{opacity:1}to{opacity:0}}@keyframes slot-ring{to{opacity:0;transform:scale(9)}}@keyframes slot-motes{0%{opacity:1;background-position:10% 100%}to{opacity:0;background-position:10% -40%}}@keyframes slot-pop{40%{transform:scale(1.06)}}.party-skill-dock>div:not(.skill-guide){gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.party-skill-dock>div:has(>.party-skill-command:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}.party-skill-dock>.skill-guide{gap:var(--space-2);margin:0 0 var(--space-1);flex-direction:row}.party-skill-command{padding-bottom:var(--space-1)}.casting .party-skill-command{background:var(--bg-2)}.build-strip{z-index:4;left:var(--space-4);gap:var(--space-1);pointer-events:none;flex-flow:column wrap;width:200px;display:flex;position:absolute;bottom:20px}.equipment-badge{align-items:center;gap:var(--space-2);max-width:190px;padding:var(--space-1) var(--space-2);font-size:var(--size-xs);color:var(--ink);background:color-mix(in srgb, var(--bg) 90%, transparent);border:1px solid var(--edge);border-radius:var(--radius-s);pointer-events:auto;display:flex}.equipment-badge>span:not(.weapon-icon){flex-direction:column;gap:2px;min-width:0;display:flex}.equipment-badge>span>small{margin:0;display:block}.equipment-badge small{font-size:var(--size-xs);color:var(--faint)}.equipment-badge>.glyph{width:14px;height:14px;color:var(--dim);flex-shrink:0}.style-badge{background:color-mix(in srgb, var(--accent-soft) 92%, transparent);border-color:var(--accent-deep)}.style-badge>.glyph{color:var(--accent)}.relic-badge>.glyph{color:var(--arcane)}.weapon-icon{background:var(--well);border-radius:4px;place-items:center;width:20px;height:20px;display:grid;position:relative;overflow:hidden}.weapon-icon:before{content:"";width:100%;height:calc(var(--charge) * 100%);background:color-mix(in srgb, var(--weapon) 40%, transparent);position:absolute;bottom:0;left:0}.weapon-icon .glyph{width:12px;height:12px;color:var(--weapon);position:relative}.weapon-badge.evolved{border-color:var(--accent-deep)}.status-tag{text-transform:uppercase}.tag-style{color:var(--accent)}.tag-ready,.tag-shield{color:var(--heal)}.tag-active{color:var(--mana)}.tag-rank{color:var(--arcane)}.tag-expired,.tag-used,.tag-recharge{color:var(--faint)}.equipment-badge .level-pips{margin-top:2px}.equipment-badge .level-pips i{background:var(--edge-dim);border-radius:1px;width:4px;height:4px}.equipment-badge .level-pips i.on{background:var(--accent)}.boss-overdrive{z-index:10;width:min(850px,100% - 30px);padding:var(--space-3) var(--space-5);position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.boss-overdrive header{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-2);font-size:var(--size-xs);color:var(--dim);flex-wrap:wrap;display:flex}.boss-overdrive header strong{color:var(--dim);text-transform:uppercase;font-weight:400}.boss-overdrive .boss-passage .ghost{color:var(--ink)}.barricade-status{align-items:center;gap:var(--space-1);font-size:var(--size-xs);color:var(--ink);text-transform:uppercase;display:flex}.barricade-status .glyph{width:16px;height:16px}.barricade-status progress{appearance:none;background:var(--edge-dim);border:0;border-radius:4px;width:64px;min-width:30px;height:8px;overflow:hidden}.barricade-status progress::-webkit-progress-bar{background:var(--edge-dim);border-radius:4px}.barricade-status progress::-webkit-progress-value{background:var(--dim)}.barricade-status progress::-moz-progress-bar{background:var(--dim)}.barricade-status.breached{color:var(--danger)}.boss-counter{align-items:center;gap:var(--space-1) var(--space-3);margin:var(--space-1) 0;padding:var(--space-2) var(--space-2);font-size:var(--size-xs);background:var(--well);border:1px solid var(--edge);border-radius:var(--radius-s);flex-wrap:wrap;line-height:1.4;display:flex}.boss-counter>span{flex:180px}.boss-counter .counter-word{font-size:var(--size-l);color:var(--ink);font-weight:400}.boss-counter .typed{color:var(--heal)}.boss-counter.focused{outline:2px solid var(--accent)}.boss-counter .counter-phase{color:var(--dim);flex-basis:100%}.lesson-panel{z-index:5;width:340px;padding:var(--space-3) var(--space-4);position:fixed;top:136px;left:24px}.lesson-panel>header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.lesson-panel>header span{font-size:var(--size-xs);color:var(--dim);text-transform:uppercase;white-space:nowrap}.lesson-panel>header button{text-align:center;flex:0 auto;min-width:0;margin-left:auto;line-height:1.5}.lesson-panel button{padding:var(--space-2);font-size:var(--size-m)}.lesson-panel h2{margin-bottom:var(--space-2);font-size:var(--size-m);line-height:1.8}.lesson-panel p{margin-bottom:var(--space-2);color:var(--ink);line-height:1.6}.lesson-panel p:not(.read){font-size:var(--size-m)}.lesson-panel .lesson-visual{height:58px}@media (width>=701px) and (width<=1023px){.lesson-panel{width:max(200px,50% - 182px)}}.combat-feedback{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.combat-feedback .caption-anchor{will-change:transform;position:absolute;top:0;left:0}.combat-feedback .combat-caption{justify-content:center;align-items:center;gap:var(--space-1);white-space:nowrap;font-size:var(--size-m);color:var(--ink);-webkit-text-stroke:4px var(--well);paint-order:stroke fill;text-shadow:2px 2px 0 var(--well);line-height:1;animation:1.1s cubic-bezier(.2,.9,.3,1) both caption-rise;display:inline-flex;transform:translate(-50%)}.combat-caption :is(.glyph,.coin-icon){width:14px;height:14px;filter:drop-shadow(1px 0 0 var(--well)) drop-shadow(-1px 0 0 var(--well)) drop-shadow(0 1px 0 var(--well)) drop-shadow(0 -1px 0 var(--well));flex:none}.combat-caption.tone-gold{color:var(--gold)}.combat-caption.tone-heal{color:var(--heal)}.combat-caption.tone-heal .glyph{color:var(--danger)}.combat-caption.tone-mana,.combat-caption.tone-mana .glyph{color:var(--mana)}.combat-caption.tone-shield,.combat-caption.tone-shield .glyph{color:var(--shield)}.combat-caption.tone-hurt{color:color-mix(in srgb, var(--danger) 70%, var(--ink))}.combat-caption.tone-hurt .glyph{color:var(--danger)}.combat-caption.tone-level{color:var(--accent)}.combat-caption.tone-level .glyph{color:var(--ink)}.combat-caption.tone-finisher{font-size:var(--size-l);color:var(--accent)}.combat-caption.tone-finisher .glyph{width:18px;height:18px;color:var(--ink)}@keyframes caption-rise{0%{opacity:0;translate:0 8px;scale:.7}15%{opacity:1;translate:0;scale:1.15}30%{scale:1}75%{opacity:1}to{opacity:0;translate:0 -22px}}.combat-keyboard{z-index:12;width:min(620px,100% - 24px);padding:var(--space-2);background:color-mix(in srgb, var(--bg) 91%, transparent);position:absolute;bottom:112px;left:50%;transform:translate(-50%)}.combat-keyboard>button{width:100%;margin-top:var(--space-1);padding:var(--space-2);font-size:var(--size-m)}.run-input-owner{width:1px;height:1px;position:absolute;bottom:0;left:50%;overflow:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.run-contract{margin:var(--space-1) 0;font-size:var(--size-m);color:var(--dim)}.run-contract.done{color:var(--heal)}.ranked-status{align-items:center;gap:var(--space-1);margin:var(--space-1) 0;font-size:var(--size-m);color:var(--dim);display:flex}.ranked-status .glyph{flex:none;width:14px;height:14px}.ranked-status.ranked-verified{color:var(--heal)}.public-rooms{align-items:center;gap:var(--space-2);padding:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.public-rooms h2{flex-basis:100%}.public-rooms ul{width:100%;padding:0;list-style:none}.public-rooms li{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.public-rooms label{min-width:0}.public-rooms select{max-width:100%}.ghost-label,.ghost-delta{z-index:5;max-width:36rem;margin:var(--space-2) auto;padding:var(--space-2) var(--space-3);background:var(--well);position:relative}.coop-support{right:var(--space-3);z-index:5;padding:var(--space-1);background:var(--well);position:absolute;top:150px}.hero-role{color:var(--accent)}.sprint-word.golden{border-color:var(--gold);color:color-mix(in srgb, var(--gold) 50%, var(--ink))}.sprint-word.golden>small{margin-right:var(--space-1);color:var(--gold)}@media (width>=601px) and (width<=1100px){.run-hud{gap:var(--space-2);left:12px;right:12px}.vitals.hud-plate{width:min(336px,44%);min-width:0}.combat-metrics.hud-plate{width:min(380px,48%);min-width:0}.hud-topline,.hero-identity{flex-wrap:wrap}}@media (width>=701px) and (width<=1180px) and (height>=521px){.skill-dock{left:232px;right:var(--space-4);width:auto;max-width:720px;margin-inline:auto;transform:none}}@media (width>=701px) and (width<=900px) and (height>=521px){.skill-guide{justify-content:flex-start;gap:var(--space-2);flex-direction:row;flex-basis:100%}}@media (width>=601px) and (width<=1100px){.boss-hud{width:min(380px,48%);top:168px;left:auto;right:12px;transform:none}}@media (width>=601px) and (width<=900px){.boss-banner{top:248px}}@media (width<=700px){.lesson-panel{top:152px;left:var(--space-3);width:calc(100% - 24px);padding:var(--space-3)}.lesson-panel>header{margin-bottom:var(--space-1)}.lesson-panel h2,.lesson-panel p{margin-bottom:var(--space-2)}.lesson-panel button{padding:var(--space-2) var(--space-3)}.lesson-panel .lesson-visual{display:none}.build-strip{left:var(--space-2);right:var(--space-2);flex-wrap:nowrap;width:auto;max-height:27px;top:113px;bottom:auto}}@media (width<=700px),(height<=520px){.build-strip{pointer-events:auto;scrollbar-width:thin;flex-direction:row;overflow-x:auto}.equipment-badge{padding:var(--space-1) var(--space-1);flex-shrink:0}.equipment-badge small{white-space:nowrap}}@media (width<=600px){.scene-endless{min-height:0}.run-hud{top:var(--space-2);left:var(--space-2);right:var(--space-2);gap:var(--space-2);padding:var(--space-1);background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);display:grid}.run-hud .hud-plate{width:auto;min-width:0;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.run-hud .vitals{gap:2px var(--space-1);grid-template-columns:24px minmax(0,1fr)}.run-hud .portrait-tile{border-width:1px;border-radius:4px;width:24px;height:24px}.run-hud .portrait-tile .glyph{width:14px;height:14px}.run-hud .hero-name,.run-hud .gold-count,.run-hud .shield-row{display:none}.run-hud .level-badge{padding:2px var(--space-1) 1px;box-shadow:0 1px 0 var(--accent-deep)}.run-hud .vitals-bars{gap:2px}.run-hud .vitals .health-row,.run-hud .vitals .resource-row{gap:var(--space-1);grid-template-columns:20px minmax(0,1fr) auto}.run-hud .hearts{align-items:center;gap:var(--space-1);flex-wrap:nowrap}.run-hud .hearts i:not(:first-child){display:none}.run-hud .hearts i:first-child{background:var(--danger)}.run-hud .hearts .hearts-count{display:inline}.run-hud .hud-topline{gap:var(--space-1);justify-content:flex-end}.run-hud .hud-topline>span:not(.wave-chip){display:none}.run-hud .metric-values{gap:var(--space-1);justify-content:flex-end}.run-hud .metric-values>span:not(:first-child){display:none}.run-hud .contract-chip{margin-top:var(--space-1);padding-top:var(--space-1)}.run-hud :is(.contract-percent,.contract-reward){display:none}.run-hud .contract-bar{height:3px;margin-top:2px}.boss-hud{width:70%;padding:var(--space-1)}.boss-hud strong,.barricade-status{font-size:var(--size-xs)}.barricade-status span{max-width:135px}.boss-overdrive{padding:var(--space-3);bottom:12px}.boss-passage{font-size:var(--read-l)!important}.skill-dock{width:calc(100% - 16px);padding:var(--space-1);gap:var(--space-1);bottom:10px}.skill-guide{justify-content:flex-start;gap:var(--space-2);flex-direction:row;flex-basis:100%}.skill-guide button.skill-toggle{padding:var(--space-1) var(--space-2)}.skill-cards,.skill-group{gap:var(--space-1)}.skill-group-shared{padding-left:var(--space-1)}.skill-dock .skill-card,.party-skill-command{padding:var(--space-1) var(--space-1) var(--space-2);grid-template-columns:minmax(0,1fr);gap:2px}.skill-card :is(.skill-face,.skill-marks),.skill-dock .skill-card .skill-reach{display:none}.skill-dock .skill-word,.party-skill-command strong{font-size:var(--size-m);white-space:normal;overflow-wrap:anywhere;text-overflow:clip;padding:2px}}@media (width<=600px) and (height>=521px){.boss-hud{top:268px}.boss-banner{top:212px}.lesson-panel{max-height:164px;top:128px;overflow-y:auto}}@media (height<=520px){.scene-tutorial{min-height:0}.lesson-panel{top:160px;bottom:84px;left:auto;right:var(--space-3);width:228px;overflow-y:auto}.lesson-panel>header{gap:var(--space-1);flex-wrap:wrap}.lesson-panel button{padding:var(--space-1) var(--space-2)}}@media (height<=520px) and (width>=520px){.run-hud{flex-wrap:nowrap}.run-hud>.hud-plate{flex:1 1 0}.vitals.hud-plate{width:auto}.combat-metrics.hud-plate{min-width:0}.skill-dock{width:min(720px,100% - 20px);padding:var(--space-1)}.skill-guide button.skill-toggle{padding:var(--space-1) var(--space-2)}.skill-dock .skill-card,.party-skill-command{padding:var(--space-1) var(--space-1) var(--space-2)}.skill-dock .skill-word,.party-skill-command strong{padding:1px var(--space-1);font-size:var(--size-m)}.skill-card .skill-face,.skill-card .skill-face .skill-icon{width:14px;height:14px}.skill-dock .skill-card .skill-reach{display:none}.phase-racing .party-skill-dock{width:190px;padding:var(--space-2)}.phase-racing .party-skill-dock>div:not(.skill-guide){gap:var(--space-1);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (height<=520px) and (width>=600px){.scene-endless{min-height:0}.run-hud{top:var(--space-2)}.skill-dock{bottom:10px;left:auto;right:10px;transform:none}.boss-hud{top:160px;left:auto;right:var(--space-3);width:228px;padding:var(--space-1) var(--space-2);transform:none}.boss-hud strong{font-size:var(--size-xs)}.boss-banner{top:160px}.boss-overdrive{left:var(--space-3);right:250px;bottom:var(--space-3);width:auto;padding:var(--space-3);transform:none}.boss-passage{font-size:var(--read-l)!important}.combat-keyboard{left:var(--space-3);width:auto;right:250px;transform:none}.build-strip{top:76px;left:var(--space-3);flex-wrap:nowrap;width:auto;max-height:24px;bottom:auto;right:250px}}@media (height<=520px) and (width<=600px){.skill-guide{flex-direction:column;flex-basis:auto;justify-content:center}.lesson-panel{top:112px;bottom:84px;right:var(--space-2);width:calc(50% - 16px)}.boss-hud{top:112px;left:auto;right:var(--space-2);width:calc(50% - 16px);transform:none}.boss-banner{max-width:calc(50% - 16px);top:168px;left:75%}.boss-banner.banner-boss{top:112px;left:25%}}@media (prefers-reduced-motion:reduce){.target-labels .enemy-label.locked strong,.target-labels .enemy-label .label-word,.low-hp-warning:after,.skill-dock .skill-card.ready .skill-face{animation:none}.target-labels .enemy-label.leaving{opacity:.45;animation:none}.boss-banner{animation-timing-function:step-end}.skill-dock .skill-card,.skill-cast-flare,.skill-cast-flare:before,.skill-cast-flare:after{animation:none!important}.skill-card:has(.skill-cast-flare){animation:none!important}.skill-cast-flare{opacity:0}}[data-reduced-effects=true] :is(.skill-dock .skill-card.ready .skill-face),[data-reduced-effects=true] .low-hp-warning:after{animation:none}[data-reduced-effects=true] .target-labels .enemy-label.leaving{opacity:.45;animation:none}[data-reduced-effects=true] .boss-banner{animation-timing-function:step-end}@media (prefers-reduced-motion:reduce){.target-labels .enemy-label :is(.label-word.shift-word,.label-word){animation:none}}[data-reduced-effects=true] .target-labels .enemy-label .label-word.shift-word,[data-reduced-effects=true] .target-labels .enemy-label.shift-soon .label-word{animation:none}.run-radar{z-index:5;left:var(--space-4);pointer-events:none;width:148px;height:148px;margin:0;position:absolute;bottom:20px}.run-radar svg{width:100%;height:100%;display:block}.radar-disc{fill:color-mix(in srgb, var(--bg) 85%, transparent);stroke:var(--edge);stroke-width:1.5px}.radar-ring{fill:none;stroke:var(--edge-dim);stroke-width:1px}.radar-foe{fill:var(--danger);opacity:.7}.radar-boss{fill:var(--danger);stroke:var(--ink);stroke-width:1px}.radar-ally{stroke:var(--bg);stroke-width:1px}.radar-ally.offline{opacity:.35}.radar-ally.fallen{stroke:var(--danger);stroke-width:1.6px;animation:1.2s ease-in-out infinite radar-fallen}.radar-own{fill:var(--ink);stroke:var(--bg);stroke-width:1.2px}.radar-more{fill:var(--dim);text-anchor:middle;dominant-baseline:middle;font-size:8px}@keyframes radar-fallen{50%{opacity:.35}}@media (width>=701px) and (height>=521px){.run-radar~.build-strip{bottom:calc(20px + 148px + var(--space-3))}}@media (width<=700px) and (height>=521px){.run-radar{top:148px;bottom:auto;left:var(--space-2);width:84px;height:84px}}@media (height<=520px){.run-radar{display:none}}@media (width<=947px){.dungeon-app:has(.combat-keyboard) .run-radar{display:none}.dungeon-app:has(.combat-keyboard) .run-radar~.build-strip{bottom:20px}}@media (prefers-reduced-motion:reduce){.radar-ally.fallen{animation:none}}.dungeon-app[data-reduced-effects=true] .radar-ally.fallen{animation:none}.radar-objective{fill:var(--gold);stroke:var(--bg);stroke-width:1px}.radar-objective.done{fill:none;stroke:var(--gold);opacity:.5}@media (width<=600px),(height<=520px){.lesson-panel h2,.lesson-panel p:not(.read){font-size:var(--size-s);margin-bottom:var(--space-1);line-height:1.5}.lesson-panel .read{font-size:var(--read-m)}}@media (width<=600px) and (height>=521px){.lesson-panel{max-height:none;overflow:visible}}.equipment-badge .badge-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.build-strip{opacity:.72;width:232px;transition:opacity var(--t-fast);flex-flow:wrap;align-content:flex-end}.build-strip:hover,.build-strip:focus-within{opacity:1}.equipment-badge{gap:var(--space-1);max-width:none}.race-setup{align-items:center;gap:var(--space-3);flex-direction:column;flex:1;width:100%;min-height:0;padding-top:clamp(0px,4svh,40px);display:flex;overflow:auto}.race-setup>:is(.race-create-step,.race-join,.public-rooms){width:100%;max-width:480px;margin:0}.race-setup>:is(.race-create-step,.race-join){gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.race-setup>:is(.race-create-step,.race-join) :is(h2,p,label){margin:0}.race-create-step select{width:100%}.race-mode-detail{font-size:var(--size-xs);color:var(--dim);line-height:1.6;margin-top:calc(-1 * var(--space-2))!important}.race-room-summary{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) 0;border-block:1px solid var(--edge);font-size:var(--size-xs);color:var(--dim);flex-wrap:wrap;line-height:1.8;display:flex}.race-room-summary>button{min-height:44px;font-size:var(--size-xs);flex:none}.race-create-actions{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.race-create-actions>button,.race-join>.primary-action{min-height:44px;font-size:var(--size-m)}.race-create-step>.race-solo{min-height:44px;font-size:var(--size-xs);align-self:center}.race-join-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.race-join-head h2{font-size:var(--size-m);line-height:1.6}.race-join-head>button{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--size-xs)}.race-join p{font-size:var(--size-xs);color:var(--dim)}.room-options-dialog .race-fields,.duel-settings-dialog .race-fields{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}:is(.room-options-dialog,.duel-settings-dialog) label{min-width:0}:is(.room-options-dialog,.duel-settings-dialog) .race-wide{grid-column:1/-1}.duel-pack-settings{gap:var(--space-2);display:grid}.duel-pack-settings :is(h3,p){margin:0}.duel-pack-settings h3{font-size:var(--size-m);font-weight:400}@media (width<=600px){.race-setup{padding-top:var(--space-2)}.race-setup>:is(.race-create-step,.race-join){padding:var(--space-3)}.room-options-dialog .race-fields,.duel-settings-dialog .race-fields{grid-template-columns:minmax(0,1fr)}}@media (height<=520px) and (orientation:landscape){.race-setup{padding-top:0}.race-setup>:is(.race-create-step,.race-join){gap:var(--space-2);padding:var(--space-3)}.race-setup>.race-create-step{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;max-width:760px;display:grid}.race-create-step>:is(.race-mode-detail,.race-help){display:none}.race-create-step>.race-solo{grid-column:1/-1}}.bestiary-dialog{width:min(1040px,100vw - 24px)}.bestiary-views{margin:0 0 var(--space-1)}.bestiary-views button{font-size:var(--size-m)}.bestiary-filters{margin:0 0 var(--space-3)}.bestiary-grid{gap:var(--space-2);padding:2px 0 var(--space-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.bestiary-card{gap:var(--space-2);padding:var(--space-1);background:var(--bg-2);border:1px solid var(--edge-dim);border-radius:var(--radius-s);align-content:start;display:grid}.bestiary-portrait{aspect-ratio:1;border-radius:var(--radius-s);background:radial-gradient(circle at 50% 60%, var(--bg) 0%, var(--well) 75%);place-items:center;display:grid;position:relative;overflow:hidden}.bestiary-portrait img{object-fit:contain;width:92%;height:92%;filter:drop-shadow(0 4px 0 var(--n-02))}.bestiary-skeleton{border-radius:var(--radius-s);width:92%;height:92%}.bestiary-portrait>.glyph{width:40px;height:40px;color:var(--edge-lit)}.bestiary-role{padding:var(--space-1) var(--space-1) 2px;font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);background:var(--well);border-radius:var(--radius-s);line-height:1;position:absolute;top:6px;left:6px}.bestiary-card h3{font-size:var(--size-m);color:var(--ink);margin:2px 2px 0;font-weight:400;line-height:1.5}.bestiary-card footer{align-items:center;gap:var(--space-1) var(--space-3);font-size:var(--size-xs);color:var(--faint);flex-wrap:wrap;margin:0 2px 2px;display:flex}.threat-pips{gap:2px;margin:0 2px;display:flex}.threat-pips i{background:var(--edge-dim);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);width:8px;height:8px}.threat-pips i.on{background:var(--danger)}.mastery{font-size:var(--size-xs);color:var(--faint);margin:-2px 2px 0;display:block}.mastery-seen{color:var(--dim)}.mastery-understood,.mastery-mastered{color:var(--ink)}.bestiary-lore{margin:0 2px}.bestiary-lore>summary{padding:var(--space-1) 0;font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);cursor:pointer;list-style:none;display:inline-block}.bestiary-lore>summary::-webkit-details-marker{display:none}.bestiary-lore>summary:hover,.bestiary-lore[open]>summary{color:var(--ink);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.bestiary-lore p{margin:var(--space-1) 0 0;color:var(--dim)}@media (width<=600px){.bestiary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.chronicle-pages{gap:var(--space-2);margin:var(--space-2) 0 var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.chronicle-page{padding:var(--space-3);background:var(--bg-2);border:1px solid var(--edge-dim);border-radius:var(--radius-s)}.chronicle-page h3{margin:0 0 var(--space-2);font-size:var(--size-m);color:var(--ink);font-weight:400}.chronicle-page p,.chronicle-page blockquote{margin:0 0 var(--space-2);color:var(--dim)}.chronicle-page blockquote{color:var(--ink);font-style:italic}.chronicle-page.sealed{opacity:.6}.scene-armory{height:100svh;min-height:0;overflow:hidden}.scene-armory .scene-shade{background:linear-gradient(90deg,color-mix(in srgb,var(--well) 85%,transparent),color-mix(in srgb,var(--well) 30%,transparent) 30%,transparent 42%,transparent 58%,color-mix(in srgb,var(--well) 30%,transparent) 70%,color-mix(in srgb,var(--well) 85%,transparent))}.armory-screen{z-index:6;gap:var(--space-2);padding:0 var(--space-5) var(--space-5);pointer-events:none;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid;position:fixed;inset:0}.armory-screen button,.armory-screen nav,.armory,.armory-sidebar{pointer-events:auto}.armory-layout{gap:var(--space-4);grid-template-columns:minmax(300px,380px) minmax(0,1fr) minmax(300px,360px);min-height:0;display:grid}.armory,.armory-sidebar{gap:var(--space-3);min-width:0;min-height:0;padding:var(--space-4);background:var(--bg);border:2px solid var(--edge);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--edge-lit),0 4px 0 var(--well);flex-direction:column;display:flex;overflow:hidden}.armory{grid-column:1}.armory-sidebar{grid-column:3}.armory-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:none;min-width:0;display:flex}.armory-wallet{align-items:center;gap:var(--space-2);font-size:var(--size-xs);color:var(--gold);flex:none;display:inline-flex}.armory-wallet .coin-icon{width:14px;height:14px}.armory-heading{font-size:var(--size-m);color:var(--ink);margin:0;line-height:1.5}.armory-items{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--edge) transparent;flex:auto;min-height:0;margin:0;padding:2px;list-style:none;overflow-y:auto}.armory-items li+li{margin-top:var(--space-2)}.armory-item{align-items:center;gap:var(--space-3);text-align:left;width:100%;min-height:48px;font-size:var(--size-m);line-height:1.5;display:flex;padding:var(--space-1) var(--space-2)!important}.armory-item-name{overflow-wrap:break-word;min-width:0}.armory-item-state{align-items:center;gap:var(--space-1);font-size:var(--size-xs);flex:none;margin-left:auto;display:flex}.armory-item-state .coin-icon{width:12px;height:12px}.armory-items.hero-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;display:grid}.armory-items.hero-grid li+li{margin-top:0}.armory-item.hero-card{--o:0px;align-content:start;gap:var(--space-1);text-align:center;height:100%;min-height:0;color:var(--ink);transition:border-color var(--t-fast) var(--ease);grid-template-rows:auto auto;display:grid;position:relative;padding:var(--space-1) var(--space-1) var(--space-2)!important;background:var(--bg-2)!important;border-radius:var(--radius-s)!important;box-shadow:none!important;border:2px solid #0000!important}.armory-item.hero-card:before,.armory-item.hero-card:after{content:none}.armory-item.hero-card:hover{border-color:var(--edge-lit)!important}.armory-item.hero-card[aria-pressed=true]{border-color:var(--accent)!important}.hero-card-portrait{aspect-ratio:1;border-radius:var(--radius-s);background:var(--well);display:block;overflow:hidden}.hero-card-portrait img{object-fit:cover;filter:brightness(.88)saturate(.92);width:100%;height:100%;display:block}.hero-card.is-locked .hero-card-portrait img{filter:grayscale(.85)brightness(.7)}.hero-card>.hero-element{top:var(--space-2);left:var(--space-2);width:20px;height:20px;position:absolute}.hero-card>.hero-element .glyph{width:12px;height:12px}.hero-card .armory-item-name{font-size:var(--size-xs);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;line-height:1.5;overflow:hidden}.armory-item.hero-card .armory-item-state{color:var(--dim);justify-content:center;margin:0}.armory-item.hero-card .armory-item-state .glyph{width:10px;height:10px;color:var(--accent)}.hero-card:not(.is-equipped,.is-locked) .armory-item-state{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.armory-item.hero-card{container-type:inline-size}.armory-item.hero-card:is(.is-equipped,.is-locked) .armory-item-state{left:var(--space-2);right:var(--space-2);background:var(--well);border-radius:var(--radius-s);line-height:1.6;position:absolute;top:calc(100cqw - 1.6em)}.armory-item.hero-card.is-equipped .armory-item-state{color:var(--accent)}.hero-role-tags{gap:var(--space-1);flex-wrap:wrap;min-width:0;display:flex}.hero-role-tags>span{padding:var(--space-1) var(--space-2);font-size:var(--size-xs);color:var(--dim);background:var(--bg-2);border-radius:var(--radius-s);white-space:nowrap;line-height:1}.hero-element{width:26px;height:26px;color:var(--hero-tone,var(--accent));background:color-mix(in srgb,var(--hero-tone,var(--accent)) 16%,var(--well));border:1px solid color-mix(in srgb,var(--hero-tone,var(--accent)) 55%,var(--edge));border-radius:var(--radius-s);flex:none;place-items:center;display:inline-grid}.hero-element .glyph{width:15px;height:15px;color:inherit}.hero-element.named{gap:var(--space-2);width:auto;padding:0 var(--space-2);font-size:var(--size-xs);line-height:1;display:inline-flex}.armory-sidebar-scroll{align-content:start;gap:var(--space-4);min-height:0;padding-right:var(--space-1);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--edge) transparent;flex:auto;display:grid;overflow-y:auto}.armory-item-summary{gap:var(--space-2);min-width:0;display:grid}.armory-rarity{font-size:var(--size-xs);text-transform:uppercase;color:var(--faint)}.armory-item-summary strong{font-size:var(--size-l);color:var(--ink);font-weight:400;line-height:1.4}.armory-race{font-size:var(--size-xs);color:var(--dim)}.armory-hero-traits{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.armory-kit{color:var(--dim);margin:0}.armory-combat-kit{gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--edge-dim);display:grid}.armory-combat-kit h3{font-size:var(--size-m);color:var(--ink);margin:0;font-weight:400;line-height:1.5}.armory-combat-kit .section-label{margin:var(--space-2) 0 0}.armory-skill-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.armory-skill summary.key{align-items:center;gap:var(--space-2);text-align:left;grid-template-columns:24px minmax(0,1fr) auto;min-height:52px;list-style:none;display:grid;padding:var(--space-2)!important}.armory-skill summary::-webkit-details-marker{display:none}.armory-skill[open] summary.key{--o:6px}.armory-skill-icon{place-items:center;width:24px;height:24px;display:grid}.armory-skill-icon .skill-icon{border-radius:2px;width:24px;height:24px;display:block;box-shadow:0 0 0 1px #000}.armory-skill-title{gap:var(--space-1);min-width:0;display:grid}.armory-skill-title b{font-size:var(--size-m);font-weight:400;line-height:1.4}.armory-skill-cost{font-size:var(--size-xs);color:color-mix(in srgb,var(--mana) 70%,var(--ink));line-height:1.4}.armory-skill-tier{font-size:var(--size-xs);font-style:normal}.armory-skill-info{gap:var(--space-2);margin:0 var(--space-1) var(--space-1);padding:var(--space-3);background:var(--well);border-radius:0 0 var(--radius-s) var(--radius-s);display:grid}.armory-skill-info p{color:var(--ink);margin:0}.armory-skill-command kbd{font-size:var(--size-m)}.armory-skill-info .armory-skill-mastery{color:var(--dim)}.armory-kit-state{font-size:var(--size-xs);color:var(--dim);line-height:1.6}.armory-more summary{min-height:44px;font-size:var(--size-s);color:var(--dim);cursor:pointer;align-items:center;list-style:none;display:inline-grid}.armory-more summary::-webkit-details-marker{display:none}.armory-more summary:is(:hover,:focus-visible){color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.armory-note{color:var(--dim);margin:0}.armory-more p{margin:var(--space-3) 0 0;color:var(--dim)}.armory-detail{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--edge-dim);flex:none;display:grid}.armory-detail>button{min-height:44px;font-size:var(--size-m);padding:var(--space-2)!important}.armory-message{font-size:var(--size-xs)!important;color:var(--dim)!important;margin:0!important}.armory-message:empty{display:none}.armory-stage{pointer-events:none;grid-area:1/2;place-self:end center;margin-bottom:10svh}.armory-stage .keep-loading{animation:.2s ease-out .15s both keep-enter}.primary-action.not-ready{filter:grayscale(.7)brightness(.75)}@media (width>=761px) and (width<=1100px){.armory-layout{gap:var(--space-3);grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(260px,320px)}.armory,.armory-sidebar{padding:var(--space-3)}}@media (width<=760px){.armory-screen{padding:0 var(--space-4) var(--space-4)}.armory-layout{justify-content:flex-end;gap:var(--space-2);flex-direction:column;display:flex}.armory{padding:var(--space-3);gap:var(--space-2);flex:none}.armory-sidebar{max-height:44svh;padding:var(--space-3);gap:var(--space-2);flex:0 auto}.armory-items.hero-grid{padding-bottom:var(--space-1);grid-template-columns:none;grid-auto-columns:72px;grid-auto-flow:column;overflow:auto hidden}.armory:not(:has(.hero-grid)) .armory-items{max-height:30svh}.hero-card>.hero-element{top:var(--space-1);left:var(--space-1);width:16px;height:16px}.hero-card>.hero-element .glyph{width:10px;height:10px}.armory-sidebar-scroll{gap:var(--space-3)}.armory-item-summary strong{font-size:var(--size-m)}.armory-stage{margin:0;position:fixed;top:12svh;left:0;right:0}}@media (height<=520px) and (width>=520px){.armory-screen{padding:0 var(--space-2) var(--space-2);gap:var(--space-1)}.armory-layout{gap:var(--space-2);grid-template-columns:minmax(0,38%) minmax(0,1fr) minmax(0,38%)}.armory,.armory-sidebar{padding:var(--space-2);gap:var(--space-1)}.armory-rarity{display:none}.armory-items.hero-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.armory-detail{padding-top:var(--space-1);grid-template-columns:minmax(0,1fr) auto;align-items:center}.armory-detail>button{min-height:44px}.armory-message{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.armory-item.hero-card{transition:none}}.skill-tree{inset:max(16px, var(--safe-top)) max(16px, var(--safe-right)) max(16px, var(--safe-bottom)) max(16px, var(--safe-left));z-index:6;width:min(880px, calc(100vw - 32px - var(--safe-left) - var(--safe-right)));height:calc(100svh - 32px - var(--safe-top) - var(--safe-bottom));max-height:calc(100svh - 32px - var(--safe-top) - var(--safe-bottom));max-width:none;min-height:0;padding:var(--space-4);color:var(--ink);margin:auto;position:fixed;overflow:hidden}.skill-tree[open]{gap:var(--space-3);animation:dialog-in var(--t-move) var(--ease) both;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid}.skill-tree::backdrop{background:color-mix(in srgb, var(--n-02) 85%, transparent)}.skill-tree[open]::backdrop{animation:fade-in var(--t-move) var(--ease) both}@media (prefers-reduced-motion:reduce){.skill-tree[open]::backdrop{animation:none}}[data-reduced-effects=true] .skill-tree[open]::backdrop{animation:none}.tree-head{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-1) 0 var(--space-3);border-bottom:1px solid var(--edge);margin:0;display:flex}.tree-head h2{min-width:0;font-size:var(--size-l);color:var(--ink);margin:0;font-weight:400;line-height:1.6}.tree-summary{align-items:center;gap:var(--space-5);grid-template-columns:auto minmax(0,1fr);display:grid}.tree-wallet{align-items:center;gap:var(--space-1) var(--space-2);color:var(--ink);grid-template-columns:auto auto auto;display:grid}.tree-wallet .glyph{width:20px;height:20px;color:var(--ink);grid-row:1/3}.tree-wallet b{font-size:var(--size-l);font-weight:400;line-height:1.4}.tree-wallet span{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim)}.tree-wallet small{font-size:var(--size-xs);color:var(--dim);grid-column:2/4;line-height:1.6}.tree-wallet.has-ready small{color:var(--accent)}.tree-intro{color:var(--dim);margin:0}.tree-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;border-block:1px solid var(--edge-dim);min-width:0;min-height:0;padding:var(--space-2) 2px;overflow:hidden auto}.tree-grid{gap:var(--space-4) var(--space-4);min-height:0;padding:var(--space-2) var(--space-2) var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;align-content:start;display:grid}.tree-branch{padding-bottom:var(--space-1);text-align:center;font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--edge);grid-row:1;align-self:end}.tree-cell{display:grid;position:relative}.tree-cell.has-parent:before{content:"";border-left:2px solid var(--edge);width:0;height:18px;position:absolute;top:-18px;left:50%}.tree-cell:first-of-type{grid-column:2}.tree-node{z-index:1;gap:var(--space-1) var(--space-3);min-height:90px;font-size:var(--size-xs);text-align:left;grid-template-rows:auto auto;grid-template-columns:56px minmax(0,1fr);align-content:center;place-items:center start;line-height:1.5;display:grid;position:relative;padding:var(--space-3)!important}.tree-icon{background:color-mix(in srgb, var(--branch) 12%, var(--well));border-radius:var(--radius-s);width:56px;height:56px;color:var(--branch);grid-row:1/3;place-items:center;display:grid}.tree-icon .glyph{width:36px;height:36px}.tree-node-name{overflow-wrap:anywhere;min-width:0}.tree-node .level-pips{grid-area:2/2;justify-self:start;margin:0}.tree-node .level-pips i.on{background:var(--ink)}.tree-node .tree-cost{grid-area:2/2;justify-self:end}.tree-cost{align-items:center;gap:var(--space-1);padding:1px var(--space-2);font-size:var(--size-xs);color:var(--dim);background:var(--well);border-radius:var(--radius-s);display:inline-flex}.tree-cost .glyph{color:currentColor;width:10px;height:10px}.tree-node.learned .tree-icon{background:color-mix(in srgb, var(--branch) 30%, var(--well))}.tree-node.state-available .tree-cost{color:var(--key-ink);background:var(--accent)}.tree-node.state-available{animation:1.6s ease-in-out infinite tree-ready}.tree-node.state-poor .tree-cost{color:color-mix(in srgb, var(--danger) 60%, var(--ink))}.tree-node.state-locked .tree-icon{opacity:.6}.tree-node.state-locked .tree-cost{color:var(--dim);background:0 0;padding:0}.tree-node.state-maxed .tree-cost{color:var(--dim);background:0 0}button.tree-node[aria-pressed=true]{--kf:var(--key-mod-face);--kw:var(--key-mod-wall);--cap-ink:var(--ink);--cap-surface:var(--edge);--o:0px;outline:2px solid var(--accent);outline-offset:2px}.tree-tip{clip-path:inset(50%);white-space:nowrap;pointer-events:none;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tree-detail{align-items:center;gap:var(--space-2) var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.tree-detail-icon{background:var(--well);border-radius:var(--radius-s);width:48px;height:48px;color:var(--branch);place-items:center;display:grid}.tree-detail-icon .glyph{width:24px;height:24px}.tree-detail strong{font-size:var(--size-m);font-weight:400;line-height:1.7}.tree-detail strong+small{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);display:block}.tree-detail p{margin:var(--space-1) 0 0;color:var(--dim)}.tree-detail>button{min-width:150px;min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--size-m);justify-content:center;align-items:center;gap:var(--space-2);display:inline-flex}.tree-detail>button .glyph{width:16px;height:16px}.tree-detail .armory-message,.tree-detail .tree-footnote{grid-column:1/-1}.tree-detail .tree-lock{color:color-mix(in srgb, var(--danger) 60%, var(--ink))}.tree-footnote{align-items:center;gap:var(--space-3);font-size:var(--size-xs);color:var(--faint);flex-wrap:wrap;margin:0;display:flex}.tree-footnote button{font-size:var(--size-xs);padding:0}@keyframes tree-ready{50%{filter:brightness(1.3)}}@media (prefers-reduced-motion:reduce){.tree-node.state-available{animation:none}}@media (width<=760px){.skill-tree{width:calc(100vw - 16px);height:calc(100svh - 16px);max-height:calc(100svh - 16px);padding:var(--space-3);inset:8px}.skill-tree[open]{gap:var(--space-2)}.tree-head h2{font-size:var(--size-m)}.tree-summary{gap:var(--space-2);grid-template-columns:1fr}.tree-wallet{gap:var(--space-2);display:flex}.tree-wallet b{font-size:var(--size-m)}.tree-wallet small{text-align:right;max-width:150px;margin-left:auto}.tree-intro{display:none}.tree-scroll{padding:var(--space-2) 0}.tree-grid{gap:var(--space-3) var(--space-1);padding:var(--space-2) 2px var(--space-3)}.tree-node{gap:var(--space-1);text-align:center;grid-template-rows:auto auto auto auto;grid-template-columns:minmax(0,1fr);justify-items:center;min-height:112px;padding:var(--space-2) var(--space-1)!important}.tree-icon{grid-row:auto;width:44px;height:44px}.tree-icon .glyph{width:30px;height:30px}.tree-node-name{align-items:center;min-height:2.8em;display:grid}.tree-node .level-pips,.tree-node .tree-cost{grid-area:auto/1;justify-self:center}.tree-node .tree-cost{padding:1px var(--space-1)}.tree-detail{gap:var(--space-1) var(--space-3);grid-template-columns:minmax(0,1fr) auto}.tree-detail-icon{display:none}.tree-detail>button{min-width:112px;max-width:130px;font-size:var(--size-xs);grid-area:1/2}}@media (height<=520px){.skill-tree[open]{gap:var(--space-1)}.tree-intro,.tree-wallet small,.tree-detail-icon{display:none}.tree-summary{grid-template-columns:1fr}.tree-wallet{gap:var(--space-2);display:flex}.tree-wallet b{font-size:var(--size-m)}.tree-wallet .glyph{width:14px;height:14px}.tree-detail{grid-template-columns:minmax(0,1fr) auto}.tree-detail>button{grid-area:1/2;min-width:110px;min-height:44px}}.run-embers{align-items:center;gap:var(--space-3);margin:var(--space-3) 0 0;font-size:var(--size-m);color:var(--accent);display:flex}.run-embers .glyph{width:16px;height:16px}.run-embers small{color:var(--dim);font-size:var(--size-xs)}.damage-response{z-index:6;pointer-events:none;position:fixed;inset:0}.damage-response:before{content:"";background:radial-gradient(ellipse at center, transparent 38%, color-mix(in srgb, var(--danger) 53%, transparent));animation:.55s ease-out both damage-edge;position:absolute;inset:0}.damage-response>span{font-size:var(--size-xl);color:color-mix(in srgb, var(--danger) 55%, var(--ink));text-shadow:3px 3px #000,-1px -1px #000;animation:.55s ease-out both damage-number;position:absolute;top:43%;left:53%}@keyframes damage-edge{0%{opacity:1}to{opacity:0}}@keyframes damage-number{0%{opacity:1;translate:0 8px}to{opacity:0;translate:0 -28px}}.dungeon-app[data-reduced-effects=true] .damage-response:before{display:none}.dungeon-app[data-reduced-effects=true] .damage-response>span{font-size:var(--size-l)}.typing-bar.typo-a{animation:.32s steps(8,end) both typo-shake-a}.typing-bar.typo-b{animation:.32s steps(8,end) both typo-shake-b}.target-labels.typo-a .enemy-label.locked strong,.target-labels.typo-a .enemy-label .current-letter{animation:.32s steps(6,end) both typo-label-a}.target-labels.typo-b .enemy-label.locked strong,.target-labels.typo-b .enemy-label .current-letter{animation:.32s steps(6,end) both typo-label-b}@keyframes typo-shake-a{0%{transform:translate(-50%)}15%{color:var(--danger);filter:drop-shadow(0 0 6px var(--danger));transform:translate(calc(-50% - 7px))}35%{transform:translate(calc(6px - 50%))}55%{color:color-mix(in srgb, var(--danger) 70%, var(--ink));transform:translate(calc(-50% - 4px))}75%{transform:translate(calc(2px - 50%))}to{transform:translate(-50%)}}@keyframes typo-shake-b{0%{transform:translate(-50%)}15%{color:var(--danger);filter:drop-shadow(0 0 6px var(--danger));transform:translate(calc(-50% - 7px))}35%{transform:translate(calc(6px - 50%))}55%{color:color-mix(in srgb, var(--danger) 70%, var(--ink));transform:translate(calc(-50% - 4px))}75%{transform:translate(calc(2px - 50%))}to{transform:translate(-50%)}}@keyframes typo-label-a{0%,60%{color:var(--danger);translate:3px}30%{translate:-3px}to{translate:0}}@keyframes typo-label-b{0%,60%{color:var(--danger);translate:3px}30%{translate:-3px}to{translate:0}}:is(.history-dialog,.about-dialog,.feedback-dialog,.account-dialog) .dialog-body .read{color:var(--dim);font-size:var(--read-m)!important;line-height:1.6!important}:is(.about-dialog,.account-dialog,.feedback-dialog) .dialog-body>p.read:not(.muted){color:var(--ink)}.history-dialog{width:min(760px,100vw - 24px)}.stats-dialog{width:min(820px,100vw - 28px);height:min(86svh,820px);min-height:min(580px,100svh - 28px);max-height:calc(100svh - 28px)}.stats-dialog>.dialog-body{flex-direction:column;min-height:0;display:flex;overflow:hidden}.history-dialog .stats-empty{margin:var(--space-2) 0}.stats-summary{flex:none}.stats-summary>.section-label:first-child{margin-top:0}.stats-summary>p{margin:var(--space-3) 0 0}.stats-history{flex-direction:column;flex:auto;min-height:0;display:flex}.stats-history>.section-label{margin:var(--space-4) 0 var(--space-2);flex:none}.stats-history>.text-tabs{flex-wrap:nowrap;flex:none;overflow-x:auto}.stats-history>.text-tabs button{white-space:nowrap;flex:none}.record-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.record-tile{gap:var(--space-1);padding:var(--space-3);background:var(--bg-2);border:1px solid var(--edge-dim);border-radius:var(--radius-s);display:grid}.record-tile small{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim)}.record-tile b{font-size:var(--size-m);color:var(--ink);font-weight:400}.record-tile span{font-size:var(--size-xs);color:var(--accent)}.history-list{margin:var(--space-2) 0 0;align-content:start;gap:0;display:grid}.stats-dialog .history-list{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.history-dialog .history-list article{gap:var(--space-2);padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--edge-dim);background:0 0;margin:0;display:grid}.history-list header,.history-list article>div{align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;display:flex}.history-list header{font-size:var(--size-m)}.history-list header strong{color:var(--ink);font-weight:400}.history-list header span{font-size:var(--size-xs);text-transform:uppercase;color:var(--dim)}.history-list header em{font-style:normal;font-size:var(--size-xs);text-transform:uppercase;color:var(--dim);margin-left:auto}.history-list article>div{font-size:var(--size-xs);color:var(--dim)}.history-list .history-when{color:var(--faint)}.history-list article>div b{color:var(--ink);font-weight:400}.stats-dialog .history-list:has(>p:only-child){text-align:center;place-items:center;display:grid}.scene-leaderboard{height:100svh;min-height:0;overflow:hidden}.scene-leaderboard .scene-shade{background:color-mix(in srgb, var(--well) 90%, transparent)}.leaderboard-screen{z-index:6;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.leaderboard-page{gap:var(--space-3);width:min(1040px,100%);min-height:0;padding:0 var(--space-5) var(--space-5);box-sizing:border-box;grid-template-rows:auto auto minmax(0,1fr) auto;margin:0 auto;display:grid}.leaderboard-tabs{border-bottom:1px solid var(--edge-dim)}.leaderboard-tabs button{white-space:nowrap;flex:none}.leaderboard-help{font-size:var(--read-m);color:var(--dim);margin:0;line-height:1.6}.ranking-board{background:var(--well);border:1px solid var(--edge-dim);scrollbar-gutter:stable;min-height:0;overflow:auto}.ranking-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--size-m);font-variant-numeric:tabular-nums}.ranking-table th{z-index:1;padding:var(--space-3) var(--space-4);font-size:var(--size-xs);text-align:left;white-space:nowrap;color:var(--faint);background:var(--well);border-bottom:1px solid var(--edge-dim);font-weight:400;line-height:1.6;position:sticky;top:0}.ranking-table td{height:56px;padding:var(--space-2) var(--space-4);white-space:nowrap;color:var(--dim);border-bottom:1px solid var(--edge-dim)}.ranking-table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--bg-2) 60%, transparent)}.ranking-table tbody tr:hover td{background:var(--bg-2)}.ranking-table :is(th,td):nth-child(n+3){text-align:right}.ranking-table .ranking-value{color:var(--ink)}.ranking-place{width:40px}.ranking-place>span{width:32px;height:32px;color:var(--dim);background:var(--bg-2);border:1px solid var(--edge-dim);box-shadow:inset 0 -3px 0 var(--n-02);place-items:center;display:inline-grid}.podium-2 .ranking-place>span,.podium-3 .ranking-place>span{color:var(--ink);border-color:var(--edge-lit)}.podium-1 .ranking-place>span{color:var(--key-ink);background:var(--accent);border-color:var(--accent-deep);box-shadow:inset 0 -3px 0 var(--accent-deep)}.ranking-table td.ranking-player{width:100%;max-width:0}.ranking-who{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ranking-player strong{min-width:0;color:var(--ink);text-overflow:ellipsis;font-weight:400;overflow:hidden}.ranking-player em{padding:0 var(--space-1);font-size:var(--size-xs);color:var(--key-ink);background:var(--accent);flex:none;font-style:normal;line-height:1.8}.ranking-earlier th{padding-top:var(--space-5);color:var(--dim);text-align:left;border-top:1px solid var(--edge);position:static}.ranking-earlier td{color:var(--faint)}.ranking-earlier .ranking-place>span{color:var(--faint);box-shadow:none;background:0 0}.ranking-none{color:var(--faint);text-align:center!important}.ranking-table tbody tr.you td{background:var(--accent-soft)}.ranking-avatar{cursor:zoom-in;flex:none;display:inline-flex}.ranking-avatar .profile-picture{--profile-picture-size:36px}.avatar-peek{z-index:20;padding:var(--space-1);background:var(--well);border:1px solid var(--edge);box-shadow:0 8px 24px var(--n-02);pointer-events:none;position:fixed}.avatar-peek .profile-picture{--profile-picture-size:128px;border:0}.ranking-state{align-content:center;justify-items:center;gap:var(--space-3);height:100%;min-height:160px;padding:var(--space-5);box-sizing:border-box;text-align:center;display:grid}.ranking-state>.glyph{width:32px;height:32px;color:var(--faint)}.ranking-state p{font-size:var(--read-m);color:var(--dim);margin:0;line-height:1.6}.leaderboard-note{font-size:var(--size-s);color:var(--faint);margin:0;line-height:1.6}.about-dialog .dialog-body .section-label{margin:var(--space-5) 0 var(--space-2);font-size:var(--size-xs);color:var(--dim)}.about-dialog .dialog-body .section-label:first-child{margin-top:0}.about-dialog ul{gap:var(--space-2);margin:0 0 var(--space-2);padding-left:var(--space-5);display:grid}.feedback-dialog .dialog-body form{gap:var(--space-2);display:grid}.feedback-dialog textarea{resize:vertical;width:100%;min-height:110px;color:var(--ink)}.feedback-dialog #feedback-count{color:var(--faint);font-size:var(--size-xs)!important}.google-button{justify-content:center;align-items:center;gap:var(--space-3);display:flex!important}.google-mark{flex:none;width:18px;height:18px}.account-dialog .dialog-body>.section-label{margin:var(--space-5) 0 var(--space-3)}.account-gate{color:var(--ink)}.account-notice:not(:empty){padding:var(--space-2) var(--space-3);background:var(--well);border-left:2px solid var(--danger);border-radius:var(--radius-s);color:color-mix(in srgb, var(--danger) 60%, var(--ink))!important}.profile-card{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.profile-card>div{flex:1;min-width:0}.profile-card strong{font-size:var(--size-m);color:var(--ink);overflow-wrap:anywhere;font-weight:400;display:block}.profile-card small{font-size:var(--size-xs);color:var(--dim);overflow-wrap:anywhere}.rename-form{gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.profile-picture{--profile-picture-size:40px;width:var(--profile-picture-size);height:var(--profile-picture-size);border:1px solid var(--edge);border-radius:var(--radius);background:var(--bg-2);color:var(--ink);vertical-align:middle;flex:none;place-items:center;display:inline-grid;overflow:hidden}.profile-picture img{object-fit:cover;image-rendering:auto;width:100%;height:100%;display:block}.helm-avatar{background:var(--bg-2);width:100%;height:100%;display:block}.profile-card .profile-picture{--profile-picture-size:48px}.sync-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-block:1px solid var(--edge-dim);font-size:var(--size-xs);display:flex}.sync-row time{color:var(--faint)}.sync-row button{margin-left:auto}.sync-synced span{color:var(--heal)}.sync-error span{color:var(--danger)}.sync-syncing span{color:var(--ink)}.progress-compare{gap:var(--space-3);margin:var(--space-3) 0;grid-template-columns:1fr 1fr;display:grid}.progress-summary{padding:var(--space-3);background:var(--bg-2);border:1px solid var(--edge-dim);border-radius:var(--radius-s)}.progress-summary h3{margin:0 0 var(--space-2);font-size:var(--size-m);color:var(--ink);font-weight:400}.progress-summary dl{gap:var(--space-1);margin:0;display:grid}.progress-summary dl div{justify-content:space-between;gap:var(--space-2);font-size:var(--size-xs);display:flex}.progress-summary dt{color:var(--dim)}.progress-summary dd{margin:0}.warning-note{color:color-mix(in srgb, var(--danger) 60%, var(--ink))!important}@media (width<=600px){.stats-dialog{height:90svh;min-height:0}.stats-dialog .record-grid{gap:var(--space-1);grid-template-columns:repeat(2,minmax(0,1fr))}.stats-dialog .record-tile{padding:var(--space-2);min-width:0}.stats-dialog .record-tile small{overflow-wrap:anywhere}.history-list header em{margin-left:0}.leaderboard-page{padding:0 var(--space-3) var(--space-3);gap:var(--space-2)}.leaderboard-help{font-size:var(--size-s)}.ranking-table :is(th,td):nth-child(n+4){display:none}.ranking-table :is(th,td){padding-inline:var(--space-2)}.ranking-avatar .profile-picture{--profile-picture-size:28px}.progress-compare{grid-template-columns:1fr}}
