/* STARFALL UI SYSTEM 1.0
   Information-first / restrained iron fantasy / Korean pixel typography */

:root{
  --ui-bg:#080a0c;
  --ui-panel:#14171a;
  --ui-panel-2:#1b1f23;
  --ui-panel-3:#23282d;
  --ui-line:#3a4045;
  --ui-line-soft:#292e33;
  --ui-text:#f1eee4;
  --ui-muted:#a7adb3;
  --ui-dim:#747b82;
  --ui-gold:#d8b15a;
  --ui-red:#d85f58;
  --ui-blue:#67a8cf;
  --ui-green:#67b77e;
  --ui-violet:#a77bc8;
  --ui-warning:#e2b84f;
  --ui-radius-panel:8px;
  --ui-radius-control:6px;
  --ui-font-pixel:"Galmuri11","Galmuri11 Condensed","Courier New",monospace;
  --ui-font-reading:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Segoe UI",sans-serif;
}

html,body{background:var(--ui-bg)}
body{
  color:var(--ui-text);
  background:linear-gradient(180deg,#111418 0,#080a0c 68%);
  font-family:var(--ui-font-pixel);
  font-synthesis:none;
  word-break:keep-all;
}
button,h1,h2,h3,strong,b,em,.phase-badge,.encounter-counter{font-family:var(--ui-font-pixel)}
p,.manual-reward-note,.relic-choice small,.special-equip-choice small,.rune-inventory-item small,.special-slot span,.resonance-preview-entry small{font-family:var(--ui-font-reading)}
strong,b,em,#goldValue,#partyHealthText,#bossBarFill{font-variant-numeric:tabular-nums}
button{border-radius:var(--ui-radius-control)}
button:not(:disabled):active{transform:translateY(1px)}

.battle-hud,.party-status,.boss-bar,.pending-rune-notice,
.journey-card,.skill-zone,.growth-section,.relic-section,.inventory-section,
.modal,.selected-equipment-card,.growth-hero-card,.growth-advice{
  border:1px solid var(--ui-line);
  border-radius:var(--ui-radius-panel);
  background:linear-gradient(180deg,var(--ui-panel-2),var(--ui-panel));
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 5px 14px rgba(0,0,0,.22);
  backdrop-filter:none;
}

.section-heading h2,.brand h1{font-family:var(--ui-font-pixel)}
.section-heading small,.modal-kicker,.brand span{color:var(--ui-gold);letter-spacing:.06em}
.battlefield,.modal,.relic-choice,.rune-inventory-item,.equipment-slot,.special-slot,
.inventory-tabs,.inventory-filter-tabs,.rune-view-tabs,.build-summary-item{border-radius:var(--ui-radius-panel)}
.primary-button,.draw-button,.equip-button,.forge-button,.special-select-button,.auto-toggle,
.inventory-tabs button,.inventory-filter-tabs button,.rune-view-tabs button{border-radius:var(--ui-radius-control)}

.growth-section{display:flex;min-height:0;flex-direction:column;padding:16px;overflow-y:auto;overscroll-behavior:contain}
.growth-heading{align-items:center}
.growth-hero-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:center;margin-top:12px;padding:12px}
.growth-hero-mark{display:grid;width:46px;height:46px;place-items:center;border:1px solid #555b61;border-radius:6px;color:var(--ui-gold);background:#202429;font-size:22px}
.growth-hero-card small,.growth-hero-card strong{display:block}.growth-hero-card small{color:var(--ui-muted);font-size:12px}.growth-hero-card strong{margin-top:3px;font-size:14px}
.growth-hero-card em{color:var(--ui-gold);font-size:14px;font-style:normal}
.growth-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.growth-stat-grid>div{min-height:68px;padding:11px;border:1px solid var(--ui-line-soft);border-left:3px solid #6f767d;border-radius:6px;background:#111417}
.growth-stat-grid>div.growth-attack{border-left-color:var(--ui-red)}.growth-stat-grid>div.growth-defense{border-left-color:var(--ui-blue)}.growth-stat-grid>div.growth-special{border-left-color:var(--ui-violet)}
.growth-stat-grid small,.growth-stat-grid strong{display:block}.growth-stat-grid small{color:var(--ui-muted);font-size:12px}.growth-stat-grid strong{margin-top:7px;font-size:17px}
.growth-advice{margin-top:10px;padding:12px;border-left:3px solid var(--ui-gold)}
.growth-advice small,.growth-advice strong{display:block}.growth-advice small{color:var(--ui-gold);font-size:11px}.growth-advice strong{margin-top:6px;font-size:13px;line-height:1.45}
.growth-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.growth-shortcuts button{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;gap:2px 8px;min-height:58px;align-items:center;padding:8px 10px;border:1px solid var(--ui-line);color:var(--ui-text);text-align:left;background:var(--ui-panel-2)}
.growth-shortcuts button>span{grid-row:1/3;display:grid;width:32px;height:32px;place-items:center;color:var(--ui-blue);background:#111519}.growth-shortcuts button:last-child>span{color:var(--ui-violet)}
.growth-shortcuts strong{font-size:13px}.growth-shortcuts small{color:var(--ui-muted);font-size:12px}

.mobile-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px;
  min-height:58px;
  padding-top:5px;
  border-top:1px solid #24292d;
  background:var(--ui-bg);
}
.mobile-nav button{
  position:relative;
  display:grid;
  grid-template-rows:20px auto;
  min-width:0;
  min-height:52px;
  place-items:center;
  gap:2px;
  padding:4px 2px;
  border:1px solid var(--ui-line-soft);
  border-radius:6px;
  color:var(--ui-muted);
  background:#121518;
}
.mobile-nav button>span{font-size:17px;line-height:1}.mobile-nav button>strong{font-size:12px;font-weight:400}
.mobile-nav button.active{color:var(--ui-text);background:#1d2125;box-shadow:inset 0 -3px var(--menu-accent,var(--ui-gold))}
#tabCombat{--menu-accent:var(--ui-red)}#tabBuild{--menu-accent:var(--ui-gold)}#tabInventory{--menu-accent:var(--ui-blue)}#tabRune{--menu-accent:var(--ui-violet)}
#tabCombat.active{border-color:rgba(216,95,88,.55)}#tabBuild.active{border-color:rgba(216,177,90,.55)}#tabInventory.active{border-color:rgba(103,168,207,.55)}#tabRune.active{border-color:rgba(167,123,200,.58)}
.nav-reward-badge{position:absolute;top:2px;right:8px;display:grid;min-width:18px;height:18px;place-items:center;padding:0 4px;border:1px solid #d9b7ee;border-radius:9px;color:#fff;background:#765091;font-size:10px}

.route-node.current::after{animation:none}
.pending-rune-notice{animation:rewardPulseOnce 1s ease-out 1 both}

@media (max-width:649px) and (orientation:portrait){
  :root{--mobile-title:18px;--mobile-value:16px;--mobile-body:13px;--mobile-label:12px;--mobile-caption:12px}
  html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
  .game-shell{display:grid;grid-template-rows:minmax(0,1fr) 58px;width:100%;height:100dvh;min-height:0;padding:max(6px,env(safe-area-inset-top)) 8px max(6px,env(safe-area-inset-bottom));overflow:hidden}
  main{min-height:0;overflow:hidden}

  .game-shell.mobile-tab-combat main{display:grid;grid-template-rows:clamp(330px,46dvh,390px) 58px minmax(136px,1fr);gap:6px}
  .game-shell.mobile-tab-combat [data-mobile-panel="growth"],
  .game-shell.mobile-tab-combat [data-mobile-panel="rune"],
  .game-shell.mobile-tab-combat [data-mobile-panel="inventory"]{display:none}
  .game-shell.mobile-tab-build .battlefield,
  .game-shell.mobile-tab-build [data-mobile-panel="combat"],
  .game-shell.mobile-tab-build [data-mobile-panel="rune"],
  .game-shell.mobile-tab-build [data-mobile-panel="inventory"]{display:none}
  .game-shell.mobile-tab-build main{display:block;height:100%;min-height:0}
  .game-shell.mobile-tab-build [data-mobile-panel="growth"]{display:flex;height:100%}
  .game-shell.mobile-tab-inventory .battlefield,
  .game-shell.mobile-tab-inventory [data-mobile-panel="combat"],
  .game-shell.mobile-tab-inventory [data-mobile-panel="growth"]{display:none}
  .game-shell.mobile-tab-inventory main{display:block;height:100%;min-height:0}
  .game-shell.mobile-tab-inventory.inventory-category-equipment [data-mobile-panel="rune"]{display:none}
  .game-shell.mobile-tab-inventory.inventory-category-equipment [data-mobile-panel="inventory"]{display:flex;height:100%}
  .game-shell.mobile-tab-inventory.inventory-category-rune main{display:block;overflow-y:auto;overscroll-behavior:contain}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="rune"]{display:flex;height:auto;min-height:0;margin-bottom:8px;overflow:visible}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="inventory"]{display:flex;height:auto;min-height:0;overflow:visible}
  .game-shell.mobile-tab-inventory.inventory-category-rune .rune-inventory-panel{overflow:visible}
  .game-shell.mobile-tab-inventory.inventory-category-rune .inventory-heading-stats .inventory-count{display:none}
  .inventory-tabs{display:none}

  .battlefield{width:100%;height:auto;min-height:0;border:1px solid #444a4f;border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
  .battlefield::after{z-index:30;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),inset 0 -52px 54px rgba(3,5,7,.48)}
  .battle-hud{z-index:42;top:6px;left:6px;right:6px;height:54px;overflow:hidden;border-radius:7px;background:#121619;box-shadow:0 4px 10px rgba(0,0,0,.28)}
  .top-hud{position:absolute;z-index:3;top:4px;right:4px;display:block;min-height:44px;padding:0}.brand{display:none}.brand span{display:none}.brand h1{margin:0;font-size:13px;font-weight:400}
  .hud-actions{gap:4px}.round-button,.speed-toggle{width:44px;min-width:44px;height:44px;padding:0;border:1px solid var(--ui-line);border-radius:6px;color:var(--ui-muted);background:#1c2024;font-size:12px}
  .speed-toggle.active{color:#f0e8f5;border-color:var(--ui-violet);background:#4b375a;box-shadow:none}
  .resource-hud{grid-template-columns:minmax(0,1fr) 82px;min-height:52px;padding-right:96px;border:0;border-radius:0;background:#0f1215}
  .resource-hud>div{display:none!important}.resource-hud>div:first-child,.resource-hud>div:nth-child(3){display:flex!important;min-width:0;flex-direction:column;justify-content:center;padding:6px 9px;background:#0f1215;text-align:left}
  .resource-hud>div:nth-child(3){border-left:1px solid var(--ui-line-soft);text-align:right}
  .resource-hud small,.resource-hud .region-resource small{margin:0 0 3px;color:var(--ui-muted);font-size:12px;line-height:1}.resource-hud strong,.resource-hud .region-resource strong{overflow:hidden;color:var(--ui-text);font-size:13px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
  .resource-hud>div:nth-child(3) strong{color:var(--ui-gold)}

  .scene-topline{z-index:41;top:72px;left:10px;right:10px;align-items:center}.scene-topline>div:first-child{gap:6px}.scene-topline strong{display:none!important}.phase-badge,.encounter-counter{min-height:28px;padding:6px 8px;border:1px solid rgba(255,255,255,.15);border-radius:5px;font-size:12px;line-height:1.1}.phase-badge{color:#172018;background:var(--ui-green)}.phase-badge.combat,.phase-badge.battle,.phase-badge.danger{color:#210e0d;background:var(--ui-red)}.encounter-counter{color:var(--ui-text);background:rgba(14,17,19,.88)}
  .boss-bar{z-index:43;top:105px;width:calc(100% - 58px);padding:7px 9px;border-color:rgba(216,95,88,.45);border-radius:6px;background:rgba(22,15,15,.94)}
  .boss-bar>div:first-child{margin-bottom:6px}.boss-bar span{color:#d8918c;font-size:12px}.boss-bar strong{max-width:72%;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.boss-bar .bar{height:8px;border-radius:3px}.boss-bar:not(.boss-target){border-color:rgba(216,177,90,.38);background:rgba(19,18,14,.92)}.boss-bar:not(.boss-target) span{color:var(--ui-gold)}
  .enemy .enemy-health{display:none}
  .party{left:1%;bottom:88px;transform:scale(.8);transform-origin:left bottom}.party.marching{transform:translateX(5%) scale(.8)}
  .enemy-lane{right:-1%;bottom:88px;transform:scale(.74);transform-origin:right bottom}.unit em,.enemy em{font-size:12px}
  .party-status{z-index:44;left:8px;right:8px;bottom:33px;min-height:38px;padding:6px 9px;border-radius:6px;background:rgba(13,16,18,.95)}
  .party-health>div:first-child{margin-bottom:5px}.party-health span,.party-health strong{font-size:12px}.party-health .bar{height:8px;border-radius:3px}.barrier-icon{font-size:12px}
  .battle-message{z-index:44;left:10px;right:10px;bottom:8px;color:#d1d4d6;font-family:var(--ui-font-reading);font-size:12px}
  .pending-rune-notice{z-index:45;right:12px;bottom:80px;width:46px;min-width:0;height:46px;padding:0;border-radius:6px;background:#33243f;place-items:center}.pending-rune-notice>span{width:44px;height:44px;color:#e0baf0;background:transparent;font-size:20px}.pending-rune-notice strong,.pending-rune-notice small{display:none}.pending-rune-notice>b{position:absolute;top:-6px;right:-6px;min-width:21px;height:21px;padding:0 4px;border:2px solid #111316;border-radius:11px;font-size:10px}

  .journey-card,.skill-zone,.growth-section,.relic-section,.inventory-section{margin-top:0;border-radius:8px}
  .journey-card{padding:9px 11px}.journey-head{align-items:center}.journey-head small{display:none}.journey-head strong{font-size:13px}.journey-head>span{font-size:13px}.route-progress{margin-top:9px}.route-node{height:5px}.route-node::after{width:10px;height:10px;border-radius:1px}
  .skill-zone{display:grid;grid-template-rows:46px minmax(0,1fr);min-height:0;padding:6px;border-color:#343a3f;border-radius:8px;background:linear-gradient(180deg,#181c20,#111417);box-shadow:inset 0 1px rgba(255,255,255,.04)}
  .skill-toolbar{min-height:44px;margin:0;padding:0 1px 5px 5px;color:var(--ui-muted);font-size:12px;letter-spacing:0}.skill-toolbar>span{font-size:12px}.skill-toolbar>span::before{color:var(--ui-gold)}.skill-toolbar .auto-toggle{min-width:116px;height:44px;padding:0 9px;border-radius:6px;font-size:12px}.skill-toolbar .auto-toggle.active{color:#102016;background:var(--ui-green);box-shadow:none}
  .skill-panel{gap:6px;min-height:0}.skill{min-height:0;padding:7px 4px;border-radius:6px;background:#171b1f}.skill:nth-child(1){border-color:rgba(216,95,88,.42)}.skill:nth-child(2){border-color:rgba(103,168,207,.44)}.skill:nth-child(3){border-color:rgba(103,183,126,.44)}.skill-glyph{position:relative;z-index:2;width:23px;height:23px;margin:0 auto 4px}.skill strong,.skill small{position:relative;z-index:2}.skill strong{font-size:13px;line-height:1.15}.skill small{color:var(--ui-muted);font-size:12px;line-height:1.2}.skill::after{content:attr(data-cooldown-label);position:relative;z-index:2;display:block;margin-top:6px;color:var(--ui-gold);font-size:12px}.skill .cooldown{z-index:1;background:rgba(4,6,8,.66)}

  .growth-section,.relic-section,.inventory-section{padding:12px;background:linear-gradient(180deg,#181c20,#101315)}
  .section-heading{min-height:46px;align-items:center}.section-heading h2{margin:0;font-size:18px}.section-heading small{margin-bottom:3px;font-size:12px}.test-tools summary{min-width:76px;min-height:44px;border-radius:6px;font-size:12px}.test-tools-menu{width:180px;border-radius:6px;background:#171b1f}.test-tools-menu button{min-height:44px;border-radius:6px;font-size:12px}
  .growth-section{height:100%;padding:12px}.growth-hero-card{margin-top:8px;padding:10px}.growth-hero-card em{font-size:13px}.growth-stat-grid>div{min-height:64px;padding:9px}.growth-stat-grid strong{font-size:16px}.growth-advice{padding:10px}.growth-shortcuts button{min-height:60px}

  .rune-build-section{display:flex;flex-direction:column}.build-summary{gap:6px;margin-top:8px}.build-summary-item{grid-template-columns:30px minmax(0,1fr) auto;gap:6px;padding:8px;border-radius:6px}.build-summary-item>span{width:29px;height:29px;border-radius:4px}.build-summary-item small{font-size:12px}.build-summary-item strong{font-size:15px}.build-summary-item em{font-size:12px}.build-label{margin-top:10px}.build-label strong{font-size:13px}.build-label span{font-size:12px}.relic-rack{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:0;margin-top:6px;overflow:visible}.relic-rack p{padding:14px;font-size:13px}.relic-chip{grid-template-columns:36px minmax(0,1fr);gap:8px;min-height:68px;padding:8px;border-radius:6px}.relic-chip b,.relic-chip>b .pixel-asset-icon{width:35px;height:35px}.relic-chip strong{font-size:13px;white-space:normal}.relic-chip strong i,.rune-grade{font-size:12px}.relic-chip small{display:block;font-size:12px;line-height:1.35}.special-rune-slots{gap:6px;margin-top:6px}.special-slot{min-height:76px;padding:9px;border-radius:6px}.special-slot small{font-size:12px}.special-slot strong{font-size:13px}.special-slot span{font-size:12px;line-height:1.4}.special-synergy small,.special-synergy span{font-size:12px}.special-synergy strong{font-size:13px}.special-select-button{min-height:44px;margin-top:8px;font-size:13px}

  .inventory-section{display:flex;flex-direction:column}.inventory-heading{flex:0 0 auto;min-height:48px}.inventory-heading-stats{gap:6px}.inventory-count{font-size:12px}.inventory-heading-stats .inventory-wallet{min-height:44px;padding:5px 8px;border-radius:6px;font-size:12px}.inventory-panel{min-height:0;margin-top:6px}.equipment-inventory-panel{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.draw-actions{gap:6px}.draw-button{min-height:44px;padding:0 9px;font-size:13px}.draw-button strong{font-size:12px}.inventory-filter-tabs{gap:6px;margin-top:6px}.inventory-filter-tabs button{min-height:48px;border-radius:6px;font-size:12px}.equipment-room-tabs button>strong{font-size:13px}.equipment-room-tabs button>small{font-size:12px}
  .equipment-space-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;min-height:0;margin-top:6px;padding:8px;border-radius:6px}.equipment-space-heading>div:first-child small{font-size:11px}.equipment-space-heading>div:first-child strong{font-size:13px}.equipment-space-controls{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 66px 88px;gap:5px}.equipment-space-controls>span{align-self:center;font-size:12px}.equipment-space-controls .rate-details summary,.equipment-space-controls .sort-equipment-button{width:100%;min-height:44px;padding:0 6px;border-radius:6px;font-size:12px}.equipment-space-controls .rate-details .draw-rate{font-size:12px}
  .equipment-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:6px}.equipment-slot{height:55px;border-radius:6px}.equipment-slot.empty span{font-size:11px}.equipment-slot.item strong,.equipment-slot.item u{font-size:12px}.equipment-pagination{gap:16px;margin-top:6px}.equipment-pagination button{width:44px;height:44px;border-radius:6px}.equipment-pagination span{font-size:12px}.selected-equipment-card{grid-template-columns:48px minmax(0,1fr) auto;gap:9px;margin-top:6px;padding:8px}.selected-equipment-icon{width:46px;height:46px}.selected-equipment-info small{font-size:12px}.selected-equipment-info strong{font-size:14px}.selected-equipment-info span{font-size:12px}.selected-equipment-card em{font-size:16px}.enhance-risk{min-height:44px;margin-top:5px;padding:6px 8px;font-size:12px}.equipment-action-row{gap:6px;margin-top:6px}.equip-button,.forge-button.compact{min-height:44px;font-size:13px}.equipment-manage>summary{min-height:44px;border-radius:6px;font-size:12px}.lock-item-button,.sell-select-button,.sell-item-button{min-height:44px;border-radius:6px;font-size:12px}

  .rune-view-tabs{position:sticky;z-index:3;top:0;border-radius:6px;background:#15191c}.rune-view-tabs button{min-height:44px;border-radius:4px;font-size:12px}.rune-inventory-head{margin:10px 2px 7px}.rune-inventory-head strong,.rune-inventory-head span{font-size:12px}.rune-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.rune-inventory-item{grid-template-columns:42px minmax(0,1fr);gap:8px;min-height:72px;padding:8px;border-radius:6px}.rune-inventory-item>b{width:41px;height:41px}.rune-inventory-item strong{font-size:13px}.rune-inventory-item small,.rune-inventory-item .rune-count,.rune-inventory-item>i{font-size:12px}.empty-rune-state strong{font-size:13px}.empty-rune-state small{font-size:12px}.inventory-resonance-preview{margin-top:8px;padding:10px}.inventory-resonance-preview.resonance-hint p,.resonance-preview-title small,.resonance-preview-entry span,.resonance-preview-entry small{font-size:12px}.resonance-preview-title strong,.resonance-preview-entry strong{font-size:13px}

  .modal-backdrop{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.modal{max-height:calc(100dvh - 16px);padding:17px;border-radius:8px;overflow-y:auto}.modal-close-button{min-height:44px;border-radius:6px;font-size:12px}.modal-kicker{font-size:12px}.modal h2{font-size:18px}.modal>p{font-size:13px;line-height:1.5}.relic-choice{min-height:82px;padding:10px;border-radius:6px}.relic-choice strong{font-size:14px}.relic-choice strong i,.relic-choice small,.relic-choice p,.relic-choice em{font-size:12px}.manual-reward-note{font-size:12px!important}.special-slot-selector button,.special-modal-actions button,.primary-button{min-height:44px;border-radius:6px;font-size:13px}.toast{bottom:calc(66px + env(safe-area-inset-bottom));border-radius:6px;font-size:12px}
}

@media (max-width:649px) and (orientation:portrait) and (min-height:760px){
  .skill-panel{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr))}
  .skill{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:9px;align-content:center;align-items:center;padding:7px 10px;text-align:left}
  .skill-glyph{grid-row:1/3;grid-column:1;width:27px;height:27px;margin:0}
  .skill strong{grid-row:1;grid-column:2;font-size:13px}.skill small{grid-row:2;grid-column:2;font-size:12px}
  .skill::after{grid-row:1/3;grid-column:3;align-self:center;min-width:44px;margin:0;text-align:right}
}

@media (max-width:649px) and (orientation:portrait) and (max-height:720px){
  .game-shell{grid-template-rows:minmax(0,1fr) 56px;padding-top:max(4px,env(safe-area-inset-top));padding-bottom:max(4px,env(safe-area-inset-bottom))}
  .game-shell.mobile-tab-combat main{grid-template-rows:340px 54px minmax(142px,1fr);gap:5px}
  .mobile-nav{min-height:56px;padding-top:4px}.mobile-nav button{min-height:52px}
  .journey-card{padding:7px 9px}.skill-zone{grid-template-rows:44px minmax(0,1fr);padding:5px}.skill-toolbar,.skill-toolbar .auto-toggle{min-height:44px;height:44px}.skill-glyph{width:20px;height:20px}.skill strong{font-size:12px}.skill small{font-size:12px}
  .growth-section,.relic-section,.inventory-section{padding:10px}
  .inventory-tabs button,.draw-button,.inventory-filter-tabs button,.equip-button,.forge-button.compact,.equipment-pagination button,.rate-details summary,.equipment-manage>summary{min-height:44px;height:auto}
}

@media (min-width:650px){
  html,body{height:100%;overflow:hidden}
  body{display:grid;place-items:start center}
  .game-shell{display:grid;grid-template-rows:minmax(0,1fr) 62px;width:540px;height:100vh;min-height:0;padding:10px 0;overflow:hidden}
  main{min-height:0;overflow:hidden}
  .mobile-nav{display:grid}
  .game-shell.mobile-tab-combat main{display:grid;grid-template-rows:minmax(460px,55vh) 64px minmax(170px,1fr);gap:8px}
  .game-shell.mobile-tab-combat [data-mobile-panel="growth"],
  .game-shell.mobile-tab-combat [data-mobile-panel="rune"],
  .game-shell.mobile-tab-combat [data-mobile-panel="inventory"]{display:none}
  .game-shell.mobile-tab-build .battlefield,
  .game-shell.mobile-tab-build [data-mobile-panel="combat"],
  .game-shell.mobile-tab-build [data-mobile-panel="rune"],
  .game-shell.mobile-tab-build [data-mobile-panel="inventory"]{display:none}
  .game-shell.mobile-tab-build main{display:block;height:100%}.game-shell.mobile-tab-build [data-mobile-panel="growth"]{display:flex;height:100%}
  .game-shell.mobile-tab-inventory .battlefield,
  .game-shell.mobile-tab-inventory [data-mobile-panel="combat"],
  .game-shell.mobile-tab-inventory [data-mobile-panel="growth"]{display:none}
  .game-shell.mobile-tab-inventory main{display:block;height:100%;min-height:0}
  .game-shell.mobile-tab-inventory.inventory-category-equipment [data-mobile-panel="rune"]{display:none}
  .game-shell.mobile-tab-inventory.inventory-category-equipment [data-mobile-panel="inventory"]{display:flex;height:100%}
  .game-shell.mobile-tab-inventory.inventory-category-rune main{overflow-y:auto;overscroll-behavior:contain}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="rune"]{display:flex;height:auto;margin-bottom:8px;overflow:visible}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="inventory"]{display:flex;height:auto;overflow:visible}
  .game-shell.mobile-tab-inventory.inventory-category-rune .rune-inventory-panel{overflow:visible}
  .inventory-tabs{display:none}
  .battlefield{height:auto;min-height:0;border-radius:8px}.journey-card,.skill-zone,.growth-section,.relic-section,.inventory-section{margin-top:0}
  .resource-hud{grid-template-columns:minmax(0,1fr) 104px}.resource-hud>div{display:none}.resource-hud>div:first-child,.resource-hud>div:nth-child(3){display:block}.resource-hud small{font-size:12px}.resource-hud strong{font-size:14px}
  .scene-topline{top:112px}.scene-topline strong,.phase-badge,.encounter-counter{font-size:12px}.boss-bar{z-index:43;top:146px}.boss-bar span{font-size:12px}.boss-bar strong{font-size:13px}
  .party-status{z-index:44}.party-health span,.party-health strong,.battle-message{font-size:12px}
  .journey-head strong,.journey-head>span{font-size:13px}
  .skill-zone{display:grid;grid-template-rows:46px minmax(0,1fr);min-height:0;padding:7px}.skill-toolbar,.skill-toolbar>span{font-size:12px}.skill-toolbar .auto-toggle{min-height:44px;font-size:12px}
  .skill-panel{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:6px}.skill{display:grid;grid-template-columns:38px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;align-content:center;align-items:center;min-height:0;padding:8px 12px;text-align:left}.skill-glyph{grid-row:1/3;grid-column:1;margin:0}.skill strong{grid-row:1;grid-column:2;font-size:13px}.skill small{grid-row:2;grid-column:2;font-size:12px}.skill::after{grid-row:1/3;grid-column:3;align-self:center;margin:0;font-size:12px}
  .growth-section,.relic-section,.inventory-section{height:100%;padding:14px;overflow-y:auto}.section-heading h2{font-size:19px}.section-heading small{font-size:12px}
}

@media (prefers-reduced-motion:reduce){
  .pending-rune-notice,.route-node.current::after{animation:none!important}
}

/* 1.1 — focused draw / equipment / rune workspaces */
.section-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
  padding:3px;
  border:1px solid var(--ui-line-soft);
  border-radius:6px;
  background:#111417;
}
.section-tabs button{
  min-height:44px;
  border:0;
  border-radius:4px;
  color:var(--ui-muted);
  background:transparent;
  font-size:12px;
}
.section-tabs button.active{color:var(--ui-text);background:#252a2f;box-shadow:inset 0 -3px var(--section-accent,var(--ui-gold))}
.equipment-view-tabs{--section-accent:var(--ui-blue)}
.rune-view-tabs{--section-accent:var(--ui-violet)}

.draw-section{overflow:hidden}
.draw-wallet-strip{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.draw-wallet-strip>div{min-height:62px;padding:10px 12px;border:1px solid var(--ui-line-soft);border-left:3px solid var(--ui-gold);border-radius:6px;background:#111417}
.draw-wallet-strip>div:last-child{border-left-color:var(--ui-blue)}
.draw-wallet-strip small,.draw-wallet-strip strong{display:block}.draw-wallet-strip small{color:var(--ui-muted);font-size:12px}.draw-wallet-strip strong{margin-top:7px;color:var(--ui-gold);font-size:16px}.draw-wallet-strip>div:last-child strong{color:var(--ui-text)}.draw-wallet-strip b{font:inherit}
.draw-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.draw-choice-card{display:flex;min-width:0;min-height:206px;flex-direction:column;align-items:center;justify-content:center;padding:13px 8px;border:1px solid rgba(216,177,90,.42);border-radius:8px;color:var(--ui-text);background:radial-gradient(circle at 50% 30%,rgba(216,177,90,.16),transparent 43%),#14181b;text-align:center}
.draw-choice-card.armor-draw{border-color:rgba(103,168,207,.44);background:radial-gradient(circle at 50% 30%,rgba(103,168,207,.16),transparent 43%),#14181b}
.draw-choice-card .draw-choice-icon{display:grid;width:68px;height:68px;place-items:center;margin-bottom:10px;border:1px solid rgba(216,177,90,.36);border-radius:8px;color:var(--ui-gold);background:#202429;font-size:34px}.draw-choice-card.armor-draw .draw-choice-icon{border-color:rgba(103,168,207,.36);color:var(--ui-blue)}
.draw-choice-card small{color:var(--ui-gold);font-size:11px}.draw-choice-card.armor-draw small{color:var(--ui-blue)}.draw-choice-card strong{margin-top:4px;font-size:15px}.draw-choice-card em{margin-top:7px;color:var(--ui-muted);font-family:var(--ui-font-reading);font-size:12px;font-style:normal;line-height:1.4}.draw-choice-card>b{margin-top:10px;color:var(--ui-gold);font-size:13px}.draw-choice-card:disabled{opacity:.42;filter:grayscale(.4)}
.draw-rate-panel{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;margin-top:9px;padding:9px 11px;border:1px solid var(--ui-line-soft);border-radius:6px;background:#111417}.draw-rate-panel small,.draw-rate-panel strong{display:block}.draw-rate-panel small{color:var(--ui-muted);font-size:11px}.draw-rate-panel strong{margin-top:4px;font-size:12px}.draw-rate-panel>span{max-width:112px;color:var(--ui-muted);font-family:var(--ui-font-reading);font-size:12px;line-height:1.35;text-align:right}
.draw-result-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:72px;margin-top:9px;padding:9px;border:1px solid var(--ui-line);border-left:3px solid var(--ui-gold);border-radius:7px;background:#15191c}.draw-result-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:6px;color:var(--ui-gold);background:#252a2f}.draw-result-icon .pixel-asset-icon{width:42px;height:42px}.draw-result-card small,.draw-result-card strong,.draw-result-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draw-result-card small{color:var(--ui-muted);font-size:11px}.draw-result-card strong{margin:3px 0;font-size:13px}.draw-result-card span{color:var(--ui-muted);font-family:var(--ui-font-reading);font-size:12px}.draw-result-card>em{color:var(--ui-gold);font-size:11px;font-style:normal}.draw-result-card.rarity-rare{border-left-color:var(--ui-violet)}.draw-result-card.rarity-epic{border-left-color:#d28fe8;box-shadow:inset 0 0 18px rgba(210,143,232,.08)}

.equipment-view-tabs{margin-bottom:6px}.equipment-selection-card{flex:0 0 auto;margin-top:0}.equipment-subpanel{min-height:0}.equipment-storage-panel{overflow-y:auto;overscroll-behavior:contain}.equipment-forge-panel{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.storage-action-row{grid-template-columns:.8fr 1.2fr}.open-forge-button,.back-storage-button{min-height:44px;border:1px solid rgba(103,168,207,.4);border-radius:6px;color:#ccecff;background:rgba(103,168,207,.09);font-size:12px;font-weight:900}.forge-status-card{margin-top:10px;padding:14px;border:1px solid var(--ui-line-soft);border-left:3px solid var(--ui-blue);border-radius:6px;background:#111417}.forge-status-card small,.forge-status-card strong,.forge-status-card span{display:block}.forge-status-card small{color:var(--ui-blue);font-size:11px}.forge-status-card strong{margin-top:5px;font-size:15px}.forge-status-card span{margin-top:8px;color:var(--ui-muted);font-family:var(--ui-font-reading);font-size:12px;line-height:1.5}.equipment-forge-panel .enhance-risk{min-height:58px;margin-top:10px;padding:9px 11px}.equipment-forge-panel .forge-button.compact{min-height:52px;margin-top:8px;padding:0 13px}.back-storage-button{margin-top:8px}.forge-safety-note{margin:10px 3px 0;color:var(--ui-muted);font-size:12px;line-height:1.5;text-align:center}

.rune-build-section{overflow:hidden}.rune-build-section>.section-heading{flex:0 0 auto}.rune-build-section .rune-inventory-panel{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;margin-top:7px;overflow:hidden}.rune-build-section .rune-view-tabs{position:static;flex:0 0 auto}.rune-inventory-section{min-height:0;overflow-y:auto;overscroll-behavior:contain}.rune-general-panel,.rune-special-panel{flex:1 1 auto}.general-rune-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.general-rune-grid .rune-inventory-item{display:flex;min-height:92px;flex-direction:column;justify-content:center;gap:4px;padding:7px 5px;text-align:center}.general-rune-grid .rune-inventory-item>b{width:38px;height:38px;margin:0 auto}.general-rune-grid .rune-inventory-item>div{min-width:0;width:100%}.general-rune-grid .rune-inventory-item strong{padding:0;font-size:12px}.general-rune-grid .rune-inventory-item small{display:-webkit-box;overflow:hidden;margin-top:3px;font-size:11px;line-height:1.25;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical}.general-rune-grid .rune-count{top:4px;right:5px}.special-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.special-catalog .rune-inventory-item{display:flex;min-height:98px;flex-direction:column;justify-content:center;gap:4px;padding:7px 5px;text-align:center}.special-catalog .rune-inventory-item>b{width:38px;height:38px;margin:0 auto}.special-catalog .rune-inventory-item>div{min-width:0;width:100%}.special-catalog .rune-inventory-item strong{padding:0;font-size:12px}.special-catalog .rune-inventory-item small{display:-webkit-box;overflow:hidden;margin-top:3px;font-size:11px;line-height:1.25;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical}.special-catalog .rune-count{top:4px;right:5px}.rune-special-panel>#openSpecialRuneSelectorFromInventory{display:none!important}

@media (max-width:649px) and (orientation:portrait){
  .game-shell.mobile-tab-inventory.inventory-category-rune main{overflow:hidden}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="rune"]{display:flex;height:100%;min-height:0;margin:0;overflow:hidden}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="inventory"]{display:none}
  .game-shell.mobile-tab-inventory.inventory-category-rune .rune-inventory-panel{overflow:hidden}
  .party{left:3%;bottom:88px;transform:scale(.66)}
  .party.marching{transform:translateX(4%) scale(.66)}
  .enemy-lane{right:1%;bottom:88px;transform:scale(.64)}
  .draw-section{padding:12px}
  .equipment-inventory-panel{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden}
  .equipment-room-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .equipment-space-heading{grid-template-columns:minmax(0,1fr) 108px;align-items:center;min-height:52px}
  .equipment-space-controls{grid-column:auto;display:block}
  #equipmentSpaceCount{display:none}
  .equipment-space-controls .sort-equipment-button{min-height:44px}
  .rune-build-section .build-summary{flex:0 0 auto;margin-top:7px}
  .rune-build-section .build-summary-item{grid-template-columns:25px minmax(0,1fr);padding:6px}
  .rune-build-section .build-summary-item em{grid-column:1/-1;text-align:right}
  .rune-special-panel .special-rune-slots{grid-template-columns:1fr 1fr}
}

@media (max-width:649px) and (orientation:portrait) and (max-height:720px){
  .draw-choice-card{min-height:178px}.draw-choice-card .draw-choice-icon{width:56px;height:56px;font-size:28px}.draw-wallet-strip>div{min-height:56px;padding:8px 10px}.draw-rate-panel{min-height:54px}.draw-result-card{min-height:66px}
  .general-rune-grid .rune-inventory-item{min-height:78px}.general-rune-grid .rune-inventory-item>b{width:32px;height:32px}.general-rune-grid .rune-inventory-item small{font-size:10px}
  .rune-special-panel .special-slot{min-height:60px}.rune-special-panel .special-slot span{display:none}
  .special-catalog .rune-inventory-item{min-height:70px}.special-catalog .rune-inventory-item>b{width:28px;height:28px}.special-catalog .rune-inventory-item small{font-size:10px}
  .inventory-resonance-preview.resonance-hint{display:none}
  .forge-status-card{margin-top:7px;padding:11px}
}

@media (min-width:650px){
  .game-shell.mobile-tab-inventory.inventory-category-rune main{overflow:hidden}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="rune"]{display:flex;height:100%;min-height:0;margin:0;overflow:hidden}
  .game-shell.mobile-tab-inventory.inventory-category-rune [data-mobile-panel="inventory"]{display:none}
  .equipment-inventory-panel{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden}
  .equipment-space-controls{grid-template-columns:minmax(0,1fr) 120px}
  .party{transform:scale(.72);transform-origin:left bottom}.party.marching{transform:translateX(5%) scale(.72)}.enemy-lane{transform:scale(.68);transform-origin:right bottom}
}
