/* Full-width touch layout; desktop formation and controls remain unchanged. */
.mobile-menu-button,.mobile-menu-close,.mobile-install{display:none}
.mobile-menu-shade[hidden],.mobile-install-tip[hidden]{display:none!important}
@media(max-width:760px){
 html{scroll-padding-top:100px}body{min-width:320px}.main-shell{margin-left:0;min-height:100dvh;min-width:0}
 .mobile-menu-button,.mobile-menu-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border:1px solid #cab2f044;border-radius:12px;background:#242038;color:#efe5ff;font-size:22px}
 .mobile-menu-close{position:absolute;right:12px;top:max(12px,env(safe-area-inset-top));z-index:2}
 .mobile-menu-shade{position:fixed;inset:0;z-index:59;background:#040913b8;backdrop-filter:blur(4px)}
 .sidebar{width:min(310px,86vw);padding:25px 20px max(20px,env(safe-area-inset-bottom));padding-top:max(25px,env(safe-area-inset-top));z-index:60;transform:translateX(-105%);transition:transform .22s ease;visibility:hidden;overflow:auto;overscroll-behavior:contain}
 .mobile-menu-open{overflow:hidden}.mobile-menu-open .sidebar{transform:translateX(0);visibility:visible}
 .sidebar .brand{display:flex;padding:8px 45px 26px 0}.sidebar .brand>span:last-child{display:block;font-size:20px;letter-spacing:3px}.sidebar .brand small{display:block;font-size:9px}.sidebar .brand-moon,.sidebar .brand-moon .icon{width:30px;height:36px}
 .sidebar .side-label,.sidebar .nav-section-label,.sidebar .nav-group-label,.sidebar .sidebar-bottom,.sidebar .profile,.sidebar .local-status{display:revert}
 .sidebar nav{gap:5px}.sidebar .nav-item{display:flex;justify-content:flex-start;gap:12px;padding:12px 14px;min-height:46px;width:100%;font-size:14px}.sidebar .nav-item>span,.sidebar .nav-item>small{display:initial}.sidebar .nav-item .icon{width:20px;height:20px}.sidebar .nav-item:last-child{margin-top:0}.sidebar .nav-item.active:before{left:0}
 .sidebar .sidebar-bottom{display:block;padding-top:24px}.sidebar .profile{display:flex}.sidebar .local-status{display:flex}.sidebar .settings-button{font-size:13px;min-height:44px}
 .mobile-install{display:block;width:100%;margin-top:14px;border:1px solid #8fb9ad55;border-radius:9px;padding:12px;background:#16322b;color:#b8f5db;font-size:13px}.mobile-install-tip{font-size:12px;line-height:1.8;padding:12px 0;color:#c1b5d2}
 .topbar{height:auto;min-height:108px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left));position:relative}
 .breadcrumb{font-size:12px;gap:5px;min-width:0;flex-wrap:wrap}.topbar .account-control{grid-column:3;grid-row:1;max-width:115px;white-space:normal;font-size:10px!important;min-height:44px;margin:0!important;padding:6px!important;line-height:1.6}
 .currencies{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;gap:4px;min-width:0}.currencies>span{height:38px;padding:0 6px;min-width:0;gap:4px;font-size:11px}.currencies b{font-size:11px;letter-spacing:0}.currencies>span .icon{width:15px;height:15px}.currencies button:not(.icon-btn){min-width:28px;min-height:32px;margin:0;font-size:19px}.help-button{display:none}.currencies .bath-currency>small{font-size:8px}
 .energy-bar{padding:8px 12px;gap:8px;font-size:11px;flex-wrap:wrap}.page{padding:20px 12px;min-width:0}.page>*,.deployment-layout>*,.home-grid>*,.collection-layout>*{min-width:0}
 input,textarea,select,.auth-card input{font-size:16px!important;min-height:44px;max-width:100%}textarea{min-height:90px}.btn,.icon-btn,.filter-tabs button,.modal-close{min-height:44px}.btn{font-size:12px;padding:10px 12px}.icon-btn,.modal-close{min-width:44px}.modal-close{z-index:20}
 .modal-backdrop{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}.modal{width:100%;max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain}.modal-body{padding:45px 18px 24px}.modal-body h2{font-size:22px}.modal-body p{font-size:13px}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1 1 auto}
 .page-heading p,.note,.hero-role{font-size:12px}.page-heading h1{font-size:24px}.page-heading{align-items:flex-start}.page-heading .eyebrow{font-size:9px}.hero-banner{height:auto;min-height:310px}.banner-copy h2{font-size:30px}.banner-copy p{font-size:12px}.home-grid,.collection-layout{display:grid;grid-template-columns:minmax(0,1fr)}
 .team-3d-stage{height:460px}.deployment-slot{width:28%;max-width:125px;height:175px}.deployment-fallback{height:175px!important}.deployment-name strong{font-size:11px}.deployment-name small{font-size:9px}.deployment-remove{top:18px;right:0;width:38px;height:38px;font-size:21px}.deployment-roster .roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.deployment-roster{max-height:none;overflow:visible}.deployment-target,.drag-hero,.drag-hero .hero-card{cursor:pointer;touch-action:manipulation}.deployment-roster>p{position:sticky;top:0;padding:9px;background:#172033;z-index:3;border-radius:8px;font-size:13px}
 .page-battle{padding:14px 8px}.battle-heading{display:flex;flex-wrap:wrap;gap:10px}.battle-toggles{margin:0;gap:5px;justify-content:flex-start}.battle-toggles .btn{min-height:44px;font-size:11px;padding:8px 10px}.initiative{overflow-x:auto;max-width:100%;padding:9px}.initiative>div{flex-shrink:0}.anime-battle-stage{min-height:450px}.anime-sides{gap:10%;padding:15px 2% 24px}.anime-side{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,125px);gap:5px 0}.anime-unit-info{padding:4px 1px 2px}.anime-unit-info strong{font-size:10px;line-height:1.3}.anime-unit-info strong small{display:none}.anime-unit-info small{font-size:8px}.anime-unit-status{font-size:8px}.anime-figure{inset:-5px -4px 18px}.anime-motion>.anime-figure{inset:-5px -4px 18px}.anime-damage{font-size:23px}.anime-team-title{font-size:8px;padding-inline:14px}.anime-cast-label{font-size:12px;padding:7px 16px;top:7px}
 .combat-panel{display:flex;flex-wrap:wrap;padding:12px 8px;gap:10px}.combat-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:7px}.combat-action{min-height:94px;min-width:0;padding:8px 4px}.combat-action strong{font-size:11px;line-height:1.4}.combat-action small{font-size:10px}.combat-action kbd{display:none}.combat-hint{font-size:12px;line-height:1.6}.combat-log p{font-size:11px}.execute-action{width:100%}.execute-action .btn{min-height:48px}.active-hero>div>strong{font-size:13px}
 .stage-grid,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-card p,.stage-bottom,.shop-card p{font-size:11px}.shop-card>.btn{font-size:12px}.summon-actions{flex-wrap:wrap}.summon-actions .btn{font-size:12px}.summon-result-grid.ten{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.summon-result-grid.ten .hero-card .card-bottom>strong{display:flex!important;font-size:13px}.summon-result-grid.ten .hero-card{aspect-ratio:3/4}.summon-status{font-size:10px}
 .inventory-layout,.armory-layout,.community-grid,.dev-tools-grid{grid-template-columns:minmax(0,1fr)}.reward-editor-row{grid-template-columns:minmax(0,1fr) 65px 70px 38px}.reward-editor-row input,.reward-editor-row select{font-size:13px!important}.item-detail{position:static}.card-gear-grid button{min-height:44px}.card-weapon{min-height:48px}.code-fields{grid-template-columns:1fr}.table-scroll{overflow:auto}footer{padding-bottom:max(20px,env(safe-area-inset-bottom));font-size:10px}#toasts{left:12px;right:12px;bottom:max(16px,env(safe-area-inset-bottom));z-index:100}.toast{max-width:none;font-size:13px}
 .auth-screen{min-height:100dvh}.auth-art{min-height:190px;max-height:220px}.auth-card{margin:16px auto 32px}.auth-card h2{font-size:26px}.auth-card p,.auth-card label{font-size:14px}.auth-toggle{min-height:44px;font-size:13px}
}
@media(max-width:380px){.currencies>span{padding:0 3px;gap:2px}.currencies b{font-size:10px}.currencies .bath-currency>small{display:none}.currencies>span .icon{width:13px}.currencies button:not(.icon-btn){min-width:24px}.breadcrumb{font-size:10px}.deployment-name small{font-size:8px}.anime-unit-info strong{font-size:9px}}
@media(max-width:960px) and (orientation:landscape){.page-battle .anime-battle-stage{min-height:335px}.page-battle .anime-side{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:135px 135px}.hero-2d-preview{height:min(360px,65dvh)}}

@media(max-width:760px){.currencies{flex-wrap:wrap}.currencies>span{flex:1 0 auto;justify-content:center}.sidebar nav{flex:1 0 auto;overflow:visible}.sidebar .nav-group-label{display:block;font-size:11px}}
