﻿/* extracted verbatim 2026-08-28 estate speed sweep. New content = new filename. */

        /* ============================================================
           NPL = NHL Parlays namespace — zero collision with master CSS.
           Tokens come from Site.Master; we only consume them here.
           Parlay card styles (parlay-tip-row, parlay-legs, leg-item-dot
           etc.) are page-scoped and power the repeater UI. Ambient-lift
           on .parlay-tip-row is applied by the master stylesheet.
           ============================================================ */
        .npl-wrap { width: 100%; max-width: 1120px; margin: 0 auto; padding: 1.25em 5% 0; box-sizing: border-box; }
        .npl-wrap a { transition: color .18s, background .18s, border-color .18s, transform .18s; }

        /* BREADCRUMB */
        .npl-breadcrumb { margin-bottom: 1.1em; font-size: .72em; font-family: var(--mono); color: var(--ink-faint); text-transform: uppercase; letter-spacing: .08em; }
        .npl-breadcrumb a { color: var(--ink-dim); }
        .npl-breadcrumb a:hover { color: var(--action-hi); }
        .npl-breadcrumb .sep { margin: 0 .4em; opacity: .7; }

        /* HERO — value-stating H1 + decision-side proof */
        .npl-hero { margin: .25em 0 1.6em; }
        .npl-eyebrows { display: flex; flex-wrap: wrap; gap: .5em; margin-bottom: .9em; }
        .npl-tag { display: inline-flex; align-items: center; gap: .45em; font-family: var(--mono); font-size: .68em; letter-spacing: .04em; text-transform: uppercase; color: var(--accent-ink); background: rgba(70,140,255,.10); border: 1px solid var(--card-edge); padding: .4em .7em; border-radius: 2em; }
        .npl-tag i { color: var(--action-hi); }
        .npl-h1 { font-family: var(--display); font-size: clamp(1.85rem, 4.4vw, 2.7rem); line-height: 1.05; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 0 0 .4em; }
        .npl-h1 .hl { color: var(--action-hi); }
        .npl-sub { font-size: 1.02em; color: var(--ink-dim); max-width: 640px; line-height: 1.55; margin: 0 0 1.2em; }
        .npl-hero-cta { display: flex; flex-wrap: wrap; align-items: center; gap: .8em; }

        /* QUICK-ANSWER (AEO) — kept, demoted visually under the picks zone */
        .aeo-answer-box { position: relative; overflow: hidden; background: var(--panel); border: 1px solid var(--line); border-radius: 14px; padding: 1.1em 1.2em; margin: 0 0 1.4em; }
        .aeo-answer-inner { position: relative; z-index: 1; }
        .aeo-kicker { display: inline-flex; align-items: center; gap: .65em; font-family: var(--mono); font-size: .7em; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-faint); margin-bottom: .6em; }
        .aeo-pill { display: inline-flex; align-items: center; gap: .4em; padding: .3em .65em; border-radius: 2em; border: 1px solid var(--card-edge); background: rgba(70,140,255,.08); color: var(--accent-ink); font-size: .82em; font-weight: 700; }
        .aeo-title { margin: 0 0 .45em; font-size: 1.04em; font-weight: 800; color: var(--ink); letter-spacing: -.01em; font-family: var(--display); }
        .aeo-short-answer { margin: 0; color: var(--ink-dim); line-height: 1.7; font-size: .92em; max-width: 980px; }
        .aeo-links { display: flex; flex-wrap: wrap; gap: .55em; margin-top: .9em; }
        .aeo-link { display: inline-flex; align-items: center; gap: .55em; padding: .6em .8em; border-radius: 10px; border: 1px solid var(--line); background: var(--panel-2); color: var(--ink-dim); font-weight: 700; font-size: .84em; min-height: 44px; box-sizing: border-box; }
        .aeo-link:hover { border-color: var(--card-edge); background: rgba(70,140,255,.08); color: var(--ink); transform: translateY(-1px); }
        .aeo-link i { color: var(--action-hi); }

        /* SECTION HEADING above the board */
        .npl-board-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1em; flex-wrap: wrap; margin: 0 0 1em; }
        .npl-board-head h2 { font-family: var(--display); font-size: clamp(1.2rem, 2.6vw, 1.5rem); font-weight: 800; letter-spacing: -.015em; color: var(--ink); margin: 0; }
        .npl-board-meta { font-family: var(--mono); font-size: .78em; color: var(--ink-faint); }

        /* PARLAY ROWS — page-scoped; ambient-lift inherited from master */
        .parlay-tip-row { background: var(--panel); border-radius: 16px; padding: 1.25em; margin-bottom: 1.1em; }
        .parlay-topbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: .9em; border-bottom: 1px solid var(--line); padding-bottom: .75em; gap: 1em; flex-wrap: wrap; }
        .parlay-logos { display: inline-flex; align-items: center; gap: .35em; }
        .parlay-title { font-family: var(--display); font-weight: 800; color: var(--ink); letter-spacing: -.01em; font-size: 1.02em; }
        .parlay-time { color: var(--ink-dim); font-family: var(--mono); font-size: .82em; }

        .parlay-timeline { position: relative; margin: 0 0 .9em; }
        .timeline-line { position: absolute; left: 8px; top: 0; bottom: 0; width: 2px; background: var(--line-strong); border-radius: 8px; }
        .parlay-legs { margin-left: 1.25em; }
        .parlay-leg-item { position: relative; padding: .75em 0; border-bottom: 1px dashed var(--line); }
        .leg-item-dot { position: absolute; left: -1.75em; top: 1.1em; width: 12px; height: 12px; background: var(--action-hi); border-radius: 50%; border: 2px solid var(--panel); z-index: 2; box-shadow: 0 0 0 3px rgba(70,140,255,.12); }
        .leg-content { display: flex; flex-direction: column; gap: .65em; }
        .leg-info strong { color: var(--ink); font-weight: 700; }
        .leg-odds-stats { display: flex; align-items: center; gap: .75em; flex-wrap: wrap; color: var(--ink-dim); font-size: .88em; }
        .bookmaker-leg-logo { height: 18px; opacity: .9; }
        .odds-data { font-family: var(--mono); font-weight: 700; color: var(--ink); }
        .stat-item { display: inline-flex; align-items: center; gap: .4em; padding: .35em .6em; border-radius: 2em; border: 1px solid var(--line); background: var(--panel-2); }
        .leg-icon { color: var(--action-hi); }
        .stat-value { font-family: var(--mono); font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }
        /* GREEN = money: edge only */
        .edge-data .leg-icon { color: var(--model); }
        .edge-data .stat-value { color: var(--model); }

        .reason-toggle { width: 100%; padding: .65em .85em; background: var(--panel-2); border-radius: 10px; border: 1px solid var(--line); color: var(--ink); font-weight: 700; cursor: pointer; text-align: left; display: flex; justify-content: space-between; align-items: center; gap: .75em; min-height: 44px; font-family: var(--ui); }
        .reason-toggle:hover { border-color: var(--card-edge); background: rgba(70,140,255,.08); }
        .reason-text { max-height: 0; overflow: hidden; transition: max-height .3s ease; padding: 0 .85em; color: var(--ink-dim); font-size: .9em; line-height: 1.75; }
        .reason-text.expanded { max-height: 2000px; padding: .85em; }

        /* LOCKED-TEASE */
        .unlock-bet-container { text-align: center; padding: .65em 0 .15em; }
        .btn-unlock { display: inline-flex; align-items: center; gap: .6em; padding: .75em 1.1em; border-radius: 12px; border: 1px solid var(--card-edge); background: rgba(70,140,255,.12); color: var(--accent-ink); font-weight: 700; min-height: 44px; }
        .btn-unlock:hover { background: rgba(70,140,255,.2); transform: translateY(-1px); }

        /* PROOF STRIP -> /results */
        .npl-proof { display: inline-flex; align-items: center; gap: .55em; background: var(--panel-2); border: 1px solid var(--line); border-radius: 11px; padding: .65em .85em; font-family: var(--mono); font-size: .8rem; color: var(--ink-dim); min-height: 44px; box-sizing: border-box; }
        .npl-proof:hover { border-color: var(--card-edge); color: var(--ink); transform: translateY(-1px); }
        .npl-proof .pdot { width: 6px; height: 6px; border-radius: 50%; background: var(--model); box-shadow: 0 0 8px var(--model); }
        .npl-proof .u { color: var(--model); font-weight: 600; }

        /* PRO / UPSELL — right after free picks */
        .all-access-pro-section { background: var(--panel); border: 1px solid var(--card-edge); box-shadow: 0 20px 42px -24px var(--accent-glow); padding: 2.4em 1.6em; margin: 2em auto 0; max-width: 1120px; border-radius: 18px; box-sizing: border-box; position: relative; overflow: hidden; }
        .all-access-pro-section::after { content: ''; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: radial-gradient(120% 70% at 50% -10%, rgba(70,140,255,.10), transparent 60%); }
        .all-access-pro-content { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 2.5em; max-width: 980px; margin: 0 auto; align-items: center; }
        @media (max-width: 768px) { .all-access-pro-content { grid-template-columns: 1fr; gap: 1.6em; } }
        .all-access-pro-left h2 { font-family: var(--mono); font-size: .8em; letter-spacing: .1em; text-transform: uppercase; color: var(--accent-ink); margin: 0 0 .6em; font-weight: 700; }
        .all-access-pro-left h3 { font-family: var(--display); margin: 0 0 .6em; color: var(--ink); font-weight: 800; font-size: clamp(1.3rem, 3vw, 1.7rem); letter-spacing: -.02em; }
        .all-access-pro-features li { display: flex; align-items: flex-start; gap: .6em; }
        .plan-option { transition: border-color .18s, background .18s, transform .18s; }
        .plan-option:hover { transform: translateY(-1px); }

        /* EMAIL SIGNUP */
        .full-width-email-signup { background: var(--panel); border-top: 1px solid var(--line); margin-top: 2.5em; padding: 2.6em 1.25em; }

        /* TRUST STATS */
        .persuasive-stats-cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1em; margin-top: 2.6em; }
        @media (max-width: 768px) { .persuasive-stats-cards-grid { grid-template-columns: 1fr; } }
        .stat-card { background: var(--panel); padding: 1.3em; border-radius: 14px; text-align: center; border: 1px solid var(--line); }
        .stat-number { font-family: var(--mono); font-size: 2em; font-weight: 700; color: var(--ink); display: block; font-variant-numeric: tabular-nums; }
        .stat-card .stat-label { color: var(--ink-dim); font-weight: 800; letter-spacing: .04em; text-transform: uppercase; font-size: .7em; }
        .stat-text { color: var(--ink-faint); margin: .6em 0 0; font-size: .82em; }

        /* SEO / METHOD ESSAY — demoted below picks */
        .seo-content { margin-top: 2.6em; color: var(--ink-dim); font-size: .95em; line-height: 1.8; background: var(--panel); border: 1px solid var(--line); border-radius: 16px; padding: 1.6em; }
        .seo-content h2, .seo-content h3 { color: var(--ink); margin: 0 0 .65em; letter-spacing: -.01em; font-family: var(--display); font-weight: 800; }
        .seo-content h3 { margin-top: 1.1em; }
        .seo-content p { font-size: .92em; margin-bottom: .85em; }
        .seo-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1em; margin-top: .9em; }
        @media (max-width: 900px) { .seo-grid-2 { grid-template-columns: 1fr; } }
        .seo-card { background: var(--panel-2); border: 1px solid var(--line); border-radius: 12px; padding: 1.1em; }
        .seo-card strong { color: var(--ink); }
        .seo-list { margin: .65em 0 0; padding-left: 1.15em; color: var(--ink-dim); }
        .seo-list li { margin: .5em 0; font-size: .9em; }

        .disclaimer-box { margin-top: 1em; padding: .9em 1em; border-radius: 12px; border: 1px solid rgba(245,158,11,.22); background: rgba(245,158,11,.08); color: var(--gold); font-size: .88em; line-height: 1.7; }

        .eeat-row { display: grid; grid-template-columns: 1.2fr .8fr; gap: 1em; margin-top: 1em; }
        @media (max-width: 900px) { .eeat-row { grid-template-columns: 1fr; } }
        .eeat-box { border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); padding: 1.1em; }
        .eeat-box h3 { font-family: var(--display); }
        .eeat-meta { display: grid; gap: .65em; color: var(--ink-dim); font-size: .88em; line-height: 1.7; }
        .eeat-meta span { display: block; }
        .eeat-meta b { color: var(--ink); }

        /* FAQ — native <details> */
        .npl-faq { margin-top: 1em; display: grid; gap: .65em; }
        .npl-faq-item { border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); overflow: hidden; transition: border-color .15s; }
        .npl-faq-item[open] { border-color: var(--card-edge); }
        .npl-faq-item summary { padding: .9em 1em; cursor: pointer; font-weight: 700; color: var(--ink); list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1em; font-size: .92em; min-height: 44px; box-sizing: border-box; font-family: var(--ui); }
        .npl-faq-item summary::-webkit-details-marker { display: none; }
        .npl-faq-item summary::after { content: '+'; font-family: var(--mono); color: var(--action-hi); flex-shrink: 0; }
        .npl-faq-item[open] summary::after { content: '\2212'; }
        .npl-faq-answer { padding: 0 1em .9em; color: var(--ink-dim); line-height: 1.8; font-size: .88em; border-top: 1px solid var(--line); }
        .npl-faq-answer p { margin-top: .75em; margin-bottom: 0; }
        .npl-link { color: var(--action-hi); font-weight: 700; }

        .npl-notify { background: var(--panel); border: 1px solid var(--line); padding: 1.6em; border-radius: 14px; text-align: center; margin-bottom: 1.25em; }

        .noselect { -webkit-user-select: none; -ms-user-select: none; user-select: none; }

        a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--action-hi); outline-offset: 2px; }
    