body.battle-theme{--forest:#cbb47e;--green:#d3c292;--mint:#35463b;--paper:#121d18;--white:#1b2922;--ink:#e1e0cf;--muted:#adb7a6;--line:#435044;--gold:#cbb47e;background:radial-gradient(ellipse at 15% 0,#293b2d,#121d18 65%);color:var(--ink);color-scheme:dark;min-height:100vh}body.battle-theme .topbar{border-bottom:1px solid #66715c35}body.battle-theme .coin-badge{background:#302d21;border-color:#726341;color:#dfcc96}body.battle-theme .nav-btn.active{color:#eee7ce;background:#39493b}body.battle-theme .primary{background:linear-gradient(#c4ad75,#9d844e);border:1px solid #dbca98;color:#192219;border-radius:4px;box-shadow:inset 0 1px #ffffff35}body.battle-theme .primary:hover{background:linear-gradient(#d8c48e,#b79b62)}body.battle-theme .secondary,body.battle-theme .tool-btn{background:#26372b;border-color:#69755c;color:#dcd6bd;border-radius:4px}body.battle-theme .secondary:hover,body.battle-theme .tool-btn:hover{background:#35473a}body.battle-theme .panel,body.battle-theme .arena-panel{border-radius:6px;border-color:#64715566;box-shadow:0 14px 32px #03090540}body.battle-theme .role-card{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#465139 0%,#243328 50%,#19241c 100%);border:1px solid #5b6752;border-radius:5px;color:#e5dfc8;padding:15px 10px;min-height:294px}body.battle-theme .role-card:before{content:"";position:absolute;inset:8px;border:1px solid #baad7b16;pointer-events:none}body.battle-theme .role-card.selected{background:radial-gradient(ellipse at 50% 32%,#637054 0%,#344333 50%,#243329 100%);border:1px solid #c6b784;box-shadow:inset 0 0 28px #b19c4712,0 0 15px #99834816}body.battle-theme .role-card svg{height:175px;width:135px;filter:drop-shadow(0 9px 8px #0007)}body.battle-theme .role-card strong{font-weight:600;letter-spacing:1px}body.battle-theme .role-card small,body.battle-theme .role-card span{color:#b6bca8}body.battle-theme .sector-card{border-color:#5b6752;border-radius:5px;background:linear-gradient(#26392dcc,#192b22e6),url('assets/terrain-v2.webp') center/cover;color:#e4dfc8;padding:15px 10px;min-height:100px}body.battle-theme .sector-card.selected{border:1px solid #c9b784;background:linear-gradient(#42523bcc,#253c2ae6),url('assets/terrain-v2.webp') center/cover;padding:15px 10px}body.battle-theme .combat-picker{background:linear-gradient(135deg,#223327ee,#17271fee)}body.battle-theme .combat-armory{background:#19271f}body.battle-theme .armory-status{color:#d4bf82}body.battle-theme .arena-hud{background:linear-gradient(#25362a,#1b2b22);border-bottom:1px solid #899d6055}body.battle-theme .health-track{background:#0e2118}body.battle-theme .health-track i{background:linear-gradient(90deg,#658356,#a1b97d)}body.battle-theme .arena-stage{background:#233128}body.battle-theme .arena-message{background:#1c2a20;color:#c3c7b4;border-top:1px solid #65734d44}body.battle-theme .movement-pad button{background:linear-gradient(#354638,#24382b);border-color:#71826266;border-radius:4px;color:#ddd7c1}body.battle-theme .arena-overlay{background:#0b1818b8}body.battle-theme .arena-dialog{background:linear-gradient(#293a2d,#16251f);color:#e1dfc7;border-color:#a1916080;border-radius:5px}body.battle-theme .upgrade-options button{background:linear-gradient(#40513b,#27392c);border-color:#958956;border-radius:4px;color:#e5dfc6}body.battle-theme .upgrade-options span{color:#bcc5b1}body.battle-theme .rune-guide{background:linear-gradient(#29362a,#1c2a22);border-color:#8e815177}body.battle-theme .combat-heading{margin-top:26px}body.battle-theme .combat-title{font-weight:600;letter-spacing:1px}body.battle-theme .combat-note{color:#aeb89f}.crew-member .real-character{height:83px;width:67px;filter:drop-shadow(0 4px 3px #28382138)}.real-character{overflow:hidden}.battle-wrap{background:#15231e}.battle-caption{color:#d4d7c5!important}.battle-actions{background:#f2f0e5}
@media(max-width:520px){body.battle-theme .role-card{min-height:236px;padding:12px 6px}body.battle-theme .role-card.selected{padding:12px 6px}body.battle-theme .role-card svg{height:133px;width:89px}body.battle-theme .role-card strong{font-size:11px;letter-spacing:0}body.battle-theme .role-card span{font-size:10px}body.battle-theme .sector-card,body.battle-theme .sector-card.selected{min-height:114px;padding:12px 7px}body.battle-theme .combat-title{font-size:21px}.crew-member .real-character{width:50px;height:73px}}

/* Combat v3: restrained cues, readable progression and class identity. */
body.battle-theme .role-card .role-passive{font-size:11px;line-height:1.65;color:#d0c298;padding:10px 4px 0;border-top:1px solid #82745244;margin-top:3px;max-width:220px}body.battle-theme .combat-heading-actions{flex-wrap:wrap;justify-content:flex-end}body.battle-theme .combat-sound{padding:10px 12px;font-size:12px}.combat-meter{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 18px;background:#18291f;border-bottom:1px solid #65734d44;min-height:43px}.combo-readout{display:flex;align-items:center;gap:6px;color:#cfbc88;font-size:11px}.combo-readout i{width:8px;height:8px;border:1px solid #9c9169;transform:rotate(45deg);margin:0 2px}.combo-readout i.filled{background:#d1b673;box-shadow:0 0 7px #c0a05d55}.combo-readout small{margin-left:7px;color:#aeb99f;font-size:10px}.experience-track{height:4px;min-width:90px;flex:1;background:#0c1b14;border-radius:2px;overflow:hidden}.experience-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#487783,#a0c1c2);transition:width .2s}.boss-readout{flex-basis:100%;border-top:1px solid #89724966;padding-top:9px;font-size:11px;color:#d9b68a;display:flex;justify-content:space-between}.boss-readout[hidden]{display:none}.combat-passive{border-left:2px solid #ad9962;padding-left:12px;color:#d3c390!important}body.battle-theme .arena-panel:focus-within{border-color:#9a8e61}body.battle-theme .health-track.critical i{background:linear-gradient(90deg,#964d39,#d49465)}
@media(max-width:520px){.combat-meter{padding:9px 10px;gap:7px}.combo-readout{font-size:10px}.combo-readout small{font-size:9px}.experience-track{min-width:50px}.boss-readout{font-size:10px}body.battle-theme .role-card .role-passive{font-size:9px;line-height:1.6;padding:7px 0 0}body.battle-theme .combat-heading-actions{justify-content:flex-start}.combat-sound{font-size:11px!important}}
@media(max-width:520px){.arena-hud{grid-template-columns:1fr 1fr;gap:11px 16px;padding:13px 12px}.arena-hud b{font-size:11px;line-height:1.5}.arena-hud span{font-size:10px}.arena-controls{gap:10px}.movement-pad{grid-template-columns:repeat(3,38px);grid-template-rows:repeat(2,40px);gap:4px}.action-pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:1}.action-pad button{min-height:40px;font-size:10px;padding:8px 5px}.arena-message{min-height:38px}}

/* Mission objectives, growth branches and field encounters. */
.sector-objective{padding-top:6px;margin-top:auto;border-top:1px solid #96845c44;font-size:11px;color:#d7c998}.objective-readout{flex-basis:100%;display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;padding-top:8px;border-top:1px solid #63725366;font-size:11px;align-items:center}.objective-readout>span{color:#ccbc89}.objective-readout>b{font-weight:400;color:#c5cbb7;text-align:right;line-height:1.6}.objective-track{grid-column:1/-1;height:3px;background:#0c1b14}.objective-track i{display:block;height:100%;background:#bdad77;transition:width .2s}.objective-guide{padding:21px;background:linear-gradient(#354431,#1b2c21);border-color:#8e835688!important}.objective-guide h2{margin:0 0 14px;font-size:18px}.objective-guide p{font-size:12px;line-height:1.9;color:#bcc5b1}.mission-detail{padding:10px 12px;background:#14251b;border:1px solid #6b75513d;border-radius:3px;color:#dfd3ab!important}.build-summary{display:flex;flex-wrap:wrap;gap:7px;padding-top:10px;border-top:1px solid #77865e44;font-size:11px;color:#bfcbac}.build-summary strong{flex-basis:100%;font-weight:500;color:#ddd0a2}.build-summary span{padding:4px 7px;background:#354634;border:1px solid #65745644;border-radius:3px}.encounter-dialog{border-color:#b49b5f!important}.encounter-options button{min-height:113px}.combat-history{margin-top:20px;grid-column:1/-1}.combat-history h3{font-size:13px;font-weight:500;color:#cebc88}.run-record{display:flex;flex-direction:column;gap:6px;font-size:11px;padding:10px 0;border-bottom:1px solid #576b4744}.run-record strong{font-weight:500;color:#d8d5bd}.run-record span{color:#aebaa2;line-height:1.6}
@media(max-width:520px){.objective-readout{grid-template-columns:1fr;gap:4px;font-size:10px}.objective-readout>b{text-align:left;line-height:1.6}.objective-track{grid-column:1}.sector-objective{font-size:9px;line-height:1.5}.encounter-options{grid-template-columns:1fr}.encounter-options button{min-height:0;gap:4px;padding:9px 10px}.encounter-options button strong{font-size:11px}.encounter-options button span{font-size:10px;line-height:1.5}.encounter-dialog{margin:auto 0;padding:12px}.encounter-dialog h2{font-size:15px}.encounter-dialog>p{font-size:10px}.arena-overlay:has(.encounter-dialog){align-items:flex-start}.objective-guide{padding:17px}.build-summary{font-size:10px}.run-record{font-size:10px}.combat-history{margin-top:8px}}
.arena-overlay:has(.upgrade-options){align-items:flex-start}.arena-overlay:has(.upgrade-options) .arena-dialog{margin:auto 0}
@media(max-width:520px){.arena-overlay:has(.upgrade-options){position:fixed;inset:0;z-index:80;padding:20px;background:#081511e8;align-items:center!important}.arena-overlay:has(.upgrade-options) .arena-dialog{margin:auto;max-width:520px;padding:20px}.arena-overlay .upgrade-options{grid-template-columns:1fr;gap:10px;margin-top:16px}.arena-overlay .upgrade-options button{min-height:65px;gap:6px;padding:13px 12px}.arena-overlay .upgrade-options button strong{font-size:13px}.arena-overlay .upgrade-options button span{font-size:12px;line-height:1.7}.arena-overlay .arena-dialog h2{font-size:20px}.arena-overlay .arena-dialog>p{font-size:12px;line-height:1.8}.arena-overlay .encounter-dialog .combat-note{margin-top:14px;font-size:11px}}
