/* IP tracker theme: archgen.tech layout and type; colours per the user (2026-10-17): the logo's black (#000000)
   and white, with orange accents. Light = white page, black text; dark = black page, white text. */
:root {
  color-scheme: light;
  --ag-paper:#ffffff;--ag-beige:#f5f5f5;--ag-ink:#000000;--ag-muted:#5c5c5c;--ag-line:#e5e5e5;--ag-accent:#c2410c;
  --ag-panel-border:#e5e5e5;--ag-panel-radius:.4rem;--ag-button-radius:.25rem;
  --ag-sans:"Avenir Next",Avenir,"Segoe UI",sans-serif;
  --ag-serif:"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  --ag-mono:Consolas,"SFMono-Regular",monospace;
  --ag-max-width:72rem;--ag-gutter:2.5rem;--ag-header-space:1.4rem;--ag-hero-space:4.75rem;
  --ag-display:clamp(2.25rem,7.4vw,5.75rem);--ag-title:clamp(2.25rem,4vw,3.5rem);
  --ag-logo-filter:none;--ag-logo-blend:multiply;
}
:root[data-theme="dark"] {
  color-scheme:dark;--ag-paper:#000000;--ag-beige:#161616;--ag-ink:#ffffff;--ag-muted:#a8a8a8;--ag-line:#2b2b2b;--ag-accent:#fb923c;--ag-panel-border:#2b2b2b;
  --ag-logo-filter:invert(1);--ag-logo-blend:screen;
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
  color-scheme:dark;--ag-paper:#000000;--ag-beige:#161616;--ag-ink:#ffffff;--ag-muted:#a8a8a8;--ag-line:#2b2b2b;--ag-accent:#fb923c;--ag-panel-border:#2b2b2b;
  --ag-logo-filter:invert(1);--ag-logo-blend:screen;
}}
:root {
  /* Compatibility names consume the same tokens. Page CSS must not redefine them. */
  --bg:var(--ag-paper);--paper:var(--ag-paper);--surface:var(--ag-paper);--panel:var(--ag-paper);--panel2:var(--ag-beige);
  --text:var(--ag-ink);--ink:var(--ag-ink);--navy:var(--ag-ink);--muted:var(--ag-muted);--dim:var(--ag-muted);
  --line:var(--ag-line);--strong:var(--ag-muted);--copper:var(--ag-muted);--cyan:var(--ag-ink);--green:var(--ag-ink);--amber:var(--ag-muted);--yellow:var(--ag-muted);--red:var(--ag-muted);
  --hover-bg:var(--ag-beige);--selected-bg:var(--ag-beige);--bar-bg:var(--ag-beige);
  --teal:var(--ag-accent);--coral:var(--ag-muted);--gray:var(--ag-line);--series-green:var(--ag-ink);--series-unknown:var(--ag-line);--on-accent:var(--ag-paper);
  --gated:var(--ag-muted);--faildetail:var(--ag-muted);--foot:var(--ag-muted);--scroll-thumb:var(--ag-muted);--scroll-track:var(--ag-paper);
  --serif:var(--ag-serif);--sans:var(--ag-sans);--mono:var(--ag-mono);
}
*{box-sizing:border-box}
html{background:var(--ag-paper);color:var(--ag-ink)}
body.ag-theme{margin:0;background:var(--ag-paper);color:var(--ag-ink);font:1rem/1.6 var(--ag-sans);font-variant-numeric:tabular-nums}
.ag-container{width:calc(100% - var(--ag-gutter)*2);max-width:var(--ag-max-width);margin-inline:auto}
.ag-theme a{color:var(--ag-ink);text-underline-offset:.25em}
.ag-theme a:hover{text-decoration:underline}
.ag-theme button,.ag-theme summary{touch-action:manipulation}
.ag-theme :is(a,button,summary,input,select):focus-visible{outline:2px solid var(--ag-ink);outline-offset:4px}
.ag-theme :is(h1,h2,h3){color:var(--ag-ink);font-weight:400}
.ag-theme h1,.ag-hero{font:500 var(--ag-display)/1.1 var(--ag-sans);letter-spacing:-.065em}
.ag-theme h2{font:400 2rem/1.2 var(--ag-serif);letter-spacing:-.035em}
.hero-accent{display:block;color:var(--ag-accent);font-family:var(--ag-serif);font-style:italic;font-weight:400;letter-spacing:-.055em}
.ag-panel{background:var(--ag-beige);border:1px solid var(--ag-panel-border);border-radius:var(--ag-panel-radius);padding:2rem 2.5rem}
.ag-button,.ag-theme button.ag-button{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;min-height:3.125rem;padding:.9rem 1.5rem;background:var(--ag-ink);border:1px solid var(--ag-ink);border-radius:var(--ag-button-radius);color:var(--ag-paper);font:600 .875rem var(--ag-sans);text-decoration:none;cursor:pointer}
.ag-theme a.ag-button{color:var(--ag-paper)}
.ag-topbar{border-bottom:1px solid var(--ag-line);background:var(--ag-paper)}
.ag-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:var(--ag-header-space)}
.ag-topbar nav{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;font-size:.875rem}
.ag-brand{display:inline-flex;align-items:center;min-height:2.75rem;flex-shrink:0}
.ag-logo-crop{display:block;position:relative;overflow:hidden;width:14rem;height:1.1458rem}
.ag-logo-crop img{position:absolute;left:-.7923rem;top:-2.9316rem;width:15.6198rem;height:7.81rem;max-width:none;filter:var(--ag-logo-filter);mix-blend-mode:var(--ag-logo-blend)}
.ag-theme .theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;border:1px solid var(--ag-line);border-radius:var(--ag-button-radius);background:transparent;color:var(--ag-ink);padding:.4rem .75rem;font:.75rem var(--ag-sans);cursor:pointer}
.ag-theme .theme-toggle[hidden]{display:none}
.ag-theme .skip{position:absolute;left:-10000px;top:.5rem;z-index:100;background:var(--ag-paper);padding:.75rem}
.ag-theme .skip:focus{left:1rem}
.ag-skip{position:absolute;left:-10000px;top:.5rem;z-index:100;background:var(--ag-paper);padding:.75rem}.ag-skip:focus{left:1rem}
@media(max-width:680px){:root{--ag-gutter:1.25rem;--ag-header-space:1.1rem;--ag-hero-space:3.25rem}.ag-logo-crop{width:8.75rem;height:.7161rem}.ag-logo-crop img{left:-.4952rem;top:-1.8322rem;width:9.7624rem;height:4.8812rem}.ag-topbar-inner{gap:1rem}.ag-topbar nav{gap:1rem}.ag-panel{padding:1.5rem}.ag-theme .theme-toggle{font-size:.6875rem;padding:.4rem .6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.ag-theme *, .ag-theme *::before,.ag-theme *::after{animation:none!important;transition:none!important}}
@media print{html,body.ag-theme{background:white;color:#000000}.ag-topbar,.theme-toggle{display:none}.ag-container{width:100%;max-width:none}.ag-panel{break-inside:avoid}}
