/* Standalone product surfaces share the console's light and dark preference.
   This stylesheet changes presentation only; page handlers own every state. */
@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/fonts/inter-latin-var.woff2') format('woff2');
}
@media screen {
  :root {
    color-scheme: dark;
    --bg:#101419; --surface:#171d24; --surface-2:#141a21; --surface-3:#202831;
    --border:#2a333e; --border-2:#3a4857;
    --text:#edf2f6; --text2:#c1cad4; --muted:#9ca8b5;
    --ironworks:#edf2f6; --forge:#c1cad4; --foundry:#9ca8b5; --galvanized:#8492a0;
    --scaffold:#3a4857; --coldroll:#2a333e; --clearspan:#202831;
    --deepwater:#99c8ee; --navy:#99c8ee; --conduit:#639dcd; --ballast:#141e28;
    --navy-light:#1c3042; --blue:#99c8ee; --blue-bg:#1c3042;
    --patina:#8cbbb6; --green:#8cbbb6; --green-bg:#1b3233;
    --gold:#dcb574; --amber:#dcb574; --amber-bg:#352d22;
    --oil:#ef9c9e; --red:#ef9c9e; --red-bg:#39272d;
    --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    --cond:var(--sans); --radius:5px; --shadow:none;
  }
  html[data-theme='light'] {
    color-scheme:light;
    --bg:#f3f4f5; --surface:#fff; --surface-2:#f8f9fa; --surface-3:#edf0f2;
    --border:#dde3e8; --border-2:#b5bfc9;
    --text:#111418; --text2:#343a42; --muted:#596773;
    --ironworks:#111418; --forge:#343a42; --foundry:#596773; --galvanized:#596773;
    --scaffold:#b5bfc9; --coldroll:#dde3e8; --clearspan:#f3f4f5;
    --deepwater:#0f4c81; --navy:#0f4c81; --conduit:#32668f; --ballast:#0b3559;
    --navy-light:#e7eef6; --blue:#0f4c81; --blue-bg:#e7eef6;
    --patina:#2f6f73; --green:#2f6f73; --green-bg:#e5eeee;
    --gold:#80580d; --amber:#80580d; --amber-bg:#f8efd9;
    --oil:#894a2d; --red:#894a2d; --red-bg:#f1e7df;
  }
  html,body { font-size:16px; line-height:1.6; }
  body { background:var(--bg); color:var(--text); }
  button,input,select,textarea { font-family:var(--sans); }
  button,a,input,select,textarea,summary,.drop { outline-offset:4px; }
  :focus-visible { outline:2px solid var(--conduit); }
  a { color:var(--deepwater); text-underline-offset:3px; }
  .topbar { min-height:74px; height:auto; flex-shrink:0; padding:18px 28px;
    clip-path:none; background:var(--surface); color:var(--text); border-bottom:1px solid var(--border); }
  .tb-logo { color:var(--text); }
  .tb-logo-mark { height:25px; }
  .tb-logo-sub { font-size:12px; letter-spacing:.04em; color:var(--muted); border-color:var(--border-2); }
  .tb-client { font-size:12px; letter-spacing:.04em; color:var(--muted); }
  .tb-sep { background:var(--border-2); }
  main { padding:48px 24px; background:none; }
  .authcard { width:920px; border-radius:5px; box-shadow:none; }
  .brandside { width:360px; flex-basis:360px; padding:42px 34px;
    background:var(--surface-2); color:var(--text); gap:24px; border-right:1px solid var(--border); }
  .brandside::after { display:none; }
  .brandside .eyebrow { font-family:var(--mono); font-size:12px; letter-spacing:.1em; color:var(--muted); }
  .brandside .pitch { font-size:46px; line-height:1.05; font-weight:800; letter-spacing:-.02em; color:var(--text); }
  .brandside .blurb { font-size:15px; line-height:1.75; color:var(--muted); }
  .trust { gap:14px; padding-top:20px; }
  .trust li { font-size:14px; color:var(--text2); }
  .trust svg { width:17px; height:17px; color:var(--green); }
  .formside { padding:44px 40px; }
  .headline { font-size:40px; font-weight:800; line-height:1.15; letter-spacing:-.02em; color:var(--text); }
  .sub { font-size:15px; line-height:1.6; margin:12px 0 26px; }
  label { font-size:14px; line-height:1.5; text-transform:none; letter-spacing:0; color:var(--text2); margin-bottom:8px; }
  input,select,input[type=text],textarea { min-height:48px; padding:11px 13px; font-size:16px;
    border:1px solid var(--border-2); border-radius:4px; background:var(--surface-2); color:var(--text); max-width:100%; }
  input:focus,select:focus,textarea:focus { border-color:var(--conduit); box-shadow:0 0 0 3px #639dcd20; }
  input[type=text],textarea { font-family:var(--mono); font-size:14px; line-height:1.65; }
  #nitro-root { font-size:14px!important; }
  button { min-height:44px; padding:10px 16px; border:1px solid var(--text); border-radius:4px;
    background:var(--text); color:var(--bg); font-family:var(--sans); font-size:15px; font-weight:500;
    line-height:1.5; letter-spacing:0; text-transform:none; }
  button:hover { background:var(--text2); border-color:var(--text2); }
  .tb-theme { display:inline-flex; align-items:center; justify-content:center; gap:8px; margin-left:auto;
    flex:0 0 auto; width:auto; max-width:none; background:var(--surface); color:var(--text2); border:1px solid var(--border-2); cursor:pointer; }
  .tb-theme:hover { background:var(--surface-2); color:var(--text); border-color:var(--border-2); }
  .tb-theme svg { display:block; flex-shrink:0; }
  input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
  button.ghost,.google-btn,.viewtoggle button { background:var(--surface-2); border-color:var(--border-2); color:var(--text); }
  button.ghost:hover,.google-btn:hover,.viewtoggle button:hover { background:var(--surface-3); border-color:var(--conduit); }
  .google-btn { min-height:44px; border-radius:4px; font-size:15px; }
  .divider { font-family:var(--mono); font-size:12px; letter-spacing:.06em; }
  .err,.ok,.foot-link { font-size:14px; line-height:1.6; }
  .foot-link a { color:var(--deepwater); }
  footer { font-family:var(--sans); font-size:12px; line-height:1.7; letter-spacing:0; text-transform:none; }
  .wrap { max-width:1120px; padding:38px 28px 64px; }
  header.top { gap:20px; padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--border); flex-wrap:wrap; }
  header.top img { height:28px; filter:brightness(0) invert(1); }
  html[data-theme='light'] header.top img { filter:brightness(0); }
  header.top .tag { font-size:34px; line-height:1.15; color:var(--text); font-weight:800; letter-spacing:0; }
  .lede { font-size:16px; line-height:1.8; max-width:86ch; margin-bottom:28px; }
  .card { padding:26px; border-radius:5px; margin-bottom:20px; box-shadow:none; min-width:0; }
  .card h2 { font-family:var(--sans); font-size:18px; line-height:1.4; font-weight:600;
    text-transform:none; letter-spacing:-.01em; color:var(--text); margin-bottom:20px; }
  .drop { background:var(--surface-2); padding:32px 24px; font-size:16px; }
  .drop .file { font-size:14px; overflow-wrap:anywhere; }
  .hint { font-size:14px; line-height:1.75; margin-top:8px; }
  .row { gap:18px; margin-top:24px; }
  .field { min-width:0; }
  .banner { padding:18px 20px; font-size:16px; line-height:1.6; }
  .banner small { font-size:14px; }
  .banner.pass,.pill.ok { color:var(--green); }
  .banner.warn { color:var(--amber); }
  .banner.info,.pill.nitro { color:var(--blue); }
  .banner.fail,.pill.no { color:var(--red); }
  .meta { font-size:14px; grid-template-columns:minmax(150px,210px) minmax(0,1fr); gap:16px 22px; }
  .meta dt { font-family:var(--sans); font-size:13px; text-transform:none; letter-spacing:0; }
  .meta dd .sub { font-size:13px; line-height:1.7; }
  .pill { font-size:12px; border-radius:4px; padding:4px 8px; display:inline-block; }
  .selfhost,.explain { background:var(--surface-2); color:var(--text2); border:1px solid var(--border); }
  .selfhost h2,.explain h2 { color:var(--text); }
  .selfhost p,.explain p,.explain li { font-size:15px; line-height:1.8; }
  .selfhost code,.explain code,.selfhost pre { font-size:13px; line-height:1.8; }
  .selfhost pre { padding:18px; background:var(--surface); color:var(--text2); }
  .selfhost code,.explain code { background:var(--surface); color:var(--text); }
  .selfhost a,.explain a { color:var(--blue); }
  .viewtoggle { flex-wrap:wrap; }
  .viewtoggle button { font-size:14px; }
  .viewtoggle button.active { background:var(--text); border-color:var(--text); color:var(--bg); }
  .wp { font-size:15px; }
  .wp .wp-head { border-color:var(--border-2); gap:20px; flex-wrap:wrap; }
  .wp .wp-title { font-size:28px; color:var(--text); }
  .wp .wp-meta { font-size:12px; }
  .wp .verdict { font-size:36px; }
  .wp .trust { font-size:14px; line-height:1.7; background:var(--surface-2); border-color:var(--conduit); }
  .wp .assert { grid-template-columns:155px minmax(0,1fr) 24px; gap:4px 18px; padding:16px 0; }
  .wp .assert .a-basis,.wp .rerun { font-size:13px; line-height:1.6; }
  .wp .pop { font-size:15px; }
  table { font-size:14px; }
  th { font-size:12px; }
  th,td { padding:12px; overflow-wrap:anywhere; }
  .checkname { font-family:var(--sans); font-size:15px; text-transform:none; letter-spacing:0; }
}
@media screen and (max-width:760px) {
  .topbar { min-height:68px; padding:18px; gap:12px; }
  .tb-client,.tb-sep { display:none; }
  .tb-theme .theme-label { display:none; }
  .tb-logo-sub { font-size:12px; }
  main { padding:24px 16px 32px; align-items:flex-start; }
  .authcard { flex-direction:column; width:520px; }
  .brandside { width:auto; flex:none; padding:28px; border-right:0; border-bottom:1px solid var(--border); gap:16px; }
  .brandside .pitch { font-size:40px; }
  .brandside .blurb { font-size:15px; }
  .trust { margin-top:0; padding-top:6px; gap:10px; }
  .formside { padding:28px; }
  .headline { font-size:36px; }
  .wrap { padding:24px 16px 44px; }
  header.top { gap:16px; padding-bottom:20px; margin-bottom:20px; }
  header.top img { height:24px; }
  header.top .tag { font-size:30px; }
  .card { padding:20px; }
  .drop { padding:24px 18px; }
  .row { align-items:stretch; }.row>.field { flex-basis:100%; }
  .row>div:not(.field) { flex-wrap:wrap; }
  .meta { grid-template-columns:1fr; gap:5px; }
  .meta dd { margin-bottom:16px; }.meta dd:last-child { margin-bottom:0; }
  .wp .assert { grid-template-columns:minmax(0,1fr) 24px; }
  .wp .assert .a-name { grid-column:1; }.wp .assert .a-detail,.wp .assert .a-basis { grid-column:1; }
  .wp .assert .a-mark { grid-column:2; grid-row:1 / span 3; }
  .viewtoggle { gap:8px; }.viewtoggle button { flex:1; }
  .wp-tech { overflow-x:auto; }
}
@media print { [data-theme-toggle] { display:none !important; } }
