/* V0.4 Fix 6.4 — player-facing UI cleanup + compact campaign */
.v04-stage-foundation{padding:0;background:none;border:0}
.v04-fix5-panel{margin-top:10px;display:grid;gap:10px}
.v04-campaign-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px 2px}
.v04-campaign-head span{display:block;font-size:9px;letter-spacing:.14em;color:var(--accent);font-weight:900}
.v04-campaign-head h2{margin:2px 0 0;font-size:21px}
.v04-campaign-head>b{min-width:48px;text-align:center;padding:7px 9px;border-radius:999px;background:rgba(101,229,189,.09);border:1px solid rgba(101,229,189,.2);color:var(--accent);font-size:12px}
.v04-chapter-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}
.v04-chapter-tabs::-webkit-scrollbar,.v04-stage-rail::-webkit-scrollbar{display:none}
.v04-chapter-tabs button{flex:0 0 auto;min-width:128px;padding:8px 10px;border-radius:12px}
.v04-chapter-tabs button span{font-size:8px}.v04-chapter-tabs button b{font-size:11px;margin:2px 0}.v04-chapter-tabs button small{font-size:8px}
.v04-stage-rail{display:flex;gap:7px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:4px 2px 6px;overscroll-behavior-x:contain}
.v04-stage-node{flex:0 0 54px;min-height:54px;width:54px;padding:6px;display:grid;place-items:center;text-align:center;border-radius:13px;scroll-snap-align:center}
.v04-stage-node span{font-size:14px;line-height:1;color:inherit}.v04-stage-node small{font-size:8px;color:var(--muted)}.v04-stage-node b{display:none}
.v04-stage-node.is-selected{transform:translateY(-1px);box-shadow:0 0 0 2px rgba(101,229,189,.38);border-color:rgba(101,229,189,.6)}
.v04-stage-node.is-boss{border-color:rgba(255,190,85,.4);color:#ffd77a}.v04-stage-node.is-locked{opacity:.4}
.v04-stage-detail{padding:13px;border-radius:16px;gap:10px}
.v04-stage-detail-head{align-items:center}.v04-stage-detail-head h3{font-size:18px;margin:2px 0 0}.v04-stage-detail-head span{font-size:9px}.v04-stage-detail-head>b{font-size:9px}
.v04-story-card{padding:11px 12px}.v04-story-card>span{font-size:9px}.v04-story-card p{margin:5px 0 0;font-size:12px;line-height:1.45}.v04-story-card blockquote{margin:7px 0 0;padding:7px 9px;font-size:10px;line-height:1.4}
.v04-stage-quick{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(110px,.65fr);gap:8px}
.v04-stage-quick>div{padding:9px;border-radius:13px;background:rgba(10,29,42,.72);border:1px solid rgba(255,255,255,.06)}
.v04-stage-quick>div>span{display:block;margin-bottom:6px;font-size:8px;letter-spacing:.12em;color:var(--muted);font-weight:900}
.v04-enemy-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.v04-enemy-preview article{min-height:54px;padding:5px;grid-template-columns:34px minmax(0,1fr);gap:5px;border-radius:10px}
.v04-enemy-preview img{width:34px;height:34px}.v04-enemy-preview span,.v04-enemy-preview small{font-size:7px}.v04-enemy-preview b{font-size:8px;margin:1px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v04-quick-formation{position:relative}.v04-detail-pets{display:flex;gap:4px;min-height:35px;align-items:center;padding-right:42px}.v04-detail-pets em{font-size:9px;color:var(--muted);font-style:normal}
.v04-detail-pet{width:34px;height:34px;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:rgba(255,255,255,.04)}.v04-detail-pet img{width:100%;height:100%;object-fit:contain}
.v04-quick-formation button{position:absolute;right:7px;bottom:9px;border:0;border-radius:9px;background:rgba(101,229,189,.12);color:var(--accent);padding:7px 8px;font-size:9px;font-weight:900}
.v04-stage-reward{margin:0;padding:9px 11px;border-radius:11px}.v04-stage-reward span{font-size:8px}.v04-stage-reward b{font-size:10px}
.v04-fix5-notice{padding:9px 10px;font-size:10px}.v04-stage-detail>.btn-block{margin-top:0;padding:12px}
.v04-fix5-battle{scroll-margin-top:8px}.v04-gauntlet-continue{margin-top:2px}
.v04-region-journey,.v04-fix5-head,.v04-foundation-grid,.v04-foundation-note{display:none!important}

/* Formation stays compact until explicitly opened. */
.v04-formation-panel{margin-top:9px;padding-top:9px}
.v04-formation-compact{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:rgba(13,34,51,.72)}
.v04-formation-compact>div>span{display:block;font-size:8px;letter-spacing:.12em;color:var(--muted);font-weight:900;margin-bottom:4px}
.v04-mini-slots{display:flex;gap:5px}.v04-mini-slot{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line);background:rgba(255,255,255,.04);overflow:hidden;font-size:12px;color:var(--muted)}
.v04-mini-slot img{width:100%;height:100%;object-fit:contain}.v04-mini-slot.is-locked{opacity:.45}.v04-mini-slot.is-empty{border-style:dashed}
.v04-formation-compact .btn{padding:8px 12px;font-size:10px}.v04-formation-expanded{display:grid;gap:8px;margin-top:8px}
.v04-formation-expanded .section-head{margin-top:8px}

/* Player-facing PvP/Ranked cleanup: implementation details stay internal. */
.pvp-v03-head.is-clean,.rank-head.is-clean{padding:8px 2px;background:none;border:0;box-shadow:none}
.pvp-v03-head.is-clean h2,.rank-head.is-clean h2{margin:0;font-size:23px}
.rank-head.is-clean>div{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.rank-head.is-clean span{font-size:10px;color:var(--muted);letter-spacing:.08em}
.pvp-rule-strip,.arena-fix9-note,.fix9-server-card,.fix9-server-result,.rank-server-pill,.pvp11-storage,.pvp11-reward-note{display:none!important}

@media(max-width:520px){
  .v04-stage-quick{grid-template-columns:1fr}
  .v04-enemy-preview{grid-template-columns:repeat(3,minmax(0,1fr))}
  .v04-enemy-preview article{grid-template-columns:30px minmax(0,1fr)}
  .v04-enemy-preview img{width:30px;height:30px}
  .v04-stage-detail{padding:11px}
}
