.mobile-stage-tools,.mobile-help,#mobile-confirm-name{display:none}
.confirm-copy{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
#vs-sound{pointer-events:auto;min-width:90px;min-height:44px;margin-top:-10px;padding:8px 12px;border:1px solid #b7d8ff66;background:#07111be6;color:#dfedff;font-size:10px;letter-spacing:1px}
#vs-sound[aria-pressed=true]{color:#c0e8ff;border-color:#98daff}
@media(max-width:760px),(max-height:520px) and (pointer:coarse){
  .shell{height:100dvh;min-height:600px;padding:calc(96px + env(safe-area-inset-top,0px)) 0 calc(108px + env(safe-area-inset-bottom,0px));overflow:hidden}
  .topbar{position:absolute;top:calc(8px + env(safe-area-inset-top,0px));left:4%;right:4%;height:auto;display:grid;grid-template-columns:1fr auto;grid-template-rows:32px 42px;gap:6px 10px;align-items:center;z-index:45}
  .topbar{left:max(4%,env(safe-area-inset-left,0px));right:max(4%,env(safe-area-inset-right,0px))}
  .brand{grid-column:1;grid-row:1;font-size:10px;letter-spacing:1px;gap:8px}.brand-mark{font-size:24px}
  .header-actions{grid-column:2;grid-row:1;gap:13px}.sound{min-height:44px;font-size:9px}.fullscreen{min-width:44px;min-height:44px;padding:6px;font-size:23px}
  .mode-switch{position:static;transform:none;grid-column:1/-1;grid-row:2;display:flex;justify-content:center;gap:4px;width:100%;padding:2px}
  .mode-switch button{flex:1;min-height:38px;padding:7px 10px;font-size:11px;letter-spacing:2px}
  .main{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(150px,1fr) auto;flex:1;min-height:0;overflow:visible}
  .stage{height:auto;min-height:0;overflow:hidden;touch-action:pan-y pinch-zoom}
  .stage-top{top:10px;left:5%;right:5%;font-size:8px;letter-spacing:1px}.stage-top>span:first-child{display:none}
  .stage-top>span:last-child{margin-left:auto;padding-right:3px}
  .art-region{inset:-4% -4% -5% -4%;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(#000 57%,transparent 100%)}
  .art-image{object-fit:cover}.echo-art{inset:-10% 35% 10% -14%;opacity:.2}
  .ghost-number{font-size:48vw;top:3%;right:3%;opacity:.16}.vertical-caption,.stage-bottom,.stage-scan{display:none}
  .edge-one{top:5%;height:70%}.edge-two{bottom:16%}
  .shell .character-hud{position:absolute;inset:0;display:block;pointer-events:none;gap:0;z-index:10}
  .shell .character-info{position:absolute;left:5%;right:5%;bottom:10px!important;pointer-events:none}
  .character-type{margin:0 0 4px;font-size:8px;letter-spacing:2px;gap:9px}.character-type>span:last-child{font-size:8px}.type-line{width:23px}
  h1{font-size:clamp(31px,9.3vw,61px);gap:.14em;letter-spacing:0;line-height:1.12}
  .name-jp{margin:4px 0 0;gap:11px}.name-jp>span:first-child{font-size:19px;letter-spacing:3px}.name-jp>span:last-child{font-size:10px;letter-spacing:.4px}.jp-divider{width:20px}
  .shell .attributes{display:none;position:absolute;inset:53px 12px 8px;bottom:8px!important;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:auto;background:#050b17f5;border:1px solid rgba(var(--rgb),.6);padding:13px 15px;z-index:20}
  .mobile-details-open .attributes{display:block}.mobile-details-open .character-info{visibility:hidden}
  .style-heading{display:block;padding-bottom:9px;margin-bottom:10px}.style-label{display:flex;align-items:center;gap:8px}.style-label>span{font-size:9px}.style-label strong{font-size:17px;letter-spacing:1px}.profile{margin-top:8px;font-size:11px;border:0;padding:0;line-height:1.65}
  .attributes-body{display:block}.stats{gap:9px}.stat{grid-template-columns:78px 1fr 25px;gap:10px}.stat-label,.stat-value{font-size:11px}.stat-track{height:7px}.quote-block{border-left:0;border-top:1px solid #ffffff30;padding:9px 0 0;margin-top:11px}.quote{font-size:12px}.quote-caption,.quote-mark{display:none}
  .mobile-stage-tools{display:block;position:absolute;inset:0;z-index:25;pointer-events:none}
  .mobile-stage-tools button{position:absolute;pointer-events:auto;min-height:44px;border:1px solid #c3d8f94d;background:#06101cca;box-shadow:0 4px 14px #0008;color:#e4f1ff;touch-action:manipulation}
  #mobile-details{top:4px;left:12px;padding:10px 13px;font-size:10px;letter-spacing:1.2px;min-width:130px}
  #mobile-details[aria-expanded=true]{background:rgba(var(--rgb),.24);border-color:var(--accent)}
  #mobile-prev,#mobile-next{top:39%;width:44px;height:48px;font-size:35px;font-weight:300;line-height:1;border-radius:2px}
  #mobile-prev{left:8px}#mobile-next{right:8px}.mobile-stage-tools button:disabled{display:none}.mobile-details-open #mobile-prev,.mobile-details-open #mobile-next{display:none}
  .shell .selector{min-height:0;padding:8px 4% 4px;gap:0;background:linear-gradient(180deg,#05091333,#050913dd);justify-content:flex-start}
  .shell .selector-heading{margin:0 5px 10px;width:auto}.selector h2{text-align:left;font-size:19px;letter-spacing:2px}.eyebrow,.roster-count{display:none}
  .shell .roster{--roster-columns:5;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px 7px;padding:0 5px}
  .shell .character-card{height:clamp(65px,10.7dvh,101px);min-height:60px;max-height:101px;transform:skewX(-4deg);touch-action:manipulation}
  .shell .character-card.active{transform:skewX(-4deg) scale(1.025);box-shadow:0 0 0 2px var(--accent),0 0 12px rgba(var(--rgb),.75)}
  .card-details{bottom:6px;left:4px;right:2px;transform:skewX(4deg)}.shell .card-details strong{font-size:12px;letter-spacing:0}.shell .card-details small{display:none}.shell .character-card.placeholder .card-details strong{font-size:10px;letter-spacing:0}
  .card-marker{font-size:15px;padding:1px 4px;left:3px;top:4px}.card-no{font-size:7px;right:4px;top:6px}.card-placeholder{font-size:40px}
  .shell .roster-caption{padding:7px 5px 0;margin:0;border:0;font-size:9px;letter-spacing:1px}.small-cursor{font-size:13px}
  .shell .selection-readout,.shell .select-hint{display:none}
  .shell .versus-picks{margin:0 5px 10px;gap:6px;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr)}
  .shell .player-slot{min-height:44px;padding:5px 7px;gap:1px 5px;grid-template-columns:23px minmax(0,1fr)}.player-slot>strong{font-size:10px}.player-slot>small{font-size:7px;letter-spacing:1px}.player-slot>span{font-size:19px}.picks-divider{font-size:20px}
  .character-card.player-one-picked:before{bottom:23px;right:4px;font-size:13px}
  .footer{position:fixed;inset:auto 0 0;height:calc(104px + env(safe-area-inset-bottom,0px));padding:0 4%;display:block;z-index:50;border-top:1px solid rgba(var(--rgb),.65);background:#050a13f7;box-shadow:0 -8px 25px #0009}
  .footer .confirm{position:absolute;top:8px;bottom:auto;left:auto;right:4%;width:64%;height:63px;padding:8px 12px;gap:10px;font-size:16px;letter-spacing:1.7px;clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);background:linear-gradient(135deg,rgba(var(--rgb),.4),#081324 80%);border:1px solid var(--accent)}
  .confirm-marker{font-size:23px}.button-key{display:none}.confirm-copy{gap:5px}#mobile-confirm-name{display:block;font-family:Arial,"Hiragino Kaku Gothic ProN",sans-serif;font-size:11px;font-weight:400;letter-spacing:.3px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d5e9ff}
  .footer .back{position:absolute;top:8px;left:4%;width:25%;height:63px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px;gap:5px;border:1px solid #92b1d85c;font-size:10px;letter-spacing:0;background:#0b1524}.footer .back kbd{font-size:8px;padding:3px 6px}.footer .back:disabled{opacity:.3}
  .mobile-help{display:block;position:absolute;bottom:calc(10px + env(safe-area-inset-bottom,0px));left:4%;right:4%;font-size:10px;letter-spacing:.4px;text-align:center;color:#a3bfdc;line-height:1.4}
  .operation-hints,.gamepad-status{display:none}
  .confirmed .selector{display:none}.confirmed .main{grid-template-rows:minmax(150px,1fr)}.selected-seal{top:13%;right:7%}.selected-seal strong{font-size:40px}.selected-seal>span{font-size:7px}.selected-seal #pick-return{min-height:44px;padding:8px 12px;font-size:12px}
  .art-placeholder{padding-top:13%}.art-placeholder>strong{font-size:clamp(90px,39vw,240px)}.art-placeholder>span{font-size:8px;letter-spacing:3px}.art-placeholder>small{font-size:10px;letter-spacing:1px}
  .vs-stage{bottom:calc(130px + env(safe-area-inset-bottom,0px))}.vs-topline{top:calc(16px + env(safe-area-inset-top,0px))}.vs-controls{height:calc(130px + env(safe-area-inset-bottom,0px));padding:10px 4% calc(10px + env(safe-area-inset-bottom,0px));gap:8px;grid-template-columns:1fr 1fr;display:grid;align-content:center}.vs-controls button{min-height:48px;font-size:12px;padding:10px 8px}.vs-controls #vs-replay{grid-column:1/3;grid-row:1}.vs-controls #vs-back{grid-column:1}.vs-controls #vs-reset{grid-column:2}
}
@media(orientation:landscape) and (max-height:520px) and (pointer:coarse){.shell{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.vs-controls{padding-left:max(4%,env(safe-area-inset-left,0px));padding-right:max(4%,env(safe-area-inset-right,0px))}}
@media(max-width:760px) and (max-height:710px){.shell{padding-top:calc(87px + env(safe-area-inset-top,0px));min-height:580px}.topbar{grid-template-rows:28px 38px;gap:3px 8px}.mode-switch button{min-height:34px}.shell .character-card{height:66px;min-height:60px}.shell .selector-heading{margin-bottom:7px}.selector h2{font-size:17px}.shell .versus-picks{margin-bottom:7px}.shell .roster{gap:7px}.shell .player-slot{min-height:44px}.character-type{display:none}}
@media(max-width:760px) and (max-height:620px){.shell{min-height:550px}.main{grid-template-rows:minmax(140px,1fr) auto}.shell .character-card{height:58px;min-height:54px}.shell .roster-caption{display:none}.shell .selector{padding-top:5px}.shell .selector-heading{margin-bottom:6px}.shell .versus-picks{margin-bottom:6px}.shell .roster{gap:6px}.card-marker{font-size:13px}.shell .card-details strong{font-size:10px}.shell .character-card.placeholder .card-details strong{font-size:9px}}
@media(orientation:landscape) and (max-height:520px) and (pointer:coarse){.shell{min-height:350px;padding-top:calc(59px + env(safe-area-inset-top,0px));padding-bottom:calc(89px + env(safe-area-inset-bottom,0px))}.topbar{grid-template-rows:44px;grid-template-columns:1fr 1.3fr 1fr;height:44px;gap:10px}.mode-switch{grid-column:2;grid-row:1}.header-actions{grid-column:3;justify-content:flex-end}.brand{font-size:9px}.mode-switch button{font-size:9px;min-height:38px;padding:5px}.main{grid-template-columns:46% 54%;grid-template-rows:minmax(170px,1fr)}.shell .selector{padding-top:2px;padding-bottom:3px;overflow-y:auto}.shell .selector-heading{margin-bottom:6px}.selector h2{font-size:17px}.shell .character-card{height:60px;min-height:52px}.shell .versus-picks{margin-bottom:7px}.shell .player-slot{min-height:44px}.shell .roster{gap:7px}.roster-caption{display:none}h1{font-size:34px}.name-jp>span:first-child{font-size:18px}.character-type{display:none}.footer{height:calc(84px + env(safe-area-inset-bottom,0px))}.footer .confirm{height:55px;width:51%;right:7%}.footer .back{height:55px;width:23%;left:7%;flex-direction:row;gap:10px}.mobile-help{bottom:calc(7px + env(safe-area-inset-bottom,0px));font-size:9px}.confirmed .main{grid-template-columns:1fr}.confirmed .character-info{left:7%;right:7%}.vs-stage{bottom:calc(66px + env(safe-area-inset-bottom,0px))}.vs-controls{height:calc(66px + env(safe-area-inset-bottom,0px));display:flex;padding:8px 4% calc(8px + env(safe-area-inset-bottom,0px));gap:10px}.vs-controls button{min-height:44px;flex:1;font-size:11px}.vs-nameplate{bottom:4%}.vs-given{font-size:14vh}.vs-surname{font-size:6vh}.vs-japanese{font-size:13px;margin-top:4px}.vs-style,.vs-quote{display:none}.vs-core{top:44%}#vs-emblem,.vs-logo-echo{font-size:35vh}.vs-ready{font-size:9px;margin-top:6px;padding:4px 8px}.vs-kicker{font-size:8px;letter-spacing:2px}.vs-topline{top:12px;font-size:8px}.vs-player{margin-bottom:5px;padding:4px 6px;font-size:8px}}
