.kanto-mastery { color:#193e54; font-family:"Segoe UI Variable","Trebuchet MS",system-ui,sans-serif; }
.kanto-mastery header { display:flex; align-items:start; justify-content:space-between; gap:12px; }
.kanto-mastery header span { display:grid; gap:3px; }
.kanto-mastery header small { color:#1e9e7b; font-size:9px; font-weight:900; letter-spacing:.11em; }
.kanto-mastery header strong { display:grid; gap:2px; min-width:76px; padding:8px 10px; border:1px solid #a9d9e8; border-radius:12px; background:linear-gradient(135deg,#e7faff,#d9f3fb); color:#09688b; font-size:20px; line-height:1; text-align:center; }
.kanto-mastery header strong small { color:#437388; font-size:8px; }
.kanto-mastery p { font-size:12px; line-height:1.5; }
.kanto-mastery-evolution-note { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:11px 0 0; padding:10px 12px; border:1px solid #cbd9ff; border-radius:12px; background:linear-gradient(100deg,#f6f4ff,#eff9ff); color:#465a9f; }
.kanto-mastery-evolution-note b { font-size:11px; }.kanto-mastery-evolution-note span { color:#65788b; font-size:10px; text-align:right; }.kanto-mastery-evolution-note.is-complete { border-color:#bfe8d0; background:linear-gradient(100deg,#f2fff7,#effcf8); color:#247c58; }
.kanto-mastery-reset { width:100%; margin-top:9px; border-color:#90d2b4!important; background:linear-gradient(135deg,#eafff2,#dff8ed)!important; color:#176a4b!important; font-weight:900; }
.kanto-mastery-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:12px; margin-top:12px; }
.kanto-mastery-card { background:linear-gradient(145deg,#fff,#f3fbff); border:1px solid #b9dae9; border-radius:16px; padding:14px; min-width:0; box-shadow:0 4px 12px rgba(37,95,119,.07); }
.kanto-mastery-title { display:flex; align-items:center; gap:10px; }
.kanto-mastery-title span { display:grid; gap:4px; min-width:0; overflow-wrap:anywhere; }
.kanto-mastery-title small { font-size:9px; color:#376b82; }
.kanto-mastery-title b { font-size:15px; }
.kanto-mastery-art,.kanto-mastery-art img { width:52px!important; height:52px!important; flex:0 0 52px; object-fit:contain; }
.kanto-mastery-actions { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; }
.kanto-mastery button { padding:8px; border:1px solid #82bed7; border-radius:9px; background:#e4f5fe; color:#154861; min-height:38px; cursor:pointer; font-family:inherit; font-weight:800; }
.kanto-mastery-actions [aria-pressed=true] { background:#087fad; color:white; }
.kanto-mastery button:disabled { opacity:.45; cursor:default; }
@media(max-width:600px) { .kanto-mastery-grid { grid-template-columns:1fr; } .kanto-mastery header { flex-wrap:wrap; } }

/* Full Gen-I learnsets: eight researched techniques, four active battle slots. */
.dex-detail-v43 .dex-skills-section { grid-template-rows:auto auto auto auto; overflow:visible; }
.dex-combat-plan-v2211{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:center;padding:11px 12px;border:1px solid color-mix(in srgb,var(--dex-accent) 36%,#cde1e9);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--dex-accent) 9%,#fff),#f7fcfe)}
.dex-combat-plan-v2211 span{min-width:0}.dex-combat-plan-v2211 small{display:block;color:#bf8311;font-size:9px;font-weight:900;letter-spacing:.1em}.dex-combat-plan-v2211 span>b{display:block;margin-top:2px;color:#163b50;font-size:14px}.dex-combat-plan-v2211 p{margin:3px 0 0;color:#557385;font-size:10px;line-height:1.35}.dex-combat-plan-v2211 ol{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}.dex-combat-plan-v2211 li{display:flex;align-items:center;gap:4px;min-width:0;max-width:calc(50% - 3px);padding:5px 7px;border:1px solid #d8e9ef;border-radius:10px;background:#fff;color:#315a6c;font-size:9px}.dex-combat-plan-v2211 li i{display:grid;place-items:center;flex:0 0 16px;height:16px;border-radius:50%;background:var(--dex-accent);color:#fff;font-style:normal;font-weight:900}.dex-combat-plan-v2211 li b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:800px){.dex-combat-plan-v2211 li{flex:1 1 calc(50% - 3px);max-width:none}}
.dex-detail-v43 .dex-skills-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.dex-detail-v43 .dex-skill-detail { grid-column:1/-1; }
.dex-detail-v43 .dex-skill-detail p { max-height:none; overflow:visible; }
.dex-detail-v43 .dex-stats-card { font-family:"Segoe UI Variable","Trebuchet MS",system-ui,sans-serif; }
.dex-detail-v43 .dex-stat-row > span i { display:grid; place-items:center; width:22px; height:22px; overflow:visible; border:0; background:transparent; }
.dex-detail-v43 .dex-stat-row > span i img { width:22px; height:22px; object-fit:contain; filter:drop-shadow(0 1px 1px rgba(30,65,93,.15)); }
@media(min-width:801px) {
  .game-screen .side-panel.is-pokedex-detail #sidePanelContent { overflow-y:auto!important; overscroll-behavior:contain; }
  .dex-detail-v43 { height:auto; min-height:100%; }
  .dex-detail-v43 .dex-dossier-grid { align-items:start; }
  .dex-detail-v43 .dex-dossier-right { grid-template-rows:auto auto auto; align-content:start; }
}
@media(max-width:760px) { .dex-detail-v43 .dex-skills-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:430px) { .dex-detail-v43 .dex-skills-grid { grid-template-columns:1fr; } }

/* Owned Pokemon dossier: genes, stat-specific training pills and readable mastery. */
.pokemon-instance-v2324 { font-family:"Segoe UI Variable","Trebuchet MS",system-ui,sans-serif; }
.pokemon-genome-v2324 { display:grid!important; gap:10px; padding:13px!important; border:1px solid #cbbdf5!important; background:linear-gradient(145deg,#fbf9ff,#eefbfa)!important; }
.pokemon-genome-v2324 header { display:flex; align-items:center; gap:10px; min-width:0; }
.pokemon-genome-v2324 header>img { width:48px; height:48px; flex:0 0 48px; filter:drop-shadow(0 3px 5px rgba(94,70,160,.16)); }
.pokemon-genome-v2324 header span { display:grid; gap:2px; min-width:0; }
.pokemon-genome-v2324 header small { color:#6c54af; font-size:9px; font-weight:900; letter-spacing:.08em; }
.pokemon-genome-v2324 header b { overflow:hidden; color:#1c3d58; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:13px; letter-spacing:.05em; text-overflow:ellipsis; white-space:nowrap; }
.pokemon-genome-v2324 header em { color:#648091; font-size:10px; font-style:normal; }
.pokemon-gene-grid-v2324 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; }
.pokemon-gene-stat-v2324 { display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:4px; min-width:0; padding:6px; border:1px solid color-mix(in srgb,var(--gene-tone) 30%,#d7e7ec); border-radius:9px; background:#fff; }
.pokemon-gene-stat-v2324 img { width:19px; height:19px; object-fit:contain; }.pokemon-gene-stat-v2324 i { overflow:hidden; color:#557386; font-size:9px; font-style:normal; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.pokemon-gene-stat-v2324 b { color:var(--gene-tone); font-size:13px; }.pokemon-gene-stat-v2324 b small { color:#7890a0; font-size:8px; }
.pokemon-genome-v2324>p { margin:0; color:#61798b; font-size:10px; line-height:1.35; }
.pokemon-training-v2324 .pokemon-section-title>strong { display:grid!important; grid-template-columns:28px auto; align-items:center; column-gap:5px; min-width:78px!important; padding:7px 9px!important; }.pokemon-training-v2324 .pokemon-section-title>strong img { width:28px!important; height:28px!important; grid-row:span 2; object-fit:contain; }.pokemon-training-v2324 .pokemon-section-title>strong small { grid-column:2; color:#5f7d8c; font-size:8px; font-weight:800; white-space:nowrap; }
.pokemon-training-hint-v2324 { margin:8px 0 10px; color:#557384; font-size:10px; line-height:1.38; }
.pokemon-energy-readout-v2324 { display:grid; grid-template-columns:24px auto 1fr; align-items:center; gap:4px 6px; margin-top:9px; padding:7px 8px; border:1px solid #e5c45e; border-radius:10px; background:linear-gradient(110deg,#fffbe8,#fff); color:#705a1d; }.pokemon-energy-readout-v2324>span { display:grid; grid-row:span 2; place-items:center; width:24px; height:24px; color:#e1a719; }.pokemon-energy-readout-v2324>span svg { width:20px; height:20px; }.pokemon-energy-readout-v2324 b { font-size:15px; line-height:1; }.pokemon-energy-readout-v2324 small { color:#796b3e; font-size:9px; font-weight:800; }.pokemon-energy-readout-v2324 em { grid-column:2/-1; color:#96845a; font-size:8px; font-style:normal; }
.pokemon-stat-tile-v2324 { grid-template-columns:28px minmax(0,1fr) auto!important; border-color:color-mix(in srgb,var(--stat-tone) 34%,#cfe5ee)!important; background:linear-gradient(125deg,color-mix(in srgb,var(--stat-tone) 7%,#fff),#fbfeff)!important; }
.pokemon-stat-glyph-v2324 { width:25px; height:25px; align-self:start; margin-top:4px; object-fit:contain; filter:drop-shadow(0 1px 1px rgba(20,56,78,.15)); }
.pokemon-stat-tile-v2324>button { display:grid!important; grid-template-columns:27px auto; align-items:center; gap:2px; min-width:45px; padding:4px!important; border-color:color-mix(in srgb,var(--stat-tone) 50%,#b7d7e3)!important; background:#fff!important; color:#234d60!important; }.pokemon-stat-tile-v2324>button img { width:25px; height:25px; object-fit:contain; }.pokemon-stat-tile-v2324>button strong { font-size:10px; }.pokemon-stat-tile-v2324>button:disabled { background:#f1f5f6!important; }
.pokemon-evolution-v48 { position:relative; overflow:hidden; }.pokemon-evolution-v48:after { position:absolute; right:8px; bottom:-14px; color:color-mix(in srgb,var(--pokemon-accent,#4aa7e8) 18%,transparent); content:"↑"; font-size:64px; font-weight:900; line-height:1; pointer-events:none; }
.pokemon-evolution-v48>* { position:relative; z-index:1; }
.kanto-mastery { display:grid; gap:10px; }.kanto-mastery>p { margin:0; padding:9px 11px; border-radius:10px; background:#f2f8fa; color:#5b7586; font-size:10px; }
.kanto-mastery-card { min-height:156px; }.kanto-mastery-card>p { min-height:39px; margin:9px 0; color:#5b7586; font-size:10px; line-height:1.38; }.kanto-mastery-actions { align-items:center; }.kanto-mastery-actions>div { display:flex; gap:4px; }.kanto-mastery-actions>div button { min-width:29px; padding:5px; }
@media(max-width:760px) { .pokemon-gene-grid-v2324 { grid-template-columns:repeat(3,minmax(0,1fr)); }.pokemon-genome-v2324>p { display:none; }.pokemon-stat-tile-v2324 { grid-template-columns:25px minmax(0,1fr) auto!important; }.pokemon-stat-glyph-v2324 { width:22px; height:22px; } }
@media(max-width:430px) { .pokemon-gene-grid-v2324 { grid-template-columns:repeat(2,minmax(0,1fr)); }.pokemon-genome-v2324 header>img { width:40px; height:40px; flex-basis:40px; }.pokemon-stat-tile-v2324>button { grid-template-columns:22px auto; min-width:39px; }.pokemon-stat-tile-v2324>button img { width:21px; height:21px; } }

/* v2.32.5 — owned Pokémon dossier: one readable system, no inherited card geometry. */
.pokemon-instance-v2325 { --dossier-ink:#163a55; --dossier-muted:#647d90; --dossier-line:#d7e6ed; color:var(--dossier-ink); font-family:"Segoe UI Variable","Trebuchet MS",system-ui,sans-serif; }
.pokemon-detail-head-v2325 { margin-bottom:10px; padding-bottom:9px; border-bottom:1px solid var(--dossier-line); }
.pokemon-instance-grid-v2325 { grid-template-columns:minmax(280px,318px) minmax(0,1fr)!important; gap:14px!important; overflow:visible!important; }
.pokemon-instance-left-v2325,.pokemon-instance-right-v2325 { gap:12px!important; }
.pokemon-detail-hero-v2325 { min-height:164px!important; padding:13px!important; border-color:color-mix(in srgb,var(--species-accent) 32%,var(--dossier-line))!important; border-radius:18px!important; box-shadow:0 7px 18px rgba(22,67,91,.07); }
.pokemon-detail-hero-v2325 .pokemon-detail-art-v46 { align-self:center; }.pokemon-detail-hero-v2325 h2 { font-size:1.35rem!important; }.pokemon-detail-hero-v2325 .pokemon-exp-track { margin-top:9px; }
.pokemon-energy-readout-v2325 { display:grid; grid-template-columns:25px auto 1fr; align-items:center; gap:0 7px; margin-top:9px; padding:7px 9px; border:1px solid #eedb8d; border-radius:11px; background:linear-gradient(120deg,#fffaf0,#fff); }
.pokemon-energy-readout-v2325>span { display:grid; grid-row:span 2; place-items:center; width:25px; height:25px; color:#dd9e17; }.pokemon-energy-readout-v2325>span svg { width:20px; height:20px; }.pokemon-energy-readout-v2325>b { color:#674b11; font-size:16px; line-height:1; }.pokemon-energy-readout-v2325 small { color:#856a2c; font-size:9px; font-weight:900; }.pokemon-energy-readout-v2325 em { grid-column:2/-1; margin:2px 0 0!important; color:#9a8251!important; font-size:8px!important; }

.pokemon-genome-v2325 { display:grid; gap:10px; padding:12px; border:1px solid #cbc4ee; border-radius:18px; background:linear-gradient(145deg,#faf9ff,#f3fbff); box-shadow:0 7px 18px rgba(67,48,126,.05); }
.pokemon-genome-head-v2325 { display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:center; gap:9px; }.pokemon-genome-head-v2325>img { width:52px; height:52px; object-fit:contain; filter:drop-shadow(0 3px 5px rgba(47,57,115,.18)); }.pokemon-genome-head-v2325>span { display:grid; min-width:0; gap:2px; }.pokemon-genome-head-v2325 small { color:#6e56af; font-size:8px; font-weight:900; letter-spacing:.11em; }.pokemon-genome-head-v2325>span>b { overflow:hidden; color:#28495f; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:11px; letter-spacing:.035em; text-overflow:ellipsis; white-space:nowrap; }.pokemon-genome-head-v2325 em { color:var(--dossier-muted); font-size:9px; font-style:normal; }.pokemon-genome-head-v2325>strong { display:grid; place-items:end; color:#6549a2; line-height:1; text-align:right; }.pokemon-genome-head-v2325>strong>b { font-size:20px; }.pokemon-genome-head-v2325>strong small { color:#8d7aa8; font-size:9px; }
.pokemon-gene-grid-v2325 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }.pokemon-gene-chip-v2325 { display:grid; grid-template-columns:17px minmax(0,1fr) auto; align-items:center; gap:3px; min-width:0; padding:5px; border:1px solid color-mix(in srgb,var(--gene-tone) 30%,#dbe8ef); border-radius:9px; background:#fff; }.pokemon-gene-chip-v2325 img { width:17px; height:17px; object-fit:contain; }.pokemon-gene-chip-v2325 i { overflow:hidden; color:#617d8f; font-size:8px; font-style:normal; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.pokemon-gene-chip-v2325 b { color:var(--gene-tone); font-size:11px; line-height:1; }.pokemon-gene-chip-v2325 b small { color:#8ca0ad; font-size:7px; }.pokemon-genome-v2325>p { margin:0; color:#718597; font-size:9px; line-height:1.36; }

.pokemon-training-v2325 { margin-top:0!important; padding:13px!important; border-color:#cbe3ef!important; border-radius:18px!important; background:linear-gradient(150deg,#fff,#f7fcff)!important; box-shadow:0 7px 18px rgba(22,67,91,.05); }.pokemon-training-v2325>header { display:flex; align-items:center; justify-content:space-between; gap:12px; }.pokemon-training-v2325>header>span { display:grid; gap:2px; min-width:0; }.pokemon-training-v2325>header small { color:#238294; font-size:8px; font-weight:900; letter-spacing:.11em; }.pokemon-training-v2325>header>span>b { color:#153e5a; font-size:17px; }.pokemon-training-v2325>header em { color:var(--dossier-muted); font-size:9px; font-style:normal; }.pokemon-training-v2325>header>strong { display:grid; grid-template-columns:30px auto; grid-template-rows:16px 12px; align-items:center; column-gap:5px; flex:0 0 auto; padding:6px 8px; border:1px solid #d5eaf4; border-radius:12px; background:#edf9ff; }.pokemon-training-v2325>header>strong img { grid-row:span 2; width:30px; height:30px; object-fit:contain; }.pokemon-training-v2325>header>strong>b { color:#126c8a; font-size:16px; line-height:1; }.pokemon-training-v2325>header>strong small { color:#658494; font-size:8px; font-weight:800; white-space:nowrap; }.pokemon-training-v2325>p { margin:9px 0 11px; color:#587488; font-size:10px; line-height:1.38; }
.pokemon-training-grid-v2325 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }.pokemon-training-row-v2325 { display:grid; grid-template-columns:29px minmax(0,1fr) auto; align-items:center; gap:7px; min-width:0; padding:7px; border:1px solid color-mix(in srgb,var(--stat-tone) 34%,#d6e6ed); border-radius:12px; background:linear-gradient(115deg,color-mix(in srgb,var(--stat-tone) 7%,#fff),#fff); }.pokemon-training-stat-art-v2325 { display:grid; place-items:center; width:29px; height:29px; border-radius:9px; background:#fff; }.pokemon-training-stat-art-v2325 img { width:22px; height:22px; object-fit:contain; }.pokemon-training-stat-copy-v2325 { display:grid; grid-template-columns:auto auto; align-items:baseline; gap:1px 5px; min-width:0; }.pokemon-training-stat-copy-v2325 small { overflow:hidden; color:#536f82; font-size:9px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.pokemon-training-stat-copy-v2325 b { color:#1b405a; font-size:13px; }.pokemon-training-stat-copy-v2325 em { color:#7b93a1; font-size:8px; font-style:normal; }.pokemon-training-stat-copy-v2325>i { grid-column:1/-1; display:block; height:4px; overflow:hidden; border-radius:999px; background:#dfeaf0; }.pokemon-training-stat-copy-v2325>i>u { display:block; height:100%; border-radius:inherit; background:var(--stat-tone); }.pokemon-training-row-v2325>button { display:grid; grid-template-columns:22px auto; grid-template-rows:12px 12px; align-items:center; column-gap:3px; min-width:53px; padding:4px 5px; border:1px solid color-mix(in srgb,var(--stat-tone) 48%,#c5dbe5); border-radius:9px; background:#fff; color:#426579; cursor:pointer; font:inherit; }.pokemon-training-row-v2325>button img { grid-row:span 2; width:22px; height:22px; object-fit:contain; }.pokemon-training-row-v2325>button span { color:var(--stat-tone); font-size:9px; font-weight:900; line-height:1; }.pokemon-training-row-v2325>button strong { color:#527084; font-size:7px; line-height:1; }.pokemon-training-row-v2325>button:disabled { opacity:.53; cursor:not-allowed; filter:saturate(.4); }
.pokemon-mastery-section-v2325 { padding:13px!important; border-color:#d4e5ec!important; border-radius:18px!important; box-shadow:0 7px 18px rgba(22,67,91,.04); }
.pokemon-facts-v2325 article { min-height:56px!important; }.pokemon-facts-v2325 article i { background:#f2f7fa!important; }.pokemon-facts-v2325 article small { font-size:8px!important; }.pokemon-facts-v2325 article b { font-size:10px!important; }
@media(max-width:860px) { .pokemon-instance-grid-v2325 { grid-template-columns:1fr!important; }.pokemon-instance-left-v2325 { grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; }.pokemon-detail-hero-v2325 { grid-column:1/-1; }.pokemon-detail-actions-v46 { grid-column:1/-1; } }
@media(max-width:560px) { .pokemon-instance-left-v2325 { grid-template-columns:1fr; }.pokemon-training-grid-v2325 { grid-template-columns:1fr; }.pokemon-gene-grid-v2325 { grid-template-columns:repeat(2,minmax(0,1fr)); }.pokemon-genome-v2325>p { display:block; }.pokemon-detail-hero-v2325 { grid-template-columns:94px minmax(0,1fr)!important; min-height:130px!important; }.pokemon-detail-hero-v2325 .pokemon-detail-portrait-v46 { width:90px!important; height:90px!important; }.pokemon-training-v2325>header>span>b { font-size:15px; }.pokemon-training-v2325>header>strong { min-width:0; } }
@media(max-width:380px) { .pokemon-genome-head-v2325 { grid-template-columns:44px minmax(0,1fr); }.pokemon-genome-head-v2325>img { width:44px; height:44px; }.pokemon-genome-head-v2325>strong { display:none; }.pokemon-training-v2325>header em { display:none; }.pokemon-training-row-v2325 { grid-template-columns:26px minmax(0,1fr) auto; gap:5px; }.pokemon-training-stat-art-v2325 { width:26px; height:26px; } }
