/* Focused public refresh based on 2.19.0: brand, Pokédex mode icons and battle scene only. */
:root { --focus-ink:#082c3c; --focus-blue:#168fd0; --focus-yellow:#ffd43f; --focus-paper:#f7fbf5; }

.pkl-v2210-focused .pkl-brand img,
.pub-brand img,
.dex-brand img {
  object-fit:contain;
  filter:drop-shadow(0 7px 13px rgba(3,52,73,.2));
}
.pkl-v2210-focused .pkl-brand img { width:48px; height:48px; }
.pkl-v2210-focused .pkl-brand b { letter-spacing:-.045em; }
.pkl-v2210-focused .pkl-brand b > span { color:#0d8cd0; }
.pkl-v2210-focused .pkl-brand small { letter-spacing:.24em; color:#567985; }
.pub-brand span,.dex-brand b { letter-spacing:-.04em; }
.pub-brand i,.dex-brand b > span { color:#ffd43f; }

/* Dedicated illustrated Pokédex devices replace the previous CSS mock devices. */
.dex-mode-switch .dex-mode-device {
  width:clamp(104px,10vw,156px)!important;
  height:clamp(104px,10vw,156px)!important;
  flex:0 0 clamp(104px,10vw,156px)!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  box-shadow:none!important;
  transform:rotate(-2deg);
  transition:transform .25s ease,filter .25s ease;
  filter:drop-shadow(0 18px 20px rgba(5,45,65,.17));
}
.dex-mode-switch a:hover .dex-mode-device { transform:translateY(-5px) rotate(1deg) scale(1.03); filter:drop-shadow(0 24px 24px rgba(5,45,65,.23)); }
.dex-mode-switch .dex-mode-device::before,
.dex-mode-switch .dex-mode-device::after,
.dex-mode-switch .dex-mode-device > span { display:none!important; content:none!important; }
.dex-mode-switch .dex-mode-device.is-original { background-image:url('/focused-assets-v2210/pokedex-original-v2210.webp')!important; }
.dex-mode-switch .dex-mode-device.is-game { background-image:url('/focused-assets-v2210/pokedex-game-v2210.webp')!important; }
.dex-mode-switch > a { min-height:190px!important; overflow:hidden; }

/* Battle section: readable light command console and full-colour combatants. */
.pkl-v2210-focused .ppx-battle-shade {
  background:linear-gradient(90deg,rgba(237,251,255,.97) 0%,rgba(237,251,255,.72) 35%,rgba(4,40,55,.04) 64%,rgba(4,40,55,.16) 100%)!important;
}
.pkl-v2210-focused .ppx-battle-layout { padding-top:104px; padding-bottom:24px; }
.pkl-v2210-focused .ppx-battle-head {
  position:relative;
  z-index:5;
  max-width:580px;
  padding:27px 30px 25px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:25px;
  color:var(--focus-ink);
  background:rgba(250,255,253,.82);
  box-shadow:0 22px 55px rgba(6,66,87,.13);
  backdrop-filter:blur(18px) saturate(1.16);
}
.pkl-v2210-focused .ppx-battle-head h2 { margin-top:12px; color:var(--focus-ink); font-size:clamp(45px,4.5vw,72px); line-height:.9; letter-spacing:-.065em; }
.pkl-v2210-focused .ppx-battle-head p { max-width:510px; color:#476774; font-size:13px; line-height:1.58; }
.pkl-v2210-focused .ppx-battle-head .pkl-eyebrow { color:#0f88be; }
.pkl-v2210-focused .ppx-battle-stage { min-height:330px; isolation:isolate; }
.pkl-v2210-focused .ppx-battle-stage::before {
  content:""; position:absolute; z-index:-1; left:50%; bottom:8px; width:min(720px,72vw); height:170px;
  border:2px solid rgba(255,211,63,.7); border-radius:50%; transform:translateX(-50%);
  background:radial-gradient(ellipse,rgba(255,255,255,.6),rgba(60,198,235,.09) 56%,transparent 70%);
  box-shadow:0 0 0 14px rgba(255,255,255,.2),0 34px 65px rgba(7,60,81,.13);
}
.pkl-v2210-focused .ppx-fighter img { opacity:1!important; filter:drop-shadow(0 26px 20px rgba(4,41,57,.22)) saturate(1.13)!important; }
.pkl-v2210-focused .ppx-fighter.is-player img { transform:scale(1.04); }
.pkl-v2210-focused .ppx-fighter > span {
  min-width:168px; padding:10px 13px 11px!important; border:1px solid rgba(255,255,255,.8)!important; border-radius:14px!important;
  color:var(--focus-ink)!important; background:rgba(255,255,255,.9)!important; box-shadow:0 14px 30px rgba(4,48,65,.16)!important; backdrop-filter:blur(12px);
}
.pkl-v2210-focused .ppx-fighter > span small { color:#78909a!important; }
.pkl-v2210-focused .ppx-fighter > span b { color:var(--focus-ink)!important; font-size:15px; }
.pkl-v2210-focused .ppx-health { display:block; width:100%; height:5px; margin-top:7px; overflow:hidden; border-radius:9px; background:#d8e7e7; }
.pkl-v2210-focused .ppx-health i { display:block; width:var(--hp,100%); height:100%; border-radius:inherit; background:linear-gradient(90deg,#25b97c,#82d845); }
.pkl-v2210-focused .ppx-fighter.is-rival .ppx-health i { background:linear-gradient(90deg,#9a6be8,#e05aab); }
.pkl-v2210-focused .ppx-battle-spark {
  width:88px!important; height:88px!important; border:8px solid rgba(255,255,255,.75)!important; border-radius:50%!important;
  color:#fff!important; background:linear-gradient(145deg,#13a3dd,#0870ae)!important; box-shadow:0 18px 36px rgba(5,64,91,.25),inset 0 0 0 2px rgba(255,213,63,.9)!important;
}
.pkl-v2210-focused .ppx-battle-spark i,.pkl-v2210-focused .ppx-battle-spark span { display:none!important; }
.pkl-v2210-focused .ppx-battle-spark b { font-size:17px; letter-spacing:.12em; }
.pkl-v2210-focused .ppx-battle-console {
  display:grid!important; grid-template-columns:minmax(280px,.86fr) minmax(0,1.7fr); gap:18px; align-items:stretch;
  padding:15px!important; border:1px solid rgba(10,78,101,.13)!important; border-radius:25px!important;
  color:var(--focus-ink)!important; background:rgba(250,255,253,.93)!important; box-shadow:0 26px 62px rgba(5,57,77,.18)!important; backdrop-filter:blur(20px) saturate(1.12);
}
.pkl-v2210-focused .ppx-battle-readout { display:flex; min-height:125px; flex-direction:column; justify-content:center; padding:15px 18px; border-radius:18px; background:linear-gradient(145deg,#eaf9ff,#f7fbec); }
.pkl-v2210-focused .ppx-battle-readout-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.pkl-v2210-focused .ppx-battle-readout [data-battle-kicker] { color:#128bc2!important; }
.pkl-v2210-focused .ppx-battle-role { color:#68848f; font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.pkl-v2210-focused .ppx-battle-readout h3 { margin:8px 0 4px; color:var(--focus-ink)!important; font-size:25px; letter-spacing:-.035em; }
.pkl-v2210-focused .ppx-battle-readout p { color:#637b84!important; font-size:10px; line-height:1.45; }
.pkl-v2210-focused .ppx-battle-metrics { display:flex; gap:14px; margin:11px 0 0; }
.pkl-v2210-focused .ppx-battle-metrics div { display:grid; gap:2px; }
.pkl-v2210-focused .ppx-battle-metrics dt { color:#8ba0a6; font-size:7px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.pkl-v2210-focused .ppx-battle-metrics dd { margin:0; color:#163f50; font-size:11px; font-weight:900; }
.pkl-v2210-focused .ppx-battle-skills { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px!important; }
.pkl-v2210-focused .ppx-battle-skills button {
  position:relative; display:grid!important; min-width:0!important; min-height:125px!important; grid-template-columns:43px 1fr; grid-template-rows:1fr auto; align-items:center; gap:6px 9px;
  padding:12px!important; overflow:hidden; border:1px solid #dbe8e7!important; border-radius:18px!important; color:var(--focus-ink)!important; background:#fff!important; box-shadow:none!important; text-align:left!important;
}
.pkl-v2210-focused .ppx-battle-skills button::after { content:""; position:absolute; right:-20px; bottom:-30px; width:70px; height:70px; border-radius:50%; background:var(--skill-glow,#dff4ff); opacity:.7; }
.pkl-v2210-focused .ppx-battle-skills button:nth-child(2){--skill-glow:#e0f5ff}.pkl-v2210-focused .ppx-battle-skills button:nth-child(3){--skill-glow:#e8f7ef}.pkl-v2210-focused .ppx-battle-skills button:nth-child(4){--skill-glow:#f3e8ff}
.pkl-v2210-focused .ppx-battle-skills button.is-active { border-color:#f3c83b!important; background:#fffbea!important; transform:translateY(-3px); box-shadow:0 14px 28px rgba(108,84,3,.12)!important; }
.pkl-v2210-focused .ppx-battle-skills button img { width:43px!important; height:43px!important; grid-row:1; border-radius:12px; object-fit:cover; }
.pkl-v2210-focused .ppx-battle-skills button > span { display:grid!important; min-width:0; gap:3px; color:inherit!important; }
.pkl-v2210-focused .ppx-battle-skills button > span b { overflow:hidden; text-overflow:ellipsis; font-size:10px; white-space:nowrap; }
.pkl-v2210-focused .ppx-battle-skills button > span small { color:#789098; font-size:7px; line-height:1.3; }
.pkl-v2210-focused .ppx-battle-skills button kbd { position:absolute; top:7px; left:7px; z-index:2; min-width:18px; padding:3px; border:0; border-radius:6px; color:#fff; background:#113f52; font:800 7px/1 sans-serif; text-align:center; }
.pkl-v2210-focused .ppx-battle-skills button em { z-index:1; grid-column:1/-1; color:#68808a; font-size:7px; font-style:normal; font-weight:800; }

@media(max-width:820px){
  .dex-mode-switch .dex-mode-device{width:108px!important;height:108px!important;flex-basis:108px!important}.dex-mode-switch>a{min-height:150px!important}
  .pkl-v2210-focused .ppx-battle-layout{padding-top:84px;padding-bottom:76px}.pkl-v2210-focused .ppx-battle-head{margin:0 10px;padding:21px;border-radius:20px}.pkl-v2210-focused .ppx-battle-head h2{font-size:45px}
  .pkl-v2210-focused .ppx-battle-stage{min-height:300px}.pkl-v2210-focused .ppx-battle-spark{width:58px!important;height:58px!important;border-width:5px!important}.pkl-v2210-focused .ppx-fighter>span{min-width:112px;padding:8px!important}.pkl-v2210-focused .ppx-fighter>span b{font-size:11px}
  .pkl-v2210-focused .ppx-battle-console{grid-template-columns:1fr!important;margin:0 10px;padding:10px!important}.pkl-v2210-focused .ppx-battle-readout{min-height:0}.pkl-v2210-focused .ppx-battle-skills{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.pkl-v2210-focused .ppx-battle-skills button{flex:0 0 165px;scroll-snap-align:start}
}
@media(max-width:520px){
  .pkl-v2210-focused .pkl-brand img{width:42px;height:42px}.pkl-v2210-focused .pkl-brand b{font-size:15px}.pkl-v2210-focused .pkl-brand small{font-size:6px}
  .dex-mode-switch>a{align-items:center!important}.dex-mode-switch .dex-mode-device{width:86px!important;height:86px!important;flex-basis:86px!important}
}
@media(prefers-reduced-motion:reduce){.dex-mode-switch .dex-mode-device,.pkl-v2210-focused .ppx-battle-skills button{transition:none!important}}
