@layer pogo-legacy {
:root{font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;color:#17253d;background:#f0f3f8;font-size:16px;--navy:#122039;--accent:#e65442;--line:#dce3ee;--muted:#64738a;--blue:#3158ce}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}:focus-visible:not(main){outline:2px solid var(--accent);outline-offset:2px}html:not(.keyboard-navigation) :focus-visible:not(main){outline:none}main:focus{outline:none}.skip{position:fixed;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.shell{display:flex;min-height:100vh}.topbar{width:240px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:#d1d9e8;padding:32px 20px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:10px;color:white;font-size:24px;font-weight:800;letter-spacing:-1px}.brandmark{display:grid;place-items:center;background:#ff6856;color:var(--navy);width:36px;height:42px;border-radius:10px;font-size:28px;transform:rotate(-6deg)}.brandaccent{font-weight:400}.brand small{font-size:9px;letter-spacing:1px;display:block;margin-top:6px;color:#91a3c0}.topbar nav{display:grid;gap:10px;margin-top:54px}.topbar nav a{display:flex;align-items:center;gap:12px;padding:15px 14px;border-radius:10px;font-size:15px}.topbar nav a:hover{background:#1c2e4c}.topbar nav a.active{background:#293b59;color:white;box-shadow:inset 3px 0 #ff6856}.topbar nav span{font-size:23px;width:24px}.topbar-note{margin-top:auto;font-size:15px;line-height:1.8;color:#aebcd1;border-top:1px solid #34435b;padding-top:24px}.topbar-note small{display:block;font-size:12px;margin-top:18px}.workspace{margin-left:240px;min-width:0;flex:1}.date{color:var(--muted)}main{max-width:1350px;margin:auto;padding:36px 40px 50px;min-height:70vh}.eyebrow{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:1.5px}.pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}h1{font-size:32px;letter-spacing:-1.4px;margin:8px 0 10px}h2{font-size:21px;letter-spacing:-.6px;margin:0 0 18px}h3{font-size:18px;margin:0 0 10px}p{line-height:1.6;margin:0 0 12px}.muted,.meta{color:var(--muted)}.meta{font-size:13px;line-height:1.6}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.raid-card{position:relative;overflow:hidden}.raid-card .poke-img{width:140px;height:140px;display:block;margin:2px auto 10px;object-fit:contain}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:6px;padding:5px 8px;background:#eaf0ff;color:#3556a6;font-size:12px;font-weight:700}.badge.warm{background:#fff0e9;color:#b94e21}.type{display:inline-block;padding:4px 9px;border-radius:5px;background:#eef1f6;color:#43526c;font-size:12px;margin:2px 4px 2px 0}.type[data-type="Poison"]{background:#f3eafa;color:#8c40ab}.type[data-type="Fire"]{background:#fff0e5;color:#bf591b}.type[data-type="Water"]{background:#e7f2ff;color:#296ebc}.type[data-type="Grass"]{background:#e9f5e8;color:#428041}.type[data-type="Electric"]{background:#fff5cd;color:#896e0a}.cpbox{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.cpbox small{display:block;color:var(--muted);font-size:12px}.cpbox strong{font-size:17px;display:block;margin-top:5px;font-variant-numeric:tabular-nums}.weakness{margin-top:14px;font-size:13px;line-height:1.8;color:var(--muted)}.section{margin-top:30px}.sectionhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px;gap:12px}.sectionhead h2{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:white;border-radius:9px;padding:11px 16px;color:#253b61;font-size:14px;font-weight:600}.btn.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.accent{background:var(--accent);color:white;border-color:var(--accent)}.btn.small{padding:7px 10px;font-size:13px}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:24px}.field{display:grid;gap:8px;min-width:0}.field label{font-size:14px;font-weight:600}.field input,.field select{width:100%;border:1px solid #cbd5e4;border-radius:9px;padding:12px;background:white;color:#17253d;min-height:46px}.field.grow{flex:1;min-width:190px}.searchbar{display:flex;gap:10px;max-width:600px}.searchbar input{flex:1;min-width:0}.pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.pill{border:1px solid var(--line);background:white;border-radius:24px;padding:9px 16px;font-size:14px}.pill.active{background:var(--navy);color:white;border-color:var(--navy)}.loading,.empty,.error{padding:30px;background:white;border:1px dashed #cbd5e4;border-radius:14px;color:var(--muted);line-height:1.7}.error{color:#a32b24;background:#fff5f2}.eventrow{padding:18px 0;border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between}.eventrow:first-child{border-top:0;padding-top:0}.eventrow:last-child{padding-bottom:0}.eventrow h3{font-size:16px;margin-bottom:6px}footer{padding:20px 40px 30px;font-size:12px;color:var(--muted)}.two-col{display:grid;grid-template-columns:minmax(280px, .9fr) minmax(0,1.3fr);gap:24px}.poke-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.poke-tile{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;text-align:left;transition:transform .15s}.poke-tile:hover{transform:translateY(-3px);border-color:#a4b5cf}.poke-tile img{width:100%;height:110px;object-fit:contain}.poke-tile strong{display:block;font-size:16px;margin:6px 0}.poke-tile small{font-size:12px;color:var(--muted)}.detail-portrait{text-align:center;background:linear-gradient(150deg,#eaf0fb,#fff);border-radius:14px;padding:22px}.detail-portrait img{width:220px;height:220px;object-fit:contain;max-width:100%}.statrow{display:grid;grid-template-columns:50px 1fr 40px;gap:12px;align-items:center;margin:14px 0;font-size:14px}.statbar{height:8px;background:#edf1f7;border-radius:6px;overflow:hidden}.statbar span{height:100%;background:#5374da;display:block}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}.data-table th{background:#f3f6fb;color:var(--muted);font-weight:500;font-size:13px;padding:13px 12px;white-space:nowrap}.data-table td{border-bottom:1px solid #e8edf4;padding:13px 12px}.data-table tr:last-child td{border-bottom:0}.rank-num{font-size:20px;font-weight:750;font-variant-numeric:tabular-nums}.pokemon-cell{display:flex;align-items:center;gap:10px;min-width:150px}.pokemon-cell img{width:46px;height:46px;object-fit:contain}.move-line{font-size:13px;color:var(--muted);line-height:1.7}.usage-line{display:flex;gap:15px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #edf1f7;font-size:14px;line-height:1.7}.usage-line strong{white-space:nowrap}.usage-line span{text-align:right}.member{margin-top:20px}.member h3{font-size:15px;color:var(--muted)}.inputs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.inputs-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.result-hero{padding:30px;background:var(--navy);color:white;border-radius:14px;margin-bottom:18px}.result-hero .meta{color:#b7c7e0}.result-number{font-size:40px;letter-spacing:-1px;font-weight:750;font-variant-numeric:tabular-nums;margin:10px 0}.result-number .arrow{font-size:24px;color:#ff8676;margin:0 10px}.result-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.result-tiles div{background:#f3f6fb;padding:16px 12px;border-radius:9px}.result-tiles strong{display:block;font-size:19px;margin-top:8px}.hint{font-size:13px;line-height:1.7;color:var(--muted);margin:12px 0}.divider{border:0;border-top:1px solid var(--line);margin:24px 0}.choice-row{display:flex;align-items:center;gap:8px;font-size:14px}.link{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.sourceline{margin-top:20px;font-size:12px;color:var(--muted);line-height:1.8}.pagination{display:flex;justify-content:center;gap:16px;align-items:center;margin-top:22px;font-size:14px}.calc-description{max-width:650px}.form-stack{display:grid;gap:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){.cards{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.topbar{width:210px;padding:28px 15px}.workspace{margin-left:210px}main{padding:28px 24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.poke-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.topbar .brand{font-size:21px}}@media(max-width:700px){.shell{display:block}.topbar{position:sticky;top:0;width:100%;padding:14px 16px 8px;display:block}.brand{font-size:21px!important}.brandmark{width:28px;height:30px;font-size:23px}.brand small,.topbar-note{display:none}.topbar nav{margin-top:15px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.topbar nav a{padding:10px 3px;display:block;text-align:center;font-size:12px;white-space:nowrap;border-radius:6px}.topbar nav span{display:none}.topbar nav a.active{box-shadow:inset 0 -2px #ff6856}.workspace{margin:0}main{padding:24px 16px 32px}h1{font-size:27px}.pagehead{align-items:start;margin-bottom:22px}.pagehead p{font-size:14px}.cards{gap:12px}.card,.panel{padding:18px}.raid-card .poke-img{width:105px;height:105px}.raid-card h3{font-size:16px}.cpbox{grid-template-columns:1fr;gap:8px}.cpbox strong{font-size:16px}.cpbox small{font-size:12px}.weakness{font-size:12px}.poke-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.poke-tile{padding:12px}.poke-tile img{height:78px}.poke-tile strong{font-size:14px}.result-number{font-size:32px}.result-tiles{gap:8px}.result-tiles div{padding:12px 8px}.result-tiles strong{font-size:17px}.result-tiles .meta{font-size:12px}.eventrow{display:block}.eventrow .meta{margin-top:5px}footer{padding:12px 18px 28px}.usage-line{gap:10px}.data-table td,.data-table th{padding:10px 8px}.toolbar{gap:10px}.toolbar .field{min-width:120px}.result-hero{padding:24px}.inputs-grid{gap:8px}.field input,.field select{padding:11px 8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
[hidden]{display:none!important}.image-fallback{display:inline-grid;place-items:center;background:#eef2f8;color:#97a7bd;border-radius:12px;width:46px;height:46px}.image-fallback.poke-img{display:grid;width:140px;height:140px;margin:auto}.poke-tile .image-fallback{width:100%;height:110px}.detail-portrait .image-fallback{width:220px;height:220px;max-width:100%}.optional-inputs summary,.usage-details summary{font-size:14px;color:var(--blue);cursor:pointer;line-height:1.8}.usage-details{margin-top:10px}.data-table a.link{text-decoration:none}.data-table a.link:hover{text-decoration:underline}.raid-card h3 a{text-decoration:none;color:var(--navy)}
.brand small{font-size:12px;letter-spacing:1px}.topbar-note small{font-size:12px}@media(max-width:700px){.topbar nav{grid-template-columns:repeat(4,max-content);justify-content:space-between;gap:4px;overflow-x:auto}.topbar nav a{font-size:clamp(12px,3.3vw,14px);white-space:nowrap;min-height:44px;line-height:1.4;display:flex;align-items:center;justify-content:center;padding:10px 4px}.poke-tile .image-fallback{height:78px}.pills{gap:7px}.pill{padding:9px 13px}}

.dex-back{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-bottom:20px;padding:6px 15px 6px 7px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-size:13px;font-weight:650;box-shadow:0 2px 5px #12203905;transition:background .18s,border-color .18s,box-shadow .18s}
.dex-back-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f0f3f8;color:#52647f;transition:background .18s,color .18s}
.dex-back-icon svg{width:17px;height:17px;transition:transform .18s}
@media(hover:hover){.dex-back:hover{background:#f9fbff;border-color:#b9c7db;box-shadow:0 3px 9px #1220390a}.dex-back:hover .dex-back-icon{background:#e6edf8;color:var(--navy)}.dex-back:hover svg{transform:translateX(-2px)}}
.dex-back:active{background:#eaf0f8}

.pagehead-content{width:100%;min-width:0}.pagehead-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.pagehead-top .date{font-size:13px;white-space:nowrap;letter-spacing:0}.eventrow{flex-wrap:wrap;column-gap:24px;row-gap:6px}.eventrow>div:first-child{flex:1;min-width:200px}.event-date{flex-shrink:0;margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}@media(max-width:700px){.pagehead-top .date{font-size:12px}.event-date{white-space:normal}}

.poke-image-link{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:12px}.raid-card>.poke-image-link{display:flex;width:fit-content;margin:2px auto 10px}.raid-card>.poke-image-link .poke-img{margin:0}.poke-image-link img{transition:transform .15s}@media(hover:hover){.poke-image-link:hover img{transform:translateY(-3px)}}

.topbar-note small{margin-top:0}.calc-nav-icon svg{display:block;width:24px;height:24px}.eventrow{align-items:baseline}.event-date{font-size:15px;font-weight:500;color:#435570;line-height:1.65}.pagehead-top .date{font-size:14px}.raid-card .raid-end-date{font-size:14px;color:#435570;font-weight:500}@media(max-width:700px){.event-date{font-size:14px}.pagehead-top .date{font-size:13px}}

.eventrow{align-items:center;column-gap:28px;row-gap:12px;padding:20px 0}.event-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px}.eventrow .event-heading h3{margin:0;line-height:1.6}.event-source{display:inline-flex;align-items:center;gap:4px;min-height:32px;color:#65758d;font-size:12px;font-weight:500;white-space:nowrap;border-radius:5px}.event-source:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.event-info>p{margin:6px 0 0}.event-date{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid #e6ebf3;border-radius:10px;background:#f5f7fb;color:#344965;font-size:15px;font-weight:550;line-height:1.5;white-space:normal;max-width:100%}.event-calendar{width:18px;height:18px;flex-shrink:0;color:#7a8da9}.event-period{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;min-width:0}.event-period>span{white-space:nowrap}.event-range-separator{color:#8492a7;font-weight:400}@media(max-width:700px){.eventrow{display:flex;align-items:stretch;gap:10px}.eventrow>.event-info{flex-basis:100%;min-width:0}.event-date{margin-left:0;font-size:14px;padding:10px 12px}.event-heading{gap:4px 10px}}

.raid-card>.sectionhead{align-items:center;flex-wrap:wrap;gap:8px}.raid-badge{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;padding:7px 10px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:750;line-height:1.35}.raid-stars{font-size:12px;letter-spacing:2px;line-height:1}.raid-badge-mega{color:#ad451d;background:#fff0e6;border-color:#f6d8c5}.raid-badge-shadow{color:#7138a1;background:#f1e7fb;border-color:#dfc9f2}.raid-badge-legendary{color:#876008;background:#fff5d6;border-color:#ebd795}.raid-badge-three{color:#315cb0;background:#eaf1ff;border-color:#ccdaf5}.raid-badge-one{color:#466675;background:#edf4f7;border-color:#d6e4eb}.raid-card[data-tier^="shadow_"]{border-top:3px solid #ac7bce}.raid-card[data-tier="mega"]{border-top:3px solid #e89b6b}.raid-card[data-tier="lvl5"]{border-top:3px solid #d8b04a}#raid-filters .pill[data-tier^="shadow_"]:not(.active){color:#7138a1;background:#f5effb;border-color:#dfc9f2}#raid-filters .pill[data-tier^="shadow_"].active{background:#7138a1;border-color:#7138a1}#raid-filters .pill[data-tier="mega"]:not(.active){color:#ad451d;background:#fff3eb;border-color:#f6d8c5}#raid-filters .pill[data-tier="lvl5"]:not(.active){color:#876008;background:#fff8e5;border-color:#ebd795}@media(max-width:700px){.event-date{width:100%;background:#edf2f8;border-color:#dce5f0;box-shadow:0 2px 5px #17253d08}.raid-badge{padding:6px 8px}.raid-stars{font-size:11px;letter-spacing:1.5px}}

/* Shared Pokemon type palette: names remain visible for color-independent identification. */
.type{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:27px;padding:4px 10px;border:1px solid var(--type-border,#d6dbe2);border-radius:999px;background:var(--type-bg,#eef0f3);color:var(--type-ink,#4b5563);font-size:12px;font-weight:650;line-height:1.3;white-space:nowrap;vertical-align:middle}.type::before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor;opacity:.8}
.type[data-type="Normal"]{--type-bg:#eef0f3;--type-ink:#4b5563;--type-border:#d6dbe2;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Fire"]{--type-bg:#fff0e6;--type-ink:#a83b14;--type-border:#f3cbb5;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Water"]{--type-bg:#e8f2ff;--type-ink:#225ca5;--type-border:#c2d9f5;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Electric"]{--type-bg:#fff7cf;--type-ink:#775b00;--type-border:#eadb8b;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Grass"]{--type-bg:#eaf5e5;--type-ink:#366a28;--type-border:#c7dfb9;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Ice"]{--type-bg:#e5f8fa;--type-ink:#17656f;--type-border:#b9e2e7;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Fighting"]{--type-bg:#fce9e7;--type-ink:#a3352b;--type-border:#edc0ba;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Poison"]{--type-bg:#f4eafa;--type-ink:#7c3393;--type-border:#dfc5eb;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Ground"]{--type-bg:#f7efdF;--type-ink:#78561d;--type-border:#e5d3ad;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Flying"]{--type-bg:#edf0ff;--type-ink:#56549b;--type-border:#d2d5f0;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Psychic"]{--type-bg:#ffe9f0;--type-ink:#a82e59;--type-border:#f1bfd1;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Bug"]{--type-bg:#f1f5dc;--type-ink:#586416;--type-border:#dbe3ac;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Rock"]{--type-bg:#f2efdf;--type-ink:#6e602d;--type-border:#dcd3af;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Ghost"]{--type-bg:#eeebf8;--type-ink:#5c468c;--type-border:#d3c9e8;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Dragon"]{--type-bg:#ebeaff;--type-ink:#5140ac;--type-border:#cfc8f4;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Dark"]{--type-bg:#eaeaf0;--type-ink:#424251;--type-border:#c9c9d5;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Steel"]{--type-bg:#eaf0f5;--type-ink:#476074;--type-border:#c9d6e1;background:var(--type-bg);color:var(--type-ink)}
.type[data-type="Fairy"]{--type-bg:#fcecf7;--type-ink:#963f7a;--type-border:#edcbe2;background:var(--type-bg);color:var(--type-ink)}

.moves-recommendations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.moves-group{min-width:0;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:18px}.moves-group>h3{font-size:16px}.recommended-move{padding:13px 0;border-top:1px solid var(--line)}.recommended-context{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;margin-bottom:9px;font-size:14px}.recommended-attacks{display:grid;gap:7px;font-size:14px;line-height:1.6}.recommended-attacks small{display:inline-block;min-width:48px;margin-right:8px;font-size:11px;color:var(--muted)}.moves-group .sourceline{margin-bottom:0}@media(max-width:700px){.moves-recommendations{grid-template-columns:1fr;gap:14px}.moves-group{padding:15px}}

.schedule-status{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;background:#edf0f5;color:#536071}
.schedule-status[data-state="active"]{background:#e1f5e9;color:#17643d}
.schedule-status[data-state="upcoming"]{background:#e9efff;color:#3459a4}
.schedule-status[data-state="ended"]{background:#eee;color:#666}
.raid-period{margin-top:14px}.raid-period .meta{margin-top:7px;line-height:1.6}
.event-date{flex-wrap:wrap}.event-date .schedule-status{align-self:center}

.trait-grid,.counter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.counter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.matchup-chips,.boss-list{display:flex;flex-wrap:wrap;gap:8px}.matchup-chip{padding:7px 12px;border-radius:10px;background:#edf4f1;font-size:13px}.matchup-chip.weak{background:#fff0e8}.boss-list{max-height:240px;overflow:auto;margin-top:16px}.boss-option[hidden]{display:none}.counter-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #dce4e1}.counter-row>div{min-width:0;flex:1}.counter-row p{margin:4px 0 0;overflow-wrap:anywhere}.counter-rank{color:#247767;min-width:20px}.counter-value{font-variant-numeric:tabular-nums;font-size:13px}.counter-form{font-size:10px;overflow-wrap:anywhere}@media(max-width:780px){.trait-grid,.counter-grid{grid-template-columns:1fr;gap:20px}}

/* Boss guide: roomy search and role cards */
.boss-search-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.boss-search-head h2{margin:0}.boss-search-input{display:flex;align-items:center;gap:12px;background:#f3f6fb;border:1px solid #d5deea;border-radius:14px;padding:0 16px}.boss-search-input>span{font-size:30px;color:#75849d}.boss-search-input input{width:100%;min-width:0;border:0;background:transparent;padding:16px 0;font:inherit;color:#192940;outline:none}.boss-search-input:focus-within{border-color:#357e75;box-shadow:0 0 0 3px #357e7518}.boss-kind-filters{margin-top:18px}.boss-list{max-height:280px;gap:10px}.boss-option{display:flex;flex-direction:column;gap:5px;padding:12px 16px;border:1px solid #dde5ef;border-radius:12px;text-decoration:none;color:#263650;background:#fff}.boss-option>span{font-size:12px;color:#75849d}.boss-option:hover,.boss-option.selected{border-color:#3b8e80;background:#edf7f4}.counter-grid-single{grid-template-columns:1fr}.counter-card-list{display:grid;gap:10px}.counter-row{border:1px solid #e0e6ee;border-radius:14px;background:#f8fafc;padding:16px;gap:12px;margin:0}.counter-portrait{width:56px;height:56px;object-fit:contain;flex-shrink:0}.counter-name{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.counter-name>a{font-size:16px;font-weight:700;text-decoration:none;color:#203951}.counter-form{font-size:11px;background:#e9eef6;color:#576b87;border-radius:6px;padding:3px 7px;overflow-wrap:normal}.counter-moves{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:8px;font-size:13px;line-height:1.6}.counter-moves>span{display:flex;align-items:center;flex-wrap:wrap;gap:6px;overflow-wrap:anywhere}.counter-moves small{font-size:10px;color:#75849d}.legacy-tag{font-size:10px;font-weight:500;padding:2px 6px;border-radius:5px;background:#fff0da;color:#9d6b17;white-space:nowrap}.counter-value{flex:0 0 66px;text-align:right}.counter-value strong{display:block;font-size:20px;color:#203951}.counter-value small{display:block;font-size:10px;color:#75849d}.counter-rank{font-size:18px;font-weight:700}.counter-method{margin-top:22px;font-size:13px;color:#647792}.counter-condition{padding:8px 12px;background:#edf4f1;border-radius:8px;font-size:12px;color:#35776c}.counter-role>.sectionhead{margin:10px 0 16px}.counter-alternative{font-size:12px;margin-top:8px;color:#39796e}.counter-grid:not(.counter-grid-single){grid-template-columns:repeat(3,minmax(0,1fr))}.counter-grid:not(.counter-grid-single) .counter-row{flex-wrap:wrap}.counter-grid:not(.counter-grid-single) .counter-info{flex-basis:calc(100% - 96px)}.counter-grid:not(.counter-grid-single) .counter-value{margin-left:auto}@media(max-width:1080px){.counter-grid:not(.counter-grid-single){grid-template-columns:1fr}.counter-grid:not(.counter-grid-single) .counter-row{flex-wrap:nowrap}.counter-grid:not(.counter-grid-single) .counter-info{flex-basis:auto}}@media(max-width:600px){.boss-search-head h2{font-size:18px}.counter-row{padding:12px;gap:8px}.counter-portrait{width:40px;height:40px}.counter-value{flex-basis:48px}.counter-value strong{font-size:17px}.counter-name>a{font-size:15px}.counter-condition{display:none}.counter-results .sectionhead{align-items:flex-start}.counter-moves{gap:5px}.counter-moves>span{flex-basis:100%}.boss-option{padding:10px 12px}}
.nonlegacy-combo{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:12px;padding:10px 12px;background:#edf7f2;border-radius:10px;font-size:13px}.nonlegacy-combo>b{color:#28765c;font-size:11px}.nonlegacy-combo>small{color:#6d7f90;font-size:11px}

.trait-boss-links{margin-top:24px;padding-top:20px;border-top:1px solid #e2e8ed}.trait-boss-links h3{margin:0 0 12px}.trait-boss-links .matchup-chips{gap:10px}

@media(max-width:700px){.topbar nav{grid-template-columns:repeat(5,max-content);gap:5px;justify-content:space-between;overflow-x:auto;overscroll-behavior-x:contain}}

.battle-form-badges{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.battle-form-badge{display:inline-flex;align-items:center;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700;line-height:1.3;background:#fcecf2;color:#a13e64}.battle-form-badge.gigantamax{background:#f0eafa;color:#7441a4}.battle-form-badge.mega{background:#e7f4f2;color:#26776e}.poke-tile .battle-form-badges{justify-content:center;margin:10px 0 0}.counter-value{min-width:66px}

.special-battle-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}.special-battle-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:18px 8px;border:1px solid #e2e7ef;border-radius:14px;background:#f6f8fb}.special-battle-card strong{font-size:15px;white-space:nowrap}.special-battle-symbol{font-size:28px;line-height:1}.special-battle-status{font-size:12px;line-height:1.4;font-weight:600}.special-battle-card.available.dynamax{color:#a13e64;background:#fff0f5;border-color:#f3c3d5}.special-battle-card.available.gigantamax{color:#7441a4;background:#f4edfc;border-color:#d9c3ef}.special-battle-card.available.mega{color:#26776e;background:#eaf7f3;border-color:#b9dfd4}.special-battle-card.uncertain{color:#7a8799}.special-battle-card.uncertain .special-battle-symbol{color:#aeb8c6}@media(max-width:450px){.special-battle-cards{gap:6px}.special-battle-card{padding:14px 5px}.special-battle-card strong{font-size:13px}.special-battle-status{font-size:11px}}

.usage-members{display:grid;gap:18px;margin-top:22px}.usage-member{margin:0;border:1px solid #dfe6ef;border-radius:14px;overflow:hidden;background:#fff}.usage-member-head{display:flex;align-items:center;gap:10px;padding:13px 15px;background:#f1f4f9;border-bottom:1px solid #dfe6ef}.usage-member-head h3{margin:0;font-size:16px;color:#263b55}.usage-member-head h3 a{text-decoration:none}.usage-member-head>small{margin-left:auto;color:#8895a7;font-size:11px}.usage-stage{font-size:10px;font-weight:700;padding:4px 7px;border-radius:5px;background:#e0e6f0;color:#59708d;white-space:nowrap}.usage-member-self .usage-member-head{background:#eaf5f1}.usage-member-self .usage-stage{background:#d2e9e1;color:#2f7967}.usage-raid-block,.usage-pvp-block{padding:14px 15px}.usage-raid-block{background:#fffaf5;border-bottom:1px solid #f1e8dd}.usage-pvp-block{background:#f8faff}.usage-category-label{display:block;font-size:10px;font-weight:700;letter-spacing:.3px;color:#a7773c;margin-bottom:8px}.usage-pvp-block>.usage-category-label{color:#5877b0}.usage-member .usage-line{border:0;padding:3px 0;align-items:center}.usage-member .usage-line>strong{font-size:13px}.usage-ranks{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.usage-rank-chip{display:inline-flex;gap:6px;align-items:center;background:#edf1f5;color:#42546c;padding:5px 8px;border:1px solid #dce4ed;border-radius:7px;line-height:1.3}.usage-rank-chip small{font-size:10px}.usage-rank-chip b{font-size:15px;font-variant-numeric:tabular-nums}.usage-rank-chip em{font-size:10px;font-style:normal;margin-left:1px}.usage-rank-chip.shadow{background:#f0eafa;color:#7948a0;border-color:#e0d1ef}.usage-rank-chip.mega{background:#e5f4ed;color:#267863;border-color:#c8e5d8}.usage-leagues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.usage-leagues .usage-line{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:10px!important;border:1px solid #e0e7f3!important;border-radius:9px;background:#fff}.usage-leagues .usage-ranks{justify-content:flex-start}.usage-unranked{font-size:12px;color:#8b98aa}.usage-member .usage-details{margin-top:8px}.usage-member .usage-details summary{font-size:12px;color:#967047}.usage-member .usage-details .usage-line{margin-top:8px}.usage-max-link{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;background:#f5edf9;color:#805292;font-size:12px;line-height:1.5;margin-top:12px}@media(max-width:450px){.usage-raid-block,.usage-pvp-block{padding:12px}.usage-member-head{padding:12px;gap:7px}.usage-member-head h3{font-size:14px}.usage-leagues{gap:5px}.usage-leagues .usage-line{padding:8px 6px!important}.usage-rank-chip{padding:4px 6px;gap:4px}.usage-rank-chip b{font-size:13px}.usage-member .usage-raid{flex-wrap:wrap}.usage-member .usage-raid .usage-ranks{justify-content:flex-start}}

.usage-max-block{padding:14px 15px;background:#fff4fa;border-bottom:1px solid #efdaea}.usage-max-block>.usage-category-label{color:#a4487d}.usage-rank-chip.dynamax{background:#fce6ef;color:#a13e64;border-color:#f0c6d7}.usage-rank-chip.gigantamax{background:#f1e5fb;color:#7441a4;border-color:#ddc5ef}.usage-max-note{font-size:10px;line-height:1.5;color:#95728b;margin:8px 0 0}.usage-max-block .usage-details summary{color:#a4487d}

.max-eligibility-note{padding:18px 22px;background:#f8edf5;border:1px solid #ead5e4;border-radius:13px;margin-bottom:22px;color:#854669}.max-eligibility-note strong{font-size:15px}.max-eligibility-note p{font-size:13px;margin:6px 0 0}.max-poke-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.max-poke-tile .battle-form-badge{margin-top:8px}.max-row-form{display:flex;align-items:center;gap:6px;margin-top:6px}.max-row-form small{color:var(--muted);font-size:11px}.max-ranking-table td:last-child{font-variant-numeric:tabular-nums}.max-menu-panel .sourceline .sourceline{margin:0 0 8px}@media(max-width:700px){.topbar nav{grid-template-columns:repeat(6,max-content);justify-content:start;gap:10px}.topbar nav a{font-size:12px;padding:10px 6px}.max-eligibility-note{padding:15px}.max-poke-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.max-menu-panel .toolbar .field{flex:1}.max-ranking-table{font-size:12px}}

.max-pokemon-cell img,.max-pokemon-cell .image-fallback{width:60px;height:60px;object-fit:contain}.max-pokemon-cell{gap:14px;min-width:190px}@media(max-width:600px){.max-pokemon-cell{gap:8px;min-width:155px}.max-pokemon-cell img,.max-pokemon-cell .image-fallback{width:44px;height:44px}}

#dex-grid .poke-tile{display:flex;flex-direction:column;align-items:stretch}#dex-grid .poke-tile>img{flex-shrink:0}#dex-grid .poke-tile>strong{margin:12px 0 8px}.dex-type-row{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:30px;margin-bottom:14px}.dex-type-row .type{margin:0;white-space:nowrap}.dex-battle-footer{border-top:1px solid #e7ecf3;padding-top:12px;margin-top:auto;min-height:92px}.dex-battle-label{display:block;font-size:10px!important;color:#8996a9!important;letter-spacing:.2px;margin-bottom:7px}.dex-battle-footer .battle-form-badges{justify-content:flex-start;margin:0;gap:5px}.dex-battle-footer .battle-form-badge{border:1px solid #efcddc;background:#fff7fa;color:#a13e64;font-size:10px;padding:4px 6px;border-radius:5px;font-weight:600}.dex-battle-footer .battle-form-badge.gigantamax{border-color:#dfd1f0;background:#faf7fe;color:#7441a4}.dex-battle-footer .battle-form-badge.mega{border-color:#cae5df;background:#f5fbf9;color:#26776e}.dex-battle-footer:has(.battle-form-badges:empty){display:none}@media(max-width:700px){.dex-type-row{gap:4px;margin-bottom:10px}.dex-type-row .type{font-size:10px;padding:4px 6px}.dex-battle-footer{min-height:110px;padding-top:10px}.dex-battle-footer .battle-form-badge{font-size:9px;padding:4px 5px}}

/* Monthly calendar: compact day previews and a full selected-day agenda. */
.calendar-panel{padding:24px}.calendar-toolbar,.calendar-navigation{display:flex;align-items:center;gap:16px}.calendar-toolbar{justify-content:space-between;margin-bottom:18px}.calendar-navigation h2{margin:0;font-size:24px}.calendar-navigation .btn{font-size:24px;line-height:1;padding:6px 12px}.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:18px;font-size:12px;color:var(--muted)}.calendar-legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:3px;background:#4a7fa8;margin-right:6px}.calendar-legend .raid:before{background:#dd8650}.calendar-legend .max:before{background:#b259ad}.calendar-legend .community:before{background:#3b9b7a}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:10px 0;text-align:center;font-size:13px;color:var(--muted)}.calendar-weekdays span:first-child{color:#c55a50}.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line)}.calendar-day,.calendar-blank{min-height:135px;background:white;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 7px;min-width:0;text-align:left}.calendar-day{display:flex;flex-direction:column;gap:8px;color:var(--navy)}.calendar-blank{background:#f8fafc}.calendar-day:hover{background:#f3f7ff}.calendar-day.selected{background:#eef4ff;box-shadow:inset 0 0 0 2px #597abe}.calendar-number{display:grid;place-items:center;width:25px;height:25px;font-size:13px;font-weight:700;border-radius:50%}.calendar-day.is-today .calendar-number{background:var(--navy);color:white}.calendar-events{display:grid;gap:4px;width:100%;min-width:0}.calendar-chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:3px solid #4a7fa8;background:#eaf3fb;border-radius:3px;padding:4px;font-size:11px;line-height:1.3;color:#27597c}.calendar-chip.raid{border-color:#dd8650;background:#fff0e7;color:#92522c}.calendar-chip.max{border-color:#b259ad;background:#f8eafa;color:#884485}.calendar-chip.community{border-color:#3b9b7a;background:#e8f5ef;color:#246a51}.calendar-more{font-size:11px;color:var(--muted);padding-left:5px}.calendar-note{margin:16px 0 0}#calendar-details .eventrow{scroll-margin-top:20px}
@media(max-width:700px){.topbar nav{grid-template-columns:repeat(7,max-content)}.calendar-panel{padding:12px}.calendar-navigation{gap:10px}.calendar-navigation h2{font-size:20px}.calendar-legend{gap:10px;font-size:10px}.calendar-day,.calendar-blank{min-height:112px;padding:6px 3px}.calendar-day{gap:5px}.calendar-chip{font-size:9px;padding:3px 2px;border-left-width:2px}.calendar-number{font-size:12px;width:22px;height:22px}.calendar-more{font-size:10px}.calendar-note{font-size:11px}}
/* Continuous date spans: stable lanes across week boundaries. */
.calendar-grid{display:block;border:0}.calendar-week{position:relative;min-width:0}.calendar-week-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line)}.calendar-week:last-child{border-bottom:1px solid var(--line)}.calendar-week .calendar-day,.calendar-week .calendar-blank{height:calc(48px + var(--calendar-lanes)*27px + 25px);min-height:0;border-bottom:0;position:relative;padding:8px;display:block}.calendar-week .calendar-more{position:absolute;bottom:6px;left:9px}.calendar-week-bars{position:absolute;inset:48px 0 auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:27px;pointer-events:none}.calendar-bar{pointer-events:auto;border:1px solid #b8d0e5;border-left:3px solid #4a7fa8;background:#eaf3fb;color:#27597c;min-width:0;height:23px;margin:0 3px;padding:2px 7px;text-align:left;border-radius:5px;font-size:11px;z-index:1}.calendar-bar span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-bar:hover{filter:brightness(.96);box-shadow:0 1px 5px #1d354222}.calendar-bar.raid{background:#fff0e7;border-color:#ecc8ac;border-left-color:#dd8650;color:#92522c}.calendar-bar.max{background:#f8eafa;border-color:#dec1e1;border-left-color:#b259ad;color:#884485}.calendar-bar.community{background:#e8f5ef;border-color:#b9dfd0;border-left-color:#3b9b7a;color:#246a51}.calendar-bar.continues-before{border-radius:0 5px 5px 0;border-left-width:1px;margin-left:0}.calendar-bar.continues-after{border-radius:5px 0 0 5px;margin-right:0}.calendar-bar.continues-before.continues-after{border-radius:0}.calendar-expand{margin:0 0 12px}.calendar-agenda-item{padding:18px 0;border-top:1px solid var(--line)}.calendar-agenda-item:first-of-type{border-top:0}.calendar-agenda-item.focused{background:#f0f5ff;border-radius:8px;padding:16px;outline:2px solid #93afd7}.calendar-agenda-item .eventrow{padding:0}.calendar-agenda-item+ .calendar-agenda-item{margin-top:2px}@media(max-width:700px){.calendar-week .calendar-day,.calendar-week .calendar-blank{padding:6px 3px}.calendar-bar{font-size:10px;padding:3px 4px;margin-left:1px;margin-right:1px}.calendar-week .calendar-more{left:3px;font-size:9px}.calendar-panel{padding:10px}.calendar-week-bars{top:42px}.calendar-week .calendar-day,.calendar-week .calendar-blank{height:calc(42px + var(--calendar-lanes)*27px + 24px)}}
.calendar-week .calendar-day{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.calendar-week .calendar-number{flex-shrink:0}
/* PvP cards wrap by available panel width; each rank stays on one line. */
.usage-leagues{grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr))}.usage-leagues .usage-line{min-width:0}.usage-leagues .usage-rank-chip{white-space:nowrap;flex-shrink:0}.usage-leagues .usage-rank-chip small,.usage-leagues .usage-rank-chip b{white-space:nowrap;flex-shrink:0}
.calendar-legend{gap:8px}.calendar-legend button{display:inline-flex;align-items:center;border:1px solid #c5d4e5;background:#edf4fb;color:#27597c;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:600}.calendar-legend button:before{content:'';width:8px;height:8px;border-radius:3px;background:#4a7fa8;margin-right:6px}.calendar-legend button.raid{background:#fff0e7;border-color:#ecc8ac;color:#92522c}.calendar-legend button.max{background:#f8eafa;border-color:#dec1e1;color:#884485}.calendar-legend button.community{background:#e8f5ef;border-color:#b9dfd0;color:#246a51}.calendar-legend button.is-off{background:#f4f5f7;border-color:#dce1e8;color:#929baa;font-weight:400}.calendar-legend button.is-off:before{background:transparent;border:1px solid #929baa}.calendar-legend button:hover{filter:brightness(.96)}@media(max-width:700px){.calendar-legend button{font-size:10px;padding:6px 8px}}
/* Keep every desktop navigation item reachable in short windows. */
@media(min-width:701px){.topbar{overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#647898 #122039}.topbar>.brand,.topbar>nav,.topbar>.topbar-note{flex-shrink:0}.topbar::-webkit-scrollbar{width:7px}.topbar::-webkit-scrollbar-thumb{background:#647898;border-radius:6px}.topbar::-webkit-scrollbar-track{background:#122039}}
/* Long navigation labels stay intact across Korean font metrics. */
@media(min-width:701px){.topbar nav a{white-space:nowrap}.topbar nav a>span{flex:0 0 24px}.topbar nav a[data-page="max"]{font-size:13px;letter-spacing:-.35px;gap:7px;padding-left:10px;padding-right:10px}}

/* Horizontal site navigation; the workspace now uses the full window width. */
.shell{display:flex;flex-direction:column}.topbar{position:sticky;inset:auto;top:0;width:100%;display:flex;flex-direction:row;align-items:center;gap:24px;padding:12px 28px;background:var(--navy);overflow:visible;box-shadow:0 2px 10px #12203915;z-index:5}.topbar>.brand{flex:0 0 auto;font-size:22px!important;letter-spacing:-.8px}.topbar .brandmark{width:30px;height:34px;font-size:24px}.topbar .brand small{display:none}.topbar nav{display:flex;flex:1 1 auto;min-width:0;gap:4px;margin:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;justify-content:flex-end}.topbar nav a,.topbar nav a[data-page="max"]{display:flex;flex:0 0 auto;align-items:center;justify-content:center;padding:12px 10px;font-size:13px;letter-spacing:0;line-height:1.4;min-height:44px;white-space:nowrap;border-radius:7px;gap:0}.topbar nav a>span{display:none}.topbar nav a.active{background:#293b59;box-shadow:inset 0 -3px #ff6856}.topbar-note{display:none}.workspace{margin:0;width:100%;min-width:0}.topbar nav::-webkit-scrollbar{display:none;width:0;height:0}
@media(max-width:1100px){.topbar{gap:12px;padding:12px 24px}.topbar nav a,.topbar nav a[data-page="max"]{padding:10px 12px}.workspace{margin:0}}
@media(max-width:700px){.topbar{gap:8px;padding:10px 16px 6px;flex-wrap:wrap}.topbar nav{flex-basis:100%;justify-content:flex-start}.topbar>.brand{font-size:20px!important}.topbar .brandmark{width:26px;height:28px;font-size:22px}.topbar nav a,.topbar nav a[data-page="max"]{font-size:12px;padding:9px 10px;min-height:42px}.workspace{margin:0}}

/* Compact today cards retain CP, matchups and schedule in a smaller footprint. */
#raid-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
#raid-cards .raid-card{padding:16px;border-radius:14px}
#raid-cards .sectionhead{margin-bottom:10px;gap:6px}
#raid-cards .sectionhead .meta{font-size:12px}
#raid-cards .raid-badge{padding:5px 8px;font-size:11px;gap:2px}
#raid-cards .raid-stars{font-size:10px;letter-spacing:1px}
.raid-identity{display:flex;align-items:center;gap:12px;min-height:84px}
.raid-identity>div{min-width:0}
#raid-cards .poke-img{width:80px;height:80px;margin:0;object-fit:contain}
#raid-cards h3{font-size:16px;margin:0 0 6px;line-height:1.4;overflow-wrap:anywhere}
#raid-cards .type{font-size:11px;padding:3px 7px;margin:2px 3px 2px 0}
#raid-cards .cpbox{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding-top:10px}
#raid-cards .cpbox small{font-size:11px}
#raid-cards .cpbox strong{font-size:14px;margin-top:3px;white-space:nowrap}
#raid-cards .weakness{margin-top:9px;font-size:12px;line-height:1.65}
#raid-cards .raid-period{margin-top:10px}
#raid-cards .raid-period .meta{font-size:11px;margin:5px 0 0;line-height:1.5}
#raid-cards .raid-period .badge{font-size:11px;padding:3px 7px}
#raid-cards .raid-card>p{margin:10px 0 0}
#raid-cards .btn.small{font-size:12px;padding:7px 9px}
@media(min-width:1200px){#raid-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){#raid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#raid-cards{grid-template-columns:1fr;gap:12px}#raid-cards .raid-card{padding:14px}#raid-cards .cpbox strong{font-size:16px}.raid-identity{min-height:76px}#raid-cards .poke-img{width:72px;height:72px}}

/* Reserve equal card height and anchor the counter action to the bottom right. */
#raid-cards .raid-card{height:410px;display:flex;flex-direction:column}
#raid-cards .raid-card>.sectionhead,#raid-cards .raid-identity,#raid-cards .cpbox,#raid-cards .weakness,#raid-cards .raid-period{flex-shrink:0}
#raid-cards .raid-card>p{margin-top:auto;padding-top:12px;text-align:right}
@media(max-width:560px){#raid-cards .raid-card{height:400px}}

.rotation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rotation-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.rotation-card .poke-img{width:64px;height:64px;object-fit:contain}.rotation-card h3{font-size:15px;margin:6px 0}.rotation-card .link{display:block;font-size:12px;margin-top:5px}.max-rotation summary{font-size:17px;font-weight:700;cursor:pointer}.max-rotation>p{margin-top:15px}.max-special{display:flex;align-items:center;gap:16px;padding:12px 0}.max-special>div{flex:1;min-width:0}.max-special .poke-img{width:72px;height:72px;object-fit:contain}.max-special .link{font-size:12px}.calendar-today{margin-bottom:24px}@media(max-width:1000px){.rotation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.rotation-grid{grid-template-columns:1fr}.max-special{align-items:flex-start}.today-max>.sectionhead{flex-wrap:wrap}.max-rotation summary .meta{display:block;margin-top:5px}}

.max-special-cp{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0;padding:10px 12px;background:#f5f7fc;border-radius:9px}.max-special-cp>span:first-child{display:flex;align-items:center;gap:10px}.max-special-cp small{color:var(--muted);font-size:12px}.max-special-cp strong{font-size:17px;font-variant-numeric:tabular-nums}

/* Keep schedule status and the counter action together in a compact footer. */
#raid-cards .raid-card{height:350px}
#raid-cards .raid-footer{margin-top:auto;padding-top:10px;flex-shrink:0}
.raid-status-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.raid-status-row>p{margin:0}
#raid-cards .raid-status-row .btn{font-size:11px;padding:6px 8px;white-space:nowrap}
#raid-cards .raid-footer>.meta{font-size:11px;margin:7px 0 0;line-height:1.5}
@media(max-width:560px){#raid-cards .raid-card{height:340px}}

.detail-weather{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0 22px;padding:12px 14px;background:#f4f7fc;border-radius:12px}.detail-weather-label{font-size:13px;font-weight:700;color:#61758e}.detail-weather>div{display:flex;flex-wrap:wrap;gap:8px}.weather-chip{font-size:14px;font-weight:700;color:#725618;background:#fff2ce;border:1px solid #efdfa7;border-radius:9px;padding:6px 12px}

.detail-search{margin-bottom:28px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:14px}.detail-search .toolbar{margin-bottom:0}.detail-search .field{flex:1;min-width:160px}.detail-search-matches{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:14px}.detail-search-matches a{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f4f7fb;border-radius:9px;min-width:0}.detail-search-matches a:hover{background:#e9effa}.detail-search-matches img{width:40px;height:40px;object-fit:contain}.detail-search-matches strong{font-size:14px}.detail-search-matches small{margin-left:auto;color:var(--muted)}.detail-search-more{display:inline-block;margin-top:14px}#detail-search-results .meta{margin-top:12px}@media(max-width:700px){.detail-search{padding:14px}.detail-search-matches{grid-template-columns:1fr}}

.error{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.error .btn{flex-shrink:0}

.ranking-metric{display:grid;gap:3px;white-space:nowrap}.ranking-metric strong{font-size:18px;color:var(--navy);font-variant-numeric:tabular-nums}.ranking-metric small{font-size:12px;color:var(--muted)}
@media(max-width:700px){
#rank-results>.table-wrap,#max-results>.table-wrap{padding:0;overflow:visible;border:0;background:transparent}
.ranking-responsive,.ranking-responsive tbody{display:block;width:100%}.ranking-responsive thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.ranking-responsive tbody tr{display:grid;grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"rank pokemon value" ". type value" ". moves moves" ". secondary secondary";gap:5px 10px;padding:16px 12px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:white;align-items:center}
.ranking-responsive td{display:block;min-width:0;padding:0!important;border:0!important;overflow-wrap:anywhere}.ranking-responsive .ranking-position{grid-area:rank;align-self:start;font-size:22px}.ranking-responsive .ranking-pokemon{grid-area:pokemon}.ranking-responsive .ranking-type{grid-area:type;font-size:12px;color:var(--muted)}.ranking-responsive .ranking-moves{grid-area:moves;font-size:13px;line-height:1.7;margin-top:5px}.ranking-responsive .ranking-value{grid-area:value;text-align:right;align-self:start}.ranking-responsive .ranking-secondary{grid-area:secondary;font-size:11px}.ranking-responsive .pokemon-cell{min-width:0;gap:8px}.ranking-responsive .pokemon-cell img{width:38px;height:38px}.ranking-responsive .pokemon-cell a{min-width:0}.ranking-responsive .ranking-metric strong{font-size:20px}.ranking-responsive .ranking-metric small{font-size:11px}.ranking-responsive .max-row-form{flex-wrap:wrap;gap:4px}.ranking-responsive .battle-form-badge{font-size:10px;padding:3px 6px}.max-menu-panel{padding:14px}.ranking-responsive .pokemon-cell span,.ranking-responsive .pokemon-cell>div{min-width:0;font-size:14px}
}

@media(max-width:700px){
.ranking-responsive tbody tr{grid-template-columns:26px minmax(0,1fr) auto;grid-template-areas:"rank pokemon value" "type moves moves" ". secondary secondary";padding:9px 10px;margin-bottom:6px;gap:2px 8px;border-radius:10px}
.ranking-responsive .ranking-position{font-size:18px;align-self:center}.ranking-responsive .ranking-type{font-size:10px;align-self:start;line-height:1.5}.ranking-responsive .ranking-moves{margin-top:0;font-size:12px;line-height:1.5}.ranking-responsive .ranking-moves small{font-size:12px}.ranking-responsive .ranking-secondary{font-size:10px;line-height:1.4}.ranking-responsive .pokemon-cell{gap:5px;line-height:1.4}.ranking-responsive .pokemon-cell img{width:28px;height:28px}.ranking-responsive .pokemon-cell span,.ranking-responsive .pokemon-cell>div{font-size:13px}.ranking-responsive .ranking-metric strong{font-size:18px}.ranking-responsive .ranking-metric small{font-size:10px}.ranking-responsive .max-row-form{display:inline-flex;margin:0 0 0 5px;gap:3px}.ranking-responsive .battle-form-badge{font-size:9px;padding:2px 4px}.ranking-responsive .ranking-value{align-self:center}.ranking-responsive .ranking-pokemon .max-pokemon-cell>div{line-height:1.5}
}

/* Keep the raid layout in place during day switches. */
.route-progress{position:sticky;top:8px;z-index:3;display:flex;align-items:center;gap:9px;width:fit-content;margin:0 0 14px;padding:9px 14px;border:1px solid #dce3ee;border-radius:24px;background:#fff;box-shadow:0 3px 12px #1220390c;color:var(--muted);font-size:13px}.route-progress-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);animation:route-pulse 1s ease-in-out infinite}.is-updating #raid-cards,.is-updating .today-max{opacity:.6;transition:opacity .15s}.page-skeleton .skeleton{background:linear-gradient(100deg,#e9edf4 30%,#f6f8fb 50%,#e9edf4 70%);background-size:250% 100%;animation:skeleton-shimmer 1.6s ease-in-out infinite;border-radius:8px}.skeleton-title{height:32px;width:180px;margin:18px 0 24px}.skeleton-tabs{height:36px;width:240px;max-width:100%;margin-bottom:24px}.skeleton-card{min-height:300px;padding:24px}.skeleton-picture{height:128px;width:128px;margin:15px auto 30px}.skeleton-line{height:18px;margin:14px 0}.skeleton-line.short{width:65%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes route-pulse{50%{opacity:.3}}@keyframes skeleton-shimmer{to{background-position:-150% 0}}@media(prefers-reduced-motion:reduce){.route-progress-dot,.page-skeleton .skeleton{animation:none}.is-updating #raid-cards,.is-updating .today-max{transition:none}}

/* Keep raid day controls just below the responsive site header. */
.raid-day-tabs{position:sticky;top:var(--site-header-height,110px);z-index:4;padding:10px 0;background:#f0f3f8;border-bottom:1px solid var(--line)}
.route-progress{top:calc(var(--site-header-height,110px) + 68px)}

/* Date details live in the top layer, leaving the calendar page height unchanged. */
html{scrollbar-gutter:stable}html.calendar-modal-open{overflow:hidden}
.calendar-modal{width:min(820px,calc(100% - 32px));max-width:none;max-height:85vh;max-height:85dvh;padding:0;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--navy);box-shadow:0 20px 70px #12203940;overflow:hidden}
.calendar-modal[open]{display:flex;flex-direction:column}.calendar-modal::backdrop{background:#12203980}
.calendar-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:20px 24px;border-bottom:1px solid var(--line);background:#fff}.calendar-modal-header h2{margin:0 0 4px}.calendar-modal-header p{margin:0}.calendar-modal-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#f4f7fb;color:var(--navy);font-size:26px;line-height:1}.calendar-modal-close:hover{background:#e9eff8}.calendar-modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:8px 24px 24px}.calendar-modal-body .calendar-agenda-item:first-child{border-top:0}.calendar-modal-body .calendar-agenda-item.focused{margin-top:12px}.calendar-modal-body>p{margin-top:16px}
@media(max-width:700px){.calendar-modal{width:calc(100% - 24px);border-radius:14px;max-height:88vh;max-height:88dvh}.calendar-modal-header{padding:14px 16px}.calendar-modal-header h2{font-size:20px}.calendar-modal-body{padding:4px 16px 16px}.calendar-modal-body .event-info{min-width:0}.calendar-modal-body .event-heading h3{overflow-wrap:anywhere}.calendar-modal-body .event-date{width:100%}}

.calendar-event-open{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 0;border:0;background:transparent;color:var(--navy);text-align:left;border-radius:8px}.calendar-event-open:hover{background:#f4f7fb}.calendar-event-summary{display:grid;gap:8px;min-width:0}.calendar-event-summary strong{font-size:16px;line-height:1.55;overflow-wrap:anywhere}.calendar-event-arrow{font-size:12px;color:var(--blue);white-space:nowrap}.calendar-modal-back{padding:0 0 10px;border:0;background:none;color:var(--blue);font-size:13px}.calendar-modal-header>div{min-width:0}.calendar-modal-header h2{overflow-wrap:anywhere;line-height:1.4}.calendar-detail-banner{display:block;width:100%;height:180px;object-fit:cover;border-radius:10px;margin:16px 0}.calendar-detail-kind{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.calendar-detail-intro{font-weight:600}.calendar-detail-period{display:grid;gap:10px;padding:16px;background:#f4f7fb;border-radius:10px;margin:0 0 8px}.calendar-detail-period>div{display:flex;gap:16px}.calendar-detail-period dt{color:var(--muted);width:32px;flex-shrink:0}.calendar-detail-period dd{margin:0;font-weight:600}.calendar-detail-section{padding:20px 0;border-top:1px solid var(--line)}.calendar-detail-section h3{font-size:17px}.calendar-detail-section ul{padding-left:22px;line-height:1.8;margin-bottom:0}.calendar-detail-pokemon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-detail-pokemon-item{display:flex;align-items:center;gap:12px;background:#f7f9fc;border-radius:10px;padding:12px}.calendar-detail-pokemon-item img{width:64px;height:64px;object-fit:contain}.calendar-detail-pokemon-item>div{display:grid;gap:6px;min-width:0}.calendar-detail-pokemon-item strong{overflow-wrap:anywhere}.calendar-detail-links,.calendar-promo-codes{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.calendar-promo-codes code{padding:10px;background:#f4f7fb;border-radius:8px;overflow-wrap:anywhere}.calendar-detail-empty{padding:12px 0}@media(max-width:700px){.calendar-detail-pokemon{grid-template-columns:1fr}.calendar-detail-banner{height:140px}.calendar-event-arrow{font-size:11px}.calendar-event-summary strong{font-size:15px}.calendar-modal-header h2{font-size:18px}.calendar-modal-header{align-items:flex-start}}

/* Preserve the source image and use desktop width for the event information. */
.calendar-detail-media{min-width:0}.calendar-detail-info{min-width:0}.calendar-detail-banner{height:auto;max-height:220px;object-fit:contain;background:#f4f7fb}.calendar-event-detail .calendar-detail-kind{margin-top:16px}
@media(min-width:701px){.calendar-modal{width:min(960px,calc(100% - 48px))}.calendar-event-detail.has-media{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:start;padding-top:16px}.calendar-event-detail.has-media .calendar-detail-banner{margin:0;max-height:300px}.calendar-event-detail.has-media .calendar-detail-kind{margin-top:0}.calendar-event-detail .calendar-detail-pokemon{grid-template-columns:1fr}.calendar-modal-header{padding:16px 24px}.calendar-detail-section{padding:16px 0}}
@media(max-width:700px){.calendar-detail-banner{height:auto;max-height:180px;object-fit:contain}}

.daily-highlights{margin:20px 0 32px}.daily-highlights>.sectionhead{align-items:flex-end;gap:12px}.daily-highlights h2{margin:6px 0 0}.daily-highlights>.sectionhead>.link{font-size:13px;white-space:nowrap}.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.benefit-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:20px;border:1px solid #e2dbf4;border-top:3px solid #936bc7;border-radius:16px;background:#fff;color:var(--navy);box-shadow:0 4px 12px #12203905}.benefit-card:hover{border-color:#a5b6d0;box-shadow:0 5px 18px #12203910}.benefit-raid{border-top-color:#d99a5c;background:linear-gradient(145deg,#fff8ed,#fff 70%)}.benefit-spotlight{border-top-color:#8d6bc7;background:linear-gradient(145deg,#f5eeff,#fff 70%)}.benefit-event{border-top-color:#4c9a83;background:linear-gradient(145deg,#eef9f2,#fff 70%)}.benefit-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.benefit-icon{font-size:24px;line-height:1}.benefit-primary{font-size:21px;line-height:1.45;letter-spacing:-.6px;margin-bottom:14px;overflow-wrap:anywhere}.benefit-event-name{font-size:14px;font-weight:600;line-height:1.6;margin-top:auto}.benefit-time{font-size:12px;color:var(--muted);line-height:1.6;margin-top:5px}.benefit-condition{font-size:12px;line-height:1.6;color:#836414;margin-bottom:14px}.benefit-bottom{display:block;color:var(--blue);font-size:12px;margin-top:16px;padding-top:12px;border-top:1px solid #dce3ee}.home-raid-heading{margin-top:30px}.home-raid-heading h2{margin:0}.home-raid-heading>.link{font-size:13px}@media(max-width:560px){.benefit-grid{grid-template-columns:1fr;gap:12px}.benefit-card{padding:16px}.benefit-primary{font-size:20px}.daily-highlights{margin-bottom:26px}}
@media(min-width:701px){main[data-page="today"]{padding-top:24px}main[data-page="today"]>.pagehead{margin-bottom:16px}}
/* Dense mobile overview: keep the benefit readable and tier filters on one row. */
@media(max-width:700px){
 main[data-page="today"]{padding-top:18px}
 main[data-page="today"]>.pagehead{margin-bottom:14px}
 main[data-page="today"]>.pagehead p{margin-bottom:0}
 .raid-day-tabs{gap:6px;padding:6px 0;margin-bottom:10px}
 .raid-day-tabs .pill{padding:7px 12px;font-size:12px;min-height:32px;line-height:1.35}
 .raid-day-tabs .btn.small{padding:7px 9px;font-size:12px;min-height:32px;line-height:1.35}
 .daily-highlights{margin:14px 0 20px}
 .daily-highlights>.sectionhead{margin-bottom:10px}
 .daily-highlights h2{font-size:18px;margin-top:4px}
 .daily-highlights .eyebrow{font-size:10px;letter-spacing:1px}
 .benefit-grid{gap:10px;grid-template-columns:1fr}
 .benefit-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:6px;padding:12px;border-radius:12px}
 .benefit-top{grid-column:2;grid-row:1;align-self:start;margin:0;gap:0}
 .benefit-icon{display:none}
 .benefit-primary{grid-column:1;grid-row:1;font-size:16px;line-height:1.4;letter-spacing:-.35px;margin:0}
 .benefit-card .schedule-status{font-size:10px;padding:3px 7px;white-space:nowrap}
 .benefit-condition{grid-column:1/-1;margin:0;font-size:11px;line-height:1.45}
 .benefit-event-name{grid-column:1/-1;margin:0;font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .benefit-time{grid-column:1/-1;font-size:11px;line-height:1.4;margin:0}
 .benefit-bottom{grid-column:1/-1;font-size:11px;line-height:1.4;margin:0;padding-top:6px}
 .home-raid-heading{margin-top:20px;margin-bottom:10px}
 .home-raid-heading h2{font-size:18px}
 #raid-filters{flex-wrap:nowrap;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;margin-bottom:12px;padding:2px 1px 6px;scrollbar-width:thin}
 #raid-filters .pill{flex:0 0 auto;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.4;white-space:nowrap}
}

/* Desktop benefit cards keep the same width regardless of the item count. */
@media(min-width:701px){.benefit-grid{grid-template-columns:repeat(auto-fill,minmax(0,360px));justify-content:start}.benefit-card{width:100%;max-width:360px}}

/* A single heading line and dated day tabs avoid repeating the same context. */
.home-heading{display:flex;align-items:baseline;gap:12px;margin:0 0 8px;white-space:nowrap}.home-heading h1{font-size:26px;line-height:1.3;margin:0;flex-shrink:0}.home-heading p{font-size:13px;line-height:1.4;margin:0;color:var(--muted)}
.raid-day-tabs{margin-bottom:8px;padding:6px 0;gap:8px}.raid-day-tabs .pill{display:inline-flex;align-items:center;gap:6px;line-height:1.35;padding:8px 13px}.raid-day-tabs time{font-size:12px;opacity:.8;font-variant-numeric:tabular-nums}.daily-highlights{margin-top:12px}.daily-highlights h2{margin-top:0}
@media(max-width:700px){main[data-page="today"]{padding-top:14px}.home-heading{gap:8px;margin-bottom:6px}.home-heading h1{font-size:21px;letter-spacing:-.7px}.home-heading p{font-size:12px;letter-spacing:-.25px}.raid-day-tabs{gap:6px;margin-bottom:6px;padding:5px 0}.raid-day-tabs .pill{padding:7px 10px;gap:5px;font-size:12px}.raid-day-tabs time{font-size:11px}.daily-highlights{margin-top:10px}}

/* Shared page heading: one compact line, using the site's coral accent. */
.pagehead.home-heading{display:flex;align-items:baseline;gap:12px;margin:0 0 14px;min-width:0}.pagehead.home-heading h1{font-size:26px;line-height:1.3;margin:0;color:var(--accent);flex:0 1 auto;min-width:0;white-space:normal;overflow-wrap:anywhere}.pagehead.home-heading p{font-size:13px;line-height:1.4;margin:0;color:var(--muted);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.pagehead.home-heading{gap:8px;margin-bottom:10px}.pagehead.home-heading h1{font-size:21px;letter-spacing:-.7px}.pagehead.home-heading p{font-size:12px;letter-spacing:-.25px}main[data-page="today"]>.pagehead.home-heading{margin-bottom:6px}}
/* Mobile density across the supporting menus; keep all values and controls. */
@media(max-width:700px){
 main:not([data-page="today"]){padding:14px 16px 24px}
 main:not([data-page="today"]) .panel:not(.calendar-panel){padding:14px;border-radius:12px}
 main:not([data-page="today"]) .section{margin-top:18px}
 main:not([data-page="today"]) .two-col{gap:14px}
 main:not([data-page="today"]) h2{font-size:18px;margin-bottom:12px}
 main:not([data-page="today"]) .pills{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;gap:6px;margin-bottom:12px;padding-bottom:4px;scrollbar-width:thin}
 main:not([data-page="today"]) .pills .pill{flex:0 0 auto;padding:6px 10px;min-height:32px;font-size:12px;line-height:1.4;white-space:nowrap}
 main:not([data-page="today"]) .toolbar{gap:8px;margin-bottom:14px}
 main:not([data-page="today"]) .field{gap:5px;min-width:0}
 main:not([data-page="today"]) .field label{font-size:12px}
 main:not([data-page="today"]) .field input,main:not([data-page="today"]) .field select{min-height:42px;padding:8px;font-size:16px;border-radius:8px}
 main:not([data-page="today"]) .form-stack{gap:12px}
 main:not([data-page="today"]) .loading,main:not([data-page="today"]) .empty,main:not([data-page="today"]) .error{padding:18px;border-radius:10px}
 main:not([data-page="today"]) .pagination{margin-top:14px;gap:12px;font-size:12px}
 main:not([data-page="today"]) .sourceline{margin-top:12px}
 /* Pokedex filters and cards. */
 #dex-search{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
 #dex-search>.field.grow{grid-column:1/3;grid-row:1;min-width:0}
 #dex-search>.field:nth-child(2){grid-column:1;grid-row:2}
 #dex-search>.field:nth-child(3){grid-column:2/4;grid-row:2}
 #dex-search>button{grid-column:3;grid-row:1;min-height:42px;padding:8px 12px;font-size:13px}
 #dex-grid{gap:8px}#dex-grid .poke-tile{padding:10px;border-radius:11px;min-height:0}
 #dex-grid .poke-tile>small{font-size:10px}#dex-grid .poke-tile>img,#dex-grid .poke-tile>.image-fallback{height:64px}
 #dex-grid .poke-tile>strong{margin:6px 0 4px;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
 .dex-type-row{min-height:22px;gap:3px;margin-bottom:6px}.dex-type-row .type{padding:3px 5px;font-size:9px}
 .dex-battle-footer{min-height:0;padding-top:7px}.dex-battle-label{margin-bottom:4px;font-size:9px!important}.dex-battle-footer .battle-form-badges{gap:3px}.dex-battle-footer .battle-form-badge{padding:3px 4px;font-size:9px}
 /* Pokemon detail panels. */
 .detail-search{padding:12px;margin-bottom:14px}.detail-search .toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;margin-bottom:0}.detail-search .field{min-width:0}.detail-search button{min-height:42px;padding:8px 12px;font-size:13px}
 .detail-portrait{padding:12px}.detail-portrait img,.detail-portrait .image-fallback{width:130px;height:130px}.statrow{margin:8px 0;gap:8px;font-size:13px}
 main[data-page="dex"] .two-col .cpbox{grid-template-columns:1fr 1fr;margin-top:10px;padding-top:10px}.special-battle-cards{gap:6px;margin-bottom:12px}.special-battle-card{padding:10px 5px;gap:5px}.special-battle-symbol{font-size:22px}.special-battle-card strong{font-size:12px}.special-battle-status{font-size:10px}
 .usage-members{gap:12px;margin-top:12px}.usage-member-head{padding:10px;gap:6px}.usage-raid-block,.usage-pvp-block,.usage-max-block{padding:10px}.usage-leagues .usage-line{padding:7px 5px!important;gap:6px}.usage-max-link{padding:10px;margin-top:10px}
 /* Ranking filters; preserve the existing compact data rows. */
 main[data-page="rank"] .toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 main[data-page="rank"] .toolbar .field{min-width:0}
 /* Boss selector and recommended Pokemon. */
 .boss-search-head{gap:10px;margin-bottom:12px}.boss-search-head h2{font-size:17px;margin:0!important}.boss-search-head .meta{font-size:11px}.boss-search-input{padding:0 10px;border-radius:10px;gap:8px}.boss-search-input>span{font-size:23px}.boss-search-input input{padding:10px 0;font-size:14px;min-height:42px}
 .boss-kind-filters{margin-top:12px}.boss-list{max-height:220px;gap:7px;margin-top:10px}.boss-option{padding:8px 10px;gap:3px;border-radius:9px;min-height:48px}.boss-option strong{font-size:13px}.boss-option>span{font-size:11px;line-height:1.4}
 .counter-card-list{gap:7px}.counter-row{padding:10px;gap:6px;border-radius:10px}.counter-portrait{width:34px;height:34px}.counter-rank{font-size:15px;min-width:17px}.counter-name{gap:5px}.counter-name>a{font-size:14px}.counter-form{font-size:10px;padding:2px 5px}.counter-moves{margin-top:5px;font-size:12px;line-height:1.45;gap:3px}.counter-value{min-width:52px;flex-basis:52px}.counter-value strong{font-size:16px}.counter-role>.sectionhead{margin:6px 0 10px}.counter-grid{gap:14px}.counter-method{margin-top:14px}
 /* Calculator: Pokemon and form side by side, tighter input groups. */
 #calculator-form{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 #calculator-form>#calc-inputs,#calculator-form>button,#calculator-form>.hint,#calculator-form>.field:nth-child(3){grid-column:1/-1}
 #calculator-form .choice-row{align-self:center!important;padding-bottom:0!important}
 #calculator-form>button{min-height:40px;padding:9px 12px;font-size:14px}
 #calculator-form>.hint{margin:0;font-size:11px;line-height:1.5}
 #calc-result .result-hero{padding:16px;margin-bottom:12px;border-radius:12px}#calc-result .result-number{font-size:27px;margin:8px 0}#calc-result .result-number .arrow{font-size:20px;margin:0 7px}#calc-result .result-hero p{margin-bottom:0}
 #calc-result .result-tiles{gap:6px;margin-bottom:12px}#calc-result .result-tiles>div{padding:10px 7px}#calc-result .result-tiles strong{font-size:16px;margin-top:5px}
 /* Calendar spacing and day-row height scale together with the bars. */
 .calendar-toolbar{gap:8px;margin-bottom:10px}.calendar-navigation{gap:8px}.calendar-navigation h2{font-size:18px!important;margin:0!important}.calendar-navigation .btn{min-width:34px;min-height:34px;padding:4px 10px}
 .calendar-legend{gap:6px;margin-bottom:10px}.calendar-legend button{padding:6px 7px;font-size:10px;min-height:28px}.calendar-legend button:before{margin-right:4px;width:7px;height:7px}
 .calendar-expand{margin-bottom:8px}.calendar-weekdays{padding:7px 0;font-size:12px}.calendar-week:has(.calendar-week-bars:empty){--calendar-lanes:0!important}
 .calendar-week .calendar-day,.calendar-week .calendar-blank{height:calc(34px + var(--calendar-lanes)*25px + 20px);padding:5px 3px}
 .calendar-week-bars{top:34px;grid-auto-rows:25px}.calendar-bar{height:22px;font-size:10px;padding:3px 4px}.calendar-week .calendar-more{bottom:4px}.calendar-note{margin-top:10px}
 .calendar-agenda-item{padding:10px 0}.calendar-event-open{padding:8px 0;gap:10px}.calendar-event-summary{gap:5px}.calendar-event-summary strong{font-size:14px}.calendar-event-summary .meta{font-size:12px}
}

}
