@import"https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap";@font-face{font-family:Katanf;src:url(/fonts/Katanf.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Katanf;src:url(/fonts/Katanfi.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Katanf;src:url(/fonts/Katanfs.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Mangat;src:url(/fonts/mangat.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Mangat;src:url(/fonts/mangati.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Mangat;src:url(/fonts/mangatb.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Hikara;src:url(/fonts/Hikara-8Mqez.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--font-body: "Open Sans", "Trebuchet MS", "Avenir Next", sans-serif;--font-display: "Hikara", "Katanf", "Trebuchet MS", "Avenir Next", sans-serif;--game-pad: clamp(8px, 1.4vw, 24px);--app-shell-padding: 20px 14px;--fight-shell-padding: 14px;--fight-shell-gap: 8px;--fight-hud-gap: 10px;--fight-stage-padding: 8px 20px 12px;--fight-stage-gap: 18px;--fight-stage-columns: minmax(170px, 1fr) minmax(280px, 360px) minmax(170px, 1fr);--fight-heart-size: clamp(6rem, 20vmin, 12rem);--fight-timer-size: clamp(3rem, 10vmin, 6rem);--fight-player-width: clamp(240px, 34vw, 480px);--fight-player-max-height: min(34vw, 58cqh);--fight-player-shadow-width: 420px;--fight-player-shadow-height: 68px;--fight-player-shadow-bottom: 72px;--fight-player-name-size: 1rem;--fight-prompt-padding: 16px 18px;--fight-prompt-title-size: clamp(2rem, 3.75vw, 3rem);--fight-answer-padding: 20px 18px;--fight-answer-min-height: 108px;--fight-answer-label-size: .84rem;--fight-answer-strong-size: clamp(.95rem, 2.2vw, 1.2rem);--fight-answer-strong-margin: 10px;--fight-four-answer-padding: 12px 14px;--fight-four-answer-size: clamp(.82rem, 1.8vw, 1.05rem);color:#f7f1df;font-family:var(--font-body);background:#0a0604;font-synthesis:none;font-weight:400;line-height:1.5;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;background:#0a0604}#root{min-height:100vh;min-height:100dvh}.app-viewport{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--game-pad);background:#0a0604}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{width:min(100%,calc((100dvh - var(--game-pad) * 2) * 16 / 9));aspect-ratio:16 / 9;display:grid;grid-template-rows:minmax(0,1fr);min-height:0;border-radius:clamp(18px,2.4vw,32px);overflow:hidden;container-type:size}.orientation-lock{display:none;width:min(100%,32rem);margin:auto}.orientation-lock-card{padding:28px 24px;border:1px solid rgba(255,239,201,.16);border-radius:24px;background:radial-gradient(circle at top,rgba(240,200,99,.14),transparent 42%),linear-gradient(180deg,#29160ef5,#150c09fa);box-shadow:0 20px 50px #00000059;text-align:center}.orientation-lock-card h2{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:.02em}.orientation-lock-card .lede{margin:14px 0 0}.stage-icon-button{position:absolute;top:max(10px,env(safe-area-inset-top,0px) + 10px);z-index:30;width:48px;height:48px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,236,185,.24);border-radius:50%;color:#f6efde;background:linear-gradient(180deg,#f1cf842e,#5d33172e),#1d0f09d1;font-family:var(--font-display);font-size:1.2rem;line-height:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.stage-icon-button-left{left:max(10px,env(safe-area-inset-left,0px) + 10px)}.stage-icon-button-right{right:max(10px,env(safe-area-inset-right,0px) + 10px)}.stage-icon-button:hover,.stage-icon-button:focus-visible{color:#1c0f09;background:linear-gradient(180deg,#f1cf84,#d5a94a)}.app-shell-panel{padding:var(--app-shell-padding);background:radial-gradient(circle at top,rgba(240,200,99,.18),transparent 28%),linear-gradient(180deg,#29160e,#150c09)}.app-shell-title{padding:0;background:radial-gradient(circle at 50% 40%,#0f08041a,#0f0804b3 34%,#0f0804e6),url(/sprites/DOJO-OUTSIDE.png) center center / cover no-repeat}.app-shell-title .frame{width:100%;max-width:none;height:100%}.app-shell-fighting{padding:clamp(8px,1.4vw,18px);background:linear-gradient(180deg,#1107043d,#0b0503b3),url(/sprites/dojo1.png) center / cover no-repeat fixed}.app-shell-fighting .frame{width:100%;max-width:none;height:100%;padding:0;overflow:hidden}.frame{width:min(100%,1120px);height:100%;min-height:0;margin:0 auto;display:flex;overflow:hidden}.screen{position:relative;width:100%;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;gap:20px}.screen-scroll{overflow-y:auto;padding-right:4px;scroll-behavior:smooth}.screen-title,.screen-result,.screen-intro{justify-content:center;align-items:center}.screen-title{justify-content:stretch}.screen-result{justify-content:stretch;align-items:stretch}.title-card,.result-card,.level-card,.prompt-card,.pause-card{border:1px solid rgba(255,239,201,.16);border-radius:24px;background:#20130de6;box-shadow:0 20px 50px #00000059}.title-card,.result-card,.how-to-card{width:min(100%,720px);padding:32px}.title-card h1,.result-card h2,.prompt-card h2,.section-heading h2,.loading-card h2,.level-card h3,.pause-card h3{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:.02em}.title-card h1{font-size:clamp(2.8rem,9vw,5rem)}.title-hero{width:100%;height:100%;min-height:0;display:grid;align-content:center;justify-items:center;padding:clamp(24px,10cqh,84px) clamp(20px,5cqw,52px) clamp(28px,8cqh,60px);gap:clamp(18px,4cqh,36px);text-align:center}.title-hero h1{margin:0;font-family:var(--font-display);font-size:clamp(4.5rem,14vw,12.5rem);font-weight:400;letter-spacing:.05em;line-height:.92;text-shadow:0 3px 0 rgba(42,19,9,.75),0 14px 40px rgba(0,0,0,.5)}.title-menu{display:flex;flex-direction:column;gap:14px;width:min(100%,360px);margin-top:0}.screen-title-fit-compact .title-hero{padding:20px 18px 24px;gap:14px}.screen-title-fit-compact .title-hero h1{font-size:clamp(3.1rem,9.5cqw,6.8rem);line-height:.89;letter-spacing:.04em}.screen-title-fit-compact .title-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,460px);gap:10px}.screen-title-fit-compact .button-title{min-height:48px;padding:10px 16px;font-size:clamp(.92rem,2.1cqw,1.08rem);letter-spacing:.08em}.screen-title-fit-tight .title-hero{padding:14px 14px 18px;gap:10px}.screen-title-fit-tight .title-hero h1{font-size:clamp(2.25rem,7.8cqw,4.5rem);line-height:.86;letter-spacing:.03em}.screen-title-fit-tight .title-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,392px);gap:8px}.screen-title-fit-tight .button-title{min-height:42px;padding:9px 12px;font-size:clamp(.82rem,1.9cqw,.96rem);letter-spacing:.06em}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-copy,.achievement-panel-copy{margin:8px 0 0;color:#e7d7b7}.eyebrow{margin:0 0 10px;color:#f7c66a;font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.lede,.key-hint,.feedback-line{color:#f2dec1}.title-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{border:none;border-radius:999px;padding:14px 22px;min-height:50px;transition:transform .14s ease,opacity .14s ease,background-color .14s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:1}.button-primary{color:#1c0f09;background:linear-gradient(180deg,#f1cf84,#d5a94a)}.button-secondary{color:#f6efde;background:linear-gradient(180deg,#f1cf84,#d5a94a);border:1px solid rgba(255,237,179,.14)}.button-title{width:100%;min-height:58px;padding:16px 24px;font-family:var(--font-display);font-size:clamp(1.1rem,3.6vw,1.45rem);letter-spacing:.1em}.button-title.button-primary,.button-title.button-secondary{color:#f6efde;background:#1d0f09cc;border:1px solid rgba(255,236,185,.28);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.button-title.button-primary:disabled,.button-title.button-secondary:disabled{background:#1d0f0966;border:1px solid rgba(255,236,185,.1);color:#fff6}.button-title:hover:not(:disabled),.button-title:focus-visible{color:#1c0f09;background:linear-gradient(180deg,#f1cf84,#d5a94a)}@media(max-width:640px){.title-hero{padding-top:clamp(24px,7cqh,48px)}.title-hero h1{font-size:clamp(3.25rem,15vw,6rem)}.title-menu{width:min(100%,320px);margin-top:24px}}@media(max-width:932px)and (max-height:460px)and (orientation:landscape){.screen-title{justify-content:center}.title-hero{justify-content:center;padding:20px 16px 24px}.title-hero h1{font-size:clamp(2.6rem,8.8vw,4.6rem);line-height:.88}.title-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,420px);gap:10px;margin-top:18px}.button-title{min-height:50px;padding:12px 16px;font-size:clamp(.92rem,2.5vw,1.08rem);letter-spacing:.08em}}@media(max-width:932px)and (max-height:400px)and (orientation:landscape){.title-hero{padding:14px 14px 18px}.title-hero h1{font-size:clamp(2.2rem,8vw,3.75rem);letter-spacing:.035em}.title-menu{width:min(100%,392px);gap:8px;margin-top:14px}.button-title{min-height:44px;padding:10px 14px;font-size:clamp(.84rem,2.2vw,.98rem);letter-spacing:.06em}}.set-filter{display:flex;flex-wrap:wrap;gap:12px}.screen-belt-select{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden}.belt-select-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:20px}.belt-rail-panel,.belt-detail-panel{border:1px solid rgba(255,239,201,.16);border-radius:24px;background:#20130de6;box-shadow:0 20px 50px #00000059}.belt-rail-panel{min-height:0;position:relative;display:block;padding:18px}.belt-rail-list{min-height:0;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:30px 6px;scroll-behavior:smooth;scroll-snap-type:y proximity;scroll-padding-top:30px;scroll-padding-bottom:30px;scrollbar-width:thin;scrollbar-color:rgba(241,203,117,.6) rgba(255,255,255,.05)}.belt-rail-list::-webkit-scrollbar{width:10px}.belt-rail-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:999px}.belt-rail-list::-webkit-scrollbar-thumb{background:#f1cb7599;border-radius:999px}.belt-scroll-button{position:absolute;right:10px;z-index:2;width:28px;height:28px;min-height:0;padding:0;display:grid;place-items:center;border:1px solid rgba(255,236,185,.2);border-radius:50%;color:#f7e7c5;background:linear-gradient(180deg,#f1cf842e,#5d33172e),#ffffff08;font-size:.95rem;font-weight:800;line-height:1}.belt-scroll-button:first-of-type{top:12px}.belt-scroll-button:last-of-type{bottom:12px}.belt-scroll-button:disabled{opacity:.38}.belt-option{position:relative;width:100%;display:grid;grid-template-rows:minmax(0,.95fr) minmax(0,2.05fr);gap:6px;padding:10px 12px 12px;border:1px solid rgba(255,236,185,.14);border-radius:20px;color:#f7f1df;background:#ffffff0a;text-align:left;scroll-snap-align:start;scroll-snap-stop:always;transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.belt-option:hover,.belt-option:focus-visible{border-color:#ffe8b157;background:#ffffff0f;transform:translateY(-1px)}.belt-option-selected{border-color:var(--accent);background:linear-gradient(180deg,rgba(255,255,255,.08),transparent),#ffffff0f;box-shadow:0 12px 30px #00000038}.belt-option-locked{color:#f7f1dfc7}.belt-option-art{display:flex;align-items:center;justify-content:center;width:100%;min-height:0;padding:0;border-radius:0;overflow:hidden}.belt-option-sprite{display:block;width:min(100%,170px);height:auto;margin:0;filter:drop-shadow(0 8px 12px rgba(0,0,0,.32))}.belt-option-locked .belt-option-sprite{opacity:.42;filter:grayscale(1) drop-shadow(0 10px 16px rgba(0,0,0,.28))}.belt-option-copy{width:100%;min-width:0;text-align:left}.belt-option-copy strong,.belt-detail-panel h2{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:.02em}.belt-option-copy strong{display:block;font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.05}.belt-option-badge{position:absolute;top:10px;right:10px;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,238,209,.18);border-radius:50%;background:#2c1810eb;box-shadow:0 6px 14px #00000047}.belt-option-badge-open{background:linear-gradient(180deg,#f2cf84,#d9aa48)}.belt-option-badge:before,.belt-option-badge:after{content:"";position:absolute}.belt-option-badge-open:before{width:11px;height:6px;border-left:2px solid #2b170d;border-bottom:2px solid #2b170d;transform:translateY(-1px) rotate(-45deg)}.belt-option-badge-locked:before{left:50%;top:56%;width:42%;height:32%;border:2px solid rgba(255,238,209,.92);border-radius:3px;transform:translate(-50%,-50%);box-sizing:border-box}.belt-option-badge-locked:after{left:50%;top:26%;width:30%;height:26%;border:2px solid rgba(255,238,209,.92);border-bottom:none;border-radius:8px 8px 0 0;transform:translate(-50%);box-sizing:border-box}.belt-detail-panel{min-height:0;position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:18px;padding:26px;overflow:hidden}.belt-detail-panel:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(180deg,var(--accent) 0,var(--accent) 33.333%,var(--secondary-accent, var(--accent)) 33.333%,var(--secondary-accent, var(--accent)) 66.666%,var(--accent) 66.666%,var(--accent) 100%);pointer-events:none}.belt-detail-body{min-height:0;display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding-right:4px;scroll-behavior:smooth}.belt-detail-hero{display:block}.belt-detail-panel h2{font-size:clamp(1.6rem,3vw,2.3rem)}.result-stats.belt-detail-stats{margin:0;align-self:stretch;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.belt-detail-stats div{padding:10px 12px}.belt-detail-stats dt{font-size:.78rem}.belt-detail-stats dd{margin-top:4px;font-size:.98rem}.belt-detail-actions{margin-top:auto;padding-top:8px;justify-content:flex-start}.belt-begin-button{min-width:160px}.chip{padding:10px 16px;border-radius:999px;border:1px solid rgba(255,236,185,.15);color:#f8ead0;background:#ffffff0d}.chip-active{color:#2c160b;background:#f1cb75}@media(max-width:920px){.belt-select-layout{grid-template-columns:1fr}.belt-rail-panel{max-height:min(42cqh,360px)}}@media(max-width:640px){.belt-option{flex-direction:column;align-items:stretch}.belt-option-art{width:100%;flex-basis:auto}.belt-option-copy{width:100%;justify-items:center;text-align:center}.belt-detail-panel{padding:22px}.belt-detail-hero{grid-template-columns:1fr}.belt-detail-actions .button{flex:1 1 100%}}.level-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.level-card{padding:22px;border-top:4px solid var(--accent)}.level-badges{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}.mini-badge,.achievement-chip,.achievement-meta{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.04em}.mini-badge{color:#f6e9ca;background:#fff4d514;border:1px solid rgba(255,236,185,.14)}.mini-badge-unlocked{color:#1f120b;background:linear-gradient(180deg,#f2cf84,#d9aa48)}.level-card-locked{opacity:.72}.level-card-head,.fight-hud,.result-stats,.stats-list{display:grid;gap:12px}.level-card-head{grid-template-columns:1fr auto;align-items:start}.belt-pill{display:inline-flex;align-items:center;justify-content:center;min-width:84px;padding:8px 12px;border-radius:999px;color:#1f120b;background:var(--accent);font-weight:700}.stats-list,.result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-list div,.result-stats div{padding:12px 14px;border-radius:18px;background:#fff7e70f}.stats-list dt,.result-stats dt,.hud-label,.answer-label{color:#d9c8ab;font-size:.84rem}.answer-label{font-size:var(--fight-answer-label-size)}.stats-list dd,.result-stats dd{margin:6px 0 0;font-size:1.05rem;font-weight:700}.fight-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--fight-shell-gap);width:100%;min-height:100%;margin:0;padding:var(--fight-shell-padding);border-radius:28px;background:transparent;border:none;box-shadow:none;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden;container-type:size}.fight-hit{animation:shake-hit .18s ease-in-out}.fight-hit-left{animation-name:shake-hit-left}.fight-hit-right{animation-name:shake-hit-right}.fight-hud{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:var(--fight-hud-gap);width:100%;margin:0}.hud-block{padding:12px 14px;border-radius:18px;border:1px solid rgba(255,223,171,.26);background:linear-gradient(180deg,#f8d5943d,#8a3d2429),#23100c94;box-shadow:inset 0 1px #fff0d633}.hud-hearts-panel{justify-self:start}.hud-hearts{display:flex;align-items:center;gap:8px}.hud-heart{height:var(--fight-heart-size);aspect-ratio:3 / 4;background-image:url(/sprites/HEARTS.png);background-repeat:no-repeat;background-size:200% 100%;background-position-y:center}.hud-heart-filled{background-position-x:left}.hud-heart-empty{background-position-x:right}.fight-hud .timer-stack{justify-self:center}.fight-hud .timer-countdown{text-align:center}.fight-stage{position:relative;min-height:0;height:100%;padding:var(--fight-stage-padding);border-radius:22px;display:grid;grid-template-columns:var(--fight-stage-columns);grid-template-rows:auto minmax(0,1fr);align-items:stretch;gap:var(--fight-stage-gap)}.fight-prompt-row{grid-column:1 / -1;width:100%}.fight-center{display:grid;justify-items:center;align-items:center;align-self:stretch;align-content:center;gap:0}.block-burst,.impact-flash,.impact-callout{pointer-events:none}.block-burst{position:absolute;top:12%;right:24%;bottom:12%;left:24%;z-index:3}.block-spark{position:absolute;color:#ffdf70;font-size:1.5rem;text-shadow:0 0 8px rgba(255,219,97,.5),0 0 18px rgba(255,219,97,.28);animation:sparkle-burst .42s ease-out both}.block-spark-1{top:18%;left:24%}.block-spark-2{top:6%;left:46%;animation-delay:40ms}.block-spark-3{top:22%;right:24%;animation-delay:70ms}.block-spark-4{top:48%;left:16%;animation-delay:90ms}.block-spark-5{top:58%;right:18%;animation-delay:.12s}.block-spark-6{top:72%;left:50%;animation-delay:.15s}.impact-flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:22px;background:radial-gradient(circle at center,rgba(255,147,147,.48),transparent 52%),linear-gradient(180deg,#ff3f3f33,#7800001a);animation:impact-flash .24s ease-out both}.impact-callout{position:absolute;top:18px;left:50%;z-index:4;transform:translate(-50%);padding:8px 14px;border:1px solid rgba(255,170,170,.24);border-radius:999px;color:#fff0f0;background:#830707db;font-size:.92rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 24px #53000052;animation:impact-callout .26s ease-out both}.player{position:relative;display:grid;place-items:center;gap:12px;height:auto;align-self:center;z-index:1}.player-shadow{position:absolute;bottom:var(--fight-player-shadow-bottom);width:var(--fight-player-shadow-width);height:var(--fight-player-shadow-height);border-radius:999px;background:#0000004d;filter:blur(4px)}.player-body{position:relative;width:min(var(--fight-player-width),calc(var(--fight-player-max-height) * 2 / 3));max-height:var(--fight-player-max-height);aspect-ratio:2 / 3;height:auto;transition:transform .16s ease}.player-sprite{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.3))}.player-belt{position:absolute;left:50%;bottom:33%;transform:translate(-50%);color:#181108;text-shadow:0 1px 0 rgba(255,243,217,.45);text-align:center;font-size:clamp(.56rem,1vw,.72rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.player-name{margin:0;color:#eeddbf;font-size:var(--fight-player-name-size);font-weight:700}.player-idle .player-body{animation:idleBob 1.4s ease-in-out infinite}.player-windup .player-body{transform:translateY(-4px) scale(1.02)}.player-victory .player-body{transform:translateY(-10px)}.player-ko .player-body{transform:translateY(34px) rotate(90deg)}.timer-stack{display:grid;justify-items:center;gap:0}.timer-countdown{font-family:var(--font-display);font-size:var(--fight-timer-size);line-height:.9;text-align:center;color:#f7e5bc;text-shadow:0 2px 10px rgba(0,0,0,.3)}.prompt-card{padding:24px}.prompt-card-stage{width:100%;padding:var(--fight-prompt-padding);text-align:center;border-radius:20px;border:1px solid rgba(255,226,182,.26);background:linear-gradient(180deg,#f5c87e33,#652a1933),#1e0f0c9e;box-shadow:inset 0 1px #fff1d438,0 10px 24px #00000047}.prompt-card-stage h2{font-size:var(--fight-prompt-title-size)}.answer-panel{width:100%;padding:var(--fight-answer-padding);min-height:var(--fight-answer-min-height);border:1px solid rgba(255,221,166,.28);border-radius:24px;color:#fff5df;text-align:left;background:linear-gradient(180deg,#ffd28a3d,#5f281933 45%,#110c1480),#20100cb8;box-shadow:inset 0 1px #fff2d633,0 8px 20px #0000003d;align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.answer-panel:not(.answer-panel-disabled):hover{border-color:#ffe5b385;transform:translateY(-2px)}.answer-panel strong{display:block;margin-top:var(--fight-answer-strong-margin);font-size:var(--fight-answer-strong-size);line-height:1.25;overflow-wrap:anywhere;text-shadow:0 1px 6px rgba(0,0,0,.26)}.answer-panel-left{justify-self:start;text-align:right;align-items:flex-end}.answer-panel-right{justify-self:end;align-items:flex-start}.answer-panel-disabled{opacity:.72}.answer-column{display:flex;flex-direction:column;gap:8px;align-self:stretch;width:100%;min-width:0}.answer-column-left,.answer-column-right{justify-self:stretch}.answer-column-left .answer-panel{text-align:right;align-items:flex-end}.answer-column-right .answer-panel{align-items:flex-start}.answer-column .answer-panel{flex:1;min-height:0;padding:var(--fight-four-answer-padding)}.fight-stage-4 .answer-column .answer-panel strong{margin-top:4px;font-size:var(--fight-four-answer-size)}.pause-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0a0604b8}.pause-card{max-width:420px;padding:28px;text-align:center}.achievement-toast-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0a06046b;pointer-events:none}.achievement-toast-card{width:min(100%,680px);padding:clamp(28px,4vw,40px);border:1px solid rgba(255,239,201,.2);border-radius:28px;text-align:center;background:radial-gradient(circle at top,rgba(241,203,117,.18),transparent 55%),linear-gradient(180deg,#3a1e10f5,#1c0e09fa);box-shadow:0 28px 80px #00000070,0 0 0 1px #f1cb7514 inset;animation:achievementToastIn .22s ease-out}.achievement-toast-card h3{margin:0;font-family:var(--font-display);font-size:clamp(2rem,4vw,3.3rem);font-weight:400;letter-spacing:.03em}.achievement-toast-card p:last-child{margin:14px auto 0;max-width:34rem;color:#ecdcbf;font-size:clamp(1rem,1.8vw,1.2rem)}.instruction-list{margin:0;padding-left:20px}.achievement-panel{margin-top:8px;padding:24px;border:1px solid rgba(255,239,201,.16);border-radius:24px;background:#20130dd1;box-shadow:0 20px 50px #0000003d}.achievement-panel-head,.achievement-section-head,.achievement-card-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}.achievement-panel h3,.achievement-section h4,.achievement-card h5{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:.02em}.achievement-sections{display:grid;gap:18px;margin-top:20px}.achievement-section{display:grid;gap:12px}.achievement-section-head span{color:#f1cb75;font-size:.85rem;font-weight:700}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.achievement-card{padding:16px;border-radius:20px;border:1px solid rgba(255,239,201,.12);background:#fff7e70a;opacity:.72}.achievement-card-unlocked{opacity:1;border-color:#f1cb753d;background:linear-gradient(180deg,#f1cb7524,#622c1714),#fff7e70d}.achievement-card-highlighted{box-shadow:0 0 0 1px #f1cb753d,0 12px 28px #0000002e}.achievement-chip{color:#f6ead0;background:#fff4d514;border:1px solid rgba(255,236,185,.14)}.achievement-card-unlocked .achievement-chip{color:#1f120b;background:linear-gradient(180deg,#f2cf84,#d9aa48)}.achievement-meta{color:#e9ddc1;background:#ffffff0a}.achievement-card p{margin:10px 0 0;color:#eddcbb}.achievement-panel-copy{max-width:520px}.result-callout{margin:18px 0 0;color:#f1cb75;font-weight:700}.result-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:20px}.result-stats-panel,.result-summary-panel{border:1px solid rgba(255,239,201,.16);border-radius:24px;background:#20130de6;box-shadow:0 20px 50px #00000059}.result-stats-panel{min-height:0;display:flex;flex-direction:column;gap:16px;padding:26px}.result-stats-panel h2,.result-summary-panel h3{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:.02em}.result-stats-panel h2{font-size:clamp(1.5rem,2.4vw,2.2rem)}.result-stats-panel-grid{flex:1;min-height:0;grid-template-columns:1fr;align-content:start}.result-summary-panel{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:20px;padding:26px}.result-summary-body{min-height:0;display:flex;flex-direction:column;justify-content:center;gap:14px}.result-summary-panel h3{font-size:clamp(2rem,3.6vw,3.2rem)}.result-summary-body .lede{max-width:34rem;margin:0}.result-actions{margin-top:0;justify-content:flex-start}@keyframes achievementToastIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes idleBob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shake{0%,to{transform:translate(0)}30%{transform:translate(-8px)}60%{transform:translate(8px)}}@keyframes shake-hit{0%,to{transform:translate(0)}18%{transform:translate(-16px)}36%{transform:translate(12px)}54%{transform:translate(-10px)}72%{transform:translate(6px)}}@keyframes shake-hit-left{0%,to{transform:translate(0) rotate(0)}16%{transform:translate(-18px) rotate(-2.6deg)}34%{transform:translate(12px) rotate(1.9deg)}52%{transform:translate(-10px) rotate(-1.5deg)}72%{transform:translate(6px) rotate(.9deg)}}@keyframes shake-hit-right{0%,to{transform:translate(0) rotate(0)}16%{transform:translate(18px) rotate(2.6deg)}34%{transform:translate(-12px) rotate(-1.9deg)}52%{transform:translate(10px) rotate(1.5deg)}72%{transform:translate(-6px) rotate(-.9deg)}}@keyframes sparkle-burst{0%{opacity:0;transform:translateY(8px) scale(.4)}35%{opacity:1;transform:translateY(0) scale(1.06)}to{opacity:0;transform:translateY(-14px) scale(.72)}}@keyframes impact-flash{0%{opacity:0}30%{opacity:1}to{opacity:0}}@keyframes impact-callout{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.86)}35%{opacity:1;transform:translate(-50%) translateY(0) scale(1.03)}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.96)}}.screen-loading{height:100%;justify-content:center;align-items:center}.loading-card{width:min(100%,520px);padding:32px;text-align:center;border:1px solid rgba(255,239,201,.16);border-radius:24px;background:#20130de6;box-shadow:0 20px 50px #00000059}.loading-card h2{margin:0 0 8px;font-size:2rem;font-weight:400;color:#f7f1df}.loading-phase{margin:0 0 24px;font-size:.9rem;color:#d9b437;text-transform:uppercase;letter-spacing:.05em}.progress-container{display:flex;flex-direction:column;gap:8px}.progress-bar{width:100%;height:8px;background:#0006;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#d9b437,#f0c863);border-radius:4px;transition:width .3s ease}.progress-text{margin:0;font-size:.85rem;color:#f7f1dfb3}@media(min-width:640px){.app-shell-panel{padding:24px}.fight-shell{padding:20px}}@media(orientation:landscape){.app-shell-panel{padding:8px}.screen.fight-shell{width:100%;padding:8px;gap:6px}.fight-hud{gap:8px}.hud-block{padding:8px 10px}.hud-heart{height:clamp(5.5rem,14vh,8rem)}.timer-countdown{font-size:clamp(3.2rem,9vh,5rem)}.fight-stage{padding:4px 12px 8px;gap:10px}.prompt-card-stage{padding:10px 14px}.answer-panel{padding:12px 14px}}@media(orientation:portrait){.app-shell{display:none}.orientation-lock{display:grid;place-items:center}.stage-icon-button{display:none}}@media(orientation:landscape)and (max-height:500px){.app-viewport{padding:clamp(6px,1vw,12px)}.app-shell-panel{padding:8px}.screen{gap:8px}.title-hero{padding:18px 16px 20px;gap:14px}.title-hero h1{font-size:clamp(2.3rem,7.5vw,4.4rem);line-height:.88;letter-spacing:.04em}.title-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,420px);gap:10px}.button-title{min-height:46px;padding:10px 14px;font-size:clamp(.88rem,2vw,1rem);letter-spacing:.07em}.stage-icon-button{width:40px;height:40px;font-size:1rem}.screen-belt-select{gap:8px}.belt-select-layout{grid-template-columns:minmax(190px,.92fr) minmax(0,1.65fr);gap:12px}.belt-rail-panel{height:100%;max-height:none;padding:12px}.belt-scroll-button{right:8px;width:24px;height:24px;font-size:.82rem}.belt-rail-list{gap:8px;padding:24px 4px;scroll-padding-top:24px;scroll-padding-bottom:24px}.belt-option{gap:4px;padding:8px 9px 9px;border-radius:16px}.belt-option-art{min-height:0}.belt-option-copy strong{font-size:.94rem}.belt-option-sprite{width:min(100%,126px)}.belt-option-badge{top:8px;right:8px;width:22px;height:22px;font-size:.72rem}.belt-detail-panel{gap:12px;padding:18px}.belt-detail-body{gap:10px}.belt-detail-hero{display:block}.belt-detail-panel h2{font-size:clamp(1.25rem,2.8vw,1.8rem)}.result-stats.belt-detail-stats{gap:8px}.belt-detail-stats div{padding:8px 10px}.belt-detail-stats dt{font-size:.7rem}.result-layout{grid-template-columns:minmax(200px,.9fr) minmax(0,1.7fr);gap:12px}.result-stats-panel,.result-summary-panel{border-radius:20px;padding:18px}.result-stats-panel{gap:12px}.result-stats-panel h2{font-size:clamp(1.2rem,2.8vw,1.6rem)}.result-summary-panel{gap:14px}.result-summary-panel h3{font-size:clamp(1.55rem,3.4vw,2.2rem)}.result-summary-body,.result-actions{gap:10px}.result-actions .button{min-height:42px;padding:10px 14px}.belt-detail-stats dd{font-size:.9rem}.belt-detail-actions{gap:10px;padding-top:0}.belt-detail-actions .button{min-height:42px;padding:10px 14px}}@media(orientation:landscape)and (min-height:501px)and (max-width:1180px){body{overflow:hidden}.app-shell{height:calc(100dvh - var(--game-pad) * 2)}.app-shell-panel{padding:8px}.screen{gap:8px}.title-card,.result-card,.how-to-card,.level-card,.prompt-card,.pause-card{border-radius:20px}.title-card,.result-card,.how-to-card,.level-card,.prompt-card{padding:18px}.title-actions{margin-top:18px}.achievement-panel{padding:18px}.level-grid{gap:12px}.level-card{padding:18px}.stats-list div,.result-stats div,.hud-block{padding:10px 12px}.result-layout{gap:14px}.result-stats-panel,.result-summary-panel{border-radius:20px;padding:20px}.result-summary-panel{gap:16px}.fight-shell{padding:12px;gap:8px}.fight-hud{margin-bottom:0}.fight-stage{min-height:0;padding:8px 16px 0;grid-template-columns:minmax(0,1fr) minmax(210px,300px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:10px}.fight-center{gap:0}.player{gap:6px}.player-body{width:clamp(158px,22.5vw,240px)}.player-belt{font-size:clamp(.52rem,.8vw,.64rem)}.player-shadow{bottom:6px;width:248px;height:40px}.timer-countdown{font-size:clamp(1.8rem,3.6vw,2.4rem)}.prompt-card-stage{padding:12px}.prompt-card h2{font-size:clamp(1.5rem,3vw,2.25rem)}.answer-panel{min-height:68px;padding:10px 12px}.answer-panel strong{margin-top:6px;font-size:clamp(.88rem,1.55vw,1.05rem)}}@media(orientation:landscape)and (max-height:430px){.fight-shell{border-radius:18px;padding:8px;gap:6px}.hud-block{padding:8px 10px;border-radius:12px}.fight-stage{padding:6px 10px 0;grid-template-columns:minmax(0,1fr) minmax(154px,220px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:8px}.fight-center{gap:0}.prompt-card-stage{padding:8px 10px}.prompt-card-stage h2{font-size:clamp(1.32rem,2.5vw,1.69rem)}.eyebrow{margin-bottom:4px;font-size:.66rem}.feedback-line{font-size:.82rem;margin-top:4px}.answer-panel{min-height:54px;padding:8px 10px}.answer-label{font-size:.72rem}.answer-panel strong{margin-top:4px;font-size:clamp(.8rem,1.35vw,.95rem)}.player{gap:4px}.player-body{width:clamp(143px,18.75vw,203px)}.player-shadow{width:198px;height:30px;bottom:4px}.player-name{font-size:.8rem}.timer-countdown{font-size:clamp(1.64rem,2.8vw,2rem)}}@media(orientation:landscape)and (min-width:1181px)and (max-width:1439px){.frame{padding:16px 0}.title-hero h1{font-size:clamp(4rem,10.5vw,8.6rem)}.belt-select-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr)}.answer-panel strong{font-size:1.2rem}}@media(orientation:landscape)and (min-width:1440px){.app-shell-panel{padding:18px}.frame{padding:20px 0}.title-hero h1{font-size:clamp(5rem,11vw,10rem)}.fight-stage{min-height:360px}.answer-panel strong{font-size:1.4rem}}@media(orientation:landscape)and (max-width:740px){.fight-stage{min-height:236px;grid-template-columns:1fr;grid-template-rows:auto;gap:12px;padding-top:8px}.answer-panel{min-height:67px}.answer-panel-left,.answer-panel-right{justify-self:stretch}.fight-prompt-row{order:-2}}@container (max-width: 1100px){.fight-hud{gap:8px}.hud-heart{height:clamp(5.5rem,14cqh,8rem)}.fight-stage{padding:8px 16px 0;grid-template-columns:minmax(0,1fr) minmax(210px,300px) minmax(0,1fr);gap:10px}.player{gap:6px}.player-body{width:clamp(210px,27cqw,340px)}.player-shadow{bottom:12px;width:320px;height:50px}.timer-countdown{font-size:clamp(1.8rem,8cqh,2.4rem)}.prompt-card-stage{padding:12px}.prompt-card-stage h2{font-size:clamp(1.5rem,4.2cqw,2.25rem)}.answer-panel{min-height:68px;padding:10px 12px}.answer-panel strong{margin-top:6px;font-size:clamp(.88rem,2.1cqw,1.05rem)}}@container (max-height: 430px){.fight-center{align-items:end;align-content:end}.fight-shell{border-radius:18px;gap:6px;padding:8px}.hud-block{padding:8px 10px;border-radius:12px}.hud-heart{height:clamp(4.75rem,24cqh,6.25rem)}.fight-stage{padding:6px 10px 0;grid-template-columns:minmax(0,1fr) minmax(154px,220px) minmax(0,1fr);gap:8px}.prompt-card-stage{padding:8px 10px}.prompt-card-stage h2{font-size:clamp(1.32rem,7cqh,1.69rem)}.answer-label{font-size:.72rem}.answer-panel{min-height:54px;padding:8px 10px}.answer-panel strong{margin-top:4px;font-size:clamp(.8rem,4.6cqh,.95rem)}.player{gap:4px}.player-body{width:clamp(150px,20cqw,220px);max-height:38cqh}.player-shadow{width:220px;height:34px;bottom:6px}.player-name{font-size:.8rem}.timer-countdown{font-size:clamp(1.64rem,8.2cqh,2rem)}}@container (min-height: 820px) and (min-width: 1280px){.fight-stage{gap:20px;padding-inline:24px}.player-body{width:clamp(300px,22cqw,520px)}.player-shadow{width:460px;height:72px}.timer-countdown{font-size:clamp(3.2rem,9.5cqh,5.4rem)}.answer-panel{max-width:34rem}.answer-panel-left{justify-self:end}.answer-panel-right{justify-self:start}}.player-placeholder{position:absolute;top:10%;right:15%;bottom:10%;left:15%;border-radius:50%;z-index:0}.player-sprite{position:relative;z-index:1}.error-toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:9999;background:#2a1a1a;border:1px solid #E63946;border-radius:.75rem;padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;color:#f5f0e8;font-size:.875rem;max-width:min(90vw,28rem);box-shadow:0 4px 20px #00000080}.error-toast p{margin:0;flex:1}.error-toast .button{flex-shrink:0;font-size:.75rem;padding:.25rem .75rem}
