﻿/* extracted verbatim 2026-08-28 estate speed sweep. New content = new filename. */

        /* ============================================================
           APL = AFL Parlays namespace — zero collision with master CSS.
           Page-scoped aliases map onto the locked Site.Master tokens.
           Cards use the shared ambient-lift system; green = money only.
           ============================================================ */
        :root {
            --apl-bg:       var(--void);
            --apl-surface:  var(--panel);
            --apl-surface2: var(--panel-2);
            --apl-border:   var(--line);
            --apl-border2:  var(--line-strong);
            --apl-accent:   var(--action-hi);
            --apl-accent-h: var(--action-hi);
            --apl-green:    var(--model);
            --apl-red:      var(--book);
            --apl-text:     var(--ink);
            --apl-muted:    var(--ink-dim);
            --apl-dim:      var(--ink-faint);
            --apl-font-ui:  var(--ui);
            --apl-font-data: var(--mono);
            --apl-radius:   0.5em;
            --apl-radius-lg:0.75em;
        }

        .apl-wrapper {
            width: 100%;
            max-width: 1120px;
            margin: 0 auto;
            padding: 1.5em 5%;
            box-sizing: border-box;
        }

        /* --- BREADCRUMB --- */
        .apl-breadcrumb {
            display: flex;
            flex-wrap: wrap;
            gap: 0.4em;
            align-items: center;
            margin-bottom: 1.5em;
            font-family: var(--apl-font-data);
            font-size: 0.72em;
            color: var(--apl-dim);
            text-transform: uppercase;
            letter-spacing: 0.05em;
        }
        .apl-breadcrumb a { color: var(--apl-muted); text-decoration: none; transition: color 0.15s; }
        .apl-breadcrumb a:hover { color: var(--apl-accent-h); }
        .apl-breadcrumb .sep { color: var(--apl-border2); }

        /* --- POP WRAP --- */
        .apl-pop-wrap { margin-bottom: 1.5em; }

        /* --- PAGE HEADER (value-first) --- */
        .apl-page-header { margin-bottom: 1.5em; }
        .apl-badges {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5em;
            margin-bottom: 0.85em;
        }
        .apl-badge {
            display: inline-flex;
            align-items: center;
            gap: 0.4em;
            background: rgba(70,140,255,0.12);
            color: var(--accent-ink);
            font-family: var(--apl-font-data);
            font-size: 0.68em;
            font-weight: 700;
            padding: 0.3em 0.75em;
            border-radius: 2em;
            border: 1px solid var(--card-edge);
            text-transform: uppercase;
            letter-spacing: 0.06em;
        }
        .apl-h1 {
            font-family: var(--display);
            font-size: clamp(1.7rem, 4vw, 2.4rem);
            font-weight: 800;
            color: var(--ink);
            letter-spacing: -0.025em;
            line-height: 1.1;
            margin: 0 0 0.4em;
        }
        .apl-h1 .apl-accent { color: var(--action-hi); }
        .apl-desc {
            font-size: 1.02em;
            color: var(--apl-muted);
            max-width: 760px;
            line-height: 1.55;
            margin: 0 0 1em;
        }
        .apl-desc strong { color: var(--apl-text); }

        /* Decision bar: proof strip beside primary intent, right where it counts */
        .apl-decision-bar {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0.6em;
            margin-bottom: 0.25em;
        }
        .apl-quick-links {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5em;
            margin-top: 1.1em;
        }
        .apl-quick-link {
            display: inline-flex;
            align-items: center;
            gap: 0.4em;
            min-height: 36px;
            padding: 0.45em 0.85em;
            border-radius: 2em;
            background: rgba(70,140,255,0.1);
            border: 1px solid var(--card-edge);
            color: var(--apl-text);
            font-size: 0.82em;
            font-weight: 700;
            text-decoration: none;
            transition: background 0.12s;
        }
        .apl-quick-link:hover { background: rgba(70,140,255,0.18); }
        .apl-quick-link i { color: var(--action-hi); }

        /* --- SECTION HEADING (for demoted explainer blocks) --- */
        .apl-section-head {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.75em;
            margin: 2.5em 0 1em;
            padding-bottom: 0.6em;
            border-bottom: 1px solid var(--apl-border);
        }
        .apl-section-head h2 { margin: 0; font-size: 1.15em; font-weight: 800; color: var(--ink); letter-spacing: -0.01em; }
        .apl-section-head .apl-section-meta { font-family: var(--apl-font-data); font-size: 0.7em; color: var(--apl-dim); text-transform: uppercase; letter-spacing: 0.06em; white-space: nowrap; }

        /* --- AEO ANSWER CAPSULE (demoted below picks) --- */
        .apl-aeo-panel {
            position: relative;
            background: var(--panel);
            border: 1px solid var(--card-edge);
            border-radius: var(--apl-radius-lg);
            box-shadow: 0 20px 42px -24px var(--accent-glow);
            padding: 1.5em 1.75em;
            margin: 0 0 1.5em;
            overflow: hidden;
        }
        .apl-aeo-panel::after {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 20% 0%, rgba(70,140,255,0.14), transparent 55%);
            pointer-events: none;
        }
        .apl-aeo-grid {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: 1.15fr 0.85fr;
            gap: 1.25em;
            align-items: start;
        }
        @media (max-width: 900px) { .apl-aeo-grid { grid-template-columns: 1fr; } }
        .apl-kicker {
            font-family: var(--apl-font-data);
            color: var(--apl-dim);
            font-size: 0.68em;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            margin: 0 0 0.5em;
            display: block;
        }
        .apl-answer {
            font-size: 0.93em;
            color: var(--apl-muted);
            line-height: 1.7;
            margin: 0 0 0.85em;
            max-width: 820px;
        }
        .apl-answer strong { color: var(--apl-text); }
        .apl-def-cards { display: grid; gap: 0.6em; }
        .apl-def-card {
            background: var(--panel-2);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius);
            padding: 0.85em 1em;
        }
        .apl-def-title {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5em;
            margin: 0 0 0.35em;
            font-size: 0.88em;
            font-weight: 800;
            color: var(--ink);
        }
        .apl-def-pill {
            font-family: var(--apl-font-data);
            font-size: 0.65em;
            border: 1px solid var(--apl-border2);
            color: var(--apl-dim);
            border-radius: 2em;
            padding: 0.2em 0.55em;
        }
        .apl-def-card p { margin: 0; font-size: 0.85em; color: var(--apl-muted); line-height: 1.55; }

        /* --- COMPARE TABLE --- */
        .apl-compare {
            background: var(--apl-surface);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius-lg);
            overflow: hidden;
            margin: 0 0 1.5em;
        }
        .apl-compare-head {
            padding: 0.9em 1.1em;
            border-bottom: 1px solid var(--apl-border);
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75em;
        }
        .apl-compare-head h3 { margin: 0; font-size: 0.95em; font-weight: 800; color: var(--ink); }
        .apl-compare-meta { font-family: var(--apl-font-data); font-size: 0.68em; color: var(--apl-dim); }
        .apl-compare-table { width: 100%; border-collapse: collapse; font-size: 0.88em; }
        .apl-compare-table th {
            text-align: left;
            font-size: 0.72em;
            font-family: var(--apl-font-data);
            letter-spacing: 0.08em;
            color: var(--apl-dim);
            text-transform: uppercase;
            background: var(--panel-2);
            padding: 0.65em 0.9em;
            border-bottom: 1px solid var(--apl-border2);
        }
        .apl-compare-table td {
            padding: 0.75em 0.9em;
            border-bottom: 1px solid var(--apl-border);
            color: var(--apl-muted);
            vertical-align: top;
            font-size: 0.95em;
        }
        .apl-compare-table tr:last-child td { border-bottom: none; }
        .apl-compare-table strong { color: var(--apl-text); }

        /* --- HOW TO BUILD --- */
        .apl-howto {
            background: var(--apl-surface2);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius-lg);
            padding: 1.5em;
            margin: 0 0 1.5em;
        }
        .apl-howto h3 { margin: 0 0 0.75em; font-size: 1em; font-weight: 800; color: var(--ink); }
        .apl-howto ol { margin: 0; padding-left: 1.25em; color: var(--apl-muted); }
        .apl-howto li { margin-bottom: 0.5em; font-size: 0.9em; line-height: 1.65; }
        .apl-howto li strong { color: var(--apl-text); }
        .apl-note {
            margin-top: 0.85em;
            padding: 0.85em 1em;
            background: var(--panel-2);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius);
            color: var(--apl-muted);
            font-size: 0.87em;
            line-height: 1.6;
        }
        .apl-link { color: var(--action-hi); text-decoration: none; }
        .apl-link:hover { text-decoration: underline; }

        /* --- TRUST STRIP --- */
        .apl-trust-strip {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 0.65em;
            margin: 0 0 1.5em;
        }
        @media (max-width: 900px) { .apl-trust-strip { grid-template-columns: 1fr; } }
        .apl-trust-card {
            background: var(--apl-surface2);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius);
            padding: 1em;
        }
        .apl-trust-title {
            margin: 0 0 0.4em;
            font-weight: 800;
            font-size: 0.88em;
            color: var(--ink);
            display: flex;
            align-items: center;
            gap: 0.5em;
        }
        .apl-trust-title i { color: var(--action-hi); }
        .apl-trust-card p { margin: 0; color: var(--apl-muted); font-size: 0.85em; line-height: 1.55; }

        /* --- PARLAY CARDS — ambient-lift system --- */
        .parlay-tip-row {
            position: relative;
            background: var(--panel);
            border: 1px solid var(--card-edge);
            border-radius: var(--apl-radius-lg);
            padding: 1.25em;
            margin-bottom: 1.25em;
            box-shadow: 0 20px 42px -24px var(--accent-glow);
            transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
            overflow: hidden;
        }
        .parlay-tip-row::after {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 18% 0%, rgba(70,140,255,0.10), transparent 60%);
            pointer-events: none;
        }
        .parlay-tip-row:hover { border-color: var(--accent-glow); box-shadow: 0 26px 50px -22px var(--accent-glow); transform: translateY(-2px); }
        .parlay-tip-row > * { position: relative; z-index: 1; }
        .parlay-topbar { display: flex; justify-content: space-between; align-items: center; gap: 0.75em; margin-bottom: 1em; padding-bottom: 0.75em; border-bottom: 1px solid var(--apl-border); }
        .parlay-title { font-size: 1.05rem; font-weight: 800; letter-spacing: -0.01em; color: var(--ink); }
        .sgp-badge { background: var(--accent-grad); color: #fff; padding: 0.25em 0.6em; border-radius: var(--apl-radius); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.04em; box-shadow: 0 0 14px -2px var(--accent-glow); }
        .parlay-timeline { position: relative; margin: 0 0 1em 0; }
        .timeline-line { position: absolute; left: 8px; top: 0; bottom: 0; width: 2px; background: var(--apl-border2); }
        .parlay-legs { margin-left: 1.25em; }
        .parlay-leg-item { position: relative; padding: 0.75em 0; border-bottom: 1px dashed var(--apl-border); }
        .parlay-leg-item:last-child { border-bottom: none; }
        .leg-item-dot { position: absolute; left: -1.75em; top: 1em; width: 12px; height: 12px; background: var(--accent-grad); border-radius: 50%; border: 2px solid var(--apl-surface2); box-shadow: 0 0 10px -1px var(--accent-glow); z-index: 2; }
        .leg-info strong { display: block; margin-bottom: 0.25em; font-size: 0.9em; color: var(--ink); }
        .leg-odds-stats { display: flex; gap: 1em; align-items: center; margin-top: 0.5em; font-family: var(--apl-font-data); font-size: 0.82em; flex-wrap: wrap; color: var(--apl-muted); }
        .stat-item { display: flex; align-items: center; gap: 0.4em; }
        .stat-value { color: var(--apl-green); font-weight: 800; }
        .leg-icon { color: var(--apl-dim); font-size: 0.75em; }
        .parlay-reasoning { margin-top: 1em; padding-top: 1em; border-top: 1px solid var(--apl-border); }
        .reason-toggle { display: flex; justify-content: space-between; align-items: center; gap: 0.75em; padding: 0.7em 0.85em; min-height: 44px; background: var(--apl-surface2); border-radius: var(--apl-radius); cursor: pointer; font-weight: 700; font-size: 0.88em; border: 1px solid var(--apl-border); width: 100%; color: var(--apl-text); }
        .reason-toggle:hover { background: rgba(70,140,255,0.1); }
        .reason-toggle .chev { transition: transform 0.2s ease; }
        .reason-toggle[aria-expanded="true"] .chev { transform: rotate(180deg); }
        .reason-text { max-height: 0; overflow: hidden; transition: max-height 0.28s ease; padding: 0 0.75em; font-size: 0.9em; line-height: 1.7; color: var(--apl-muted); }
        .reason-text.expanded { max-height: 4000px; padding: 0.75em; }
        .unlock-bet-container { text-align: center; padding: 0.65em 0; }
        .btn-unlock { display: inline-flex; align-items: center; gap: 0.5em; padding: 0.7em 1.4em; min-height: 44px; background: var(--accent-grad); color: #fff; border-radius: 2em; font-weight: 800; font-size: 0.88em; box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 0 18px var(--accent-glow); transition: transform 0.15s, filter 0.15s; }
        .btn-unlock:hover { transform: translateY(-1px); filter: brightness(1.07); }

        /* --- LOADING / EMPTY STATE --- */
        .apl-loading {
            position: relative;
            background: var(--apl-surface);
            border: 1px solid var(--card-edge);
            box-shadow: 0 20px 42px -24px var(--accent-glow);
            padding: 2em;
            border-radius: var(--apl-radius-lg);
            text-align: center;
            margin-bottom: 1.5em;
        }

        /* --- FAQ — native <details> for AEO + accessibility --- */
        .apl-faq {
            background: var(--apl-surface);
            border: 1px solid var(--apl-border);
            border-radius: var(--apl-radius-lg);
            overflow: hidden;
            margin: 0 0 1.5em;
        }
        .apl-faq-head {
            padding: 1em 1.25em;
            border-bottom: 1px solid var(--apl-border);
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75em;
        }
        .apl-faq-head h3 { margin: 0; font-size: 1em; font-weight: 800; color: var(--ink); }
        .apl-faq-meta { font-family: var(--apl-font-data); font-size: 0.68em; color: var(--apl-dim); }
        .apl-faq-list { padding: 0.5em; }
        .apl-faq-item {
            border: 1px solid var(--apl-border);
            background: var(--panel-2);
            border-radius: var(--apl-radius);
            margin: 0.6em 0;
            overflow: hidden;
            transition: border-color 0.15s;
        }
        .apl-faq-item[open] { border-color: var(--card-edge); }
        .apl-faq-item summary {
            padding: 0.9em 1em;
            min-height: 44px;
            box-sizing: border-box;
            cursor: pointer;
            font-weight: 700;
            font-size: 0.9em;
            color: var(--ink);
            display: flex;
            justify-content: space-between;
            align-items: center;
            list-style: none;
            gap: 1em;
        }
        .apl-faq-item summary::-webkit-details-marker { display: none; }
        .apl-faq-item summary::after {
            content: '+';
            font-family: var(--apl-font-data);
            color: var(--action-hi);
            flex-shrink: 0;
        }
        .apl-faq-item[open] summary::after { content: '\2212'; }
        .apl-faq-answer {
            padding: 0 1em 0.9em;
            font-size: 0.88em;
            line-height: 1.75;
            color: var(--apl-muted);
            border-top: 1px solid var(--apl-border);
        }
        .apl-faq-answer p { margin-top: 0.75em; margin-bottom: 0; color: var(--apl-text); }

        /* --- SUBSCRIPTION / UPSELL (lifted, placed right after free picks) --- */
        .all-access-pro-section {
            position: relative;
            background: var(--panel);
            border: 1px solid var(--card-edge);
            border-radius: var(--apl-radius-lg);
            box-shadow: 0 24px 50px -26px var(--accent-glow);
            padding: 2em 1.75em;
            margin: 0;
            overflow: hidden;
        }
        .all-access-pro-section::after {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 80% 0%, rgba(70,140,255,0.16), transparent 55%);
            pointer-events: none;
        }
        .all-access-pro-content { position: relative; z-index: 1; max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 2.5em; align-items: center; }
        .all-access-pro-eyebrow { font-family: var(--apl-font-data); font-size: 0.72em; text-transform: uppercase; letter-spacing: 0.08em; color: var(--accent-ink); margin: 0 0 0.5em; }
        .all-access-pro-headline { font-size: 1.7rem; font-weight: 800; margin: 0 0 0.75em; line-height: 1.15; letter-spacing: -0.02em; color: var(--ink); }
        .all-access-pro-features { list-style: none; padding: 0; margin: 1em 0 1.5em; }
        .all-access-pro-features li { padding: 0.6em 0; border-bottom: 1px solid var(--apl-border); display: flex; align-items: center; gap: 0.75em; color: var(--apl-text); font-size: 0.92em; }
        .all-access-pro-features li:last-child { border-bottom: none; }
        .all-access-pro-features i { color: var(--apl-green); font-size: 1.05em; }
        .all-access-pro-button { display: block; width: 100%; padding: 0.95em; background: var(--accent-grad); box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 12px 26px -7px var(--accent-glow); color: #fff; border: none; border-radius: var(--apl-radius); font-size: 1.02em; font-weight: 800; cursor: pointer; text-align: center; transition: transform 0.15s, filter 0.15s; min-height: 44px; }
        .all-access-pro-button:hover { transform: translateY(-1px); filter: brightness(1.07); }
        .plan-selection { list-style: none; padding: 0; margin: 0 0 1.25em; }
        .plan-option { padding: 0.9em 1em; background: var(--apl-surface2); border: 2px solid var(--apl-border2); border-radius: var(--apl-radius); margin-bottom: 0.65em; cursor: pointer; position: relative; color: var(--apl-text); font-size: 0.9em; }
        .plan-option.active { border-color: var(--action-hi); background: rgba(70,140,255,0.1); }
        .plan-price { font-family: var(--apl-font-data); font-weight: 800; color: var(--ink); }
        .plan-badge { position: absolute; top: -10px; right: 10px; background: var(--accent-grad); color: #fff; padding: 0.25em 0.75em; border-radius: 2em; font-size: 0.7em; font-weight: 800; box-shadow: 0 0 14px -2px var(--accent-glow); }
        .all-access-pro-disclaimer { position: relative; z-index: 1; max-width: 1120px; margin: 1.25em auto 0; font-size: 0.78em; color: var(--apl-dim); line-height: 1.5; }
        @media (max-width: 768px) { .all-access-pro-content { grid-template-columns: 1fr; gap: 1.5em; } .all-access-pro-headline { font-size: 1.45rem; } }

        /* --- EMAIL SIGNUP --- */
        .full-width-email-signup { background-color: var(--panel-2); border-top: 1px solid var(--line); color: var(--ink); padding: 2.5em 5%; margin-top: 2.5em; }
        @media (max-width: 768px) { .email-signup-text-content { flex-direction: column; align-items: flex-start; } .email-signup-form-container { flex-direction: column; max-width: 320px; } }

        /* Focus visibility for keyboard users */
        .apl-quick-link:focus-visible,
        .reason-toggle:focus-visible,
        .btn-unlock:focus-visible,
        .all-access-pro-button:focus-visible,
        .signup-button:focus-visible,
        .apl-faq-item summary:focus-visible,
        .apl-breadcrumb a:focus-visible,
        .apl-link:focus-visible { outline: 2px solid var(--action-hi); outline-offset: 2px; border-radius: 4px; }

        /* Reduced motion */
        @media (prefers-reduced-motion: reduce) {
            .parlay-tip-row, .btn-unlock, .all-access-pro-button, .signup-button { transition: none !important; transform: none !important; }
            .reason-text { transition: none !important; }
        }

        /* sr-only utility */
        .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

        /* light-theme fixes (dark rules untouched; accent buttons/badges keep #fff) */
        :root[data-theme="light"] :is(.apl-h1,.apl-section-head h2,.apl-def-title,.apl-compare-head h3,.apl-howto h3,.apl-trust-title,.parlay-title,.leg-info strong,.apl-faq-head h3,.apl-faq-item summary,.all-access-pro-headline,.plan-price,.full-width-email-signup){color:var(--ink);}
        @media (prefers-color-scheme:light){
          :root:not([data-theme="dark"]):not([data-theme="light"]) :is(.apl-h1,.apl-section-head h2,.apl-def-title,.apl-compare-head h3,.apl-howto h3,.apl-trust-title,.parlay-title,.leg-info strong,.apl-faq-head h3,.apl-faq-item summary,.all-access-pro-headline,.plan-price,.full-width-email-signup){color:var(--ink);}
        }
    