/* pro.css · SIG_PRO_A (L120 package c) · Sage 2026-10-29 · niftisports.com NFL + NBA pages (sig_*.html in niftiNFL / niftiNBA).
   Loaded after signal_tokens / signal_components / sig-bridge / sig-chrome; reads only Signal tokens (light + dark).
   Owned by the [niftisports pro] thread. No left-border accents, no glow / shadow on text, 1 px lines, 8 px corners. */
body.sp-page{margin:0;background:var(--bg);color:var(--ink)}
.sig .sp-main{display:block}
.sig .sp-main a{color:inherit;text-decoration:none}
.sig .sp-main .h2 a,.sig .sp-main a.more,.sig .sp-main .sp-empty a{color:var(--acc)}
.sig .sp-body{padding-top:24px;padding-bottom:30px}
.sig .sp-body .grid{padding-bottom:4px}
.sig .sp-gap{margin-top:22px}
.sig .sp-empty{font-size:14px;color:var(--ink2);padding:12px 0}
.sig .sp-note{font-size:13px;color:var(--ink2);border:var(--lw) solid var(--ln);border-radius:var(--r);padding:8px 12px;margin:14px 0 0;background:var(--bg2)}
.sig .sp-conf{font-family:var(--fn);font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--dim);margin:10px 0 6px}
/* tickets: the whole card is the link; focus ring for keyboards */
.sig a.g3{color:var(--ink)}
.sig a.g3:hover{border-color:var(--ink2)}
.sig a.g3:focus-visible,.sig a.srow:focus-visible,.sig a.pc:focus-visible,.sig a.wu:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.sig .g3 .tk b{white-space:nowrap}
.sig .sp-pend .tk b{font-size:12px;color:var(--dim);font-family:var(--fb);font-weight:600}
.sig .g3 .meta>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
/* standings rows (row cards) with fixed columns so the column labels line up */
.sig .srow.sp-sr{grid-template-columns:30px minmax(0,1fr) 66px 50px 82px;color:var(--ink)}
.sig .sp-sr:hover{border-color:var(--ink2)}
.sig .sp-sr .nm{display:flex;gap:8px;align-items:baseline;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sig .sp-sr .rc,.sig .sp-sr .cb{text-align:right;font-variant-numeric:tabular-nums}
.sig .sp-sr .sp-sub{font-family:var(--fn);font-size:12px;color:var(--ink2);text-align:right;white-space:nowrap}
.sig .sp-sr .tag{justify-self:end}
.sig .sp-tie{font-family:var(--fb);font-size:11px;font-weight:600;color:var(--dim);border:var(--lw) solid var(--ln);border-radius:6px;padding:0 6px;line-height:1.5}
.sig .sp-colh{display:grid;grid-template-columns:30px minmax(0,1fr) 66px 50px 82px;gap:10px;padding:0 11px 4px;font-size:11px;font-weight:600;color:var(--dim)}
.sig .sp-colh span:nth-child(n+3){text-align:right}
.sig .sp-divs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 32px}
.sig .sp-div .srows{margin-top:2px}
.sig .sp-div .cutd{margin:2px 0}
/* week / day chips */
.sig .sp-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:16px}
.sig .sp-chips::-webkit-scrollbar{display:none}
.sig .sp-chips a{white-space:nowrap;font-size:12.5px;font-weight:600;padding:6px 10px;border:var(--lw) solid var(--ln);border-radius:var(--r);color:var(--ink2);background:var(--card)}
.sig .sp-chips a.on{color:var(--ink);box-shadow:inset 0 0 0 var(--lw) var(--ink);border-color:var(--ink)}
/* ask band buttons */
.sig .sp-askb{display:flex;gap:10px;flex-wrap:wrap}
.sig .ask .btn{color:var(--ink)}
@container (max-width:600px){
  .sig .sp-divs{grid-template-columns:minmax(0,1fr)}
  .sig .srow.sp-sr,.sig .sp-colh{grid-template-columns:28px minmax(0,1fr) 58px 44px 66px;gap:8px}
  .sig .sp-hsub .srow.sp-sr,.sig .sp-hsub .sp-colh{grid-template-columns:28px minmax(0,1fr) 58px 44px}
  .sig .sp-hsub .sp-sr .sp-sub,.sig .sp-hsub .sp-colh span:nth-child(5){display:none}
  .sig .sp-hpct .srow.sp-sr,.sig .sp-hpct .sp-colh{grid-template-columns:28px minmax(0,1fr) 50px 66px}
  .sig .sp-hpct .sp-sr .cb,.sig .sp-hpct .sp-colh span:nth-child(4){display:none}
  .sig .sp-body{padding-top:18px}
  .sig .lane .lh .pwr{margin-left:0}
}
/* a2 (own look pass): records never wrap, scores keep their width, long names end in an ellipsis */
.sig .g3 .rc,.sig .g3 .sc{white-space:nowrap;flex:none}
.sig .g3 .sc{min-width:2ch;text-align:right}
.sig .sp-sr .sp-nmx{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.sig .sp-sr .nm .bd,.sig .sp-sr .sp-tie{flex:none}
/* a3: in the two-column hubs, the ticket lists go to one column below 1000 px (two tickets side by side get too narrow) */
@container (max-width:1000px){.sig .grid.g2 .rlist{grid-template-columns:minmax(0,1fr)}}
.sig .g3 .meta>span:first-child{flex:0 1 auto}
/* r3 (Pixel LOOK SIG_PRO_A 10-30) */
/* MUST 1: Framed buttons. arena-ice.css (still loaded for older page bodies) fills every .btn with !important; Framed wins here:
   card fill, 2 px frame in the button's colour (--c), dot from signal_components, ink text */
html[data-theme] body.sp-page .sp-main .btn{background:var(--card)!important;color:var(--ink)!important;border:0!important;box-shadow:inset 0 0 0 2px var(--c,var(--ink))!important}
/* MUST 2: standings boxes one column under 1000 px (same rule as the ticket lists) */
@container (max-width:1000px){.sig .sp-divs{grid-template-columns:minmax(0,1fr)}}
/* SHOULD 7: '1:00 PM' on one line in the 78 px block */
.sig .g3 .tk b{font-size:14px;letter-spacing:-.02em}
/* SHOULD 9: hub header icon beside the title; 40 px on phones. Hub game list: 4 on phones + 'All N games' */
.sig .sp-hubh{flex-wrap:nowrap;align-items:center}
.sig .sp-hubh>div{min-width:0}
.sig .more.sp-ph{display:none}
@container (max-width:600px){
  .sig .sp-hubh{gap:12px}
  .sig .sp-hubh img.sport-ic{width:40px;height:40px}
  .sig .sp-hubl>.g3:nth-child(n+5){display:none}
  .sig .more.sp-ph{display:block}
  .sig .more.sp-dk{display:none}
}
/* r3: phone standings rows keep the full nickname + 'tied' chip: the letter badge steps aside there (nickname says it) */
@container (max-width:600px){.sig .srow.sp-sr .nm .bd{display:none}}
/* r3: hubs go to one column under 1000 px (the right column got too narrow for full nicknames at 800); NBA hub rows = W-L + GB */
@container (max-width:1000px){.sig .sp-body .grid.g2{grid-template-columns:minmax(0,1fr)}}
.sig .sp-hub3 .srow.sp-sr{grid-template-columns:30px minmax(0,1fr) 50px 66px}
.sig .sp-hub3 .srow.sp-sr .cb{display:none}
/* r4: a long chip ('tied at the cut') drops under the nickname instead of cutting it (as HS basketball's Monmouth Academy) */
.sig .srow.sp-sr .nm{flex-wrap:wrap;row-gap:2px;white-space:normal}
.sig .srow.sp-sr .sp-nmx{flex:0 1 auto}
.sig .srow.sp-sr .sp-tie{white-space:nowrap}
/* ================= PRO_V1_A: page bodies that keep their own template (.sp-legacy), drawn in the Signal kit =================
   Pixel V1 audit P1/P2: sentence-case Schibsted headings, cobalt links, Signal cards / tables / bars / tags, numbers in Roboto
   Mono, 1 px lines, 8 px corners, no glow, no uppercase, no teal. Only inside .sp-legacy (sig_legacy.html frames). */
.sig .sp-legacy{font-family:var(--fb);font-size:14px;line-height:1.55;color:var(--ink);display:flex;flex-direction:column;gap:18px;min-width:0}
.sig .sp-legacy *{text-transform:none!important;letter-spacing:normal;text-shadow:none!important}
.sig .sp-legacy a{color:var(--acc)!important;text-decoration:none}
.sig .sp-legacy a:hover{text-decoration:underline}
.sig .sp-legacy h2,.sig .sp-legacy h3{font-family:var(--fh)!important;font-weight:800;letter-spacing:-.01em!important;color:var(--ink);margin:0 0 4px}
.sig .sp-legacy h2{font-size:17px}
.sig .sp-legacy h3{font-size:15px}
.sig .sp-legacy p{margin:0 0 8px}
.sig .sp-legacy .sub,.sig .sp-legacy .muted,.sig .sp-legacy small{color:var(--ink2);font-size:13px}
.sig .sp-legacy .sub{margin:0 0 12px}
.sig .sp-legacy .stack{display:flex;flex-direction:column;gap:18px}
/* cards */
.sig .sp-legacy .panel,.sig .sp-legacy .iq-panel,.sig .sp-legacy .w31-card,.sig .sp-legacy .ice-board,.sig .sp-legacy .ice-band{background:var(--card)!important;border:var(--lw) solid var(--ln)!important;border-radius:var(--r)!important;padding:16px 18px;box-shadow:none!important;min-width:0}
.sig .sp-legacy .panel>h2:first-child{border-bottom:calc(var(--lw)*2) solid var(--ln2);padding-bottom:8px;margin-bottom:10px}
.sig .sp-legacy .panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.sig .sp-legacy .grid-2,.sig .sp-legacy .grid-4,.sig .sp-legacy .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sig .sp-legacy .grid-4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.sig .sp-legacy .note,.sig .sp-legacy .ice-note{background:var(--bg2)!important;border:var(--lw) solid var(--ln)!important;border-radius:var(--r);padding:10px 14px;font-size:13px;color:var(--ink2)!important}
.sig .sp-legacy .empty{color:var(--ink2);padding:12px 0}
/* record strip: tiles -> one joined box */
.sig .sp-legacy .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));border:var(--lw) solid var(--ln);border-radius:var(--r);overflow:hidden;gap:0;background:var(--card)}
.sig .sp-legacy .tile{border:0!important;border-radius:0!important;padding:12px 14px!important;background:transparent!important;box-shadow:inset -1px -1px 0 var(--ln)!important;min-width:0}
.sig .sp-legacy .tile .v{font-family:var(--fn)!important;font-size:20px!important;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.sig .sp-legacy .tile .k{font-size:11.5px;color:var(--dim);font-weight:600;margin-top:2px}
.sig .sp-legacy .tile .d{font-size:12px;color:var(--ink2)}
/* tables */
.sig .sp-legacy table{width:100%;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}
.sig .sp-legacy th{font-size:11.5px;font-weight:600;color:var(--dim);text-align:left;padding:7px 10px;border-bottom:calc(var(--lw)*2) solid var(--ln2);white-space:nowrap}
.sig .sp-legacy td{padding:8px 10px;border-bottom:var(--lw) solid var(--ln);vertical-align:top}
.sig .sp-legacy tr:last-child td{border-bottom:0}
.sig .sp-legacy td.num,.sig .sp-legacy th.num,.sig .sp-legacy .num{text-align:right;font-family:var(--fn);white-space:nowrap}
.sig .sp-legacy .sp-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* chips (week / filter rows) */
.sig .sp-legacy .chips,.sig .sp-legacy .days{display:flex;gap:6px;flex-wrap:wrap}
.sig .sp-legacy .chip,.sig .sp-legacy .day,.sig .sp-legacy .mx-chip{font-size:12.5px;font-weight:600;padding:6px 10px;border:var(--lw) solid var(--ln)!important;border-radius:var(--r);color:var(--ink2)!important;background:var(--card)!important}
.sig .sp-legacy .chip.on{color:var(--ink)!important;border-color:var(--ink)!important;box-shadow:inset 0 0 0 var(--lw) var(--ink)}
/* picks table rows */
.sig .sp-legacy .picks{display:flex;flex-direction:column}
.sig .sp-legacy .prow{display:grid;grid-template-columns:96px 1.5fr 150px 64px 90px 110px 2fr;gap:12px;align-items:center;padding:10px 0;border-bottom:var(--lw) solid var(--ln)}
.sig .sp-legacy .prow.head{font-size:11.5px;color:var(--dim);font-weight:600;border-bottom:calc(var(--lw)*2) solid var(--ln2)}
.sig .sp-legacy .pick{display:inline-block;font-family:var(--fn);font-weight:600;font-size:12.5px;padding:2px 8px;border-radius:6px;background:var(--card)!important;color:var(--ink)!important;box-shadow:inset 0 0 0 var(--lw) var(--ln2);border:0!important}
.sig .sp-legacy .why{font-size:13px;color:var(--ink2)}
.sig .sp-legacy .prob{display:flex;align-items:center;gap:8px}
.sig .sp-legacy .prob .bar,.sig .sp-legacy .brow .t{flex:1;height:6px;border-radius:3px;overflow:hidden;background:var(--accL)!important}
.sig .sp-legacy .prob .bar i,.sig .sp-legacy .brow .t i,.sig .sp-legacy .cols .c{background:var(--acc)!important;fill:var(--acc)!important;display:block;height:100%;animation:none!important}
.sig .sp-legacy .chart rect.b{fill:var(--acc)!important;animation:none!important}
.sig .sp-legacy .cols .c.partial{background:var(--accL)!important}
.sig .sp-legacy .prob span,.sig .sp-legacy .brow .n{font-family:var(--fn);font-size:12px}
.sig .sp-legacy .bars{display:flex;flex-direction:column;gap:6px;font-size:12.5px}
.sig .sp-legacy .brow{display:grid;grid-template-columns:var(--lbl,64px) 1fr 48px;gap:8px;align-items:center}
.sig .sp-legacy .brow .l{text-align:right;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sig .sp-legacy .cols{display:flex;gap:6px;align-items:flex-end;height:150px;border-bottom:var(--lw) solid var(--ln);margin-top:14px}
.sig .sp-legacy .cols .c{flex:1;min-width:4px;position:relative;height:auto}
.sig .sp-legacy .axis{display:flex;justify-content:space-between;font-size:12px;color:var(--dim);margin-top:6px}
.sig .sp-legacy .heat{display:grid;gap:6px;font-size:13px;align-items:center}
.sig .sp-legacy .heat .hl{text-align:right;color:var(--ink2)}
.sig .sp-legacy .heat .hh{text-align:center;color:var(--dim);font-size:12px}
.sig .sp-legacy .heat .cell{height:36px;border-radius:6px;background:var(--bg2)}
.sig .sp-legacy .chart svg{width:100%;height:auto;display:block}
.sig .sp-legacy .chart text{fill:var(--dim);font-size:11px}
.sig .sp-legacy .chart .grid{stroke:var(--ln)}
/* grades: Outline tags (Pixel: never a grey fill) */
.sig .sp-legacy .hit,.sig .sp-legacy .miss,.sig .sp-legacy .ch-tag{display:inline-flex;align-items:center;font-family:var(--fb);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--card)!important;border:var(--lw) solid currentColor!important;white-space:nowrap}
.sig .sp-legacy .hit,.sig .sp-legacy .ch-tag--right{color:var(--good)!important}
.sig .sp-legacy .miss,.sig .sp-legacy .ch-tag--wrong{color:var(--outc)!important}
.sig .sp-legacy .vg{font-size:12px;color:var(--dim)}
.sig .sp-legacy .vg .differ{color:var(--acc)}
@container (max-width:860px){
  .sig .sp-legacy .prow{grid-template-columns:1fr auto;gap:6px 12px}
  .sig .sp-legacy .prow.head{display:none}
  .sig .sp-legacy .prow .prob,.sig .sp-legacy .prow .why{grid-column:1 / -1}
}
@container (max-width:1000px){.sig .sp-legacy .grid-2,.sig .sp-legacy .grid{grid-template-columns:minmax(0,1fr)}}
@container (max-width:600px){.sig .sp-legacy .panel{padding:14px 12px}.sig .sp-legacy td,.sig .sp-legacy th{padding:7px 6px}}
/* the old pages' own colour names (inline styles in their bodies) point at the Signal tokens */
.sig .sp-legacy{--accent:var(--acc);--accent-2:var(--acc);--accent-soft:var(--accS);--accent-faint:var(--accL);--line:var(--ln);--line-2:var(--ln);--surface:var(--card);--surface-2:var(--bg2);--ink-2:var(--ink2);--ink-3:var(--dim);--bad:var(--outc);--bad-soft:var(--bg2);--good-soft:var(--card);--radius:var(--r)}
/* wide tables never push the page sideways: they scroll inside their card */
.sig .sp-legacy>*,.sig .sp-legacy .panel,.sig .sp-legacy .grid-2>*{min-width:0;max-width:100%}
.sig .sp-legacy .panel,.sig .sp-legacy .w31-card{overflow-x:auto}
@container (max-width:860px){.sig .sp-legacy table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.sig .sp-legacy td.num,.sig .sp-legacy th.num{white-space:nowrap}.sig .sp-legacy td.wrap,.sig .sp-legacy td:last-child{white-space:normal}}
/* ================= PRO_V1_A: team + game pages (L128) ================= */
.sig .sp-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sig .sp-col{display:grid;gap:22px;align-content:start;min-width:0}
.sig .sp-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sig .sp-row.sp-sb{justify-content:space-between;font-size:13.5px}
.sig .sp-row.sp-sb>span:first-child{display:flex;gap:8px;align-items:baseline;font-weight:600}
.sig .sp-bt{font-family:var(--fh);font-weight:800;font-size:15px;letter-spacing:-.01em}
.sig .sp-p{font-size:14px;color:var(--ink2);margin:0 0 8px}
.sig .sp-q{font-family:var(--fh);font-weight:800;font-size:14.5px;margin:12px 0 2px;letter-spacing:-.01em}
.sig .fact .v.sp-txt{font-family:var(--fb);font-size:14.5px;font-weight:600;line-height:1.35}
.sig .fact .v.sp-txt::first-letter{text-transform:uppercase}
.sig .sp-mh{margin-top:14px}
.sig .sp-mh .tm{align-items:baseline}
.sig .sp-mh .tm a{color:var(--ink)}
.sig .sp-mh .tm.l b,.sig .sp-mh .tm.l .sp-mhsc{color:var(--ink2)}
.sig .sp-mh .tk.lv b{color:var(--live)}
.sig .sp-mhsc{font-family:var(--fn);font-weight:700;font-size:28px;letter-spacing:-.03em}
.sig .sp-mh .tm .rc{flex-basis:100%;font-family:var(--fb);font-size:13px}
.sig .sp-tab{font-size:13px}
.sig .sp-tab th{font-size:11.5px;font-weight:600;color:var(--dim);text-align:left;padding:6px 8px;border-bottom:calc(var(--lw)*2) solid var(--ln2)}
.sig .sp-tab td{padding:6px 8px;border-bottom:var(--lw) solid var(--ln)}
.sig .sp-tab .num{text-align:right;font-family:var(--fn)}
.sig .sp-tw{overflow-x:auto}
.sig .box .mono{font-family:var(--fn);font-size:12.5px;color:var(--ink2)}
@container (max-width:600px){.sig .sp-mhsc{font-size:24px}.sig .sp-mh .tm b{font-size:26px}}
/* PRO_V1_A: "Show all N" under a collapsed long list on phones (Pixel V1 SHOULD) */
.sig .sp-legacy .sp-more{display:block;margin:10px 0 4px;padding:8px 14px;font:600 13px/1.2 var(--fb);color:var(--acc);background:var(--card);border-radius:8px;box-shadow:inset 0 0 0 var(--lw) var(--ln);cursor:pointer}
.sig .sp-legacy .sp-more:hover{box-shadow:inset 0 0 0 var(--lw) var(--acc)}
/* PRO_V1_A r2 (Pixel LOOK batch 2): a table wider than its card under 1000 px = row cards (JS adds .sp-rc + data-l labels) */
.sig .sp-legacy table.sp-rc{display:block!important;overflow:visible!important;width:100%!important;min-width:0!important;border:0}
.sig .sp-legacy table.sp-rc tbody,.sig .sp-legacy table.sp-rc thead{display:block}
.sig .sp-legacy table.sp-rc tr{display:block;padding:10px 0;border-bottom:var(--lw) solid var(--ln)}
.sig .sp-legacy table.sp-rc tr.sp-rch{display:none}
.sig .sp-legacy table.sp-rc tr[hidden]{display:none}
.sig .sp-legacy table.sp-rc td{display:block;overflow:hidden;padding:2px 0!important;border:0!important;text-align:right!important;white-space:normal!important;min-width:0!important;overflow-wrap:normal;word-break:normal}
.sig .sp-legacy table.sp-rc td::before{content:attr(data-l);float:left;margin-right:12px;color:var(--dim);font:500 12px/1.6 var(--fb);text-align:left}
.sig .sp-legacy table.sp-rc td:first-child{display:block;text-align:left!important;font-weight:600;padding-bottom:4px!important}
.sig .sp-legacy table.sp-rc td:first-child::before,.sig .sp-legacy table.sp-rc td[data-l=""]::before{content:none}
.sig .sp-legacy table.sp-rc td[data-l=""]{text-align:left!important}
.sig .sp-legacy table.sp-rc .bar{display:none}
/* selected chips/tabs = Framed (kit), never a solid fill */
html body.sig .sp-legacy .chip.on,html body.sig .sp-legacy .day.on,html body.sig .sp-legacy .chip[aria-current],html body.sig .sp-legacy .mx-chip[aria-pressed="true"],html body.sig .sp-legacy .is-on{background:var(--card)!important;color:var(--acc)!important;border-color:var(--acc)!important;box-shadow:inset 0 0 0 var(--lw) var(--acc)!important}
/* backtest season chart: readable labels, the benchmark marks drawn */
html body.sig .sp-legacy .chart text{fill:var(--dim)!important;font-size:11px}
html body.sig .sp-legacy .chart .ref{stroke:var(--ink)!important;stroke-width:2;stroke-dasharray:4 3}
/* PRO_SCHED_A (Sage 10-31, Brett N6; r2 Pixel M1-M4): ONE schedule pattern for every sport: week nav (chips scroll inside
   their own row, previous / next always reachable), team menu, sticky day chips, days of tickets. Kit tokens only. */
.sig .sp-wk{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 0 14px}
.sig .sp-wka{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:13px;font-weight:600;padding:7px 12px;border-radius:var(--r);color:var(--acc);background:var(--card);box-shadow:inset 0 0 0 var(--lw) var(--acc);text-decoration:none}
.sig .sp-wka.off{color:var(--dim);box-shadow:inset 0 0 0 var(--lw) var(--ln);cursor:default}
.sig .sp-wkc,.sig .sp-dc{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px}
.sig .sp-wkc{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%)}
.sig .sp-wkc::-webkit-scrollbar,.sig .sp-dc::-webkit-scrollbar{display:none}
.sig .sp-wkc a,.sig .sp-dc a{white-space:nowrap;font-size:12.5px;font-weight:600;padding:6px 10px;border-radius:var(--r);color:var(--ink2);background:var(--card);box-shadow:inset 0 0 0 var(--lw) var(--ln);text-decoration:none}
.sig .sp-wkc a.on,.sig .sp-dc a.on{color:var(--acc);box-shadow:inset 0 0 0 calc(var(--lw) * 2) var(--acc)}
.sig .sp-dc{position:sticky;top:0;z-index:5;background:var(--bg);margin:0 -2px 14px;padding:8px 2px}
.sig .sp-dc a small{margin-left:5px;font-weight:500;color:var(--dim)}
.sig .sp-day{margin:0 0 18px;scroll-margin-top:60px}
.sig .sp-dayh{display:flex;align-items:center;gap:8px;font:700 15px/1.3 var(--fh);color:var(--ink);margin:0 0 8px;padding-bottom:6px;border-bottom:calc(var(--lw) * 2) solid var(--ln2)}
.sig .sp-dayh small{margin-left:auto;font:500 12px/1 var(--fb);color:var(--dim)}
.sig .sp-sched .g3 .tk span{display:none}
.sig .sp-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 14px}
.sig .sp-filter label{font-size:13px;font-weight:600;color:var(--ink2)}
.sig .sp-filter select{font:500 14px/1.2 var(--fb);color:var(--ink);background:var(--card);border:var(--lw) solid var(--ln);border-radius:var(--r);padding:8px 10px;min-height:40px;max-width:100%}
.sig .sp-flink{font-size:13px;font-weight:600;color:var(--acc)}
/* 'Result soon' / 'Live' in a ticket's time box: one line, sized like 'Final' (= home N8), never touching the box edge */
.sig .g3.sp-pend .tk b,.sig .g3.sp-live .tk b{font:600 12px/1.2 var(--fb);letter-spacing:0;white-space:nowrap}
@container (max-width:600px){.sig .sp-wka span{display:none}.sig .sp-wka{padding:7px 10px}}
/* PRO_SCHED_B (Pixel LIVE M1): the kit's body{overflow-x:hidden} turns body into a scroll box, so position:sticky never
   sticks; clip clips the same way without one. Pro pages only (body.sp-page). + the Signal 404 link list. */
html[data-theme] body.sig.sp-page,html body.sig.sp-page{overflow-x:clip}
.sig .sp-404 .sp-links{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sig .sp-404 .sp-links a{display:inline-block;font-size:15px;font-weight:600;color:var(--acc);padding:6px 0}
