/* Look themes (branch retro-themes).
   Default (no data-theme) = production clean 16-bit in style.css.
   Pikachu = light. Team Rocket = dark (black + red + white). No Nintendo assets. */

/* Surface pairs (readability, Will: "you should always be able to easily read every page").
   Anything drawn as a card / sheet / popup uses --surf with --on-surf (and --on-surf-mut for secondary text,
   --on-surf-acc for links and outline buttons), never a hard-coded #fff with the page's --ink, so a dark look can
   never put light text on a white card. Filled buttons use --fill with --on-fill. --pill (pink, always with white text) is deepened from #ff5fa2 (2.8:1) to #d6246e (4.8:1). Every look and every vibe sets
   these through its own --panel / --ink / --muted / --light / --border, so they always pass 4.5:1 together. */
:root{--pill:#d6246e;--surf:#fff;--on-surf:#2a3348;--on-surf-mut:#4a5070;--on-surf-acc:#3d5a9e;--surf-2:#f4f6fb;--surf-line:#d3dae9;--surf-tint:#e6ecfa;--fill:#3d5a9e;--on-fill:#fff}
html[data-theme]{--surf:var(--panel);--on-surf:var(--ink);--on-surf-mut:var(--muted);--on-surf-acc:var(--dark);--surf-2:var(--light);--surf-line:var(--border);--surf-tint:color-mix(in srgb,var(--panel) 86%,var(--dark));--fill:var(--dark);--on-fill:#fff}
html[data-theme=pikachu]{--on-surf-acc:#92400e}
html[data-theme=team-rocket]{--on-surf-acc:#ff6b6b;--surf-2:#1c1c1e;--surf-line:#3f3f44}
html[data-vibe]{--on-surf-acc:var(--accent);--surf-2:var(--light);--surf-line:var(--border);--fill:var(--btn-lo);--on-fill:var(--btn-ink)}

@font-face{font-family:"Press Start 2P";src:url(/fonts/PressStart2P.ttf) format("truetype");font-weight:400;font-display:swap}

#theme-bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  padding:8px 14px;background:#fff;border-bottom:1px solid #d8e0ee;
  position:sticky;top:0;z-index:40;box-shadow:0 1px 4px rgba(42,51,72,.06);
}
#theme-bar .tb-lab{
  font:600 12px/1 system-ui,sans-serif;color:#5a6578;
}
#theme-bar .tb-select{
  font:600 13px/1.2 system-ui,sans-serif;
  padding:7px 10px;border:1px solid #c9d4e8;background:#eef3fb;color:#2a3348;
  border-radius:999px;max-width:min(70vw,200px);cursor:pointer;
}
#theme-bar .tb-select:focus-visible{outline:2px solid #ffe28a;outline-offset:2px}

/* Shared layout polish */
html[data-theme=pikachu],
html[data-theme=team-rocket]{
  --px:"Pixelify Sans",system-ui,sans-serif;
}
html[data-theme=pikachu]{color-scheme:light}
html[data-theme=team-rocket]{color-scheme:dark}

html[data-theme=pikachu] body,
html[data-theme=team-rocket] body{
  background:var(--paper);color:var(--ink);
}

html[data-theme=pikachu] header,
html[data-theme=team-rocket] header{
  background:linear-gradient(180deg,var(--header-hi),var(--header-lo));
  border-bottom:3px solid var(--ink);
  box-shadow:inset 0 -2px 0 var(--mid);
}
html[data-theme=pikachu] .logo{color:#fff}
html[data-theme=team-rocket] .logo{color:#fff}
html[data-theme=pikachu] .logo b,
html[data-theme=team-rocket] .logo b{color:var(--gold)}

html[data-theme=pikachu] #theme-bar,
html[data-theme=team-rocket] #theme-bar{
  background:var(--header-lo);border-bottom-color:var(--accent);
}
html[data-theme=pikachu] #theme-bar .tb-lab{color:var(--gold)}
html[data-theme=team-rocket] #theme-bar .tb-lab{color:#fff}
html[data-theme=pikachu] #theme-bar .tb-select,
html[data-theme=team-rocket] #theme-bar .tb-select{
  background:var(--dark);border-color:var(--mid);color:var(--light);
}

html[data-theme=pikachu] h1,
html[data-theme=pikachu] h2,
html[data-theme=team-rocket] h1,
html[data-theme=team-rocket] h2{
  font-family:"Press Start 2P",var(--px);font-weight:400;letter-spacing:0;color:var(--ink);
}
html[data-theme=pikachu] h1,
html[data-theme=team-rocket] h1{font-size:18px;line-height:1.45}
html[data-theme=pikachu] h2,
html[data-theme=team-rocket] h2{font-size:14px;line-height:1.45}

html[data-theme=pikachu] .card,
html[data-theme=team-rocket] .card{
  background:var(--panel);color:var(--ink);
  border:2px solid var(--border);
  border-radius:10px;
  box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 16px rgba(0,0,0,.06);
}

html[data-theme=pikachu] .btn,
html[data-theme=team-rocket] .btn{
  background:linear-gradient(180deg,var(--btn-hi),var(--btn-lo));
  color:var(--btn-ink);border:2px solid var(--ink);border-radius:8px;
  box-shadow:inset 0 1px 0 var(--btn-shine),0 3px 0 var(--shadow);
}
html[data-theme=pikachu] .btn:active,
html[data-theme=team-rocket] .btn:active{
  transform:translateY(2px);box-shadow:inset 0 1px 0 var(--btn-shine);
}
html[data-theme=pikachu] .btn.alt,
html[data-theme=team-rocket] .btn.alt{
  background:linear-gradient(180deg,var(--panel),var(--light));color:var(--ink);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 3px 0 var(--shadow);
}

html[data-theme=pikachu] .link,
html[data-theme=pikachu] footer a{color:var(--dark)}
html[data-theme=team-rocket] .link,
html[data-theme=team-rocket] footer a{color:var(--accent)}

html[data-theme=pikachu] .muted,
html[data-theme=pikachu] .r,
html[data-theme=pikachu] footer,
html[data-theme=team-rocket] .muted,
html[data-theme=team-rocket] .r,
html[data-theme=team-rocket] footer{color:var(--muted)}

html[data-theme=pikachu] input,
html[data-theme=pikachu] textarea,
html[data-theme=pikachu] select,
html[data-theme=team-rocket] input,
html[data-theme=team-rocket] textarea,
html[data-theme=team-rocket] select{
  border:2px solid var(--border);background:var(--panel);color:var(--ink);border-radius:8px;
}

html[data-theme=pikachu] .tabs button,
html[data-theme=team-rocket] .tabs button,
html[data-theme=pikachu] .seg label,
html[data-theme=team-rocket] .seg label{
  background:var(--panel);color:var(--ink);border-color:var(--border);
}
html[data-theme=pikachu] .tabs button[aria-selected=true],
html[data-theme=pikachu] .seg label:has(input:checked),
html[data-theme=team-rocket] .tabs button[aria-selected=true],
html[data-theme=team-rocket] .seg label:has(input:checked){
  background:var(--dark);color:var(--light);border-color:var(--ink);
}

html[data-theme=pikachu] .res,
html[data-theme=team-rocket] .res{border-color:var(--border)}
html[data-theme=pikachu] .res button,
html[data-theme=team-rocket] .res button{
  background:var(--panel);color:var(--ink);border-bottom-color:var(--border);
}
html[data-theme=pikachu] .res button.sub,
html[data-theme=team-rocket] .res button.sub{background:var(--light)}

html[data-theme=pikachu] .gcell,
html[data-theme=team-rocket] .gcell{
  background:var(--panel);border-color:var(--border);color:var(--ink);
}
html[data-theme=pikachu] .gcell.on,
html[data-theme=team-rocket] .gcell.on{
  border-color:var(--ink);background:var(--light);box-shadow:inset 0 0 0 2px var(--mid);
}

html[data-theme=pikachu] .thumb{border-color:var(--ink);background:var(--light)}
html[data-theme=team-rocket] .thumb{border-color:var(--border);background:var(--light)}
html[data-theme=pikachu] .thumb.ico .tn{color:var(--ink)} /* card name strip sits on the light thumb in this look (was white on cream) */

html[data-theme=pikachu] .badge,
html[data-theme=team-rocket] .badge{background:var(--ink);color:var(--light)}

html[data-theme=pikachu] .chip,
html[data-theme=pikachu] .rchip,
html[data-theme=team-rocket] .chip,
html[data-theme=team-rocket] .rchip{
  background:var(--panel);border-color:var(--border);color:var(--ink);
}
html[data-theme=pikachu] .rchip[aria-pressed=true]{
  border-color:var(--dark);background:var(--light);
}
html[data-theme=team-rocket] .rchip[aria-pressed=true]{
  border-color:var(--accent);background:var(--light);
}

html[data-theme=pikachu] .act,
html[data-theme=pikachu] .rel,
html[data-theme=team-rocket] .act,
html[data-theme=team-rocket] .rel{
  background:var(--panel);border-color:var(--border);color:var(--muted);
}
html[data-theme=pikachu] .act.now{border-color:#16805f;color:#16805f;background:#e7f7ef}
html[data-theme=team-rocket] .act.now{border-color:var(--accent);color:#fff;background:#3b0a0a}
html[data-theme=pikachu] .rel.good{border-color:var(--dark);color:var(--dark)}
html[data-theme=team-rocket] .rel.good{border-color:var(--accent);color:var(--accent)}

html[data-theme=pikachu] .row,
html[data-theme=pikachu] .trade,
html[data-theme=pikachu] .qrow,
html[data-theme=pikachu] .ev,
html[data-theme=pikachu] .srow,
html[data-theme=pikachu] .more,
html[data-theme=team-rocket] .row,
html[data-theme=team-rocket] .trade,
html[data-theme=team-rocket] .qrow,
html[data-theme=team-rocket] .ev,
html[data-theme=team-rocket] .srow,
html[data-theme=team-rocket] .more{border-color:var(--border)}

html[data-theme=pikachu] .qrow.active{
  background:#fff8e1;border-color:var(--gold);
}
html[data-theme=team-rocket] .qrow.active{
  background:#2a0a0a;border-color:var(--accent);
}

html[data-theme=pikachu] .warn{
  background:#fff8e1;border-color:var(--gold-d);color:var(--ink);
}
html[data-theme=team-rocket] .warn{
  background:#2a0a0a;border-color:var(--accent);color:#fecaca;
}
html[data-theme=pikachu] .note{background:var(--light);border-color:var(--border)}
html[data-theme=team-rocket] .note{background:var(--light);border-color:var(--border)}

html[data-theme=pikachu] #toast,
html[data-theme=team-rocket] #toast{
  background:var(--ink);color:var(--light);border-color:var(--accent);
}

html[data-theme=pikachu] .ok{color:var(--dark)}
html[data-theme=team-rocket] .ok{color:var(--accent)}
html[data-theme=pikachu] .err,
html[data-theme=team-rocket] .err{color:#e11d48}
html[data-theme=pikachu] .free{color:#16805f}
html[data-theme=team-rocket] .free{color:#fca5a5}

html[data-theme=pikachu] .tag.live{background:var(--teal);color:#fff}
html[data-theme=team-rocket] .tag.live{background:var(--accent);color:#fff}
html[data-theme=pikachu] .tag.upcoming{background:var(--gold);color:var(--ink)}
html[data-theme=team-rocket] .tag.upcoming{background:#fff;color:#0a0a0a}
html[data-theme=pikachu] .tag.ended{background:#e8e4dc;color:var(--muted)}
html[data-theme=team-rocket] .tag.ended{background:#2a2a2a;color:var(--muted)}

html[data-theme] .ri,
html[data-theme] .thumb .art{image-rendering:pixelated}
html[data-theme] .rar{min-height:16px}

/* ── Pikachu · light (warm cream / yellow) ── */
html[data-theme=pikachu]{
  --ink:#3d2a14;--dark:#b45309;--mid:#f5d76e;--gold:#fff3b0;--gold-d:#ca8a04;
  --light:#fff8e7;--paper:#faf6eb;--teal:#dc2626;--accent:#e11d48;
  --panel:#fffcf5;--shadow:#d4a017;--muted:#6b5344;--border:#e8d9a8;
  --header-hi:#f7d02c;--header-lo:#eab308;
  --btn-hi:#ffe566;--btn-lo:#f5c518;--btn-ink:#3d2a14;--btn-shine:#fff8c4;
}

/* ── Team Rocket · dark (black + red + white) ──
   Fan-made palette only — no logos, sprites, or official marks. */
html[data-theme=team-rocket]{
  --ink:#f5f5f5;--dark:#dc2626;--mid:#ef4444;--gold:#ffffff;--gold-d:#991b1b;
  --light:#1a1a1a;--paper:#0a0a0a;--teal:#dc2626;--accent:#ef4444;
  --panel:#141414;--shadow:#000;--muted:#a3a3a3;--border:#333;
  --header-hi:#1a1a1a;--header-lo:#0a0a0a;
  --btn-hi:#ef4444;--btn-lo:#b91c1c;--btn-ink:#ffffff;--btn-shine:#fecaca;
}
html[data-theme=team-rocket] header{
  border-bottom:3px solid #ef4444;
  box-shadow:inset 0 -2px 0 #7f1d1d,0 1px 0 #fff;
}
html[data-theme=team-rocket] .card{
  box-shadow:0 0 0 1px rgba(239,68,68,.35),0 8px 24px rgba(0,0,0,.5);
}
html[data-theme=team-rocket] h1,
html[data-theme=team-rocket] h2{color:#fff}
html[data-theme=team-rocket] .btn{
  border-color:#fff;
  box-shadow:inset 0 1px 0 #fecaca,0 3px 0 #000;
}
html[data-theme=team-rocket] .btn.alt{
  background:linear-gradient(180deg,#2a2a2a,#1a1a1a);color:#fff;border-color:#fff;
}
html[data-theme=team-rocket] #theme-bar .tb-select{
  background:#1a1a1a;border-color:#ef4444;color:#fff;
}

@media (prefers-reduced-motion:reduce){
  html[data-theme] .btn:active{transform:none}
}


/* Home pop under named Looks */
html[data-theme=pikachu] body:has(.home){
  background:
    radial-gradient(circle at 15% 20%, rgba(255,255,255,.5) 0 2px, transparent 3px),
    radial-gradient(circle at 80% 15%, rgba(255,255,255,.4) 0 1.5px, transparent 3px),
    repeating-linear-gradient(135deg, transparent 0 18px, rgba(255,255,255,.08) 18px 19px),
    linear-gradient(165deg, #fff3b0 0%, #ffe566 45%, #fde68a 100%);
}
html[data-theme=pikachu] body:has(.home) header{
  background:linear-gradient(180deg,var(--header-hi),var(--header-lo));
}
html[data-theme=pikachu] .home-hero{
  background:linear-gradient(180deg,#fffceb,#fff);
}
html[data-theme=pikachu] .home-hero h1{
  background:linear-gradient(120deg,#5c3a1e,#b45309);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
html[data-theme=pikachu] .home-kicker{color:#7c2d12;background:linear-gradient(90deg,#fef3c7,#fecaca)}
html[data-theme=pikachu] .step{background:linear-gradient(135deg,#fff8e7,#fff);box-shadow:inset 0 0 0 1px rgba(245,208,44,.35)}
html[data-theme=pikachu] .rar-strip{background:linear-gradient(135deg,#fff8e7,#fef3c7)}
html[data-theme=pikachu] .ev-tile{background:linear-gradient(135deg,#fffcf5,#fff8e7)}
html[data-theme=pikachu] .home .btn-pulse{
  background:linear-gradient(180deg,#ffe566,#f5c518);
  box-shadow:0 4px 0 #ca8a04,0 10px 24px rgba(245,197,24,.4),inset 0 2px 0 rgba(255,255,255,.55);
}

html[data-theme=team-rocket] body:has(.home){
  background:
    radial-gradient(circle at 20% 25%, rgba(239,68,68,.25) 0 2px, transparent 3px),
    radial-gradient(circle at 75% 15%, rgba(255,255,255,.12) 0 1.5px, transparent 3px),
    repeating-linear-gradient(135deg, transparent 0 18px, rgba(239,68,68,.05) 18px 19px),
    linear-gradient(165deg, #1a0508 0%, #0a0a0a 50%, #1a0a0a 100%);
}
html[data-theme=team-rocket] body:has(.home)::before{
  background:radial-gradient(ellipse 160px 100px at 50% 20%, rgba(239,68,68,.18), transparent);
}
html[data-theme=team-rocket] body:has(.home) header{
  background:linear-gradient(180deg,#1a1a1a,#0a0a0a);
  border-bottom:3px solid #ef4444;
}
html[data-theme=team-rocket] .home .card{
  background:var(--panel);border:1px solid var(--border);
  box-shadow:0 0 0 1px rgba(239,68,68,.2),0 12px 28px rgba(0,0,0,.45);
}
html[data-theme=team-rocket] .home-hero{background:linear-gradient(180deg,#1c1012,#141414)}
html[data-theme=team-rocket] .home-hero h1{
  background:linear-gradient(120deg,#fff,#fecaca);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
html[data-theme=team-rocket] .home-kicker{color:#fecaca;background:linear-gradient(90deg,#3b0a0a,#1a1a1a);border:1px solid #ef4444}
html[data-theme=team-rocket] .home-tag,
html[data-theme=team-rocket] .home .muted{color:var(--muted)}
html[data-theme=team-rocket] .step{
  background:linear-gradient(135deg,#1f1214,#141414);
  box-shadow:inset 0 0 0 1px rgba(239,68,68,.3);
}
html[data-theme=team-rocket] .step-txt{color:#f5f5f5}
html[data-theme=team-rocket] .rar-strip{background:#1a1012}
html[data-theme=team-rocket] .rar-chip{background:#141414;box-shadow:0 0 0 1px #333}
html[data-theme=team-rocket] .ev-tile{
  background:linear-gradient(135deg,#1a1214,#141414);
  box-shadow:inset 0 0 0 1px rgba(239,68,68,.25);
}
html[data-theme=team-rocket] .ev-tile:hover{
  box-shadow:0 0 0 1px #ef4444,0 8px 18px rgba(0,0,0,.4);
}
html[data-theme=team-rocket] .home .btn-pulse{
  background:linear-gradient(180deg,#ef4444,#b91c1c);
  color:#fff;border-color:#fff;
  box-shadow:0 4px 0 #000,0 10px 24px rgba(239,68,68,.35),inset 0 2px 0 rgba(255,255,255,.25);
  animation:cta-pulse 2.2s ease-in-out infinite;
}
html[data-theme=team-rocket] .sec-head h2{color:#fff}

html[data-theme=pikachu] .home-tip{background:rgba(255,252,235,.85)}
html[data-theme=pikachu] .tip-pill{color:#7c2d12;background:linear-gradient(90deg,#fef3c7,#fecaca)}
html[data-theme=pikachu] .home-crown{background:linear-gradient(165deg,#fffceb,#fff8e7)!important}
html[data-theme=pikachu] .btn-crown{color:#3d2a14}

html[data-theme=team-rocket] .home-tip{
  background:#141414;border:1px solid #333;
  box-shadow:0 0 0 1px rgba(239,68,68,.2),0 8px 20px rgba(0,0,0,.4);
}
html[data-theme=team-rocket] .tip-pill{
  color:#fecaca;background:linear-gradient(90deg,#3b0a0a,#1a1a1a);border:1px solid #ef4444;
}
html[data-theme=team-rocket] .home-crown{
  background:linear-gradient(165deg,#1a1410,#141414)!important;
  box-shadow:0 0 0 1px rgba(245,215,110,.25),0 12px 28px rgba(0,0,0,.45)!important;
}
html[data-theme=team-rocket] .comp-pill{
  color:#fef3c7;background:linear-gradient(90deg,#3b2a08,#1a1a1a);border:1px solid #f5d76e;
  box-shadow:0 2px 0 #7c5e10;
}
html[data-theme=team-rocket] .crown-head h2{color:#fef3c7}
html[data-theme=team-rocket] .btn-crown{
  color:#1a1008;background:linear-gradient(180deg,#fde68a,#f59e0b);
  box-shadow:0 4px 0 #7c2d12,0 10px 22px rgba(245,158,11,.35),inset 0 2px 0 rgba(255,255,255,.35);
}

/* ===== Team Rocket = true dark mode: no light surfaces anywhere (audit: scripts/audit-dark.mjs) ===== */
html[data-theme=team-rocket]{--tr-bg:#121212;--tr-surf:#1c1c1e;--tr-surf2:#2a2a2d;--tr-line:#3a3a3e;--tr-text:#f2f2f2;--tr-muted:#b0b0b0;--tr-red:#ff6b6b;--tr-redbg:#b91c1c}
html[data-theme=team-rocket] .muted,html[data-theme=team-rocket] .r,html[data-theme=team-rocket] .src,html[data-theme=team-rocket] .home-sub{color:var(--tr-muted)!important}
html[data-theme=team-rocket] a,html[data-theme=team-rocket] .link,html[data-theme=team-rocket] .src a{color:var(--tr-red)}
html[data-theme=team-rocket] #toast{background:var(--tr-surf2);color:var(--tr-text);border-color:var(--tr-red)}
html[data-theme=team-rocket] .savebox,html[data-theme=team-rocket] .more,html[data-theme=team-rocket] dialog,html[data-theme=team-rocket] .modal,
html[data-theme=team-rocket] .srow .conf,html[data-theme=team-rocket] .seg label,html[data-theme=team-rocket] .chip,html[data-theme=team-rocket] .rar-chip,
html[data-theme=team-rocket] .tag,html[data-theme=team-rocket] .tag.ended,html[data-theme=team-rocket] .tag.upcoming,html[data-theme=team-rocket] .ev-tile .tag.soon,
html[data-theme=team-rocket] .deck .dnum,html[data-theme=team-rocket] .trade,html[data-theme=team-rocket] .row,html[data-theme=team-rocket] .req{background:var(--tr-surf2)!important;color:var(--tr-text)!important;border-color:var(--tr-line)}
html[data-theme=team-rocket] .savebox{border:3px solid var(--tr-red)}
html[data-theme=team-rocket] .savebox h3,html[data-theme=team-rocket] .savebox b{color:var(--tr-text)!important}
html[data-theme=team-rocket] .srow .conf.low{background:#5a3b00!important;color:#ffd27a!important}
html[data-theme=team-rocket] .tag.live,html[data-theme=team-rocket] .ev-tile .tag.live{background:var(--tr-redbg)!important;color:#fff!important}
html[data-theme=team-rocket] input,html[data-theme=team-rocket] select,html[data-theme=team-rocket] textarea{background:var(--tr-bg)!important;color:var(--tr-text)!important;border-color:var(--tr-line)!important}
html[data-theme=team-rocket] input::placeholder,html[data-theme=team-rocket] textarea::placeholder{color:#8a8a8a}
html[data-theme=team-rocket] input:-webkit-autofill,html[data-theme=team-rocket] input:-webkit-autofill:hover,html[data-theme=team-rocket] input:-webkit-autofill:focus{-webkit-text-fill-color:var(--tr-text)!important;caret-color:var(--tr-text)!important;-webkit-box-shadow:0 0 0 1000px var(--tr-bg) inset!important;box-shadow:0 0 0 1000px var(--tr-bg) inset!important}
html[data-theme=team-rocket] option{background:var(--tr-surf);color:var(--tr-text)}
html[data-theme=team-rocket] dialog::backdrop{background:rgba(0,0,0,.7)}
html[data-theme=team-rocket] .err{color:#ff8a8a}html[data-theme=team-rocket] .ok{color:#7ee2a8}
html[data-theme=team-rocket] .tabs button{background:var(--tr-surf2)!important;color:var(--tr-text)!important}
html[data-theme=team-rocket] .tabs button[aria-selected=true]{background:var(--tr-redbg)!important;color:#fff!important}

/* Header ☰ menu: Team Rocket's --ink is near-white but --card stays white, so the list was white-on-white.
   Give the dark theme a dark panel with full-strength light text and red hover. */
html[data-theme=team-rocket] header .navlist{background:#141414;color:#f5f5f5;border-color:#e3350d;box-shadow:0 6px 0 #000,0 10px 30px #000a}
html[data-theme=team-rocket] header .navlist .nt small{opacity:1;color:#c8c8c8}
html[data-theme=team-rocket] header .navlist button:hover,html[data-theme=team-rocket] header .navlist button:focus-visible{background:#e3350d55}
html[data-theme=team-rocket] .pst{background:#333;color:#f5f5f5}html[data-theme=team-rocket] .pst.good{background:#14532d;color:#d4f5dc}html[data-theme=team-rocket] .pst.bad{background:#7f1d1d;color:#fde0e0}html[data-theme=team-rocket] .pst.warn,html[data-theme=team-rocket] .warnbox{background:#5c4300;color:#fff1c2}

/* sweep fixes (readability audit f253): footer links on the gradient page, error text, filter sheet header/footer, OK button */
footer a{color:#2d4380}html[data-theme=pikachu] footer a{color:#8a3c00}html[data-theme=team-rocket] footer a{color:#ff6b6b}
html[data-theme=pikachu] .err{color:#be123c}html[data-theme=team-rocket] .err{color:#ff6b6b}
html[data-theme] .cf-head h2,html[data-vibe] .cf-head h2{color:var(--on-fill)}html[data-theme] .cf-foot{background:var(--surf);color:var(--on-surf)}html[data-theme] .cf-foot .muted{color:var(--on-surf-mut)}
html:not([data-theme]):not([data-vibe]) .cf-ok{background:#17796b}
html:not([data-theme]):not([data-vibe]) .he-pill:not(.he-add):not(.he-done){color:#2d4380}

/* Pixelify Sans has fi/fl/ff ligature glyphs that read as "A" ("first" -> "Arst"). The font file itself no longer has them (f270), and
   ligatures are off everywhere here too (a "font:" shorthand resets font-variant-ligatures, so the html-level rule in style.css missed those). */
*,*::before,*::after{font-variant-ligatures:none!important;font-feature-settings:"liga" 0,"clig" 0!important}
