/* Lines (NBA / MLB / NFL) - 2026-10-27. Reuses the .nl-* look from nhllines.css (Slate green); only new bits are .ln-* . Scoped so nothing else changes. */
.hhero .hcounts .ln-entry{display:flex;flex-direction:column;gap:4px;justify-content:center;padding:10px 16px;border-radius:10px;border:1px solid var(--slate-green,#3dff7a);background:rgba(61,255,122,.1);color:#e6edf3;text-decoration:none;cursor:pointer;min-width:240px}
.hhero .hcounts .ln-entry b{font:800 15px/1.1 Inter,system-ui,sans-serif;color:var(--slate-green,#3dff7a)}.hhero .hcounts .ln-entry span{font-size:11.5px;color:#aab4c2}
.hhero .hcounts .ln-entry:hover{background:rgba(61,255,122,.2)}.hhero .hcounts .ln-entry:focus-visible{outline:2px solid var(--slate-green,#3dff7a);outline-offset:2px}
.ln .ln-sub{margin:10px 0 4px;font:800 11px/1.2 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#aab4c2}.ln .ln-sub small{text-transform:none;letter-spacing:0;font-weight:600}
.ln .ln-pr{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:3px 0;border-top:1px solid #151b23}.ln .ln-pr:first-of-type{border-top:0}
.ln .ln-stat{font-size:11.5px;color:#8b96a5;text-align:right}
.ln .ln-inj>div{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;padding:2px 0}
.ln .ln-na,.ln-contract .ln-na{color:#6b7684;font-style:italic;font-weight:600}
.ln-der{font:800 9px/1 Inter,system-ui,sans-serif;font-style:normal;letter-spacing:.06em;text-transform:uppercase;padding:2px 4px;border-radius:4px;background:#3a2f0b;color:#f5c542;margin-left:4px}
.ln-contract{margin:6px 0 12px;padding:10px 12px;border:1px solid #2a3340;border-radius:10px;background:#0b0f14}
.ln-ch{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}.ln-ch b{font:800 12px/1 Inter,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--slate-green,#3dff7a)}
.ln-ct th{text-align:left;width:38%;color:#aab4c2}.ln-ct td{text-align:left}
.ln-contract tr.cur th,.ln-contract tr.cur td{color:var(--slate-green,#3dff7a)}
.ln .ln-scroll{max-height:none;overflow:auto}.nlp-box .ln-scroll{max-height:320px}
.nl-tbl tr.tot th,.nl-tbl tr.tot td{border-top:2px solid #2a3340;color:#fff}
.ln-bvp td.vs{border-left:1px solid #2a3340}.ln-bvp td.vs.nl-mut{font-style:italic;text-align:center}
.ln-team{margin-top:8px;padding:8px 10px;border-radius:8px;background:rgba(61,255,122,.08);border:1px solid rgba(61,255,122,.3);font-size:12.5px}
.ln-slot{display:grid;grid-template-columns:44px 1fr;gap:8px;padding:3px 0;border-top:1px solid #151b23;align-items:baseline}
.ln-players{display:flex;flex-wrap:wrap;gap:2px 12px}.ln-d.bk{opacity:.72;font-size:12.5px}
.nl-tag.t-OUT,.nl-tag.t-IR,.nl-tag.t-INACTIVE{background:#3a1414;color:#ff8a8a}.nl-tag.t-DOUBTFUL{background:#3a2210;color:#ffa05a}.nl-tag.t-QUESTIONABLE,.nl-tag.t-DAYTODAY{background:#3a2f0b;color:#f5c542}
.ln .ln-stack{grid-template-columns:1fr!important}.ln-bvp td.l{white-space:nowrap}.ln-bvp th{text-align:center!important}
.ln-ck{font-style:normal;color:var(--slate-green,#3dff7a);font-weight:800;margin-left:3px}
.ln .ln-ord{justify-content:flex-start;gap:10px}

/* NHL: Daily Faceoff attribution + cross-checks (rendered by public/nhllines.js) */
.nl-xchk{margin-top:10px;padding:8px 10px;border:1px solid #2a3340;border-radius:8px;background:#0b0f14;font-size:12px;line-height:1.5}
.nl-xchk ul{margin:4px 0 0;padding-left:16px}.nl-xchk li{margin:3px 0}
.nl-xchk a{color:var(--slate-green,#3dff7a)}
.nl-warn{margin-top:6px;padding:6px 10px;border:1px solid #6b4a12;border-radius:8px;background:#1d1608;color:#f0c36a}
/* outbound "more on this player" links (plain anchors, new tab) */
.nlp-ext{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;margin:6px 0 10px;padding:8px 12px;border:1px solid #2a3340;border-radius:10px;background:#0b0f14}
.nlp-ext>b{font:800 12px/1 Inter,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--slate-green,#3dff7a)}
.nlp-xl{color:#e6edf3;font-weight:700;text-decoration:underline;text-decoration-color:#3a4658;text-underline-offset:3px}.nlp-xl:hover,.nlp-xl:focus-visible{color:var(--slate-green,#3dff7a);text-decoration-color:var(--slate-green,#3dff7a)}
.nlp-ext small{margin-left:-8px}

/* Projected Lineups tab on the game page (public/lineupstab.js): the Lines matchup view inside the game page. */
#plineups{display:none;min-width:0}
.stage:not(.pregame)[data-tab="lineups"] #plineups{display:flex}
.stage:not(.pregame)[data-tab="lineups"] [data-tabs]:not([data-tabs~="lineups"]){display:none}
.stage:not(.pregame):not(.home):not(.mock)[data-tab="lineups"]>:not(.scorebug):not(.btabs):not(#plineups){display:none!important}
#plineups .nl.nl-emb{max-width:none;padding:0 0 8px}
/* NOT-STARTED games: the page has no tab row (home.css hides it and every tab pane). When there is real lineup data (.lu-on, set by lineupstab.js) a small row comes back with just two tabs:
   Gamecast (= the existing preview page, unchanged, Props section included) and Projected Lineups (scorebug + row + the lineups view). Any other saved / one-shot tab (e.g. Props landing) shows the preview as before. */
.stage.pregame.lu-on>.btabs{display:flex!important}
.stage.pregame.lu-on>.btabs button:not([data-k="gamecast"]):not([data-k="lineups"]){display:none}
.stage.pregame.lu-on:not([data-tab="lineups"])>.btabs button[data-k="gamecast"]{color:#fff;border-bottom-color:var(--acc)}
.stage.pregame.lu-on[data-tab="lineups"]>#plineups{display:flex!important}
.stage.pregame.lu-on[data-tab="lineups"]>:not(.scorebug):not(.btabs):not(#plineups){display:none!important}
/* player card box: padding counted inside the 100% width, so it no longer pokes ~7px off each side of a phone screen (same card in the Lines area and the Projected Lineups tab) */
.nlp-box{box-sizing:border-box}
/* "‹ Back" on top of every Lines list screen (all four sports; same look as the matchup "‹ Back") */
.nl-back.nl-top{justify-content:flex-start;margin-bottom:10px}
/* App-wide player card (public/playercard.js): clickable player names everywhere. Only elements with a real ESPN id get .gcp-n / data-gcp-id. */
[data-gcp-id]{cursor:pointer}
.gcp-n{cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;border-radius:3px;transition:color .12s,text-decoration-color .12s}
.gcp-n:hover,.gcp-n:focus-visible{color:var(--slate-green,#3dff7a);text-decoration-color:var(--slate-green,#3dff7a)}
.gcp-n:focus-visible{outline:2px solid var(--slate-green,#3dff7a);outline-offset:2px}
.gcp-pl{display:inline-flex;flex-wrap:wrap;gap:4px 8px;margin-left:8px;font-size:11px;vertical-align:baseline}
.gcp-pl .gcp-n{color:#c9d4df;font-weight:700}
.gcp-ov{z-index:2147483000}
.gcp-stats h3{margin:12px 0 4px}
