#arena-canvas,#adventure-canvas{touch-action:none}.fullscreen-control{font-size:21px!important;min-width:44px;min-height:44px}.mobile-movement{display:flex;flex-direction:column;align-items:center;gap:10px;justify-content:flex-end}.movement-utility{display:flex;gap:10px;pointer-events:auto}.virtual-stick{position:relative;width:120px;height:120px;touch-action:none;pointer-events:auto;border-radius:50%;background:radial-gradient(circle,#b0c4a20e 0 43%,#0c1818b3 44% 70%,transparent 71%);border:1px solid #b7c7ad55;box-shadow:inset 0 0 20px #0c120b55;user-select:none;-webkit-user-select:none}.stick-ring{position:absolute;inset:15%;border:1px dashed #b7c7ad33;border-radius:50%}.stick-knob{position:absolute;width:44px;height:44px;left:calc(50% - 22px);top:calc(50% - 22px);border:1px solid #c6d8b080;border-radius:50%;background:linear-gradient(145deg,#8ba6899c,#3e554bda);box-shadow:0 4px 13px #0004;pointer-events:none}.virtual-stick.engaged .stick-knob{background:#bfceac;box-shadow:0 0 20px #bbd6b222}.virtual-stick small{position:absolute;top:calc(100% + 3px);left:0;right:0;text-align:center;font-size:7px;letter-spacing:.2em;color:#a9b4a5}.touch-device #touch-controls,.touch-device .adventure #adventure-touch{display:flex}.touch-device .keyboard-hint{display:none}
#touch-controls,#adventure-touch{bottom:max(28px,calc(env(safe-area-inset-bottom) + 12px))!important;left:max(16px,env(safe-area-inset-left))!important;right:max(16px,env(safe-area-inset-right))!important;align-items:flex-end;gap:20px;-webkit-touch-callout:none}
#touch-controls .touch-actions,#adventure-touch .explore-actions{display:grid;grid-template-columns:repeat(3,50px);gap:8px;align-content:end;align-items:end}
#touch-controls button,#touch-controls .touch-actions button,#adventure-touch button{width:50px;height:50px;min-width:44px;min-height:44px;margin:0;border:1px solid #c1d1b366;border-radius:50%;font-size:8px;font-weight:600;line-height:1.12;letter-spacing:.015em;background:#142322d9;color:#e8ecdd;box-shadow:0 3px 12px #0003;touch-action:none;user-select:none;-webkit-user-select:none;padding:4px}
#touch-controls button.pressed,#adventure-touch button.pressed{background:#bacbab!important;color:#14231c!important;transform:scale(.94)}
button[data-control="special"],button[data-control="ultimate"]{position:relative;isolation:isolate}button[data-control="special"]::before,button[data-control="ultimate"]::before{content:'';position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(#c2cfaa var(--charge,0%),#e6e9d515 0);mask:radial-gradient(transparent 64%,#000 66%);-webkit-mask:radial-gradient(transparent 64%,#000 66%);pointer-events:none}button[data-control="ultimate"]::before{background:conic-gradient(#ddbb83 var(--charge,0%),#e6e9d515 0)}button.charged{box-shadow:0 0 16px #d5bd7940!important}
.touch-device .battle-footer{bottom:max(5px,env(safe-area-inset-bottom));font-size:7px}.touch-device .timer-block button{width:44px;height:44px}.touch-device .arena-nav button,.touch-device .arena-nav select{min-height:44px}.touch-device .arena-nav button{padding:0 7px}.touch-device .arena-nav>div{gap:4px}
@media(max-width:700px){.arena-nav,.playing .arena-nav{padding:6px max(12px,env(safe-area-inset-left));gap:8px;min-height:56px}.arena-nav .wordmark,.playing .arena-nav .wordmark{font-size:19px;letter-spacing:.03em}.arena-nav .wordmark span{display:none}.arena-nav>div{gap:2px!important;flex-wrap:nowrap!important;letter-spacing:0}.arena-nav>div>a{display:none}.arena-nav button{font-size:8px!important}.arena-nav .fullscreen-control{font-size:20px!important}.quality-control select{max-width:64px;min-height:38px}.arena-nav .quality-control small{display:none}.hud{top:calc(67px + env(safe-area-inset-top));left:15px;right:15px;gap:10px;grid-template-columns:1fr 48px 1fr}.fighter-name strong{font-size:27px}.fighter-name span{display:none}.timer-block strong{font-size:38px}.timer-block button{margin-top:6px}.under-health{font-size:8px}.awakening-label,.spirit-label{letter-spacing:.03em;font-size:7px;line-height:1.4}.awakening,.spirit{width:90%;margin-top:5px}.health{height:10px}#move-readout{top:222px;font-size:8px;padding:0 40px}#special-name{bottom:220px;font-size:21px}.ultimate-title{font-size:23px!important;padding:10px!important}.adventure .hero-status{top:70px;width:170px;left:15px}.hero-status-name{margin-bottom:6px}.hero-status-name img{width:29px;height:34px}.hero-status-name strong{font-size:27px}.hero-status-name span{font-size:8px}.hero-status .status-line{font-size:7px;gap:10px}.hero-status .spirit-label,.hero-status .awakening-label{font-size:7px}.adventure .quest{top:256px;left:15px;transform:none;width:calc(100% - 30px);text-align:left}.quest strong{font-size:10px}.quest>span:last-child{font-size:8px;letter-spacing:.07em}.quest .eyebrow{display:none}.adventure #minimap{top:74px;right:15px;width:80px;height:80px}.adventure #boss-status{bottom:220px;left:15%;right:15%;font-size:18px}.adventure #mission-brief{bottom:220px;max-width:320px;width:85%;font-size:10px}.adventure #adventure-notice{top:42%;font-size:27px;padding:0 20px}.adventure #adventure-combo{top:48%;font-size:27px}.adventure .adventure-intro{height:calc(100dvh - 56px);min-height:0;align-items:flex-start;padding:25px 6vw 40px;overflow:auto}.adventure-intro>img{position:fixed;height:75vh;width:85%;bottom:0;right:-20%;opacity:.45}.adventure .arena-nav>div{gap:2px!important}.adventure .arena-nav #help{display:none}.adventure .arena-nav button{font-size:8px!important}.adventure .arena-nav .fullscreen-control{font-size:20px!important}.adventure .arena-nav #sound{max-width:43px;line-height:1.2}.adventure #adventure-help .mobile-guide{display:block}.adventure .quality-control select{max-width:59px}}
@media(max-width:380px){#touch-controls,#adventure-touch{left:10px!important;right:10px!important;gap:12px}#touch-controls .touch-actions,#adventure-touch .explore-actions{grid-template-columns:repeat(3,46px);gap:7px}#touch-controls button,#touch-controls .touch-actions button,#adventure-touch button{width:46px;height:46px;font-size:7px}.virtual-stick{width:108px;height:108px}.arena-nav .wordmark,.playing .arena-nav .wordmark{font-size:16px}.arena-nav button{padding:0 5px!important}.fullscreen-control{min-width:36px}.adventure .arena-nav .wordmark{font-size:16px}.adventure .quality-control select{max-width:54px}}
@media(max-height:540px) and (orientation:landscape){.arena-nav,.playing .arena-nav{padding:0 max(16px,env(safe-area-inset-left));height:44px;min-height:44px}.playing .arena-nav .wordmark{font-size:18px}.arena-nav>div{gap:8px}.arena-nav>div>a{display:none}.hud{top:49px;left:24px;right:24px;grid-template-columns:1fr 56px 1fr;gap:25px}.fighter-name strong{font-size:23px}.timer-block strong{font-size:31px}.timer-block button{margin-top:3px}.health{height:8px}.under-health{margin:1px 0;font-size:7px}.round-dots{font-size:14px}.spirit-label,.awakening-label{font-size:6px;line-height:1.3}.awakening{margin-top:4px}.fighter-hud .spirit,.fighter-hud .awakening{width:50%}.fighter-hud .spirit-label,.fighter-hud .awakening-label{max-width:55%}.fighter-hud.right .spirit-label,.fighter-hud.right .awakening-label{margin-left:auto}#move-readout{top:155px;font-size:7px}#touch-controls,#adventure-touch{bottom:max(15px,calc(env(safe-area-inset-bottom) + 6px))!important;left:max(16px,env(safe-area-inset-left))!important;right:max(16px,env(safe-area-inset-right))!important}#touch-controls .touch-actions{grid-template-columns:repeat(4,46px);gap:8px}#adventure-touch .explore-actions{grid-template-columns:repeat(5,46px);gap:8px}#touch-controls button,#touch-controls .touch-actions button,#adventure-touch button{height:46px;width:46px;font-size:7px}.mobile-movement{flex-direction:row-reverse;gap:12px;align-items:flex-end}.movement-utility{flex-direction:column;gap:6px}.virtual-stick{width:100px;height:100px}.virtual-stick small{display:none}#special-name{bottom:125px;left:23%;right:23%;font-size:20px}.ultimate-title{font-size:21px!important}.adventure .hero-status{top:49px;left:20px;width:175px}.adventure .hero-status-name{margin-bottom:2px}.adventure .hero-status-name strong{font-size:23px}.adventure .hero-status-name img{width:22px;height:28px}.hero-status-name span{font-size:7px}.hero-status .status-line{margin:2px 0;font-size:7px}.hero-status .awakening-label,.hero-status .spirit-label{font-size:6px}.adventure #adventure-move{font-size:7px;margin-top:4px}.adventure .quest{top:55px;left:50%;transform:translateX(-50%);width:32%;text-align:center}.quest strong{font-size:10px}.quest>span:last-child{font-size:7px;margin-top:4px}.adventure #minimap{top:49px;width:72px;height:72px;right:20px}.adventure #boss-status{bottom:26px;left:32%;right:40%;font-size:15px}.adventure #mission-brief{bottom:35px;left:39%;width:27%;font-size:8px;padding:8px}.adventure #adventure-notice{top:36%;font-size:25px}.adventure #adventure-combo{top:50%;font-size:24px}.adventure .adventure-intro{height:calc(100dvh - 44px);min-height:0;overflow:auto;padding:18px 5vw 35px}.adventure .arena-nav #help{display:block}.adventure .arena-nav #sound{max-width:none}}
@media(max-width:380px){.adventure .arena-nav .wordmark{font-size:0;width:24px}.adventure .arena-nav .wordmark:before{content:"◈";font-size:22px}.adventure .arena-nav #open-map{font-size:0!important;min-width:44px}.adventure .arena-nav #open-map:after{content:"MAP";font-size:8px}.adventure .arena-nav #pause{font-size:0!important;min-width:44px}.adventure .arena-nav #pause:after{content:"Ⅱ";font-size:18px}.fullscreen-control{min-width:44px}}
@media(any-pointer:coarse){.playing .arena-nav{padding-top:env(safe-area-inset-top)}.virtual-stick.sprinting{border-color:#d3c18a;box-shadow:0 0 20px #d3c18a18}}
