/* Pokémon Hub v2.32.7
   A single, game-facing language for roster selection and Pokémon management.
   It intentionally uses an isolated namespace so legacy team/card revisions
   cannot re-style this surface. */
:root {
  --pokemon-hub-ink:#102c43;
  --pokemon-hub-muted:#6a8495;
  --pokemon-hub-line:rgba(133,180,198,.34);
  --pokemon-hub-paper:#f4fafc;
  --pokemon-hub-panel:#ffffff;
  --pokemon-hub-navy:#10394c;
  --pokemon-hub-blue:#1698d5;
  --pokemon-hub-green:#2cab78;
  --pokemon-hub-shadow:0 18px 44px rgba(16,55,75,.16);
}

.pokemon-roster-console-v2327,
.pokemon-control-room-v2327 {
  box-sizing:border-box;
  min-height:100%;
  color:var(--pokemon-hub-ink);
  font-family:"Segoe UI Variable","Trebuchet MS",system-ui,sans-serif;
}
.pokemon-roster-console-v2327 *,
.pokemon-control-room-v2327 * { box-sizing:border-box; }
.pokemon-roster-console-v2327 button,
.pokemon-control-room-v2327 button {
  font:inherit;
  touch-action:manipulation;
}

/* Compact roster: one clear party rail plus a useful lead preview. */
.pokemon-roster-console-v2327 {
  padding:18px;
  border:1px solid rgba(137,188,205,.45);
  border-radius:24px;
  background:
    radial-gradient(circle at 94% 3%,rgba(50,204,194,.2),transparent 25%),
    linear-gradient(145deg,#fafdff 0%,#edf7f8 100%);
  box-shadow:0 10px 28px rgba(10,60,80,.08);
}
.pokemon-roster-console-v2327-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:58px;
  margin:0 0 16px;
  padding:0 2px 14px;
  border-bottom:1px solid var(--pokemon-hub-line);
}
.pokemon-roster-console-v2327-head span { display:grid; gap:3px; }
.pokemon-roster-console-v2327-head small,
.pokemon-control-room-v2327 small {
  color:#51798d;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
}
.pokemon-roster-console-v2327-head h1 {
  margin:0;
  color:#123d58;
  font-size:25px;
  letter-spacing:-.035em;
}
.pokemon-roster-console-v2327-head>div { display:flex; align-items:center; gap:10px; }
.pokemon-roster-console-v2327-head strong {
  display:grid;
  min-width:72px;
  padding:7px 10px;
  border:1px solid #c2e8f1;
  border-radius:13px;
  background:#e9fbff;
  color:#107fa7;
  font-size:18px;
  line-height:1;
  text-align:center;
}
.pokemon-roster-console-v2327-head strong small { margin-top:3px; color:#568294; font-size:8px; letter-spacing:0; }
.pokemon-roster-console-v2327-head button,
.pokemon-roster-console-v2327-hero.is-empty button {
  min-height:42px;
  padding:9px 14px;
  border:1px solid #c8e1e9;
  border-radius:12px;
  background:#fff;
  color:#1c5b75;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.pokemon-roster-console-v2327-head button:hover,
.pokemon-roster-console-v2327-hero.is-empty button:hover { border-color:#42aed2; color:#087ea7; }
.pokemon-roster-console-v2327-layout {
  display:grid;
  grid-template-columns:minmax(212px,270px) minmax(0,1fr);
  gap:16px;
}
.pokemon-roster-console-v2327-rail {
  min-width:0;
  overflow:hidden;
  border:1px solid var(--pokemon-hub-line);
  border-radius:18px;
  background:rgba(255,255,255,.7);
}
.pokemon-roster-console-v2327-rail-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:44px;
  padding:0 13px;
  border-bottom:1px solid rgba(135,184,200,.25);
  color:#52788c;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pokemon-roster-console-v2327-rail-head b {
  min-width:36px;
  padding:5px 7px;
  border-radius:999px;
  background:#e6f6fa;
  color:#1780a2;
  font-size:10px;
  text-align:center;
}
.pokemon-roster-console-v2327-members { display:grid; gap:6px; padding:7px; }
.pokemon-roster-console-v2327-member,
.pokemon-roster-console-v2327-empty {
  display:grid;
  grid-template-columns:26px 46px minmax(0,1fr);
  align-items:center;
  min-height:62px;
  width:100%;
  padding:6px;
  border:1px solid transparent;
  border-radius:13px;
  background:transparent;
  color:var(--pokemon-hub-ink);
  text-align:left;
  cursor:pointer;
}
.pokemon-roster-console-v2327-member:hover { border-color:color-mix(in srgb,var(--species-accent,#1a9dd0) 35%,#c9e0e7); background:#f8fdff; }
.pokemon-roster-console-v2327-member.is-lead {
  border-color:color-mix(in srgb,var(--species-accent,#1a9dd0) 50%,#c9e7e0);
  background:linear-gradient(105deg,color-mix(in srgb,var(--species-accent,#1a9dd0) 14%,#fff),#f9fffd);
}
.pokemon-roster-console-v2327-index {
  color:#7893a0;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
}
.pokemon-roster-console-v2327-portrait {
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  overflow:hidden;
  border-radius:12px;
  background:radial-gradient(circle at 35% 25%,#fff,#e6f5f9);
}
.pokemon-roster-console-v2327-portrait-image,
.pokemon-roster-console-v2327-portrait-image img {
  width:46px!important;
  height:46px!important;
  object-fit:contain;
}
.pokemon-roster-console-v2327-member-copy { display:grid; min-width:0; gap:2px; padding-left:7px; }
.pokemon-roster-console-v2327-member-copy b {
  overflow:hidden;
  color:#173d55;
  font-size:12px;
  line-height:1.1;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pokemon-roster-console-v2327-member-copy small { color:#668496; font-size:9px; font-weight:700; letter-spacing:0; }
.pokemon-roster-console-v2327-member-copy i {
  display:block;
  width:100%;
  height:3px;
  overflow:hidden;
  border-radius:99px;
  background:#e1edf0;
}
.pokemon-roster-console-v2327-member-copy i em { display:block; height:100%; border-radius:inherit; background:var(--species-accent,#39b779); }
.pokemon-roster-console-v2327-empty {
  grid-template-columns:26px minmax(0,1fr);
  gap:7px;
  min-height:54px;
  border-style:dashed;
  border-color:#d3e5ea;
  background:rgba(247,252,253,.72);
  cursor:pointer;
}
.pokemon-roster-console-v2327-empty:hover { border-color:#57bad5; background:#f0fcff; }
.pokemon-roster-console-v2327-empty span { grid-row:1/3; color:#89a2ad; font-size:10px; font-weight:900; }
.pokemon-roster-console-v2327-empty b { color:#5a7989; font-size:11px; }
.pokemon-roster-console-v2327-empty small { color:#8ba2ad; font-size:9px; font-weight:700; letter-spacing:0; }
.pokemon-roster-console-v2327-main { display:grid; align-content:start; gap:13px; min-width:0; }
.pokemon-roster-console-v2327-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(150px,230px) minmax(0,1fr) minmax(152px,190px);
  align-items:center;
  min-height:224px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--species-accent,#1a9dd0) 40%,#bed8e4);
  border-radius:20px;
  background:#123a4b;
  color:#fff;
  isolation:isolate;
}
.pokemon-roster-console-v2327-hero-background {
  position:absolute;
  z-index:-2;
  inset:0;
  background:
    linear-gradient(90deg,rgba(9,35,50,.94) 0%,rgba(10,48,61,.77) 54%,rgba(8,36,49,.66) 100%),
    url("/assets/v8/ui/pokemon-command-lab-v2327.png") center/cover;
}
.pokemon-roster-console-v2327-hero:after {
  position:absolute;
  z-index:-1;
  right:-13%;
  bottom:-52%;
  width:62%;
  aspect-ratio:1;
  border:1px solid color-mix(in srgb,var(--species-accent,#78ddff) 45%,transparent);
  border-radius:50%;
  box-shadow:0 0 0 28px color-mix(in srgb,var(--species-accent,#78ddff) 10%,transparent),0 0 0 58px color-mix(in srgb,var(--species-accent,#78ddff) 6%,transparent);
  content:"";
}
.pokemon-roster-console-v2327-hero-portrait {
  display:grid;
  place-items:center;
  align-self:stretch;
  padding:12px 8px 0;
}
.pokemon-roster-console-v2327-hero-image,
.pokemon-roster-console-v2327-hero-image img {
  width:min(100%,220px)!important;
  height:194px!important;
  object-fit:contain;
  filter:drop-shadow(0 15px 14px rgba(0,0,0,.42));
}
.pokemon-roster-console-v2327-hero-copy { display:grid; align-content:center; gap:9px; min-width:0; padding:22px 10px 22px 0; }
.pokemon-roster-console-v2327-hero-copy small { color:#a9dcea; }
.pokemon-roster-console-v2327-hero-copy h2 { margin:0; color:#fff; font-size:28px; letter-spacing:-.045em; }
.pokemon-roster-console-v2327-hero-copy>div { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.pokemon-roster-console-v2327-hero-copy>div>span { padding:5px 8px; border:1px solid rgba(255,255,255,.26); border-radius:999px; color:#ddf6ff; font-size:10px; font-weight:800; }
.pokemon-roster-console-v2327-hero-copy p { margin:0; color:#bfd8e2; font-size:11px; line-height:1.45; }
.pokemon-roster-console-v2327-hero-stats { display:grid; align-content:center; gap:8px; padding:20px 18px 20px 8px; }
.pokemon-roster-console-v2327-hero-stats>span {
  display:flex;
  justify-content:space-between;
  gap:7px;
  padding:7px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.pokemon-roster-console-v2327-hero-stats small { color:#9ecbd9; font-size:9px; }
.pokemon-roster-console-v2327-hero-stats b { color:#fff; font-size:12px; }
.pokemon-roster-console-v2327-hero-stats button {
  min-height:40px;
  margin-top:4px;
  border:0;
  border-radius:11px;
  background:var(--species-accent,#1f9fd5);
  color:#fff;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 7px 16px rgba(0,0,0,.16);
}
.pokemon-roster-console-v2327-hero.is-empty {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  min-height:156px;
  padding:24px;
  border-color:#c9e0e7;
  background:linear-gradient(135deg,#f8fdff,#e9f7f6);
  color:var(--pokemon-hub-ink);
}
.pokemon-roster-console-v2327-hero.is-empty h2 { margin:4px 0; color:#1b4a62; font-size:22px; }
.pokemon-roster-console-v2327-hero.is-empty p { margin:0; color:#698596; font-size:12px; }
.pokemon-roster-console-v2327-synergy {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:86px;
  padding:14px 16px;
  border:1px solid #cce3eb;
  border-radius:17px;
  background:#fff;
}
.pokemon-roster-console-v2327-synergy>span { display:grid; min-width:0; gap:3px; }
.pokemon-roster-console-v2327-synergy small { color:#5c8193; font-size:9px; }
.pokemon-roster-console-v2327-synergy>span>b { color:#184c65; font-size:15px; }
.pokemon-roster-console-v2327-synergy p { margin:0; color:#6b8796; font-size:11px; }
.pokemon-roster-console-v2327-synergy>strong {
  position:relative;
  display:grid;
  place-items:center;
  flex:0 0 55px;
  width:55px;
  height:55px;
  border-radius:50%;
  background:conic-gradient(#2ab783 var(--synergy-value,0%),#e4eff0 0);
  color:#177957;
  font-size:14px;
}
.pokemon-roster-console-v2327-synergy>strong:before { position:absolute; inset:5px; border-radius:inherit; background:#fff; content:""; }
.pokemon-roster-console-v2327-synergy>strong b { position:relative; z-index:1; }
.pokemon-roster-console-v2327-synergy>strong i { display:none; }
.pokemon-roster-console-v2327-guide { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.pokemon-roster-console-v2327-guide>span { display:grid; grid-template-columns:24px minmax(0,1fr); gap:8px; align-items:start; padding:10px 12px; border-radius:13px; background:rgba(255,255,255,.68); color:#668394; }
.pokemon-roster-console-v2327-guide b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#d9f2f8; color:#137b9f; font-size:11px; }
.pokemon-roster-console-v2327-guide p { margin:0; font-size:10px; line-height:1.42; }
.pokemon-roster-console-v2327-lock { margin:0; padding:10px 12px; border:1px solid #f0d5a3; border-radius:12px; background:#fff9ee; color:#85632d; font-size:11px; line-height:1.4; }

/* Pokémon card: focused, game-like control room rather than nested white forms. */
.pokemon-control-room-v2327 {
  padding:17px;
  border:1px solid rgba(127,177,194,.42);
  border-radius:24px;
  background:linear-gradient(145deg,#f9fdff,#eaf5f8);
  box-shadow:0 10px 28px rgba(10,60,80,.08);
}
.pokemon-control-room-v2327-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:40px;
  margin:0 0 12px;
}
.pokemon-control-room-v2327-head button {
  padding:7px 0;
  border:0;
  background:transparent;
  color:#3b6680;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}
.pokemon-control-room-v2327-head button:hover { color:#147fa8; }
.pokemon-control-room-v2327-head>span {
  padding:6px 10px;
  border:1px solid color-mix(in srgb,var(--species-accent,#1d9cd1) 35%,#c8e2e9);
  border-radius:999px;
  background:color-mix(in srgb,var(--species-accent,#1d9cd1) 10%,#fff);
  color:#31718b;
  font-size:10px;
  font-weight:900;
}
.pokemon-control-room-v2327-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(150px,230px) minmax(220px,1fr) minmax(255px,310px);
  min-height:246px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--species-accent,#1e9bcf) 38%,#275464);
  border-radius:22px;
  background:#103848;
  color:#fff;
  isolation:isolate;
}
.pokemon-control-room-v2327-hero-background {
  position:absolute;
  z-index:-2;
  inset:0;
  background:
    linear-gradient(90deg,rgba(6,31,43,.92) 0%,rgba(9,48,61,.8) 52%,rgba(7,38,51,.9) 100%),
    url("/assets/v8/ui/pokemon-command-lab-v2327.png") center/cover;
}
.pokemon-control-room-v2327-hero:after {
  position:absolute;
  z-index:-1;
  top:-35%;
  right:13%;
  width:280px;
  height:280px;
  border:1px solid color-mix(in srgb,var(--species-accent,#77d9ff) 38%,transparent);
  border-radius:50%;
  box-shadow:0 0 0 34px color-mix(in srgb,var(--species-accent,#77d9ff) 8%,transparent),0 0 0 75px color-mix(in srgb,var(--species-accent,#77d9ff) 4%,transparent);
  content:"";
}
.pokemon-control-room-v2327-hero-portrait {
  display:grid;
  place-items:center;
  min-width:0;
  padding:14px 8px 0;
}
.pokemon-control-room-v2327-hero-image,
.pokemon-control-room-v2327-hero-image img {
  width:min(100%,220px)!important;
  height:216px!important;
  object-fit:contain;
  filter:drop-shadow(0 18px 17px rgba(0,0,0,.48));
}
.pokemon-control-room-v2327-hero-copy { display:grid; align-content:center; gap:8px; min-width:0; padding:20px 12px 20px 0; }
.pokemon-control-room-v2327-hero-copy small { color:#a7d5e2; }
.pokemon-control-room-v2327-hero-copy h1 { margin:0; overflow:hidden; color:#fff; font-size:30px; letter-spacing:-.05em; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-control-room-v2327-hero-copy>div { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.pokemon-control-room-v2327-hero-copy>div>span { padding:5px 8px; border:1px solid rgba(255,255,255,.23); border-radius:999px; color:#d8f4ff; font-size:10px; font-weight:800; }
.pokemon-control-room-v2327-hero-copy p { margin:0; color:#c2dce5; font-size:11px; }
.pokemon-control-room-v2327-hero-copy label { display:grid; gap:5px; max-width:230px; margin-top:4px; }
.pokemon-control-room-v2327-hero-copy label>span { display:flex; justify-content:space-between; color:#a7cfdb; font-size:10px; font-weight:800; }
.pokemon-control-room-v2327-hero-copy label>span b { color:#fff; }
.pokemon-control-room-v2327-hero-copy label>i,
.pokemon-control-room-v2327-vitals i { display:block; height:5px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.15); }
.pokemon-control-room-v2327-hero-copy label em,
.pokemon-control-room-v2327-vitals i em { display:block; height:100%; border-radius:inherit; background:var(--species-accent,#42c79a); }
.pokemon-control-room-v2327-vitals { display:grid; align-content:center; gap:10px; min-width:0; padding:20px 20px 20px 6px; }
.pokemon-control-room-v2327-vitals>span { display:grid; grid-template-columns:minmax(105px,1fr) auto; gap:4px 10px; align-items:center; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.pokemon-control-room-v2327-vitals small { color:#a6d1de; font-size:9px; }
.pokemon-control-room-v2327-vitals b { color:#fff; font-size:14px; text-align:right; }
.pokemon-control-room-v2327-vitals b em { color:#a9d6e3; font-size:9px; font-style:normal; }
.pokemon-control-room-v2327-vitals i { grid-column:1/-1; }
.pokemon-control-room-v2327-vitals>span:nth-child(1) i em { background:#53d396; }
.pokemon-control-room-v2327-vitals>span:nth-child(2) i em { background:#f2bd45; }
.pokemon-control-room-v2327-vitals>span:nth-child(3) i em { background:#b77cea; }
.pokemon-control-room-v2327-layout { display:grid; grid-template-columns:minmax(238px,285px) minmax(0,1fr); gap:15px; margin-top:15px; }
.pokemon-control-room-v2327-control { display:grid; align-content:start; gap:12px; min-width:0; }
.pokemon-control-room-v2327-control>section,
.pokemon-control-room-v2327-stat-section,
.pokemon-control-room-v2327-evolution,
.pokemon-control-room-v2327-facts,
.pokemon-control-room-v2327-training,
.pokemon-control-room-v2327-genome,
.pokemon-control-room-v2327-skills {
  border:1px solid var(--pokemon-hub-line);
  border-radius:17px;
  background:rgba(255,255,255,.92);
  box-shadow:0 5px 14px rgba(14,64,85,.04);
}
.pokemon-control-room-v2327-control>section { padding:14px; }
.pokemon-control-room-v2327-control header { display:grid; gap:4px; }
.pokemon-control-room-v2327-control header b { color:#1a4d66; font-size:15px; }
.pokemon-control-room-v2327-control>section>p { margin:9px 0 13px; color:#698696; font-size:11px; line-height:1.48; }
.pokemon-control-room-v2327-control>section>div:not(.pokemon-control-room-v2327-synergy-card div) { display:grid; gap:8px; }
.pokemon-control-room-v2327-primary,
.pokemon-control-room-v2327-secondary,
.pokemon-control-room-v2327-release,
.pokemon-control-room-v2327-current,
.pokemon-control-room-v2327-protected {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:43px;
  padding:9px 12px;
  border:1px solid #cce3ea;
  border-radius:12px;
  font-size:11px;
  font-weight:900;
  text-align:center;
}
.pokemon-control-room-v2327-primary { border-color:var(--species-accent,#169bd0); background:var(--species-accent,#169bd0); color:#fff; cursor:pointer; }
.pokemon-control-room-v2327-secondary { background:#fff; color:#235c74; cursor:pointer; }
.pokemon-control-room-v2327-release { border-color:#e6c1c3; background:#fffafb; color:#b9525c; cursor:pointer; }
.pokemon-control-room-v2327-current { border-color:#b9e4ce; background:#effbf4; color:#247a54; }
.pokemon-control-room-v2327-protected { border-color:#eddb9a; background:#fffbed; color:#826929; }
.pokemon-control-room-v2327-control button:disabled { cursor:not-allowed; opacity:.48; }
.pokemon-control-room-v2327-synergy-card { border-color:#bfded9!important; background:linear-gradient(140deg,#f0fbf6,#fbfffd)!important; }
.pokemon-control-room-v2327-synergy-card>b { display:block; margin:4px 0 9px; color:#1f6954; font-size:18px; }
.pokemon-control-room-v2327-synergy-card>b em { color:#1ca778; font-size:10px; font-style:normal; }
.pokemon-control-room-v2327-synergy-card>div { position:relative; height:9px; overflow:hidden; border-radius:99px; background:#dceee7; }
.pokemon-control-room-v2327-synergy-card>div i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2bb487,#61d2ae); }
.pokemon-control-room-v2327-synergy-card>div strong { position:absolute; top:-22px; right:0; color:#197657; font-size:12px; }
.pokemon-control-room-v2327-synergy-card ul { display:grid; gap:5px; margin:11px 0 0; padding:0; list-style:none; }
.pokemon-control-room-v2327-synergy-card li { display:flex; justify-content:space-between; color:#4d7d6e; font-size:10px; }
.pokemon-control-room-v2327-synergy-card li b { color:#28745d; }
.pokemon-control-room-v2327-content { display:grid; align-content:start; gap:13px; min-width:0; }
.pokemon-control-room-v2327-tabs {
  display:flex;
  gap:4px;
  overflow-x:auto;
  padding:4px;
  border:1px solid var(--pokemon-hub-line);
  border-radius:14px;
  background:#eaf4f7;
  scrollbar-width:none;
}
.pokemon-control-room-v2327-tabs::-webkit-scrollbar { display:none; }
.pokemon-control-room-v2327-tab {
  flex:1 0 auto;
  min-height:39px;
  padding:8px 13px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#5a7d90;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.pokemon-control-room-v2327-tab:hover { color:#127da4; }
.pokemon-control-room-v2327-tab.is-active { background:#fff; box-shadow:0 3px 9px rgba(17,75,98,.13); color:#147da5; }
.pokemon-control-room-v2327-tab:focus-visible { outline:3px solid #61c9ee; outline-offset:1px; }
.pokemon-control-room-v2327-overview { display:grid; gap:12px; }
.pokemon-control-room-v2327-stat-section { padding:15px; }
.pokemon-control-room-v2327-stat-section header,
.pokemon-control-room-v2327-training>header,
.pokemon-control-room-v2327-genome>header,
.pokemon-control-room-v2327-skills>header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.pokemon-control-room-v2327-stat-section header span,
.pokemon-control-room-v2327-training header span,
.pokemon-control-room-v2327-genome header span,
.pokemon-control-room-v2327-skills header span { display:grid; gap:4px; }
.pokemon-control-room-v2327-stat-section header b,
.pokemon-control-room-v2327-training header b,
.pokemon-control-room-v2327-genome header b,
.pokemon-control-room-v2327-skills header b { color:#194b64; font-size:16px; }
.pokemon-control-room-v2327-stat-section header em { margin-top:5px; color:#6b8998; font-size:10px; font-style:normal; text-align:right; }
.pokemon-control-room-v2327-stat-section>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:13px; }
.pokemon-control-room-v2327-stat {
  position:relative;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:7px;
  min-width:0;
  padding:9px;
  border:1px solid color-mix(in srgb,var(--stat-tone) 38%,#d6e9ee);
  border-radius:13px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--stat-tone) 7%,#fff),#fff);
}
.pokemon-control-room-v2327-stat>img { width:27px; height:27px; object-fit:contain; }
.pokemon-control-room-v2327-stat span { display:grid; min-width:0; gap:1px; }
.pokemon-control-room-v2327-stat small { color:#5d7d8e; font-size:9px; letter-spacing:0; }
.pokemon-control-room-v2327-stat b { color:#1a4b64; font-size:18px; line-height:1; }
.pokemon-control-room-v2327-stat em { overflow:hidden; color:#7591a0; font-size:8px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-control-room-v2327-stat>i { grid-column:1/-1; display:block; height:4px; overflow:hidden; border-radius:99px; background:#e4eff1; }
.pokemon-control-room-v2327-stat>i u { display:block; height:100%; border-radius:inherit; background:var(--stat-tone); text-decoration:none; }
.pokemon-control-room-v2327-evolution {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:15px;
  align-items:center;
  min-height:104px;
  padding:13px 15px;
}
.pokemon-control-room-v2327-evolution>div { display:grid; gap:4px; }
.pokemon-control-room-v2327-evolution b { color:#1d516b; font-size:15px; }
.pokemon-control-room-v2327-evolution b i { color:#338fb0; font-style:normal; }
.pokemon-control-room-v2327-evolution p { margin:0; color:#6e8999; font-size:10px; }
.pokemon-control-room-v2327-evolution-art { display:flex; align-items:center; gap:5px; }
.pokemon-control-room-v2327-evolution-art>i { display:grid; place-items:center; width:48px; height:48px; overflow:hidden; border:1px solid #cddfe8; border-radius:13px; background:#f6fbfd; }
.pokemon-control-room-v2327-evolution-portrait,
.pokemon-control-room-v2327-evolution-portrait img { width:48px!important; height:48px!important; object-fit:contain; }
.pokemon-control-room-v2327-evolution-art>em { color:#5a97ad; font-style:normal; }
.pokemon-control-room-v2327-evolution>button,
.pokemon-control-room-v2327-genome footer button {
  min-height:38px;
  padding:7px 10px;
  border:1px solid #b7ddcf;
  border-radius:11px;
  background:#eefbf4;
  color:#267d58;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.pokemon-control-room-v2327-evolution>button:disabled { cursor:default; opacity:.52; }
.pokemon-control-room-v2327-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; overflow:hidden; background:#dcebf0; }
.pokemon-control-room-v2327-facts span { display:grid; min-width:0; gap:3px; padding:12px 14px; background:#fbfeff; }
.pokemon-control-room-v2327-facts b { overflow:hidden; color:#315e76; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-control-room-v2327-training { padding:15px; }
.pokemon-control-room-v2327-training header p,
.pokemon-control-room-v2327-skills header p,
.pokemon-control-room-v2327-genome header p { max-width:480px; margin:2px 0 0; color:#6b8798; font-size:11px; line-height:1.45; }
.pokemon-control-room-v2327-training>header>strong {
  display:grid;
  grid-template-columns:31px auto;
  grid-template-rows:1fr 1fr;
  column-gap:6px;
  align-items:center;
  padding:7px 9px;
  border:1px solid #d1e6ed;
  border-radius:13px;
  background:#f2fbff;
}
.pokemon-control-room-v2327-training>header>strong img { grid-row:1/3; width:28px; height:28px; object-fit:contain; }
.pokemon-control-room-v2327-training>header>strong b { color:#1c6581; font-size:16px; }
.pokemon-control-room-v2327-training>header>strong small { color:#6a8794; font-size:8px; letter-spacing:0; }
.pokemon-control-room-v2327-training-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:13px; }
.pokemon-control-room-v2327-training-row {
  display:grid;
  grid-template-columns:31px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  min-width:0;
  padding:9px;
  border:1px solid color-mix(in srgb,var(--stat-tone) 34%,#d7e8ed);
  border-radius:13px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--stat-tone) 6%,#fff),#fff);
}
.pokemon-control-room-v2327-training-row>img { width:29px; height:29px; object-fit:contain; }
.pokemon-control-room-v2327-training-row>div { display:grid; min-width:0; gap:2px; }
.pokemon-control-room-v2327-training-row>div>b { color:#1e5068; font-size:11px; }
.pokemon-control-room-v2327-training-row>div>small { color:#6b8798; font-size:9px; }
.pokemon-control-room-v2327-training-row>div>i { display:block; height:4px; overflow:hidden; border-radius:99px; background:#e4eff1; }
.pokemon-control-room-v2327-training-row>div>i em { display:block; height:100%; border-radius:inherit; background:var(--stat-tone); }
.pokemon-control-room-v2327-training-row button {
  display:grid;
  grid-template-columns:17px auto;
  grid-template-rows:1fr 1fr;
  align-items:center;
  gap:0 3px;
  min-width:59px;
  min-height:38px;
  padding:4px 6px;
  border:1px solid color-mix(in srgb,var(--stat-tone) 60%,#b2d9e2);
  border-radius:10px;
  background:#fff;
  color:#3e677b;
  font-size:8px;
  cursor:pointer;
}
.pokemon-control-room-v2327-training-row button>img { grid-row:1/3; width:17px; height:17px; object-fit:contain; }
.pokemon-control-room-v2327-training-row button>span { color:#417287; font-size:8px; }
.pokemon-control-room-v2327-training-row button>b { color:#1e7898; font-size:8px; }
.pokemon-control-room-v2327-training-row button:disabled { cursor:not-allowed; opacity:.45; }
.pokemon-control-room-v2327-genome { padding:16px; }
.pokemon-control-room-v2327-genome header { align-items:center; }
.pokemon-control-room-v2327-genome header>img { width:58px; height:58px; object-fit:contain; }
.pokemon-control-room-v2327-genome header>span { flex:1; }
.pokemon-control-room-v2327-genome header>strong { display:grid; min-width:68px; padding:7px; border:1px solid #d8c7f4; border-radius:13px; background:#faf6ff; color:#6e4ba7; text-align:center; }
.pokemon-control-room-v2327-genome header>strong b { font-size:20px; }
.pokemon-control-room-v2327-genome header>strong small { color:#8c73ab; font-size:9px; letter-spacing:0; }
.pokemon-control-room-v2327-genome header>strong em { color:#936bc0; font-size:9px; font-style:normal; }
.pokemon-control-room-v2327-gene-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:15px; }
.pokemon-control-room-v2327-gene {
  display:grid;
  grid-template-columns:25px minmax(0,1fr) auto;
  align-items:center;
  gap:6px;
  min-height:49px;
  padding:8px;
  border:1px solid color-mix(in srgb,var(--gene-tone) 34%,#d8e9ed);
  border-radius:12px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--gene-tone) 6%,#fff),#fff);
}
.pokemon-control-room-v2327-gene>img { width:23px; height:23px; object-fit:contain; }
.pokemon-control-room-v2327-gene small { overflow:hidden; color:#607e8f; font-size:9px; letter-spacing:0; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-control-room-v2327-gene>b { color:#315d74; font-size:16px; }
.pokemon-control-room-v2327-gene>b em { color:#8ca2ae; font-size:8px; font-style:normal; }
.pokemon-control-room-v2327-genome footer { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:13px; padding-top:12px; border-top:1px solid #e1ebed; color:#6d8194; font-size:10px; }
.pokemon-control-room-v2327-skills { padding:15px; }
.pokemon-control-room-v2327-skills>header { margin-bottom:12px; }
.pokemon-control-room-v2327-skills .kanto-mastery {
  display:grid;
  gap:12px;
  padding:0;
  background:transparent;
  color:#1a4c65;
}
.pokemon-control-room-v2327-skills .kanto-mastery>header { display:none; }
.pokemon-control-room-v2327-skills .kanto-mastery-evolution-note { margin:0; border-radius:13px; }
.pokemon-control-room-v2327-skills .kanto-mastery-reset { min-height:42px; margin:0; border-radius:12px; }
.pokemon-control-room-v2327-skills .kanto-mastery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:0; }
.pokemon-control-room-v2327-skills .kanto-mastery-card { min-height:0; padding:11px; border-radius:14px; box-shadow:none; }
.pokemon-control-room-v2327-skills .kanto-mastery-title b { font-size:13px; }
.pokemon-control-room-v2327-skills .kanto-mastery-title small { font-size:8px; }
.pokemon-control-room-v2327-skills .kanto-mastery-art,
.pokemon-control-room-v2327-skills .kanto-mastery-art img { width:44px!important; height:44px!important; flex-basis:44px; }
.pokemon-control-room-v2327-skills .kanto-mastery-card>p { min-height:0; margin:8px 0; font-size:10px; }
.pokemon-control-room-v2327-skills .kanto-mastery-actions { align-items:center; }
.pokemon-control-room-v2327-skills .kanto-mastery-actions>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); flex:1; }
.pokemon-control-room-v2327-skills .kanto-mastery-actions>div button { min-width:0; padding:5px 6px; font-size:8px; }
.pokemon-control-room-v2327-skills .kanto-mastery-actions>button { min-height:32px; font-size:9px; }
.pokemon-control-room-v2327-empty { padding:28px; border:1px solid var(--pokemon-hub-line); border-radius:20px; background:#f8fdff; color:#2e5d76; }
.pokemon-control-room-v2327-empty h2 { margin:6px 0; }
.pokemon-control-room-v2327-empty p { color:#6e8897; }
.pokemon-control-room-v2327-empty button { min-height:42px; padding:9px 13px; border:1px solid #b9dfe9; border-radius:12px; background:#fff; color:#1a7699; font-weight:800; cursor:pointer; }

@media (max-width:960px) {
  .pokemon-roster-console-v2327-layout,
  .pokemon-control-room-v2327-layout { grid-template-columns:1fr; }
  .pokemon-roster-console-v2327-rail { order:2; }
  .pokemon-roster-console-v2327-members { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pokemon-control-room-v2327-control { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  .pokemon-control-room-v2327-hero { grid-template-columns:150px minmax(0,1fr) minmax(210px,250px); }
}
@media (max-width:680px) {
  .pokemon-roster-console-v2327,
  .pokemon-control-room-v2327 { padding:12px; border-radius:18px; }
  .pokemon-roster-console-v2327-head { min-height:52px; margin-bottom:11px; padding-bottom:10px; }
  .pokemon-roster-console-v2327-head h1 { font-size:21px; }
  .pokemon-roster-console-v2327-head>div { gap:6px; }
  .pokemon-roster-console-v2327-head strong { min-width:57px; padding:6px; font-size:15px; }
  .pokemon-roster-console-v2327-head button { min-height:38px; padding:7px 9px; font-size:10px; }
  .pokemon-roster-console-v2327-hero { grid-template-columns:108px minmax(0,1fr); min-height:192px; }
  .pokemon-roster-console-v2327-hero-portrait { padding:9px 3px 0; }
  .pokemon-roster-console-v2327-hero-image,
  .pokemon-roster-console-v2327-hero-image img { height:170px!important; }
  .pokemon-roster-console-v2327-hero-copy { padding:17px 13px 17px 0; }
  .pokemon-roster-console-v2327-hero-copy h2 { font-size:23px; }
  .pokemon-roster-console-v2327-hero-stats { grid-column:1/-1; grid-template-columns:1fr 1fr 1fr; gap:6px; padding:0 11px 11px; }
  .pokemon-roster-console-v2327-hero-stats>span { display:grid; gap:2px; padding:6px 0; }
  .pokemon-roster-console-v2327-hero-stats button { grid-column:1/-1; min-height:38px; }
  .pokemon-roster-console-v2327-guide { grid-template-columns:1fr; }
  .pokemon-roster-console-v2327-hero.is-empty { align-items:flex-start; flex-direction:column; }
  .pokemon-control-room-v2327-head { min-height:35px; margin-bottom:8px; }
  .pokemon-control-room-v2327-hero { grid-template-columns:104px minmax(0,1fr); min-height:205px; }
  .pokemon-control-room-v2327-hero-portrait { padding:8px 3px 0; }
  .pokemon-control-room-v2327-hero-image,
  .pokemon-control-room-v2327-hero-image img { height:180px!important; }
  .pokemon-control-room-v2327-hero-copy { padding:13px 11px 13px 0; }
  .pokemon-control-room-v2327-hero-copy h1 { font-size:24px; }
  .pokemon-control-room-v2327-vitals { grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; padding:0 10px 10px; }
  .pokemon-control-room-v2327-vitals>span { grid-template-columns:1fr; padding:6px 0; }
  .pokemon-control-room-v2327-vitals b { font-size:11px; text-align:left; }
  .pokemon-control-room-v2327-vitals b em { display:block; margin-top:1px; }
  .pokemon-control-room-v2327-control { grid-template-columns:1fr; }
  .pokemon-control-room-v2327-tabs { position:sticky; top:0; z-index:3; }
  .pokemon-control-room-v2327-tab { min-height:42px; padding:9px 12px; }
  .pokemon-control-room-v2327-stat-section>div,
  .pokemon-control-room-v2327-gene-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pokemon-control-room-v2327-training-grid,
  .pokemon-control-room-v2327-skills .kanto-mastery-grid { grid-template-columns:1fr; }
  .pokemon-control-room-v2327-evolution { grid-template-columns:minmax(0,1fr) auto; }
  .pokemon-control-room-v2327-evolution>button { grid-column:1/-1; width:100%; }
  .pokemon-control-room-v2327-facts { grid-template-columns:1fr; }
  .pokemon-control-room-v2327-genome header { align-items:flex-start; }
  .pokemon-control-room-v2327-genome header>img { width:47px; height:47px; }
}
@media (max-width:430px) {
  .pokemon-roster-console-v2327-members { grid-template-columns:1fr; }
  .pokemon-roster-console-v2327-synergy { gap:10px; padding:12px; }
  .pokemon-roster-console-v2327-synergy p { font-size:10px; }
  .pokemon-control-room-v2327-stat-section,
  .pokemon-control-room-v2327-training,
  .pokemon-control-room-v2327-genome,
  .pokemon-control-room-v2327-skills { padding:12px; }
  .pokemon-control-room-v2327-stat-section>div { gap:6px; }
  .pokemon-control-room-v2327-stat { grid-template-columns:24px minmax(0,1fr); padding:7px; }
  .pokemon-control-room-v2327-stat>img { width:23px; height:23px; }
  .pokemon-control-room-v2327-stat b { font-size:16px; }
  .pokemon-control-room-v2327-training header { align-items:center; }
  .pokemon-control-room-v2327-training>header>strong { flex:0 0 auto; }
  .pokemon-control-room-v2327-genome header>strong { min-width:54px; }
  .pokemon-control-room-v2327-genome footer { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) {
  .pokemon-roster-console-v2327 *,
  .pokemon-control-room-v2327 * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}

/* v2.33.2 — active party only.
   This is intentionally separate from the retired roster rail above. The team
   view is a single, compact status board; storage remains a PokéCenter service. */
.pokemon-roster-console-v2327.pokemon-team-board-v2332 {
  padding:16px;
  border-color:rgba(107,172,192,.48);
  border-radius:22px;
  background:linear-gradient(145deg,#faffff 0%,#eaf5f5 100%);
}
.pokemon-team-board-v2332-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:54px;
  margin:0 0 12px;
  padding:0 2px 12px;
  border-bottom:1px solid var(--pokemon-hub-line);
}
.pokemon-team-board-v2332-head>span { display:grid; gap:3px; }
.pokemon-team-board-v2332-head small,
.pokemon-team-board-v2332-surface small {
  color:#5c8293;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.pokemon-team-board-v2332-head h1 {
  margin:0;
  color:#143d56;
  font-size:24px;
  letter-spacing:-.04em;
}
.pokemon-team-board-v2332-head>strong {
  display:flex;
  align-items:baseline;
  gap:5px;
  padding:8px 11px;
  border:1px solid #c7e6ef;
  border-radius:13px;
  background:#edfbff;
  color:#1681a7;
}
.pokemon-team-board-v2332-head>strong>b { font-size:19px; line-height:1; }
.pokemon-team-board-v2332-head>strong>small { color:#618697; font-size:9px; letter-spacing:0; }
.pokemon-team-board-v2332-surface {
  display:grid;
  gap:11px;
  min-width:0;
}
.pokemon-team-board-v2332-focus {
  position:relative;
  display:grid;
  grid-template-columns:126px minmax(0,1fr) minmax(160px,195px) auto;
  align-items:center;
  min-height:130px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--species-accent,#1d9fce) 45%,#9acbd9);
  border-radius:18px;
  background:#153c4d;
  color:#fff;
  isolation:isolate;
}
.pokemon-team-board-v2332-focus-background {
  position:absolute;
  z-index:-2;
  inset:0;
  background:linear-gradient(90deg,rgba(10,40,54,.96),rgba(9,55,66,.82) 52%,rgba(13,44,58,.85)),url("/assets/v8/ui/pokemon-command-lab-v2327.png") center/cover;
}
.pokemon-team-board-v2332-focus::after {
  position:absolute;
  z-index:-1;
  right:-5%;
  bottom:-62%;
  width:220px;
  aspect-ratio:1;
  border:1px solid color-mix(in srgb,var(--species-accent,#83e0f7) 44%,transparent);
  border-radius:50%;
  box-shadow:0 0 0 22px color-mix(in srgb,var(--species-accent,#83e0f7) 9%,transparent),0 0 0 44px color-mix(in srgb,var(--species-accent,#83e0f7) 5%,transparent);
  content:"";
}
.pokemon-team-board-v2332-focus-portrait {
  display:grid;
  place-items:center;
  align-self:stretch;
  padding:7px 2px 0;
}
.pokemon-team-board-v2332-focus-image,
.pokemon-team-board-v2332-focus-image img {
  width:124px!important;
  height:119px!important;
  object-fit:contain;
  filter:drop-shadow(0 11px 10px rgba(0,0,0,.38));
}
.pokemon-team-board-v2332-focus-copy { display:grid; gap:5px; min-width:0; padding:14px 7px 14px 0; }
.pokemon-team-board-v2332-focus-copy>small { color:#a8dbe8; }
.pokemon-team-board-v2332-focus-copy>b {
  overflow:hidden;
  color:#fff;
  font-size:23px;
  line-height:1.05;
  letter-spacing:-.04em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pokemon-team-board-v2332-focus-copy>em { display:flex; align-items:center; flex-wrap:wrap; gap:5px; font-style:normal; }
.pokemon-team-board-v2332-focus-copy>em>i { padding:4px 6px; border:1px solid rgba(255,255,255,.24); border-radius:999px; color:#d8f2f8; font-size:9px; font-style:normal; font-weight:800; }
.pokemon-team-board-v2332-focus-copy p { margin:0; color:#bcdae3; font-size:10px; font-weight:700; }
.pokemon-team-board-v2332-focus-vitals {
  display:grid;
  align-content:center;
  gap:5px;
  min-width:0;
  padding:12px 9px;
  border-left:1px solid rgba(255,255,255,.12);
}
.pokemon-team-board-v2332-focus-vitals>span { display:grid; grid-template-columns:1fr auto; gap:3px 6px; align-items:center; }
.pokemon-team-board-v2332-focus-vitals small { color:#a9d4df; font-size:8px; }
.pokemon-team-board-v2332-focus-vitals b { color:#fff; font-size:12px; white-space:nowrap; }
.pokemon-team-board-v2332-focus-vitals b>em { color:#a9d7e3; font-size:8px; font-style:normal; }
.pokemon-team-board-v2332-focus-vitals i { grid-column:1/-1; display:block; height:4px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.15); }
.pokemon-team-board-v2332-focus-vitals i>em { display:block; height:100%; border-radius:inherit; background:var(--species-accent,#54d099); }
.pokemon-team-board-v2332-focus>button {
  z-index:1;
  min-height:34px;
  margin:0 13px 0 2px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(255,255,255,.13);
  color:#fff;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.pokemon-team-board-v2332-focus>button:hover { background:rgba(255,255,255,.22); }
.pokemon-team-board-v2332-focus.is-empty {
  grid-template-columns:48px minmax(0,1fr);
  gap:12px;
  min-height:104px;
  padding:17px;
  border-color:#c7e0e6;
  background:linear-gradient(135deg,#faffff,#eef8f7);
  color:#1a5068;
}
.pokemon-team-board-v2332-focus.is-empty::after { display:none; }
.pokemon-team-board-v2332-focus.is-empty>span { display:grid; place-items:center; width:43px; height:43px; border-radius:13px; background:#def2f4; }
.pokemon-team-board-v2332-focus.is-empty b { display:block; margin:3px 0; color:#1c5067; font-size:16px; }
.pokemon-team-board-v2332-focus.is-empty p { margin:0; color:#6f8998; font-size:10px; }
.pokemon-team-board-v2332-center-icon { width:30px; height:30px; object-fit:contain; }
.pokemon-team-board-v2332-roster {
  padding:12px;
  border:1px solid #cde3e9;
  border-radius:17px;
  background:rgba(255,255,255,.82);
}
.pokemon-team-board-v2332-roster>header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin:0 0 10px; }
.pokemon-team-board-v2332-roster>header>span { display:grid; gap:3px; }
.pokemon-team-board-v2332-roster>header b { color:#20546c; font-size:14px; }
.pokemon-team-board-v2332-roster>header p { max-width:295px; margin:2px 0 0; color:#6f8997; font-size:10px; line-height:1.35; text-align:right; }
.pokemon-team-board-v2332-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.pokemon-team-board-v2332-member {
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-width:0;
  min-height:132px;
  overflow:hidden;
  border:1px solid #d4e5e9;
  border-radius:14px;
  background:#fff;
}
.pokemon-team-board-v2332-member.is-lead { border-color:color-mix(in srgb,var(--species-accent,#199fd0) 52%,#c6e4dc); box-shadow:inset 3px 0 var(--species-accent,#199fd0); }
.pokemon-team-board-v2332-member>header { display:flex; align-items:center; justify-content:space-between; gap:5px; min-height:29px; padding:6px 7px 0 10px; }
.pokemon-team-board-v2332-member>header small { color:#7893a0; font-size:8px; }
.pokemon-team-board-v2332-lead,
.pokemon-team-board-v2332-lead-action {
  min-height:22px;
  padding:4px 6px;
  border:1px solid color-mix(in srgb,var(--species-accent,#199fd0) 36%,#b4dce5);
  border-radius:999px;
  background:color-mix(in srgb,var(--species-accent,#199fd0) 11%,#f8fdff);
  color:#22657d;
  font-size:8px;
  font-weight:900;
  white-space:nowrap;
}
.pokemon-team-board-v2332-lead-action { cursor:pointer; }
.pokemon-team-board-v2332-lead-action:hover:not(:disabled) { border-color:var(--species-accent,#199fd0); color:#0f799d; }
.pokemon-team-board-v2332-lead-action:disabled { cursor:not-allowed; opacity:.5; }
.pokemon-team-board-v2332-view {
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:7px;
  align-items:center;
  min-width:0;
  padding:2px 9px 7px;
  border:0;
  background:transparent;
  color:var(--pokemon-hub-ink);
  text-align:left;
  cursor:pointer;
}
.pokemon-team-board-v2332-view:hover .pokemon-team-board-v2332-copy>b { color:var(--species-accent,#137fa8); }
.pokemon-team-board-v2332-portrait { display:grid; place-items:center; width:50px; height:50px; overflow:hidden; border-radius:13px; background:radial-gradient(circle at 35% 24%,#fff,#e8f4f6); }
.pokemon-team-board-v2332-portrait-image,
.pokemon-team-board-v2332-portrait-image img { width:53px!important; height:53px!important; object-fit:contain; }
.pokemon-team-board-v2332-copy { display:grid; min-width:0; gap:2px; }
.pokemon-team-board-v2332-copy>b { overflow:hidden; color:#183f57; font-size:12px; line-height:1.1; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-team-board-v2332-copy>b>i { margin-left:3px; color:#d99523; font-size:10px; font-style:normal; }
.pokemon-team-board-v2332-copy>small { overflow:hidden; color:#6d8998; font-size:8px; letter-spacing:0; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-team-board-v2332-copy>em { display:flex; min-height:16px; overflow:hidden; font-style:normal; }
.pokemon-team-board-v2332-copy>.pokemon-caught-ball-v2202 { min-width:0; margin-top:0; }
.pokemon-team-board-v2332-copy>.pokemon-caught-ball-v2202 small { font-size:6px; }
.pokemon-team-board-v2332-copy>.pokemon-caught-ball-v2202 b { font-size:8px; }
.pokemon-team-board-v2332-member>footer { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:6px; padding:6px 9px 8px; border-top:1px solid #edf3f4; }
.pokemon-team-board-v2332-member>footer>span { display:grid; grid-template-columns:1fr auto; gap:2px 4px; align-items:baseline; min-width:0; }
.pokemon-team-board-v2332-member>footer small { color:#7893a0; font-size:8px; letter-spacing:0; }
.pokemon-team-board-v2332-member>footer b { overflow:hidden; color:#28566d; font-size:10px; text-align:right; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-team-board-v2332-member>footer b>em { color:#6e92a0; font-size:7px; font-style:normal; }
.pokemon-team-board-v2332-member>footer i { grid-column:1/-1; display:block; height:3px; overflow:hidden; border-radius:99px; background:#e4eef0; }
.pokemon-team-board-v2332-member>footer i>em { display:block; height:100%; border-radius:inherit; background:var(--species-accent,#36bd83); }
.pokemon-team-board-v2332-empty-roster { grid-column:1/-1; margin:0; padding:13px; border:1px dashed #cde0e5; border-radius:12px; color:#708997; font-size:11px; text-align:center; }
.pokemon-team-board-v2332-footer {
  display:grid;
  grid-template-columns:43px minmax(0,1fr) minmax(138px,165px);
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border:1px solid #cfe3e7;
  border-radius:15px;
  background:linear-gradient(100deg,#f6fcfb,#fff);
}
.pokemon-team-board-v2332-footer>span { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:#e2f3ed; }
.pokemon-team-board-v2332-footer>div { display:grid; gap:2px; min-width:0; }
.pokemon-team-board-v2332-footer>div>b { color:#235d68; font-size:12px; }
.pokemon-team-board-v2332-footer>div>p { margin:0; color:#698693; font-size:9px; line-height:1.35; }
.pokemon-team-board-v2332-footer>aside { display:grid; grid-template-columns:1fr auto; gap:2px 6px; min-width:0; padding-left:10px; border-left:1px solid #dbecee; }
.pokemon-team-board-v2332-footer>aside small { color:#5d8390; font-size:8px; }
.pokemon-team-board-v2332-footer>aside>b { color:#157a62; font-size:15px; text-align:right; }
.pokemon-team-board-v2332-footer>aside>b>em { color:#6b9298; font-size:8px; font-style:normal; }
.pokemon-team-board-v2332-footer>aside>i { grid-column:1/-1; display:block; height:5px; overflow:hidden; border-radius:99px; background:#deeee9; }
.pokemon-team-board-v2332-footer>aside>i>em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2bb58a,#65d3af); }
.pokemon-team-board-v2332-footer>aside>span { grid-column:1/-1; overflow:hidden; color:#418071; font-size:9px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-team-board-v2332-battle-note { margin:0; padding:9px 11px; border:1px solid #f0d6a2; border-radius:12px; background:#fff9ed; color:#89692f; font-size:10px; line-height:1.35; }

@media (max-width:960px) {
  .pokemon-team-board-v2332-focus { grid-template-columns:112px minmax(0,1fr) minmax(145px,180px) auto; }
  .pokemon-team-board-v2332-focus-image,
  .pokemon-team-board-v2332-focus-image img { width:110px!important; height:112px!important; }
  .pokemon-team-board-v2332-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .pokemon-roster-console-v2327.pokemon-team-board-v2332 { padding:12px; border-radius:18px; }
  .pokemon-team-board-v2332-head { min-height:48px; margin-bottom:10px; padding-bottom:10px; }
  .pokemon-team-board-v2332-head h1 { font-size:21px; }
  .pokemon-team-board-v2332-head>strong { padding:7px 9px; }
  .pokemon-team-board-v2332-focus { grid-template-columns:90px minmax(0,1fr); min-height:139px; }
  .pokemon-team-board-v2332-focus-portrait { padding-top:3px; }
  .pokemon-team-board-v2332-focus-image,
  .pokemon-team-board-v2332-focus-image img { width:91px!important; height:104px!important; }
  .pokemon-team-board-v2332-focus-copy { padding:12px 10px 8px 0; }
  .pokemon-team-board-v2332-focus-copy>b { font-size:20px; }
  .pokemon-team-board-v2332-focus-vitals { grid-column:1/-1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 10px; padding:5px 10px 10px; border-top:1px solid rgba(255,255,255,.12); border-left:0; }
  .pokemon-team-board-v2332-focus-vitals>span { grid-template-columns:1fr auto; }
  .pokemon-team-board-v2332-focus>button { position:absolute; top:9px; right:8px; margin:0; }
  .pokemon-team-board-v2332-roster { padding:10px; }
  .pokemon-team-board-v2332-roster>header { align-items:flex-end; margin-bottom:8px; }
  .pokemon-team-board-v2332-roster>header p { display:none; }
  .pokemon-team-board-v2332-member { min-height:122px; }
  .pokemon-team-board-v2332-footer { grid-template-columns:39px minmax(0,1fr); gap:8px; padding:9px 10px; }
  .pokemon-team-board-v2332-footer>aside { grid-column:1/-1; grid-template-columns:1fr auto; padding:8px 0 0; border-top:1px solid #deedef; border-left:0; }
}
@media (max-width:370px) {
  .pokemon-team-board-v2332-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  .pokemon-team-board-v2332-member { min-height:104px; }
  .pokemon-team-board-v2332-view { grid-template-columns:42px minmax(0,1fr); gap:5px; padding:2px 6px 6px; }
  .pokemon-team-board-v2332-portrait { width:40px; height:40px; border-radius:10px; }
  .pokemon-team-board-v2332-portrait-image,
  .pokemon-team-board-v2332-portrait-image img { width:43px!important; height:43px!important; }
  .pokemon-team-board-v2332-copy>b { font-size:11px; }
  .pokemon-team-board-v2332-member>footer { gap:4px; padding:5px 6px 6px; }
}

/* PokéCenter Box v2.33.2 — transfers live in one focused service surface,
   deliberately separate from the portable Team board above. */
.pokemon-center-box-v2332 {
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  min-height:100%;
  padding:18px;
  border:1px solid rgba(137,188,205,.45);
  border-radius:24px;
  background:radial-gradient(circle at 96% 2%,rgba(73,205,183,.17),transparent 26%),linear-gradient(145deg,#fbfeff,#edf7f7);
  box-shadow:0 12px 32px rgba(12,61,77,.1);
  color:var(--pokemon-hub-ink);
}
.pokemon-center-box-v2332,
.pokemon-center-box-v2332 * { box-sizing:border-box; }
.pokemon-center-box-v2332 button,
.pokemon-center-box-v2332 input { font:inherit; }
.pokemon-center-box-v2332-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:60px;
  margin:0 0 14px;
  padding:0 2px 13px;
  border-bottom:1px solid var(--pokemon-hub-line);
}
.pokemon-center-box-v2332-mobile-tabs { display:none; }
.pokemon-center-box-v2332-head>span { display:grid; gap:2px; }
.pokemon-center-box-v2332 small { color:#5c8190; font-size:9px; font-weight:900; letter-spacing:.08em; }
.pokemon-center-box-v2332-head h2 { margin:0; color:#143c55; font-size:24px; letter-spacing:-.04em; }
.pokemon-center-box-v2332-head p { margin:1px 0 0; color:#708a97; font-size:10px; font-weight:650; }
.pokemon-center-box-v2332-head>strong {
  display:grid;
  min-width:72px;
  padding:7px 11px;
  border:1px solid #bce6df;
  border-radius:13px;
  background:#edfcf7;
  color:#138463;
  text-align:center;
}
.pokemon-center-box-v2332-head>strong>b { font-size:20px; line-height:1; }
.pokemon-center-box-v2332-head>strong>small { margin-top:3px; color:#5e8c84; font-size:8px; letter-spacing:0; }
.pokemon-center-box-v2332-layout {
  display:grid;
  grid-template-columns:minmax(252px,.72fr) minmax(380px,1.28fr);
  grid-template-rows:minmax(0,1fr) auto;
  gap:12px;
  min-width:0;
}
.pokemon-center-box-v2332-party,
.pokemon-center-box-v2332-box,
.pokemon-center-box-v2332-action {
  min-width:0;
  border:1px solid #cbe3e8;
  border-radius:18px;
  background:rgba(255,255,255,.84);
}
.pokemon-center-box-v2332-party {
  display:grid;
  grid-row:1/3;
  grid-template-rows:auto minmax(0,1fr);
  padding:12px;
}
.pokemon-center-box-v2332-party>header,
.pokemon-center-box-v2332-box>header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:35px;
  margin:0 0 10px;
}
.pokemon-center-box-v2332-party>header>span,
.pokemon-center-box-v2332-box>header>span { display:grid; gap:2px; }
.pokemon-center-box-v2332-party>header b,
.pokemon-center-box-v2332-box>header b { color:#25536a; font-size:14px; }
.pokemon-center-box-v2332-party>header>em { color:#76929d; font-size:9px; font-style:normal; text-align:right; }
.pokemon-center-box-v2332-party>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:1fr; gap:8px; min-height:0; }
.pokemon-center-box-v2332-party-slot {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  grid-template-rows:auto 1fr auto;
  column-gap:6px;
  align-items:center;
  min-width:0;
  min-height:88px;
  padding:8px;
  border:1px solid #d6e7eb;
  border-radius:14px;
  background:#fff;
  color:#204e65;
  text-align:left;
  cursor:pointer;
  transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.pokemon-center-box-v2332-party-slot:hover { border-color:var(--species-accent,#1d9fcb); transform:translateY(-1px); }
.pokemon-center-box-v2332-party-slot.is-selected { border-color:var(--species-accent,#1d9fcb); box-shadow:0 0 0 3px color-mix(in srgb,var(--species-accent,#1d9fcb) 13%,transparent); }
.pokemon-center-box-v2332-party-slot.is-lead { background:linear-gradient(140deg,color-mix(in srgb,var(--species-accent,#1d9fcb) 10%,#fff),#fff); }
.pokemon-center-box-v2332-party-slot>small { grid-column:1/-1; overflow:hidden; color:#6d8c99; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-party-slot>span { grid-row:2/4; display:grid; place-items:center; width:40px; height:40px; overflow:hidden; border-radius:11px; background:radial-gradient(circle at 35% 24%,#fff,#e5f3f5); }
.pokemon-center-box-v2332-party-slot>span>.pokemon-center-box-v2332-party-portrait,
.pokemon-center-box-v2332-party-portrait,
.pokemon-center-box-v2332-party-portrait img { width:44px!important; height:44px!important; object-fit:contain; }
.pokemon-center-box-v2332-party-slot>b { overflow:hidden; color:#1d4b62; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-party-slot>em { overflow:hidden; color:#78909b; font-size:9px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-party-slot.is-empty { display:grid; grid-template-columns:1fr; grid-template-rows:auto auto 1fr; gap:3px; border-style:dashed; background:#f8fcfc; cursor:default; }
.pokemon-center-box-v2332-party-slot.is-empty>b { color:#6b8795; }
.pokemon-center-box-v2332-party-slot.is-empty>span { width:auto; height:auto; border:0; background:transparent; color:#8ca4ae; font-size:9px; }
.pokemon-center-box-v2332-box { display:grid; grid-template-rows:auto minmax(0,1fr) auto; padding:12px; }
.pokemon-center-box-v2332-box>header { align-items:flex-start; }
.pokemon-center-box-v2332-box>header>label { position:relative; display:block; width:min(176px,42%); }
.pokemon-center-box-v2332-box input {
  width:100%;
  min-height:34px;
  padding:7px 29px 7px 10px;
  border:1px solid #cce2e7;
  border-radius:10px;
  outline:0;
  background:#f9fdfd;
  color:#214f65;
  font-size:10px;
  font-weight:700;
}
.pokemon-center-box-v2332-box input:focus { border-color:#30a7c9; box-shadow:0 0 0 3px rgba(48,167,201,.13); }
.pokemon-center-box-v2332-box>header>label>i { position:absolute; top:9px; right:9px; width:15px; height:15px; color:#6f919d; pointer-events:none; }
.pokemon-center-box-v2332-storage-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(72px,1fr)); gap:7px; min-height:0; }
.pokemon-center-box-v2332-storage-card {
  display:grid;
  grid-template-columns:49px minmax(0,1fr);
  gap:7px;
  align-items:center;
  min-width:0;
  min-height:72px;
  padding:7px;
  border:1px solid #d7e8eb;
  border-radius:13px;
  background:#fff;
  color:#244f65;
  text-align:left;
  cursor:pointer;
  transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.pokemon-center-box-v2332-storage-card:hover { border-color:var(--species-accent,#1d9fcb); transform:translateY(-1px); }
.pokemon-center-box-v2332-storage-card.is-selected { border-color:var(--species-accent,#1d9fcb); background:color-mix(in srgb,var(--species-accent,#1d9fcb) 9%,#fff); box-shadow:0 0 0 3px color-mix(in srgb,var(--species-accent,#1d9fcb) 12%,transparent); }
.pokemon-center-box-v2332-storage-portrait { display:grid; place-items:center; width:48px; height:48px; overflow:hidden; border-radius:12px; background:radial-gradient(circle at 35% 22%,#fff,#e5f3f5); }
.pokemon-center-box-v2332-storage-image,
.pokemon-center-box-v2332-storage-image img { width:52px!important; height:52px!important; object-fit:contain; }
.pokemon-center-box-v2332-storage-card>span:last-child { display:grid; min-width:0; gap:2px; }
.pokemon-center-box-v2332-storage-card b { overflow:hidden; color:#1f4c62; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-storage-card b>i { margin-left:2px; color:#d99b26; font-size:9px; font-style:normal; }
.pokemon-center-box-v2332-storage-card small { overflow:hidden; color:#748e9b; font-size:8px; letter-spacing:0; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-storage-card em { display:flex; min-height:15px; overflow:hidden; font-style:normal; }
.pokemon-center-box-v2332-storage-card .pokemon-caught-ball-v2202.is-center { min-width:0; margin-top:0; gap:3px; }
.pokemon-center-box-v2332-storage-card .pokemon-caught-ball-v2202.is-center > .pokemon-caught-ball-art-v2202,
.pokemon-center-box-v2332-storage-card .pokemon-caught-ball-v2202.is-center > .pokemon-caught-ball-art-v2202 > * { width:15px; height:15px; }
.pokemon-center-box-v2332-storage-card .pokemon-caught-ball-v2202.is-center small { display:none; }
.pokemon-center-box-v2332-storage-card .pokemon-caught-ball-v2202.is-center b { color:#60818f; font-size:7px; }
.pokemon-center-box-v2332-empty-box { grid-column:1/-1; display:grid; place-items:center; margin:0; border:1px dashed #d3e5e8; border-radius:12px; color:#788f9b; font-size:10px; }
.pokemon-center-box-v2332-box>footer { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:29px; margin-top:8px; color:#6b8895; font-size:9px; font-weight:750; }
.pokemon-center-box-v2332-box>footer>div { display:flex; align-items:center; gap:6px; }
.pokemon-center-box-v2332-box>footer button { display:grid; place-items:center; width:26px; height:26px; border:1px solid #cbe2e7; border-radius:8px; background:#fff; color:#1f708e; font-size:18px; line-height:1; cursor:pointer; }
.pokemon-center-box-v2332-box>footer button:disabled { cursor:default; opacity:.42; }
.pokemon-center-box-v2332-box>footer b { color:#557b8b; font-size:9px; }
.pokemon-center-box-v2332-action { display:grid; grid-template-columns:minmax(0,1fr) minmax(246px,.9fr); gap:10px 12px; align-items:center; padding:11px 12px; }
.pokemon-center-box-v2332-action>header { display:grid; gap:3px; min-width:0; }
.pokemon-center-box-v2332-action>header>b { color:#215168; font-size:15px; }
.pokemon-center-box-v2332-action>header>p { margin:0; color:#708b98; font-size:10px; line-height:1.35; }
.pokemon-center-box-v2332-selection { display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:8px; align-items:center; min-width:0; padding:7px; border:1px solid color-mix(in srgb,var(--species-accent,#1d9fcb) 30%,#cfe3e7); border-radius:13px; background:color-mix(in srgb,var(--species-accent,#1d9fcb) 7%,#faffff); }
.pokemon-center-box-v2332-selection>span { display:grid; place-items:center; width:46px; height:46px; overflow:hidden; border-radius:11px; background:radial-gradient(circle at 35% 22%,#fff,#e5f3f5); }
.pokemon-center-box-v2332-selection-image,
.pokemon-center-box-v2332-selection-image img { width:50px!important; height:50px!important; object-fit:contain; }
.pokemon-center-box-v2332-selection>div { display:grid; min-width:0; gap:2px; }
.pokemon-center-box-v2332-selection>div>b { overflow:hidden; color:#204f66; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-selection>div>p { overflow:hidden; margin:0; color:#728d9a; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-center-box-v2332-selection>button { min-height:31px; padding:6px 9px; border:1px solid #bcdde5; border-radius:9px; background:#fff; color:#176d8d; font-size:9px; font-weight:900; cursor:pointer; }
.pokemon-center-box-v2332-selection.is-empty { grid-template-columns:28px minmax(0,1fr); background:#fbfefe; }
.pokemon-center-box-v2332-selection.is-empty>span { width:27px; height:27px; border-radius:50%; background:#e5f2f4; color:#6e8c99; font-size:10px; font-weight:900; }
.pokemon-center-box-v2332-actions { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.pokemon-center-box-v2332-primary,
.pokemon-center-box-v2332-secondary,
.pokemon-center-box-v2332-release,
.pokemon-center-box-v2332-release-confirm button {
  min-height:34px;
  padding:7px 10px;
  border-radius:10px;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.pokemon-center-box-v2332-primary { border:1px solid #168fbd; background:linear-gradient(135deg,#159fcf,#167fc2); color:#fff; box-shadow:0 5px 12px rgba(23,130,193,.16); }
.pokemon-center-box-v2332-secondary { border:1px solid #bfdde3; background:#fff; color:#286477; }
.pokemon-center-box-v2332-release { border:1px solid #efc5bf; background:#fff8f6; color:#bd584b; }
.pokemon-center-box-v2332-primary:disabled,
.pokemon-center-box-v2332-secondary:disabled { cursor:not-allowed; opacity:.48; }
.pokemon-center-box-v2332-release-confirm { display:flex; flex-wrap:wrap; align-items:center; gap:5px; width:100%; padding:7px; border:1px solid #efc4bd; border-radius:10px; background:#fff8f6; }
.pokemon-center-box-v2332-release-confirm>small { width:100%; color:#a35b51; letter-spacing:0; }
.pokemon-center-box-v2332-release-confirm button:first-of-type { border:1px solid #d65f52; background:#d65f52; color:#fff; }
.pokemon-center-box-v2332-release-confirm button:last-of-type { border:1px solid #e4c6c1; background:#fff; color:#8d655f; }
.pokemon-center-box-v2332-protected { padding:7px 9px; border:1px solid #e8d78d; border-radius:10px; background:#fffbed; color:#88702f; font-size:9px; font-weight:800; }
.pokemon-center-box-v2332-lock { grid-column:1/-1; margin:0; padding:7px 9px; border:1px solid #efd6a2; border-radius:10px; background:#fff9ed; color:#8a6b32; font-size:9px; line-height:1.3; }
.pokemon-center-box-v2332.is-unavailable { grid-template-rows:auto minmax(0,1fr); }
.pokemon-center-box-v2332.is-unavailable>header { align-self:start; }
.pokemon-center-box-v2332.is-unavailable>div { display:grid; grid-template-columns:62px minmax(0,420px); gap:13px; align-content:center; justify-content:center; min-height:230px; }
.pokemon-center-box-v2332.is-unavailable>div>span { display:grid; place-items:center; width:58px; height:58px; border-radius:17px; background:#e3f4f1; }
.pokemon-center-box-v2332-service-icon { width:34px; height:34px; object-fit:contain; }
.pokemon-center-box-v2332.is-unavailable section { display:grid; align-content:center; gap:4px; }
.pokemon-center-box-v2332.is-unavailable section>b { color:#214f65; font-size:17px; }
.pokemon-center-box-v2332.is-unavailable section>p { margin:0; color:#698692; font-size:11px; line-height:1.5; }

@media (max-width:900px) {
  .pokemon-center-box-v2332-layout { grid-template-columns:minmax(220px,.68fr) minmax(330px,1.32fr); }
}
@media (max-width:700px) {
  .pokemon-center-box-v2332 {
    /* A phone must not reserve desktop-height tracks for an almost empty box.
       Keep the terminal as one compact, natural-height service surface so the
       selected Pokémon and its action sit in the same viewport. */
    grid-template-rows:auto auto;
    align-content:start;
    min-height:auto;
    padding:12px;
    border-radius:18px;
  }
  .pokemon-center-box-v2332-head { min-height:50px; margin-bottom:10px; padding:0 56px 10px 0; }
  .pokemon-center-box-v2332-head h2 { font-size:20px; }
  .pokemon-center-box-v2332-head p { display:none; }
  .pokemon-center-box-v2332-head>strong { display:none; }
  .pokemon-center-box-v2332-mobile-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0 0 9px; padding:4px; border:1px solid #c9e2e7; border-radius:12px; background:#eaf5f6; }
  .pokemon-center-box-v2332-mobile-tabs>button { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:34px; padding:7px 10px; border:1px solid transparent; border-radius:9px; background:transparent; color:#537888; font-size:10px; font-weight:900; cursor:pointer; }
  .pokemon-center-box-v2332-mobile-tabs>button>b { color:inherit; font-size:11px; }
  .pokemon-center-box-v2332-mobile-tabs>button.is-active { border-color:#b7dce5; background:#fff; color:#176f90; box-shadow:0 2px 6px rgba(31,101,124,.1); }
  .pokemon-center-box-v2332-layout {
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    align-content:start;
  }
  .pokemon-center-box-v2332-party { grid-row:auto; min-height:0; }
  .pokemon-center-box-v2332-party>div { min-height:0; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pokemon-center-box-v2332-box {
    grid-template-rows:auto auto auto;
    align-content:start;
    min-height:0;
  }
  .pokemon-center-box-v2332-party.is-mobile-hidden,
  .pokemon-center-box-v2332-box.is-mobile-hidden { display:none; }
  .pokemon-center-box-v2332-storage-grid {
    /* The active page grows only with its cards: 2 stored Pokémon = one row;
       a full six-card page remains the intended 2 × 3 grid. */
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
    /* A card can contain two type marks and its capture-ball provenance.
       104px is the compact readable floor; it prevents those real game
       details from bleeding into the pager on a short two-card page. */
    grid-auto-rows:104px;
    align-content:start;
  }
  .pokemon-center-box-v2332-storage-card { min-height:66px; grid-template-columns:43px minmax(0,1fr); padding:6px; }
  .pokemon-center-box-v2332-storage-portrait { width:42px; height:42px; border-radius:10px; }
  .pokemon-center-box-v2332-storage-image,
  .pokemon-center-box-v2332-storage-image img { width:46px!important; height:46px!important; }
  .pokemon-center-box-v2332-action { grid-template-columns:1fr; }
  .pokemon-center-box-v2332-selection { max-width:none; }
  .pokemon-team-board-v2332-head { padding-right:56px; }
}
@media (max-width:390px) {
  .pokemon-center-box-v2332-head>strong { min-width:58px; padding:7px; }
  .pokemon-center-box-v2332-party { padding:9px; }
  .pokemon-center-box-v2332-party>div { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  .pokemon-center-box-v2332-party-slot { min-height:68px; grid-template-columns:36px minmax(0,1fr); grid-template-rows:auto auto; padding:6px; }
  .pokemon-center-box-v2332-party-slot>small { grid-column:2/-1; }
  .pokemon-center-box-v2332-party-slot>span { grid-row:1/3; }
  .pokemon-center-box-v2332-party-slot>em { grid-column:2; }
  .pokemon-center-box-v2332-party-slot>span { width:34px; height:34px; border-radius:9px; }
  .pokemon-center-box-v2332-party-portrait,
  .pokemon-center-box-v2332-party-portrait img { width:37px!important; height:37px!important; }
  .pokemon-center-box-v2332-box>header>label { width:48%; }
}
