:root{--ink: #120c22;--ink2: #1e1430;--cream: #fff3e0;--cream-dim: rgba(255, 243, 224, .7);--gold: #ffc94a;--gold2: #ff9a2a;--red: #ff3a5a;--line: rgba(255, 230, 190, .22);--brush: "Yuji Syuku", "Shippori Mincho B1", serif;--mincho: "Shippori Mincho B1", "Hiragino Mincho ProN", serif;--jp: "Zen Kaku Gothic New", "Hiragino Sans", system-ui, sans-serif;--num: "Dela Gothic One", "Zen Kaku Gothic New", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--snap: cubic-bezier(.34, 1.7, .5, 1)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ink);overflow:hidden}body{font-family:var(--jp);color:var(--cream);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none}#app{position:fixed;inset:0}#gl{position:absolute;inset:0;width:100%;height:100%;display:block}button{font-family:inherit;color:inherit;cursor:pointer}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:1.8em;height:1.6em;padding:0 .4em;margin:0 .2em;border-radius:4px;border:1px solid rgba(255,243,224,.45);border-bottom-width:2px;font-family:var(--jp);font-size:.74em;font-weight:700;background:#ffffff0f}.touch-only,body.touch .desk-only,body.touch .kbd{display:none}body.touch .touch-only{display:inline}.eyebrow{margin:0 0 .5em;font-family:var(--jp);font-weight:700;font-size:11px;letter-spacing:.5em;color:var(--gold)}.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .5s var(--ease)}.screen.show{opacity:1;pointer-events:auto}.hidden{display:none!important}#loading{background:radial-gradient(110% 80% at 50% 120%,#4a1a3a,#1e1430,#0a0614);gap:22px}.load-mark span{display:block;font-family:var(--brush);font-size:96px;color:var(--gold);text-shadow:0 0 30px rgba(255,180,60,.6);animation:breathe 1.6s ease-in-out infinite}@keyframes breathe{0%,to{opacity:.5;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}.load-text{font-size:13px;letter-spacing:.3em;color:var(--cream-dim)}.load-bar{width:200px;height:2px;background:#ffffff1f;overflow:hidden}.load-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--gold));transition:width .4s var(--ease)}#title{background:radial-gradient(80% 60% at 50% 45%,#0a061400,#0a06148c),linear-gradient(180deg,rgba(10,6,20,.5),transparent 30%,transparent 60%,rgba(10,6,20,.85));justify-content:center}.title-wrap{display:flex;flex-direction:column;align-items:center;margin-top:-6vh}.title-pre{margin:0 0 10px;font-size:11px;letter-spacing:.7em;color:var(--gold);opacity:0;animation:fadeUp 1s var(--ease) .2s both}.logo{margin:0;display:flex;gap:.02em;font-family:var(--brush);font-weight:400;font-size:clamp(84px,15vw,210px);line-height:1}.logo .ch{display:inline-block;color:var(--cream);text-shadow:0 0 40px rgba(255,90,60,.45),0 6px 0 rgba(90,20,40,.6);animation:inkIn 1.1s var(--snap) both}.logo .ch:nth-child(1){animation-delay:.35s}.logo .ch:nth-child(2){animation-delay:.5s;color:var(--gold)}.logo .ch:nth-child(3){animation-delay:.65s}.logo .ch:nth-child(4){animation-delay:.8s;color:#ff6a7a}@keyframes inkIn{0%{opacity:0;transform:scale(1.8) rotate(-8deg);filter:blur(18px)}60%{opacity:1;filter:blur(0)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.logo-en{margin:14px 0 0;font-family:var(--mincho);font-weight:800;letter-spacing:.9em;padding-left:.9em;font-size:15px;color:var(--cream-dim);animation:fadeUp 1s var(--ease) 1.1s both}.tagline{margin:22px 0 0;font-family:var(--mincho);font-weight:600;font-size:clamp(15px,1.8vw,19px);letter-spacing:.2em;text-shadow:0 2px 14px rgba(0,0,0,.9);animation:fadeUp 1s var(--ease) 1.3s both}.start{position:absolute;bottom:14vh;padding:15px 38px;border:0;background:linear-gradient(90deg,transparent,rgba(255,58,90,.85) 18%,rgba(255,120,60,.85) 82%,transparent);font-size:16px;font-weight:900;letter-spacing:.3em;clip-path:polygon(4% 0,100% 0,96% 100%,0 100%);animation:fadeUp 1s var(--ease) 1.6s both,glow 2s ease-in-out 2.6s infinite}@keyframes glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.3) drop-shadow(0 0 16px rgba(255,120,60,.8))}}.title-best{position:absolute;bottom:calc(14vh - 36px);font-size:12px;letter-spacing:.2em;color:var(--cream-dim)}.corner-btn{position:absolute;top:18px;right:18px;padding:8px 14px;border:1px solid var(--line);background:#120c2299;font-size:12px;backdrop-filter:blur(6px)}.title-foot{position:absolute;bottom:12px;left:18px;right:18px;text-align:center;font-size:10px;color:#fff3e073}#select{justify-content:space-between;padding:5vh 0 4vh;background:linear-gradient(90deg,#0a061400 40%,#0a0614b3),linear-gradient(180deg,rgba(10,6,20,.5),transparent 25%,transparent 65%,rgba(10,6,20,.85))}.sel-head{text-align:center}.sel-head h2{margin:0;font-family:var(--brush);font-weight:400;font-size:clamp(36px,5vw,56px);text-shadow:0 2px 20px rgba(0,0,0,.8)}.sel-side{position:absolute;right:6vw;top:50%;transform:translateY(-50%);width:min(380px,40vw);display:flex;flex-direction:column;gap:18px}.sel-name{font-family:var(--brush);font-size:clamp(42px,5vw,68px);line-height:1.1;text-shadow:0 0 30px rgba(255,120,60,.5)}.sel-weapon{display:flex;align-items:center;gap:8px}.wp-card{flex:1;display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);background:#120c22a6;backdrop-filter:blur(8px)}.wp-card img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}.wp-card small{display:block;font-size:10px;letter-spacing:.4em;color:var(--gold)}.wp-card b{font-size:18px;font-weight:900}.wp-path{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:12px;color:#fff3e0cc}.wp-path:empty{display:none}.wp-path svg{width:38px;height:22px;flex:none}.wp-path em{font-style:normal;font-weight:900;color:var(--gold)}.arrow{width:38px;height:64px;border:1px solid var(--line);background:#120c2280;font-size:26px}.arrow:hover{background:#ffc94a33}.sel-moves{list-style:none;margin:0;padding:0;font-size:13px;color:var(--cream-dim);display:flex;flex-direction:column;gap:6px}.sel-moves em{font-style:normal;margin-left:8px}.sel-bottom{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}.sel-strip{display:flex;gap:10px;max-width:94vw;overflow-x:auto;padding:10px;scrollbar-width:none}.sel-strip button{flex:none;width:72px;height:72px;padding:0;border:2px solid rgba(255,243,224,.2);background:#120c22b3;overflow:hidden;transform:rotate(45deg) scale(.86);transition:transform .3s var(--snap),border-color .2s}.sel-strip button img{width:140%;height:140%;margin:-20%;object-fit:cover;transform:rotate(-45deg)}.sel-strip button.on{border-color:var(--gold);transform:rotate(45deg) scale(1);box-shadow:0 0 22px #ffc94a80}.sel-foot{display:flex;align-items:center;gap:22px;font-size:13px;color:var(--cream-dim)}.primary{padding:13px 34px;border:0;background:linear-gradient(90deg,#ff3a5a,#ff7a3a);font-weight:900;font-size:15px;letter-spacing:.25em;clip-path:polygon(6% 0,100% 0,94% 100%,0 100%)}.primary:hover{filter:brightness(1.15)}#hud{position:absolute;inset:0;pointer-events:none}.hud-tl{position:absolute;top:18px;left:22px;display:flex;gap:12px;align-items:center}.hud-face{width:64px;height:64px;transform:rotate(45deg);border:2px solid var(--gold);overflow:hidden;background:var(--ink2);box-shadow:0 0 18px #ffc94a59}.hud-face img{width:142%;height:142%;margin:-21%;object-fit:cover;transform:rotate(-45deg)}.hud-bars{position:relative;display:flex;flex-direction:column;gap:6px;margin-left:8px}.hud-name{font-family:var(--brush);font-size:22px;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.9)}#hud-rank{position:absolute;top:-2px;right:0;font-family:var(--brush);font-size:18px;color:var(--gold);text-shadow:0 0 12px rgba(255,180,60,.8),0 2px 6px rgba(0,0,0,.9)}#hud-rank.up{animation:bump .5s var(--snap)}.bar{position:relative;height:12px;width:min(360px,34vw);background:#0a0614b3;border:1px solid rgba(255,243,224,.25);transform:skew(-24deg);overflow:hidden}.bar i,.bar b{position:absolute;left:0;top:0;bottom:0;width:100%;transform-origin:left}.bar.hp i{background:linear-gradient(180deg,#8affb0,#22c46a);z-index:2;transition:transform .12s}.bar.hp b{background:#ff4a4a;z-index:1;transition:transform .6s .3s}.bar.hp.low i{background:linear-gradient(180deg,#ff9a7a,#ff3a3a);animation:lowhp .7s ease-in-out infinite}@keyframes lowhp{50%{filter:brightness(1.6)}}.bar.mu{height:16px;width:min(300px,28vw)}.bar.mu i{background:linear-gradient(90deg,#ff7a2a,#ffc94a 70%,#fff3b0);transition:transform .15s}.bar.mu i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.7) 50%,transparent 100%);background-size:40% 100%;background-repeat:no-repeat;animation:shimmer 1.4s linear infinite}@keyframes shimmer{0%{background-position:-40% 0}to{background-position:140% 0}}.mu-label{position:absolute;right:6px;top:-1px;font-family:var(--brush);font-size:13px;transform:skew(24deg);opacity:0;color:#2a0a10;z-index:3}.bar.mu.full{border-color:var(--gold);box-shadow:0 0 18px #ffc94acc;animation:full .6s ease-in-out infinite alternate}.bar.mu.full .mu-label{opacity:1}@keyframes full{to{box-shadow:0 0 30px #ffa028}}.hud-tc{position:absolute;top:18px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px}.objective{font-family:var(--mincho);font-weight:800;font-size:15px;letter-spacing:.15em;padding:6px 22px;background:linear-gradient(90deg,transparent,rgba(10,6,20,.75) 20%,rgba(10,6,20,.75) 80%,transparent);white-space:nowrap}.objective b{color:var(--gold)}.foe{display:flex;flex-direction:column;align-items:center;gap:4px;opacity:0;transition:opacity .3s}.foe.on{opacity:1}.foe-name{font-family:var(--brush);font-size:20px;text-shadow:0 2px 8px rgba(0,0,0,.9)}.foe-bar{width:min(520px,50vw);height:10px}.foe-bar i{background:linear-gradient(180deg,#ff7a8a,#d8203a);transition:transform .15s}.hud-tr{position:absolute;top:14px;right:18px}#minimap{width:180px;height:180px;border-radius:50%;border:1px solid var(--line);background:#0a06148c;box-shadow:inset 0 0 30px #0009}.hud-r{position:absolute;right:26px;top:220px;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.ko{display:flex;align-items:baseline;gap:8px}.ko small{font-family:var(--brush);font-size:20px;color:var(--cream-dim)}.ko b{font-family:var(--num);font-weight:400;font-size:46px;line-height:1;color:var(--cream);text-shadow:0 3px 0 rgba(90,20,40,.8),0 0 20px rgba(255,120,60,.4);font-variant-numeric:tabular-nums}.ko b.bump{animation:bump .25s var(--snap)}@keyframes bump{0%{transform:scale(1.25);color:var(--gold)}}.combo{display:flex;align-items:baseline;gap:6px;opacity:0;transform-origin:right center;transition:opacity .3s}.combo.on{opacity:1}.combo b{font-family:var(--num);font-weight:400;font-size:64px;line-height:1;background:linear-gradient(180deg,#fff6c8,#ffc94a 50%,#ff6a2a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 rgba(90,20,40,.9))}.combo small{font-family:var(--num);font-size:22px;color:var(--gold)}.combo.pop{animation:comboPop .18s var(--snap)}.combo.hot b{background:linear-gradient(180deg,#fff,#ff9ad0 40%,#ff2a5a);-webkit-background-clip:text;background-clip:text}@keyframes comboPop{0%{transform:scale(1.35) rotate(-4deg)}}#chain{position:absolute;left:50%;top:15%;display:flex;align-items:baseline;gap:10px;transform:translate(-50%) scale(var(--k, 1));transform-origin:center;opacity:0;transition:opacity .35s;pointer-events:none}#chain.on{opacity:1;transition:opacity .05s}#chain small{font-family:var(--brush);font-size:30px;color:var(--cream);text-shadow:0 2px 10px rgba(0,0,0,.9)}#chain b{font-family:var(--num);font-weight:400;font-size:72px;line-height:1;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#fff,#ffe08a 45%,#ff7a2a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 rgba(90,20,40,.9)) drop-shadow(0 0 18px rgba(255,140,40,.55))}#chain.hot b{background:linear-gradient(180deg,#fff,#ffb0e0 40%,#ff2a5a);-webkit-background-clip:text;background-clip:text}#chain.tick b{animation:chainTick .14s var(--snap)}#chain.end b{animation:chainEnd .5s var(--snap)}@keyframes chainTick{0%{transform:scale(1.3) translateY(-4px)}}@keyframes chainEnd{0%{transform:scale(1.7);filter:brightness(2) drop-shadow(0 0 30px #ffb040)}}#chain-pops{position:absolute;inset:0;pointer-events:none;overflow:hidden}#chain-pops i{position:absolute;left:0;top:0;font-style:normal;font-family:var(--num);font-size:22px;line-height:1;color:#fff3c0;white-space:nowrap;will-change:transform,opacity;text-shadow:0 2px 0 rgba(90,20,40,.95),0 0 10px rgba(255,150,40,.9)}#chain-pops i.hot{color:#ffd0ec;text-shadow:0 2px 0 rgba(90,20,40,.95),0 0 12px rgba(255,60,140,.95)}#route .load{margin-left:10px;font-family:var(--num);font-weight:400;font-size:1.35em;color:#ffc040;text-shadow:0 2px 0 rgba(90,20,40,.9),0 0 10px rgba(255,160,40,.7)}#chain-pops .chain-reward{position:absolute;left:0;top:0;display:grid;justify-items:center;gap:2px;white-space:nowrap;will-change:transform,opacity;text-shadow:0 2px 0 rgba(90,20,40,.95),0 0 14px rgba(255,150,40,.8)}#chain-pops .chain-reward b{font-family:var(--num);font-weight:400;font-size:44px;line-height:1;color:#ffd060}#chain-pops .chain-reward b small{font-family:var(--brush);font-size:22px;margin-left:4px;color:var(--cream)}#chain-pops .chain-reward span{font-family:var(--mincho);font-weight:800;font-size:16px;letter-spacing:.15em;color:var(--cream)}#hint{position:absolute;left:50%;bottom:96px;transform:translate(-50%);font-family:var(--mincho);font-weight:800;font-size:16px;letter-spacing:.2em;color:var(--gold);padding:6px 26px;background:linear-gradient(90deg,transparent,rgba(10,6,20,.8) 20%,rgba(10,6,20,.8) 80%,transparent);opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}#hint.on{opacity:1;animation:bump .3s var(--snap)}#banner{position:absolute;left:0;right:0;top:30%;display:flex;flex-direction:column;align-items:center;pointer-events:none}#banner .bn{display:flex;flex-direction:column;align-items:center;animation:bnIn 2.6s var(--ease) both}#banner .bn .k{font-family:var(--brush);font-size:clamp(64px,10vw,130px);line-height:1;color:var(--cream);text-shadow:0 0 40px rgba(255,90,60,.7),0 6px 0 rgba(90,20,40,.8);letter-spacing:.08em}#banner .bn .s{margin-top:6px;font-family:var(--mincho);font-weight:800;font-size:16px;letter-spacing:.4em;color:var(--gold);padding:4px 30px;background:linear-gradient(90deg,transparent,rgba(10,6,20,.8) 20%,rgba(10,6,20,.8) 80%,transparent)}#banner .bn.gold .k{color:var(--gold)}#banner .bn.red .k{color:#ff6a7a}#banner .bn:before{content:"";position:absolute;width:min(900px,90vw);height:140px;margin-top:0;background:radial-gradient(50% 50% at 50% 50%,rgba(10,6,20,.7),transparent 70%);z-index:-1}@keyframes bnIn{0%{opacity:0;transform:scale(1.6);filter:blur(12px)}10%{opacity:1;transform:scale(.97);filter:blur(0)}14%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(1.02) translateY(-10px)}}#help{position:absolute;bottom:14px;left:50%;transform:translate(-50%);display:flex;gap:18px;font-size:11.5px;color:#fff3e09e;white-space:nowrap;transition:opacity 1s}#help.fade{opacity:0}body.touch #help{display:none}#tags{position:absolute;inset:0}.tag{position:absolute;transform:translate(-50%,-100%);font-family:var(--mincho);font-weight:800;font-size:13px;white-space:nowrap;padding:2px 10px;background:#0a0614b3;border-left:3px solid var(--red)}.tag.boss{font-size:16px;border-left-color:var(--gold)}#cutin{position:absolute;inset:0;pointer-events:none;opacity:0}#cutin.on{opacity:1}.ci-band{position:absolute;left:-10%;right:-10%;top:50%;height:34vh;transform:translateY(-50%) rotate(-8deg) scaleY(0);background:linear-gradient(90deg,#14060ef5,#781428f0 50%,#14060ef5);overflow:hidden;box-shadow:0 0 0 3px var(--gold),0 0 60px #ff5a2899}#cutin.on .ci-band{animation:band .9s var(--ease) both}@keyframes band{0%{transform:translateY(-50%) rotate(-8deg) scaleY(0)}14%{transform:translateY(-50%) rotate(-8deg) scaleY(1)}82%{transform:translateY(-50%) rotate(-8deg) scaleY(1);opacity:1}to{transform:translateY(-50%) rotate(-8deg) scaleY(1.4);opacity:0}}.ci-lines{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#ffdca000 0 40px,#ffdca01f 40px 44px);animation:lines .25s linear infinite}@keyframes lines{to{background-position:-88px 0}}.ci-face{position:absolute;left:8%;top:6%;bottom:6%;width:30%;clip-path:polygon(14% 0,100% 0,86% 100%,0 100%);background:linear-gradient(160deg,#fff6e6,#ffd8a8);opacity:0}.ci-face:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffc94a00 60%,#ffc94a80)}#ci-img{position:absolute;left:0;top:0;width:100%;height:170%;object-fit:cover;object-position:50% 0}#cutin.on .ci-face{animation:ciImg .9s var(--ease) both}@keyframes ciImg{0%{transform:translate(-80%);opacity:0}18%{transform:translate(0);opacity:1}82%{transform:translate(4%);opacity:1}to{transform:translate(10%);opacity:0}}.ci-text{position:absolute;right:10%;top:50%;transform:translateY(-50%) rotate(8deg);display:flex;gap:.05em;font-family:var(--brush);font-size:clamp(90px,14vw,200px);line-height:1}.ci-text span{color:var(--cream);text-shadow:0 0 30px rgba(255,180,60,.9),0 6px 0 #5a0a1a}.ci-text span:nth-child(2){color:var(--gold)}#cutin.on .ci-text span{animation:ciCh .9s var(--snap) both}#cutin.on .ci-text span:nth-child(2){animation-delay:.08s}@keyframes ciCh{0%{transform:scale(2.4);opacity:0;filter:blur(10px)}25%{transform:scale(1);opacity:1;filter:blur(0)}85%{opacity:1}to{opacity:0}}.ci-name{position:absolute;right:12%;bottom:12%;transform:rotate(8deg);font-family:var(--mincho);font-weight:800;letter-spacing:.5em;font-size:14px;color:var(--gold)}#letterbox i{position:absolute;left:0;right:0;height:0;background:#000;transition:height .45s var(--ease);z-index:5}#letterbox i:first-child{top:0}#letterbox i:last-child{bottom:0}#letterbox.on i{height:10vh}#result{background:radial-gradient(70% 60% at 50% 50%,#0a061480,#0a0614e6)}.res-wrap{display:flex;flex-direction:column;align-items:center}.res-wrap h2{margin:0;font-family:var(--brush);font-weight:400;font-size:clamp(56px,8vw,96px);line-height:1;text-shadow:0 0 40px rgba(255,90,60,.6)}.res-rank{margin:10px 0 6px;font-family:var(--brush);font-size:150px;line-height:1;color:var(--gold);text-shadow:0 0 50px rgba(255,160,40,.8),0 8px 0 #5a0a1a}#result.show .res-rank{animation:stamp .7s var(--snap) .5s both}@keyframes stamp{0%{transform:scale(3) rotate(-20deg);opacity:0}to{transform:rotate(-6deg);opacity:1}}.stats{display:grid;grid-template-columns:auto auto auto;gap:8px 26px;margin:10px 0 26px;font-size:15px}.stats dt{color:var(--cream-dim);letter-spacing:.15em}.stats dd{margin:0;font-family:var(--num);font-size:20px;text-align:right}.stats .best{font-family:var(--jp);font-size:11px;color:var(--gold);align-self:center}.stats .best.new{color:#ff6a7a;font-weight:900;animation:full .5s infinite alternate}.res-actions,.menu{display:flex;gap:14px;align-items:center}.res-actions button:not(.primary),.menu button:not(.primary){padding:12px 22px;border:1px solid var(--line);background:#120c2299;font-size:14px}.card{padding:30px 40px;border:1px solid var(--line);background:#0e091ae0;backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;gap:6px}.card h2{margin:0 0 12px;font-family:var(--brush);font-weight:400;font-size:48px}.menu{flex-direction:column}.go-hint{margin:0 0 16px;color:var(--cream-dim);font-size:14px}.movelist{border-collapse:collapse;margin-bottom:16px;font-size:13px}.movelist td{padding:4px 12px;border-bottom:1px solid rgba(255,243,224,.08)}.movelist td:first-child{white-space:nowrap}.movelist td:nth-child(2){font-family:var(--mincho);font-weight:800;color:var(--gold)}.movelist td:nth-child(3){color:var(--cream-dim)}#flash{position:absolute;inset:0;pointer-events:none;background:#fff;opacity:0}#touch{position:absolute;inset:0;display:none}body.touch #touch.on{display:block}.stick{position:absolute;left:22%;top:70%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:2px solid rgba(255,243,224,.25);background:#0a061440}.stick .knob{position:absolute;left:50%;top:50%;width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;background:#fff3e073}.tbtns{position:absolute;right:18px;bottom:18px;width:230px;height:230px}.tbtn{position:absolute;width:70px;height:70px;border-radius:50%;border:2px solid rgba(255,243,224,.4);background:#0a061473;font-family:var(--brush);font-size:24px}.tbtn.on{background:#ffc94a66}.tbtn.attack{right:0;bottom:70px;width:84px;height:84px;font-size:30px}.tbtn.heavy{right:90px;bottom:120px}.tbtn.jump{right:90px;bottom:30px}.tbtn.dodge{right:10px;bottom:0;width:56px;height:56px;font-size:18px}.tbtn.musou{right:20px;bottom:165px;width:64px;height:64px;font-size:18px;border-color:var(--gold)}.tpause{position:absolute;top:16px;left:50%;margin-left:-20px;width:40px;height:40px;border:1px solid var(--line);background:#0a061480;display:flex;gap:5px;align-items:center;justify-content:center}.tpause i{width:4px;height:16px;background:var(--cream)}@media(max-width:760px){#minimap{width:120px;height:120px}.hud-r{top:150px;right:16px}.ko b{font-size:34px}.combo b{font-size:46px}#chain b{font-size:50px}#chain small{font-size:22px}.sel-side{position:static;transform:none;width:90vw}.stats{grid-template-columns:auto auto}.stats .best{display:none}.offer-cards{gap:8px}.offer-cards button{width:28vw;padding:10px}.offer-cards button b{font-size:20px}.offer-cards button small{font-size:11px}}.honors{list-style:none;margin:-10px 0 24px;padding:0;display:flex;gap:16px;font-size:12px;color:#fff3e066}.honors li{display:flex;align-items:center;gap:6px}.honors i{width:14px;height:14px;transform:rotate(45deg);border:1px solid rgba(255,243,224,.35)}.honors li.on{color:var(--gold)}.honors li.on i{background:var(--gold);border-color:var(--gold);box-shadow:0 0 10px #ffc94acc}.honors li.new{animation:full .5s infinite alternate}.blessed{display:flex;gap:6px;flex-wrap:wrap;max-width:min(360px,34vw)}.blessed span{font-family:var(--mincho);font-weight:800;font-size:11px;letter-spacing:.1em;color:var(--gold);padding:1px 8px;border:1px solid rgba(255,201,74,.5);background:#0a061499;animation:bump .4s var(--snap)}#offer{position:absolute;left:50%;bottom:92px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;transition:opacity .2s;pointer-events:none}#offer.on{opacity:1;pointer-events:auto}.offer-head{position:relative;font-family:var(--brush);font-size:26px;color:var(--gold);letter-spacing:.2em;text-shadow:0 0 18px rgba(255,150,60,.7),0 2px 8px rgba(0,0,0,.9);padding-bottom:6px}.offer-head i{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);transform-origin:left;box-shadow:0 0 8px #ffc94ae6}.offer-cards{display:flex;gap:14px}.offer-cards button{all:unset;cursor:pointer;position:relative;width:210px;padding:14px 16px 16px;background:linear-gradient(180deg,#281228eb,#0e0818eb);border:1px solid rgba(255,201,74,.55);box-shadow:0 0 24px #ff8c5040;display:flex;flex-direction:column;gap:6px;animation:cardIn .35s var(--snap) both;transition:transform .12s,border-color .12s,opacity .25s}.offer-cards button:nth-child(2){animation-delay:.05s}.offer-cards button:nth-child(3){animation-delay:.1s}.offer-cards button:hover{transform:translateY(-4px);border-color:var(--gold)}.offer-cards button b{font-family:var(--brush);font-size:30px;line-height:1.1;color:var(--cream);text-shadow:0 0 14px rgba(255,120,160,.6)}.offer-cards button small{font-size:13px;line-height:1.5;color:#fff3e0d9}.offer-cards button .kbd{position:absolute;top:10px;right:10px;color:var(--gold);border-color:var(--gold)}.offer-cards button.first{border-color:var(--gold)}.offer-cards button.picked{animation:none;transform:scale(1.08);border-color:#fff;box-shadow:0 0 40px #ffdc8ce6}.offer-cards button.gone{animation:none;opacity:0;transform:translateY(10px)}body.touch .offer-cards button .kbd{display:none}@keyframes cardIn{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:none}}#route{position:absolute;left:50%;bottom:52px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transition:opacity .25s}#route.on{opacity:1}#route .pips{display:flex;gap:8px}#route .pips i{width:12px;height:12px;transform:rotate(45deg);border:1px solid rgba(255,243,224,.4);background:#0a061480;transition:background .1s,box-shadow .1s}#route .pips i.on{background:var(--gold);border-color:var(--gold);box-shadow:0 0 10px #ffc94ae6}#route .next{font-family:var(--mincho);font-weight:800;font-size:14px;letter-spacing:.15em;text-shadow:0 2px 8px rgba(0,0,0,.9)}#route .next .kbd{color:var(--gold);border-color:var(--gold)}body.touch #route .next .kbd{display:inline-flex}@media(max-height:520px){.logo{font-size:72px}.title-wrap{margin-top:-14vh}.tagline{margin-top:10px;font-size:13px}.logo-en{margin-top:6px;font-size:11px}.start{bottom:7vh;padding:10px 28px;font-size:14px}.title-best{bottom:2vh}.title-foot{display:none}#select{padding:2vh 0}.sel-head h2{font-size:26px}.sel-head .eyebrow{display:none}.sel-side{position:absolute;top:46%;right:3vw;width:42vw;gap:8px}.sel-name{font-size:30px}.sel-moves{display:none}.wp-card{padding:6px 10px}.wp-card img{width:44px;height:44px}.wp-card b{font-size:14px}.arrow{height:48px;width:30px}.sel-strip button{width:50px;height:50px}.sel-bottom{gap:6px}.hud-face{width:46px;height:46px}.hud-name{font-size:16px}.bar{width:30vw;height:9px}.bar.mu{width:24vw;height:12px}#minimap{width:96px;height:96px}.objective{font-size:12px;padding:4px 14px}.hud-tc{top:10px}.hud-r{left:22px;right:auto;top:96px;align-items:flex-start}.ko b{font-size:28px}.ko small{font-size:14px}.combo b{font-size:38px}.combo small{font-size:16px}#chain{top:12%}#chain b{font-size:40px}#chain small{font-size:18px}.tpause{top:auto;bottom:14px;left:50%}#route{bottom:64px}#offer{bottom:44px;gap:6px}.offer-head{font-size:18px}.offer-cards button{width:24vw;padding:8px 10px}.offer-cards button b{font-size:20px}.offer-cards button small{font-size:11px}.blessed span{font-size:9px}.tbtns{transform:scale(.82);transform-origin:right bottom}#banner .bn .k{font-size:56px}.foe-bar{width:40vw}}
