/* sig-bridge.css · niftisports Signal bridge a1 (SIG_NAV_A, L120 package a) · Sage 2026-10-29
   Loaded only on niftisports.com, after arena-ice.css + signal_tokens.css. Until packages (b)-(e) rebuild each page in
   the Signal components, every page body keeps its Arena Ice markup; this file points the Ice tokens at the Signal
   tokens (light + dark), so the whole page reads as Signal: Signal colours, Public Sans / Schibsted / Roboto Mono,
   1 px lines, 8 px corners, no glow, no blur, no shadow on any letter. Display only: no number changes.
   html.ns-sig is set by the inline <head> script together with data-theme. */
/* r2 MUST 1 (Pixel LOOK 10-29): every app's old look classes (html.look-graphite / html.look-pine, 0,1,1) re-declared --bg, --ink,
   --card... over signal_tokens.css (:root, 0,1,0); in dark they resolved to nothing (transparent header, pure white text).
   lab-graphite.css also re-declares them on BODY (html.look-graphite body, 0,1,2), and in dark --ink -> --ch-text -> --i-tx -> --ink loops
   (= empty). So the Signal tokens are declared again on html.ns-sig[data-theme] AND its body (0,2,1 / 0,2,2), light then dark: they win
   in all 5 apps and the loop is broken (--i-tx -> --ink -> a colour). */
html.ns-sig[data-theme], html.ns-sig[data-theme] body{
  color-scheme:light;
  /* type */
  --fh:'Schibsted Grotesk',system-ui,sans-serif;   /* headings, wordmark, section titles: 800, letter-spacing -.03em */
  --fb:'Public Sans',system-ui,sans-serif;         /* all running text, buttons, tags */
  --fn:'Roboto Mono',ui-monospace,monospace;       /* every number: scores, records, times, W-L, Crabtree, % */
  /* shape */
  --lw:1px;            /* every line, border, divider */
  --r:8px;             /* every card, ticket, row, button; tags use 6px */
  /* ground + text */
  --bg:#FFFFFF;        /* page */
  --bg2:#F6F7F9;       /* score strip, ticket time block, rank pill */
  --card:#FFFFFF;      /* button + tag fill, prediction cards */
  --ink:#0B0D12;       /* main text, Final tag, primary framed button */
  --ink2:#3F4552;      /* secondary text */
  --dim:#5E6573;       /* labels, letters-only team badges */
  --ln:#E3E6EB;        /* 1px lines */
  --ln2:#0B0D12;       /* 2px section rules under headings, secondary button frame */
  /* brand */
  --acc:#1F4BFF;       /* cobalt: Join, links, est. tag, win-chance bars + numbers, cut line, top-8 rank pills */
  --accS:#EEF2FF;      /* predictions lane background, top-8 rank pill fill */
  --accL:#C9D5FF;      /* lane borders, bar track */
  --coral:#FF3D6E;     /* Plus button frame + dot, best-value plan frame */
  --plusTx:#C2184F;    /* Plus tag text + Plus-only table cells (coral is too light for small text) */
  /* status (outline tags) */
  --good:#0B7A43;      /* Clinched, Prediction right */
  --ww:#7E22CE;        /* In with a win (violet, Brett 10-29) */
  --live:#C42318;      /* Live (tag gets a filled dot) */
  --outc:#4F5563;      /* Out, Eliminated, Prediction wrong */
  /* follow / Plus band */
  --askbg:#0B0D12; --asktx:#FFFFFF; --askp:#C9CDD6; --askln:#0B0D12;
  /* icon tile edge (dark only) */
  --tileEdge:transparent;
}
html.ns-sig[data-theme="dark"], html.ns-sig[data-theme="dark"] body{
  color-scheme:dark;
  --bg:#0D1015; --bg2:#141821; --card:#11151C;
  --ink:#EDF0F5; --ink2:#B4BCC9; --dim:#8F98A7;
  --ln:#252B36; --ln2:#D3D9E3;
  --acc:#7B96FF; --accS:#131A31; --accL:#2C3A70;       /* cobalt lifted for dark */
  --coral:#FF7094; --plusTx:#FF8FAB;                   /* coral lifted for dark */
  --good:#4CCB8A; --ww:#C29BFF; --live:#FF7466; --outc:#9AA3B2;
  --askbg:#101831; --asktx:#F3F5FA; --askp:#B4BCC9; --askln:#2C3A70;
  --tileEdge:rgba(255,255,255,.16);                    /* 1px inner edge on sport icon tiles */
}
@media (prefers-color-scheme:dark){ html.ns-sig:not([data-theme="light"]):not([data-theme="dark"]), html.ns-sig:not([data-theme="light"]):not([data-theme="dark"]) body{
  color-scheme:dark;
  --bg:#0D1015; --bg2:#141821; --card:#11151C;
  --ink:#EDF0F5; --ink2:#B4BCC9; --dim:#8F98A7;
  --ln:#252B36; --ln2:#D3D9E3;
  --acc:#7B96FF; --accS:#131A31; --accL:#2C3A70;       /* cobalt lifted for dark */
  --coral:#FF7094; --plusTx:#FF8FAB;                   /* coral lifted for dark */
  --good:#4CCB8A; --ww:#C29BFF; --live:#FF7466; --outc:#9AA3B2;
  --askbg:#101831; --asktx:#F3F5FA; --askp:#B4BCC9; --askln:#2C3A70;
  --tileEdge:rgba(255,255,255,.16);                    /* 1px inner edge on sport icon tiles */
} }
html.ns-sig[data-theme], html.ns-sig[data-theme] body{
  --i-font:var(--fb); --i-cond:var(--fh); --i-mono:var(--fn);
  --i-r:8px; --i-r-lg:8px;
  --i-bg:var(--bg); --i-p:var(--card); --i-p2:var(--bg2); --i-inset:var(--bg2); --i-bd:var(--ln);
  --i-ln:var(--ln); --i-ln2:var(--ln);
  --i-tx:var(--ink); --i-tx2:var(--ink2); --i-tx3:var(--dim);
  --i-acc:var(--acc); --i-acc2:var(--dim); --i-l1:var(--accL); --i-l2:var(--acc);
  --i-acc-soft:var(--accS); --i-acc-soft2:var(--accL);
  --i-in:var(--good); --i-out:var(--outc); --i-bad:var(--live); --i-next:var(--live);
  --i-wait:var(--ww); --i-wait-soft:var(--bg2);
  --i-sky:transparent; --i-glow:transparent; --i-glow-soft:transparent; --i-bsh:none;
  --i-soft1:var(--bg2); --i-soft2:var(--bg2); --i-scrim:rgba(11,13,18,.5);
}
html.ns-sig[data-theme="light"]{ --i-on-acc:#FFFFFF; }
html.ns-sig[data-theme="dark"]{ --i-on-acc:#0D1015; }
html.ns-sig body{background:var(--bg);color:var(--ink);font-family:var(--fb)}
html.ns-sig h1, html.ns-sig h2, html.ns-sig h3{font-family:var(--fh);letter-spacing:-.03em}
/* brief section 3: solid colours only, no glow / text-shadow / blur on any letter */
html.ns-sig *{text-shadow:none!important}
html.ns-sig body *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* rule 10-26/10-27: no left-border accents anywhere (the Ice FAQ/glossary contents list had a 2 px left rule) */
html.ns-sig .ice-toc a{border-left:0!important;padding-left:0}
html.ns-sig .ice-toc a[aria-current]{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
/* the old Ice top bar / sport strip never show here (the Signal header replaces them); belt and braces */
html.ns-sig .ice-top, html.ns-sig .ice-subnav, html.ns-sig .ice-secs, html.ns-sig .ice-ft{display:none!important}
