:root{--bg:#0d1a30;--bg-raised:#182b4a;--ink:#eef2f8;--ink-dim:#b9c3d4;--muted:#7d8aa0;--line:#2a3a58;--red:#d43a2c;--red-bright:#ef5334;--yellow:#f2c230;--green:#46ae68}@media (prefers-color-scheme:light){:root{--bg:#eef2f8;--bg-raised:#fff;--ink:#10203a;--ink-dim:#3a4a63;--muted:#6b7890;--line:#d7dee8;--red:#c22e22;--red-bright:#9c2318;--yellow:#8a6205;--green:#2f8a4e}}:root[data-theme=dark]{--bg:#0d1a30;--bg-raised:#182b4a;--ink:#eef2f8;--ink-dim:#b9c3d4;--muted:#7d8aa0;--line:#2a3a58;--red:#d43a2c;--red-bright:#ef5334;--yellow:#f2c230;--green:#46ae68}:root[data-theme=light]{--bg:#eef2f8;--bg-raised:#fff;--ink:#10203a;--ink-dim:#3a4a63;--muted:#6b7890;--line:#d7dee8;--red:#c22e22;--red-bright:#9c2318;--yellow:#8a6205;--green:#2f8a4e}html{height:100%}html,body{max-width:100vw}body{background:var(--bg);min-height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;display:flex}*{box-sizing:border-box}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}.disp{font-family:Rockwell,Roboto Slab,Sitka Text,Georgia,serif}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 24px}header.top{z-index:10;background:var(--bg);border-bottom:2px solid var(--red);position:sticky;top:0}.top-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1080px;margin:0 auto;padding:16px 24px;display:flex}.wordmark{color:var(--ink);font-size:1.3rem;font-weight:700}.wordmark span{color:var(--red-bright)}.brand{flex-direction:column;gap:2px;display:flex}.tagline{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;font-weight:600}.brand-logo-link{align-items:center;gap:12px;display:inline-flex}.brand-logo{border-radius:50%;width:56px;height:56px}.brand-logo-sm{width:40px;height:40px}.brand-wordmark{letter-spacing:.01em;color:var(--ink);white-space:nowrap;font-family:Rockwell,Roboto Slab,Sitka Text,Georgia,serif;font-size:1.5rem;font-weight:700}.brand-wordmark span{color:var(--red-bright)}.brand-pokeball{width:16px;height:16px;color:var(--yellow);vertical-align:middle;margin-left:4px}nav.main-nav{gap:24px;display:flex}nav.main-nav a{color:var(--ink-dim);font-size:.86rem;font-weight:500}nav.main-nav a:hover,nav.main-nav a[aria-current=page]{color:var(--ink)}.auth{align-items:center;gap:10px;display:flex}.who{color:var(--ink-dim);font-size:.82rem}.who b{color:var(--ink)}.btn{border:1px solid var(--red);color:var(--ink);cursor:pointer;background:0 0;border-radius:4px;padding:8px 14px;font-size:.8rem;font-weight:500;display:inline-block}.btn:hover{background:#db35301f}.btn.solid{background:var(--red);border-color:var(--red);color:#fff}.btn.solid:hover{background:var(--red-bright)}.btn.ghost{border-color:var(--line)}.btn.ghost:hover{border-color:var(--red);background:0 0}.btn.danger{border-color:var(--muted);color:var(--muted)}.btn.danger:hover{border-color:var(--red);color:var(--red);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.hero{padding:36px 24px 28px}.eyebrow{color:var(--red-bright);letter-spacing:.02em;margin:0 0 10px;font-size:.76rem;font-weight:700}.hero-grid{grid-template-columns:1fr 1fr;align-items:center;gap:32px;display:grid}.hero-media{aspect-ratio:16/10;border:1px solid var(--line);background:linear-gradient(160deg,#2a2a2a,#101010);border-radius:6px;position:relative;overflow:hidden}.badge-score{background:var(--bg);border:1px solid var(--yellow);color:var(--yellow);border-radius:4px;align-items:baseline;gap:4px;padding:5px 10px;font-family:Rockwell,serif;font-weight:700;display:flex;position:absolute;top:12px;left:12px}.badge-score .of{color:var(--muted);font-family:-apple-system,sans-serif;font-size:.62rem}.hero h1{text-wrap:balance;margin:0 0 12px;font-size:2.1rem;font-weight:700;line-height:1.15}.hero .dek{color:var(--ink-dim);max-width:48ch;margin:0 0 16px;font-size:1rem}.byline{align-items:center;gap:10px;display:flex}.avatar{background:var(--red);color:#fff;object-fit:cover;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:.72rem;font-weight:700;display:flex}.byline-meta{color:var(--muted);font-size:.78rem}.byline-meta b{color:var(--ink-dim);font-weight:600}.empty-hero{text-align:center;color:var(--muted);padding:48px 0}.content{flex:1;padding:8px 24px 50px}.content-grid{grid-template-columns:2fr 1fr;align-items:start;gap:36px;display:grid}.section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-bottom:16px;padding-bottom:8px;display:flex}.section-head h2{margin:0;font-size:1rem}.section-head a{color:var(--red-bright);font-size:.76rem}.story-list{flex-direction:column;display:flex}.story-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:16px 0;display:flex}.story-thumb{background:linear-gradient(160deg,#262626,#0d0d0d);border-radius:4px;flex:none;width:104px;height:70px;position:relative;overflow:hidden}.story-copy .cat{color:var(--red-bright);margin:0 0 4px;font-size:.72rem;font-weight:700}.story-copy h3{color:var(--ink);margin:0 0 4px;font-size:.98rem;font-weight:600}.story-copy .sub{color:var(--muted);font-size:.78rem}.empty-note{color:var(--muted);padding:20px 0;font-size:.88rem}.side-panel{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;margin-bottom:20px;padding:16px}.side-panel h2{margin:0 0 12px;font-size:.86rem}.trend-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.trend-list li{align-items:baseline;gap:10px;display:flex}.trend-rank{color:var(--red);flex:none;width:20px;font-family:Rockwell,serif;font-size:.95rem;font-weight:700}.trend-list a{color:var(--ink);font-size:.82rem}.trend-list a:hover{color:var(--red-bright)}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);color:var(--ink-dim);border-radius:16px;padding:5px 11px;font-size:.72rem}.chip.on{border-color:var(--red);color:var(--ink)}.divider{align-items:center;gap:12px;max-width:1080px;margin:0 auto;padding:8px 24px 0;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.divider span{color:var(--muted);white-space:nowrap;font-size:.74rem}.article-page{max-width:680px;margin:0 auto;padding:36px 24px 56px}.article-page .cat{color:var(--red-bright);margin:0 0 8px;font-size:.76rem;font-weight:700}.article-page h1{text-wrap:balance;margin:0 0 14px;font-size:1.9rem;font-weight:700;line-height:1.2}.article-lede{color:var(--ink-dim);margin:0 0 18px;font-size:1rem}.article-media{aspect-ratio:16/9;border:1px solid var(--line);background:linear-gradient(160deg,#2a2a2a,#101010);border-radius:6px;margin:0 0 24px;position:relative;overflow:hidden}.video-embed{width:100%;height:100%}.video-embed iframe{border:0;width:100%;height:100%;display:block}.video-credit{color:var(--muted);margin:-14px 0 22px;font-size:.82rem}.video-credit a{color:var(--red-bright)}.score-panel{border:1px solid var(--line);background:var(--bg-raised);border-radius:6px;flex-wrap:wrap;align-items:center;gap:22px;margin:0 0 26px;padding:16px;display:flex}.score-panel .big-score{text-align:center;flex:none}.score-panel .big-score .num{color:var(--yellow);font-family:Rockwell,serif;font-size:2rem;font-weight:700;line-height:1}.score-panel .big-score .of{color:var(--muted);font-size:.62rem}.bars{flex-direction:column;flex:1;gap:8px;min-width:200px;display:flex}.bar-row{grid-template-columns:78px 1fr 30px;align-items:center;gap:8px;font-size:.72rem;display:grid}.bar-row .label{color:var(--muted)}.bar-track{background:var(--bg);border-radius:3px;height:5px;overflow:hidden}.bar-fill{background:var(--red);height:100%}.bar-row .val{text-align:right;color:var(--ink-dim);font-variant-numeric:tabular-nums}.article-body p{color:var(--ink-dim);white-space:pre-wrap;margin:0 0 16px;font-size:1rem}.article-body strong{color:var(--ink)}.article-body a{color:var(--red-bright);text-underline-offset:2px;text-decoration:underline}.article-body a:hover{color:var(--ink)}blockquote{border-left:3px solid var(--red);color:var(--ink);text-wrap:balance;margin:24px 0;padding-left:18px;font-family:Rockwell,serif;font-size:1.15rem;line-height:1.4}.verdict{border:1px solid var(--line);border-radius:6px;margin-top:24px;padding:14px 16px}.verdict .cat{color:var(--yellow)}.verdict p{color:var(--ink-dim);margin:0;font-size:.9rem}.author-strip{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:28px;padding-top:20px;display:flex}.author-strip .name{font-size:.88rem;font-weight:700}.author-strip .role{color:var(--muted);font-size:.74rem}.related-articles{border-top:1px solid var(--line);margin-top:36px;padding-top:24px}.related-articles h2{margin:0 0 16px;font-size:1rem}.related-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.related-card{flex-direction:column;gap:10px;display:flex}.related-thumb{aspect-ratio:16/9;background:linear-gradient(160deg,#262626,#0d0d0d);border-radius:4px;position:relative;overflow:hidden}.related-card .cat{color:var(--red-bright);margin:0 0 4px;font-size:.7rem;font-weight:700}.related-card h3{color:var(--ink);margin:0 0 4px;font-size:.9rem;font-weight:600;line-height:1.3}.related-card .sub{color:var(--muted);margin:0;font-size:.74rem}@media (max-width:640px){.related-grid{grid-template-columns:1fr}}.comments{margin-top:36px}.comments h2{margin:0 0 6px;font-size:1rem}.mod-note{color:var(--muted);margin:0 0 20px;font-size:.78rem}.gate{border:1px dashed var(--line);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;padding:14px 16px;display:flex}.gate p{color:var(--ink-dim);margin:0;font-size:.86rem}.comment{border-bottom:1px solid var(--line);gap:10px;padding:14px 0;display:flex}.comment:last-child{border-bottom:none}.c-top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.c-name{font-size:.84rem;font-weight:700}.c-time{color:var(--muted);font-size:.72rem}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:3px;padding:2px 6px;font-size:.6rem;font-weight:700}.badge.admin{background:var(--red);color:#fff}.badge.pending{border:1px solid var(--muted);color:var(--muted)}.badge.rejected{border:1px solid var(--red);color:var(--red)}.comment.pending{opacity:.6}.comment.pending p{font-style:italic}.comment p{color:var(--ink-dim);margin:0;font-size:.88rem}.comment-form{flex-direction:column;gap:10px;margin-top:8px;display:flex}.comment-form textarea{resize:vertical;min-height:90px}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-dim);font-size:.78rem;font-weight:600}.field .hint{color:var(--muted);font-size:.72rem}input,textarea,select{background:var(--bg-raised);border:1px solid var(--line);color:var(--ink);border-radius:4px;width:100%;padding:9px 11px;font-family:inherit;font-size:.9rem}input::placeholder,textarea::placeholder{color:var(--muted)}.header-search input{width:150px;padding:7px 10px;font-size:.82rem}.search-form{gap:10px;max-width:480px;display:flex}.form-page{flex:1;width:100%;max-width:420px;margin:0 auto;padding:48px 24px 64px}.form-page h1{margin:0 0 6px;font-size:1.6rem}.form-page .lede{color:var(--muted);margin:0 0 28px;font-size:.88rem}.form-page form{flex-direction:column;gap:16px;display:flex}.form-page .switch{color:var(--muted);text-align:center;margin-top:18px;font-size:.84rem}.form-page .switch a{color:var(--red-bright)}.error-box{border:1px solid var(--red);color:var(--ink);background:#db35301a;border-radius:4px;padding:10px 12px;font-size:.84rem}footer.site-footer{border-top:1px solid var(--line);padding:26px 24px}.footer-newsletter{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1080px;margin:0 auto 26px;padding-bottom:26px;display:flex}.footer-newsletter .sub{color:var(--muted);font-size:.82rem}.newsletter-form{flex-wrap:wrap;gap:10px;display:flex}.newsletter-form input{width:220px}.newsletter-note{color:var(--ink-dim);margin:0;font-size:.82rem}.newsletter-note.error{color:var(--red-bright)}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;max-width:1080px;margin:0 auto;display:flex}.footer-links{gap:18px;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:var(--muted);font-size:.78rem}.footer-links a:hover{color:var(--red-bright)}.fine-print{color:var(--muted);font-size:.74rem}.img-ph{width:100%;height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.img-ph .ph-icon{opacity:.4;width:32px;height:32px}.img-ph .ph-label{letter-spacing:.03em;opacity:.65;text-align:center;padding:0 10px;font-size:.62rem}.img-ph.sm .ph-icon{width:18px;height:18px}.cover-image{object-fit:cover;width:100%;height:100%;display:block}.admin-shell{flex:1;padding:28px 24px 60px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.admin-head h1{font-size:1.4rem}.admin-nav{border-bottom:1px solid var(--line);gap:18px;margin-bottom:24px;padding-bottom:10px;display:flex}.admin-nav a{color:var(--ink-dim);font-size:.86rem}.admin-nav a:hover,.admin-nav a[aria-current=page]{color:var(--red-bright)}.admin-table{border-collapse:collapse;width:100%;font-size:.86rem}.admin-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);padding:8px 10px;font-size:.72rem;font-weight:600}.admin-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px}.admin-table tr:last-child td{border-bottom:none}.status-pill{text-transform:uppercase;letter-spacing:.03em;border-radius:12px;padding:3px 8px;font-size:.68rem;font-weight:700}.status-pill.published{color:var(--green);background:#4caf6a26}.status-pill.draft{color:var(--muted);background:#928c8d2e}.admin-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;margin-bottom:20px;padding:20px}.admin-empty{color:var(--muted);text-align:center;padding:24px 0;font-size:.88rem}.row-actions{gap:8px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .span-2{grid-column:1/-1}.score-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.moderation-item{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:16px 0;display:flex}.moderation-item:last-child{border-bottom:none}.moderation-meta{color:var(--muted);font-size:.76rem}.moderation-meta a{color:var(--red-bright)}.moderation-body{color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:10px 12px;font-size:.88rem}.tool-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:20px;display:grid}.tool-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;padding:20px}.tool-card h3{margin:0 0 6px;font-size:1rem}.tool-card p{color:var(--muted);margin:0 0 14px;font-size:.84rem}.tool-card.disabled{opacity:.55}.tool-card.disabled p.status{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.72rem}.type-chart-tool{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;margin-top:20px;padding:24px}.type-chart-controls{flex-wrap:wrap;gap:16px;margin-bottom:20px;display:flex}.type-chart-controls .field{min-width:160px}.type-chart-preview{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:10px;margin-bottom:24px;padding-bottom:20px;font-size:.84rem;display:flex}.type-chart-results{flex-direction:column;gap:18px;display:flex}.type-chart-bucket-label{color:var(--ink-dim);margin:0 0 8px;font-size:.82rem;font-weight:600}.type-badge{color:#1c1c1b;text-shadow:0 1px #ffffff26;text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:5px 12px;font-size:.74rem;font-weight:700;display:inline-block}.stat-calc-tool{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;margin-top:20px;padding:24px}.stat-calc-table{flex-direction:column;gap:6px;margin-top:8px;display:flex}.stat-calc-row{grid-template-columns:1.1fr 1fr 1fr 1fr 1fr;align-items:center;gap:10px;display:grid}.stat-calc-head{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);padding-bottom:4px;font-size:.74rem;font-weight:600}.stat-calc-row input{padding:6px 8px;font-size:.84rem}.stat-calc-name{font-size:.86rem;font-weight:600}.stat-calc-name sup{margin-left:3px;font-weight:700}.stat-calc-name sup.nature-up{color:var(--red-bright)}.stat-calc-name sup.nature-down{color:#6890f0}.stat-calc-result{color:var(--ink);font-size:1rem;font-weight:700}.stat-calc-total{color:var(--muted);margin-top:16px;font-size:.82rem}.stat-calc-total.over{color:var(--red-bright);font-weight:600}.damage-calc-tool{margin-top:20px}.damage-calc-disclaimer{color:var(--muted);background:var(--bg-raised);border:1px solid var(--line);border-radius:4px;margin:0 0 16px;padding:10px 14px;font-size:.78rem}.damage-calc-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.damage-calc-grid .admin-card{margin-bottom:0}.damage-calc-grid h3{margin:0 0 14px;font-size:.9rem}.damage-calc-crit{cursor:pointer;align-items:center;gap:8px;margin:20px 0;font-size:.84rem;display:flex}.damage-calc-crit input{width:auto}.damage-calc-result{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.damage-calc-range{margin:0;font-family:Rockwell,Roboto Slab,Sitka Text,Georgia,serif;font-size:1.6rem;font-weight:700}.damage-calc-sub{color:var(--muted);margin:4px 0 0;font-size:.82rem}.damage-calc-tags{flex-wrap:wrap;gap:8px;display:flex}.damage-calc-notes{color:var(--muted);margin:14px 0 0;padding:0 0 0 18px;font-size:.78rem}.damage-calc-notes li{margin-bottom:3px}.species-picker{background:var(--bg);border:1px dashed var(--line);border-radius:4px;margin-bottom:4px;padding:12px}.species-picker .pokedex-search{max-width:none}.species-picker-loaded{color:var(--green);margin:8px 0 0;font-size:.74rem}.team-coverage-tool{margin-top:20px}.team-slots{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:24px;display:grid}.team-slot{margin-bottom:0;padding:16px}.team-slot h3{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 10px;font-size:.84rem}.team-slot .type-chart-controls{flex-wrap:nowrap;gap:10px;margin-bottom:0}.team-slot .field{flex:1;min-width:0}.team-coverage-gaps{background:var(--bg-raised);border:1px solid var(--line);border-radius:6px;margin-bottom:20px;padding:20px}.team-coverage-gaps h3{margin:0 0 10px;font-size:.95rem}.team-coverage-table{flex-direction:column;gap:4px;display:flex}.team-coverage-row{grid-template-columns:1.4fr 1fr 1fr 1fr;align-items:center;gap:10px;padding:6px 0;display:grid}.team-coverage-head{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);padding-bottom:8px;font-size:.72rem;font-weight:600}.team-coverage-row span.count-weak{color:var(--red-bright);font-weight:700}.team-coverage-row span.count-resist{color:var(--green);font-weight:700}.pokedex-tool{margin-top:20px}.pokedex-search{gap:10px;max-width:420px;display:flex}.pokedex-search input{flex:1}.dex-result{margin-top:20px}.dex-header{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:20px;display:flex}.dex-sprite{object-fit:contain;width:120px;height:120px}.dex-number{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:.74rem}.dex-name{text-transform:capitalize;margin:2px 0 8px;font-size:1.3rem}.dex-meta{color:var(--muted);margin:8px 0 0;font-size:.78rem}.dex-stats{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.dex-stat-row{grid-template-columns:70px 36px 1fr;align-items:center;gap:10px;display:grid}.dex-stat-label{color:var(--ink-dim);font-size:.78rem;font-weight:600}.dex-stat-value{text-align:right;font-size:.82rem;font-weight:700}.dex-stat-track{background:var(--bg);border-radius:3px;height:8px;overflow:hidden}.dex-stat-fill{background:var(--red);border-radius:3px;height:100%}@media (max-width:860px){.hero-grid,.content-grid{grid-template-columns:1fr}.score-panel{flex-direction:column;align-items:stretch}.form-grid{grid-template-columns:1fr}.score-grid{grid-template-columns:1fr 1fr}}
