/* Preparation only. Battle and training styles retain their existing ownership. */
body:not(.in-battle){background:#0b1724;background-image:linear-gradient(90deg,#15273722 1px,transparent 1px),linear-gradient(#15273722 1px,transparent 1px);background-size:24px 24px;color:#e8eedc}
body:not(.in-battle) main{max-width:1536px;padding:25px 32px 0;margin:auto}
body:not(.in-battle) .topbar{height:64px;padding:0 32px;background:#0e1d2c;border-bottom:2px solid #284353;box-shadow:0 3px 0 #050e19;gap:20px}
body:not(.in-battle) .brand{font-family:ui-monospace,Consolas,monospace;font-size:19px;letter-spacing:-.7px}body:not(.in-battle) .brand b{color:#c2ec80}
body:not(.in-battle) .edition{font-size:8px;letter-spacing:1.4px;border-left:1px solid #3f5e68;padding-left:14px;margin-left:7px;color:#94aab5}
body:not(.in-battle) .header-right{font:10px ui-monospace,monospace;gap:12px;display:flex;align-items:center;color:#8da7b6}.visual-indicator{border:1px solid #36536a;padding:7px 9px;color:#9dc9dc;font:9px ui-monospace,monospace}.in-battle .visual-indicator{display:none}
body:not(.in-battle) .small-button,body:not(.in-battle) .header-right button{background:#1b3041;color:#c6d5d5;border:1px solid #41606b;border-radius:2px;font:10px ui-monospace,monospace;padding:9px 11px;box-shadow:0 2px 0 #050f19;cursor:pointer}
#selection{--menu-line:#365366;--menu-muted:#91a8b4;--menu-lime:#c2ec80;--menu-cyan:#8bd9e6;font-family:'Segoe UI',sans-serif;scroll-margin-top:15px}
#selection [hidden]{display:none!important}#selection button,#selection input,#selection select,#selection a{touch-action:manipulation}#selection button:focus-visible,#selection select:focus-visible,#selection input:focus-visible,#selection a:focus-visible{outline:2px solid #bde5ed;outline-offset:3px}#selection button:disabled{cursor:not-allowed}
.setup-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.setup-kicker{font:10px ui-monospace,monospace;color:#8bced8;letter-spacing:2px}.setup-heading h1{font:700 clamp(24px,2.6vw,36px) ui-monospace,Consolas,monospace;letter-spacing:-1.5px;line-height:1.2;margin:9px 0;color:#edf0dc}.setup-heading h1 span{color:#c2ec80}.setup-heading p{font-size:13px;margin:0;color:#92a9b6}.training-link{display:flex;gap:24px;font:11px ui-monospace,monospace;background:#193744;color:#a3dde1;text-decoration:none;padding:13px 17px;border:1px solid #477484;box-shadow:3px 3px 0 #07121e}.training-link:hover{background:#244b57}.training-link span{color:#c2ec80}
.setup-steps{display:flex;gap:0;margin:0 0 20px;border:1px solid #2c4557;background:#0f2030}.setup-steps a{display:flex;align-items:center;gap:10px;padding:12px 18px;flex:1;text-decoration:none;font:11px ui-monospace,monospace;color:#8aa2b0;border-right:1px solid #2c4557}.setup-steps a:last-child{border-right:0}.setup-steps b{font-size:10px;color:#a4bcc8;background:#21384a;padding:4px 6px}.setup-steps .complete b{background:#c2ec80;color:#142531}.setup-steps a:hover{background:#1b3342;color:#edf0dc}
#selection .setup-panel{background:#132738;border:1px solid #355468;border-top:3px solid #536d76;border-radius:2px;box-shadow:3px 3px 0 #06121d;min-width:0}
#selection .panel-heading{display:flex;align-items:center;gap:10px;margin:0 0 16px;min-width:0}#selection .panel-heading h2{font:700 13px ui-monospace,Consolas,monospace;color:#e7eddc;letter-spacing:.4px;margin:0;line-height:1.4}.step-number{font:11px ui-monospace,monospace;background:#274657;color:#95dbe5;border:1px solid #456572;padding:4px 6px}.panel-meta{margin-left:auto;color:#7f9aa9;font:8px ui-monospace,monospace;letter-spacing:1px}.count-badge{margin-left:auto;color:#162b33;background:#c2ec80;padding:5px 10px;font:700 12px ui-monospace,monospace}
#selection .battle-configuration{display:block;padding:18px 20px;margin:0 0 22px}.settings-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}#selection .settings-fields label{display:grid;min-width:0;gap:7px;color:#9eb8c5;font:10px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.5px}#selection select{width:100%;max-width:100%;background:#0d1c2b;border:1px solid #3e5b6c;border-bottom:3px solid #284354;border-radius:2px;color:#e3e9dc;padding:10px 11px;font:12px 'Segoe UI',sans-serif;cursor:pointer;min-height:40px}#selection select:hover{border-color:#7698a3}
.config-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #2b4556;margin-top:15px;padding-top:13px}.arena-thumbnail{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.arena-thumbnail img{width:86px;height:48px;object-fit:cover;border:1px solid #517587;image-rendering:pixelated}.arena-thumbnail b{font:10px ui-monospace,monospace;color:#d8e8bb}.arena-thumbnail p{font:11px 'Segoe UI',sans-serif!important;color:#8fa8b6!important;margin:4px 0!important;line-height:1.4}.arena-thumbnail small{font:9px ui-monospace,monospace;color:#708d9d}#selection #mode-description{max-width:230px;width:auto;font:11px 'Segoe UI',sans-serif;color:#8fa8b6;margin:0;line-height:1.6}
#selection .team-selector{border-top:1px solid #345064;margin:12px 0 0;padding-top:12px}#selection .team-selector button[aria-pressed=true]{background:#c2ec80;color:#152c36;border-color:#d6f4a9}#selection #teams-summary{font:10px ui-monospace,monospace;color:#9cb6c2;margin:10px 0 0}
.setup-workspace{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start}.picker-panel{padding:19px 18px 13px}.roster-toolbar{display:grid;grid-template-columns:minmax(130px,1fr) 155px;gap:10px;margin-bottom:14px;align-items:center}.search-box{display:flex;align-items:center;gap:7px;border:1px solid #3e5b6c;background:#0c1c2a;padding:0 10px;color:#8ed6e3}.search-box>span{font-size:24px}.search-box input{width:100%;min-width:0;background:none;border:0;color:#e4ebdf;padding:10px 0;font:12px 'Segoe UI',sans-serif;outline:none}.search-box:focus-within{border-color:#9adce7;box-shadow:0 0 0 1px #9adce7}#roster-result{grid-column:1/-1;font:9px ui-monospace,monospace;color:#8ca9b5}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#selection .roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;max-height:690px;overflow-y:auto;padding:3px 7px 7px 3px;scrollbar-width:thin;scrollbar-color:#4a6b7b #0f2030}
#selection .pokemon-card{background:#1b3042;border:1px solid #3c5768;border-radius:2px;position:relative;text-align:left;padding:0;color:#e3e9dc;box-shadow:2px 2px 0 #071624;transition:background .12s,border-color .12s,transform .12s;overflow:hidden;cursor:pointer;min-width:0}#selection .pokemon-card:hover{background:#233e50;border-color:#8eb8c6;transform:translateY(-2px)}#selection .pokemon-card.selected{border:2px solid #c2ec80;background:#263e3d;box-shadow:0 0 0 1px #121f2a,2px 2px 0 #071624}#selection .card-top{display:flex;justify-content:space-between;align-items:center;padding:9px 10px 0;color:#7c9ba9;font:9px ui-monospace,monospace;position:relative;z-index:1}#selection .pick-order{display:grid;place-items:center;border:1px solid #456372;background:#132837;width:23px;height:23px;color:#aac7d2;font:12px ui-monospace,monospace}#selection .selected .pick-order{background:#c2ec80;color:#142a32;border-color:#d7f49d}
#selection .sprite-stage{display:grid;place-items:center;height:100px;background:radial-gradient(ellipse at 50% 72%,var(--tint),transparent 65%);position:relative}#selection .sprite-stage:after{content:'';position:absolute;bottom:10px;left:23%;width:54%;height:1px;background:#57748666}#selection .sprite-stage canvas{width:96px!important;height:96px!important;position:relative;z-index:1;image-rendering:pixelated}#selection .card-copy{padding:7px 11px 0}#selection .card-copy h3{font:700 15px ui-monospace,Consolas,monospace;letter-spacing:-.6px;color:#eef0dd;margin:0 0 6px}#selection .type{font:8px ui-monospace,monospace;color:var(--type);background:#09192680;border:1px solid color-mix(in srgb,var(--type) 40%,transparent);border-radius:2px;padding:3px 5px;display:inline-block;letter-spacing:.2px}#selection .role{display:block;min-height:30px;height:auto;font:10px 'Segoe UI',sans-serif;line-height:1.4;color:#91aab6;margin:8px 0 7px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.card-attributes{display:grid;gap:5px;margin:7px 0 11px}.card-attributes label{display:flex;gap:6px;align-items:center;font:8px ui-monospace,monospace;color:#8da7b4}.card-attributes label>i{flex:1;height:4px;background:#0c1b29;display:block}.card-attributes i>b{height:4px;display:block;background:#729f9d;box-shadow:inset 0 1px #a8cac455}.card-attributes small{width:29px;text-align:right;font:8px ui-monospace,monospace;color:#acc1c5}.pick-status{display:block;font:9px ui-monospace,monospace;color:#b3c8ce;border-top:1px solid #395463;background:#142a3a;margin:0 -11px;padding:9px 10px;text-align:center;letter-spacing:.5px}.selected .pick-status{background:#c2ec80;color:#142932;border-color:#c2ec80;font-weight:700}
.picker-help{display:flex;gap:10px;justify-content:space-between;border-top:1px solid #304b5d;padding:12px 0 0;margin-top:7px;color:#829eab;font:9px ui-monospace,monospace}#roster-empty{padding:55px 20px;text-align:center;color:#9ab7c5;font-size:13px}
#selection .prepare-footer{display:flex;flex-direction:column;gap:0;padding:0;margin:0;position:sticky;top:16px;align-items:stretch}.team-block{padding:17px 16px 12px;border-bottom:1px solid #355266}.team-block .panel-meta{font-size:7px}.team-block .panel-heading{margin-bottom:12px!important}#selection .team-preview{display:grid;gap:7px;margin:0}#selection .team-slot{display:flex;justify-content:space-between;align-items:center;gap:7px;min-width:0;height:53px;padding:0 9px;background:#0e2030;border:1px dashed #3b5666;border-radius:2px;font:10px ui-monospace,monospace;color:#708d9d}#selection .team-slot>b{font-size:12px;color:#6f8c9b}#selection .team-slot small{margin-left:auto;font-size:8px}#selection .team-slot.filled{padding:0 5px 0 0;border:1px solid #42616f;background:#1b3344}#selection .team-slot.active{border-color:#c2ec80;box-shadow:inset 3px 0 #c2ec80;background:#263e40}.team-edit{background:none;border:0;color:#e3e9da;font:700 12px ui-monospace,monospace;display:flex;align-items:center;gap:7px;padding:5px 8px;min-width:0;flex:1;text-align:left;cursor:pointer}.team-edit>b{color:#86a2b0;font:10px ui-monospace,monospace}.team-edit canvas{width:35px!important;height:35px!important;image-rendering:pixelated}.team-actions{display:flex;gap:3px}.team-actions button{border:1px solid #416172;background:#102535;color:#a8c4ca;width:24px;height:25px;padding:0;font:14px ui-monospace,monospace;cursor:pointer}.team-actions button:hover{border-color:#a5d9df;background:#294756}.team-actions button:disabled{opacity:.25}.team-help{font-size:10px;line-height:1.5;color:#829faa;margin:9px 0 0}
#selection .loadout-editor{margin:0;padding:15px 16px;border:0;border-bottom:1px solid #355266;border-radius:0;background:#112435}.loadout-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.loadout-heading h2{font:700 11px ui-monospace,monospace;color:#cae3db;margin:0}.loadout-heading>span{font:8px ui-monospace,monospace;color:#86a4b3}#selection .loadout-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0 10px}#selection .loadout-tab{padding:4px 7px;display:flex;gap:4px;border-radius:2px;background:#1c3648;border:1px solid #3e5b6e;color:#a7c0c9;font:9px ui-monospace,monospace;min-width:0}#selection .loadout-tab canvas{width:20px;height:20px;image-rendering:pixelated}#selection .loadout-tab.active{background:#354f42;border-color:#b5db83;color:#e9f3c6}#selection .loadout-layout{display:block}#selection #loadout-title{font:700 13px ui-monospace,monospace;color:#eef0db;margin:8px 0 3px}.slot-instruction{font:10px 'Segoe UI',sans-serif!important;color:#89a6b3!important;margin:4px 0 10px!important}#selection .equipped-slots{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}#selection .equip-slot{grid-template-columns:20px minmax(0,1fr);gap:4px;padding:8px 7px;background:#1a3345;border:1px solid #3b5769;border-left:3px solid var(--accent);border-radius:2px;transform:none;min-height:55px}#selection .equip-slot>span{font:10px 'Segoe UI',sans-serif;line-height:1.3;color:#e1e9db}#selection .equip-slot kbd{font:9px ui-monospace,monospace;padding:3px 4px;background:#0c2130;border:1px solid #3e6070;color:#b8cfd5;grid-row:1/3;align-self:center}#selection .equip-slot small{font:7px ui-monospace,monospace;color:var(--accent);opacity:1}#selection .equip-slot.active{background:#304944;border-color:#b4d98b;outline:1px solid #b4d98b;transform:none}#selection #reset-loadout{font-size:8px;padding:6px 8px;box-shadow:none;margin-bottom:10px;color:#91b1bc;background:transparent;border:0}
#selection .move-options{display:grid;grid-template-columns:1fr;max-height:305px;overflow-y:auto;gap:7px;padding:2px 5px 3px 2px;scrollbar-width:thin;scrollbar-color:#4b7082 #0d1d2c}#selection .move-option{padding:10px 10px 8px;background:#193244;color:#dce6d7;border:1px solid #3d596a;border-left:3px solid var(--accent);border-radius:2px;transform:none}#selection .move-option:hover{background:#243f50;border-color:#9cbfca;transform:none}#selection .move-option>div:first-child{display:flex;align-items:start;gap:6px}#selection .move-option strong{font:600 12px 'Segoe UI',sans-serif;line-height:1.3}#selection .move-option div>span{font:7px ui-monospace,monospace;letter-spacing:.2px;margin-left:auto}#selection .move-category{font:8px ui-monospace,monospace;color:#8aa5b4;margin:4px 0 8px}#selection .move-metrics{display:flex;gap:12px;align-items:center}#selection .move-metrics>span{margin:0;font:9px 'Segoe UI',sans-serif;color:#8faeb9}#selection .move-metrics b{font:600 10px ui-monospace,monospace;color:#d2dfd4}#selection .move-option p{min-height:0;font:10px 'Segoe UI',sans-serif;line-height:1.5;color:#91adb8;margin:8px 0}#selection .move-option em{font:8px ui-monospace,monospace;color:#a1c2cd}#selection .move-option.equipped{background:#233d3e;border-color:#647e67}#selection .move-option.equipped em{color:#c2ec80}#loadout-status{font:9px 'Segoe UI',sans-serif!important;line-height:1.5;color:#7f9eab!important;margin:10px 0 0!important}.loadout-empty{padding:27px 5px;color:#87a4b3!important;text-align:center;font-size:12px!important;line-height:1.7}.loadout-editor.is-empty #loadout-status{display:none}
#selection .start-area{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:16px;background:#182e3b}.match-summary{font:9px ui-monospace,monospace;color:#95b8c1;line-height:1.7}#selection-hint{font:10px 'Segoe UI',sans-serif;color:#a8c2b8;text-align:left}#selection #start{min-width:0;width:100%;padding:16px 16px;display:flex;justify-content:space-between;align-items:center;font:700 13px ui-monospace,monospace;letter-spacing:.5px;border:1px solid #d7f2ab;border-bottom:4px solid #7d9b55;border-radius:2px;background:#c2ec80;color:#15313b;box-shadow:0 3px 0 #081924;cursor:pointer}#selection #start:hover:not(:disabled){background:#d6f69e;transform:translateY(-1px)}#selection #start:disabled{background:#2b414d;color:#718c97;border-color:#405969;border-bottom-color:#20323f;opacity:1}.mobile-team-link{display:none}
.menu-controls{margin-top:22px;border:1px solid #2c4558;background:#102333}.menu-controls summary{cursor:pointer;padding:13px 17px;font:10px ui-monospace,monospace;color:#8baab7;list-style:none;display:flex;justify-content:space-between}.menu-controls summary span{color:#b9de85}.menu-controls .controls-strip{margin:0;border:0;box-shadow:none;background:none}#selection .menu-note{margin:20px 0;font:8px ui-monospace,monospace;color:#58798c;letter-spacing:.5px;display:flex;justify-content:space-between}body:not(.in-battle)>footer{max-width:1472px;margin:0 auto;padding:16px 0;color:#75909e;font:9px ui-monospace,monospace;border-color:#2d4555}
@media(min-width:1450px){#selection .roster{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1150px){.setup-workspace{grid-template-columns:minmax(0,1fr) 335px;gap:15px}body:not(.in-battle) main{padding:22px 20px 0}.picker-panel{padding:16px 12px}.panel-meta{display:none}#selection .roster{gap:8px}.roster-toolbar{grid-template-columns:1fr 135px}#selection .card-copy{padding-inline:8px}.pick-status{margin-inline:-8px}#selection .sprite-stage{height:86px}#selection .sprite-stage canvas{width:84px!important;height:84px!important}#selection .card-copy h3{font-size:13px}#selection .role{font-size:9px}.card-attributes small{width:24px}.config-foot{gap:15px}.setup-steps a{padding:12px;font-size:10px}body:not(.in-battle) .edition{display:none}}
@media(max-width:900px){.setup-workspace{grid-template-columns:1fr}.prepare-footer{position:static!important}#selection .roster{grid-template-columns:repeat(4,minmax(0,1fr));max-height:580px}#selection .team-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.team-edit{font-size:10px;gap:4px;flex-wrap:wrap}.team-actions{gap:2px}#selection .team-slot{height:76px;align-items:center;flex-wrap:wrap;padding:6px!important}.team-edit canvas{width:28px!important;height:28px!important}.team-actions{margin-left:auto}#selection .loadout-layout{display:grid;grid-template-columns:260px 1fr;gap:18px}#selection .move-options{max-height:320px}.settings-fields{grid-template-columns:1fr 1fr}.setup-steps a{justify-content:center}.setup-heading h1{font-size:28px}body:not(.in-battle) .header-right{gap:8px}body:not(.in-battle) .network-label{display:none}.visual-indicator{font-size:8px}body:not(.in-battle) .brand{font-size:16px}}
@media(max-width:600px){body:not(.in-battle) main{padding:20px 12px 85px}body:not(.in-battle) .topbar{padding:0 12px;height:auto;min-height:60px;gap:8px;flex-wrap:wrap;padding-block:10px}body:not(.in-battle) .brand{font-size:16px}body:not(.in-battle) .header-right{margin-left:auto;font-size:8px;gap:5px}.visual-indicator,body:not(.in-battle) .online-dot{display:none}.setup-heading{align-items:start;margin-bottom:17px}.setup-heading h1{font-size:24px;max-width:250px;letter-spacing:-1px}.setup-heading p{font-size:11px;max-width:260px}.setup-kicker{font-size:8px}.training-link{font-size:8px;padding:9px;gap:6px}.setup-steps{display:grid;grid-template-columns:1fr 1fr}.setup-steps a{justify-content:flex-start;font-size:9px;padding:10px;border-bottom:1px solid #2c4557}.setup-steps a:nth-child(2){border-right:0}.settings-fields{gap:10px}#selection .battle-configuration{padding:14px 12px}.config-foot{display:block}.arena-thumbnail img{width:68px;height:48px}#selection #mode-description{max-width:none;margin:10px 0 0;font-size:10px}#selection .panel-heading h2{font-size:11px}#selection .roster{grid-template-columns:repeat(2,minmax(0,1fr));max-height:540px}.roster-toolbar{grid-template-columns:1fr 130px}.picker-panel{padding:14px 10px}#selection .sprite-stage{height:90px}#selection .role{font-size:10px}#selection .card-copy h3{font-size:14px}.picker-help{font-size:8px;line-height:1.5}#selection .team-preview{grid-template-columns:1fr}#selection .team-slot{height:51px;flex-wrap:nowrap}#selection .team-edit{font-size:12px;flex-wrap:nowrap}#selection .team-edit canvas{width:32px!important;height:32px!important}#selection .loadout-layout{display:block}#selection .move-options{max-height:360px}#selection .start-area{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:95px 1fr;gap:8px;padding:10px 12px;background:#102738f7;border-top:2px solid #3b5d70;box-shadow:0 -4px 16px #07121d80}#selection .start-area .match-summary,#selection .start-area #selection-hint{display:none}.mobile-team-link{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;color:#a4c8d1;font:9px ui-monospace,monospace;text-decoration:none;border:1px solid #436879}.mobile-team-link span{color:#d0ef9c;margin:0 4px}#selection #start{padding:13px 10px;font-size:11px}.menu-note span{display:none}body:not(.in-battle)>footer{display:none}#team-workbench{scroll-margin-top:12px}}
@media(prefers-reduced-motion:reduce){#selection .pokemon-card{transition:none;transform:none!important}}

/* Compact first screen and immediately accessible launch action. */
#selection .pick-order{border-radius:0}
#selection .team-block{order:0}#selection .start-area{order:1}#selection .loadout-editor{order:2;border-top:1px solid #355266;border-bottom:0}
body:not(.in-battle) main{padding-top:20px}.setup-heading{margin-bottom:16px}.setup-heading h1{font-size:clamp(24px,2.35vw,32px);margin-block:7px}.setup-steps{margin-bottom:16px}.setup-steps a{padding-block:10px}
#selection .battle-configuration{padding:14px 18px;margin-bottom:18px}#selection .battle-configuration .panel-heading{margin-bottom:11px}.settings-fields{gap:14px}#selection .settings-fields select{min-height:36px;padding:8px 10px}.config-foot{margin-top:11px;padding-top:10px}.arena-thumbnail img{height:38px;width:72px}.arena-thumbnail p{max-width:700px}.arena-thumbnail small{display:none}
@media(max-width:600px){#selection .battle-configuration{padding:13px 12px}.setup-heading h1{font-size:24px}.setup-steps a{padding-block:10px}#selection .start-area{order:3}}
