﻿/* extracted verbatim 2026-08-28 estate speed sweep. New content = new filename. */

        /* ============================================================
           NCS = NHL Cheat Sheet namespace — zero collision with master.
           Table, game card, and filter styles kept from original;
           nav styles removed (now handled by BetBetterNav.ascx).
           ============================================================ */
        :root {
            /* Page-unique tokens only. Master tokens (--void/--panel/--ink*/--action/
               --model/--book/--gold/--mono/--display/--ui) live in Site.Master.
               Local aliases below re-point legacy NCS names to the master tokens
               so existing class + inline-style references stay intact. */
            --bg-app: var(--void);
            --bg-panel: var(--panel);
            --bg-card: var(--panel-2);
            --bg-table-header: var(--panel-2);
            --bg-table-row-even: var(--panel);
            --border-subtle: var(--line);
            --text-main: var(--ink);
            --text-muted: var(--ink-dim);
            --text-dim: var(--ink-faint);
            --color-primary: var(--action);
            --color-signal: var(--model);
            --color-risk: var(--book);
            --color-gold: var(--gold);
            --font-ui: var(--ui);
            --font-data: var(--mono);
            --radius-md: 8px;
            --radius-lg: 12px;
        }

        body, html {
            background-color: var(--bg-app);
            color: var(--text-main);
            font-family: var(--font-ui);
            margin: 0; padding: 0;
            line-height: 1.5;
        }

        .wrapper {
            width: 95%;
            max-width: 1400px;
            margin: 0 auto;
            padding: 1.25em 2%;
            box-sizing: border-box;
            content-visibility: auto;
        }

        a { text-decoration: none; color: inherit; transition: color 0.2s; }

        /* BREADCRUMB */
        .breadcrumbs { margin-bottom: 1.5rem; font-size: 0.75rem; font-family: var(--font-data); color: var(--text-dim); letter-spacing: 0.05em; text-transform: uppercase; }
        .breadcrumbs ol { list-style: none; padding: 0; margin: 0; }
        .breadcrumbs li { display: inline; }
        .breadcrumbs li::after { content: "/"; margin: 0 8px; color: var(--border-subtle); }
        .breadcrumbs li:last-child::after { content: ""; }
        .breadcrumbs a:hover { color: var(--color-primary); }

        /* PAGE HEADER */
        .page-header { margin-bottom: 1.5rem; border-bottom: 1px solid var(--border-subtle); padding-bottom: 1.25rem; }
        .section-title { font-size: 1.65rem; font-weight: 800; letter-spacing: -0.02em; margin: 0 0 0.5rem; color: var(--ink); font-family: var(--display); }

        .cheat-sheet-key {
            background: var(--bg-panel);
            border: 1px solid var(--border-subtle);
            border-left: 4px solid var(--color-primary);
            border-radius: var(--radius-md);
            padding: 1em;
            margin-bottom: 1.5em;
            font-size: 0.85rem;
            color: var(--text-muted);
            line-height: 1.6;
        }
        .cheat-sheet-key strong { color: var(--ink); }
        .cheat-sheet-key ul { margin: 0.5em 0; padding-left: 1.25em; }

        /* FILTERS */
        .filters-container {
            background: var(--bg-card);
            border: 1px solid var(--border-subtle);
            border-radius: var(--radius-md);
            padding: 1em;
            margin-bottom: 1.25em;
            display: flex; gap: 1em; align-items: center;
        }
        .filters-container label { color: var(--text-dim); font-weight: 600; font-size: 0.9rem; margin-right: 0.5em; }
        .filters-container select {
            background: var(--bg-app);
            color: var(--ink);
            border: 1px solid var(--border-subtle);
            padding: 0.5em 0.75em;
            border-radius: 6px;
            min-width: 200px;
            font-family: var(--font-ui);
        }

        /* GAME CARDS */
        .game-cards-container {
            display: flex; gap: 0.65em; margin-bottom: 1.25em;
            overflow-x: auto;
            padding-bottom: 0.65em;
            position: sticky; top: 0; z-index: 90;
            background: var(--void);
            backdrop-filter: blur(8px);
            padding-top: 0.65em;
            border-bottom: 1px solid var(--border-subtle);
        }
        .game-card {
            background: var(--bg-card);
            border: 1px solid var(--border-subtle);
            border-radius: 2em;
            padding: 0.5em 1em;
            display: flex; align-items: center; gap: 0.5em;
            cursor: pointer;
            transition: all 0.2s;
            white-space: nowrap;
            min-width: max-content;
        }
        .game-card:hover { border-color: var(--color-primary); transform: translateY(-1px); }
        .game-card.selected { background: var(--color-primary); color: white; border-color: var(--color-primary); box-shadow: 0 0 15px rgba(59,130,246,0.4); }
        .game-card img { width: 20px; height: 20px; object-fit: contain; }
        .game-card-teams { font-size: 0.82rem; font-weight: 700; font-family: var(--font-data); }

        /* DATA TABLE */
        /* content-visibility: skip paint/layout for off-screen games; DOM stays crawlable. */
        .game-section { margin-bottom: 1.75em; content-visibility: auto; contain-intrinsic-size: 0 640px; }
        .player-props-panel { overflow-x: auto; border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); }

        .props-table { width: 100%; border-collapse: collapse; font-family: var(--font-data); font-size: 0.82rem; }
        .props-table th {
            background: var(--bg-table-header);
            color: var(--text-dim);
            text-transform: uppercase;
            font-weight: 700; font-size: 0.72rem; letter-spacing: 0.05em;
            padding: 0.75em;
            text-align: right;
            border-bottom: 1px solid var(--border-subtle);
            white-space: nowrap;
            position: sticky; top: 0; z-index: 5;
        }
        .props-table th.player-name-col, .props-table th.team-col,
        .props-table th.market-col, .props-table th.book-col { text-align: left; }
        .props-table td {
            background: var(--bg-app);
            color: var(--text-main);
            padding: 0.6em 0.75em;
            border-bottom: 1px solid var(--border-subtle);
            text-align: right;
            white-space: nowrap;
        }
        .props-table tr:nth-child(even) td { background: var(--bg-table-row-even); }
        .props-table tr:hover td { background: var(--bg-card); }
        .props-table .player-name-col {
            text-align: left; font-weight: 700; color: var(--ink);
            position: sticky; left: 0; background: inherit; z-index: 10;
            border-right: 1px solid var(--border-subtle);
        }
        .props-table .market-col { text-align: left; color: var(--color-primary); }
        .props-table .edge-col { font-weight: 700; }
        .positive-edge, .avg-high { color: var(--color-signal); }
        .negative-edge, .avg-low  { color: var(--color-risk); }
        .lock-icon { color: var(--color-gold); margin-left: 4px; }

        /* Tooltip */
        .tooltip-text {
            visibility: hidden; position: absolute; bottom: 100%; left: 50%;
            transform: translateX(-50%); background: var(--bg-card);
            border: 1px solid var(--border-subtle); color: var(--text-main);
            padding: 0.5em; border-radius: 6px; width: 200px; z-index: 20;
            font-size: 0.75rem; white-space: normal; text-align: center;
            box-shadow: 0 4px 10px rgba(0,0,0,0.5); opacity: 0; transition: 0.2s;
        }
        th:hover .tooltip-text { visibility: visible; opacity: 1; }

        /* SEO CONTENT */
        .seo-content { max-width: 800px; margin: 3.5em auto; color: var(--text-muted); line-height: 1.7; }
        .seo-content h2 { color: var(--ink); margin-top: 2.5em; border-bottom: 1px solid var(--border-subtle); padding-bottom: 0.65em; font-size: 1.25em; font-family: var(--display); }
        .seo-content a { color: var(--color-primary); text-decoration: underline; }

        /* FAQ — native <details> */
        .ncs-faq-item {
            background: var(--bg-panel);
            border: 1px solid var(--border-subtle);
            border-radius: var(--radius-lg);
            margin-bottom: 0.75em;
            overflow: hidden;
            transition: border-color 0.15s;
        }
        .ncs-faq-item[open] { border-color: var(--card-edge); }
        .ncs-faq-item summary {
            padding: 1em;
            cursor: pointer;
            color: var(--ink);
            font-weight: 600;
            list-style: none;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 1em;
            font-size: 0.9em;
        }
        .ncs-faq-item summary::-webkit-details-marker { display: none; }
        .ncs-faq-item summary::after { content: '+'; font-family: var(--font-data); color: var(--color-primary); flex-shrink: 0; }
        .ncs-faq-item[open] summary::after { content: '−'; }
        .ncs-faq-body {
            padding: 0 1em 1em;
            color: var(--ink-dim);
            line-height: 1.75;
            font-size: 0.88em;
            border-top: 1px solid var(--border-subtle);
        }
        .ncs-faq-body p { margin-top: 0.75em; margin-bottom: 0; }

        /* POP WRAP */
        .ncs-pop-wrap { margin-bottom: 1.5em; }

        @media (max-width: 768px) {
            .section-title { font-size: 1.4rem; }
        }
    