﻿/* extracted verbatim 2026-08-28 estate speed sweep. New content = new filename. */

    /* ============================================================
       APK = UFC Picks namespace. Built ON TOP of the global Site.Master
       design system — uses --void/--panel/--card-edge/--accent-grad/
       --model/--mono tokens directly. No local colour re-definitions.
       Money-page order: header + proof -> PICKS -> upsell -> essay -> FAQ.
       (.apk-game-block is already lifted to ambient by the master CSS.)
       ============================================================ */
    :root {
        --apk-radius:    12px;
        --apk-radius-lg: 16px;
    }

    .apk-wrapper {
        width: 100%;
        max-width: 1120px;
        margin: 0 auto;
        padding: 1.5em 5%;
        box-sizing: border-box;
    }
    .apk-wrapper--tail { content-visibility: auto; contain-intrinsic-size: 1px 1200px; }

    /* --- BREADCRUMB --- */
    .apk-breadcrumb {
        display: flex;
        flex-wrap: wrap;
        gap: 0.4em;
        align-items: center;
        margin-bottom: 1.25em;
        font-family: var(--mono);
        font-size: 0.72em;
        color: var(--ink-faint);
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }
    .apk-breadcrumb a   { color: var(--ink-dim); text-decoration: none; transition: color 0.15s; }
    .apk-breadcrumb a:hover { color: var(--action-hi); }
    .apk-breadcrumb .sep { color: var(--line-strong); }

    /* --- POP WRAP --- */
    .apk-pop-wrap { margin-bottom: 1.5em; }

    /* Hub summary [2026-08-19]. TOKENS ONLY: the site is dark by default and
       :root[data-theme="light"] swaps the same names, so a literal colour breaks one theme. */
    .hub-stamp { font-family: var(--mono); font-size:.68rem; letter-spacing:.04em; text-transform:uppercase;
                 color: var(--model); margin: 0 0 .9em; }
    .hub-card { background: var(--panel); border: 1px solid var(--card-edge); border-radius: var(--apk-radius-lg);
                box-shadow: var(--shadow-card); overflow: hidden; margin-bottom: 1em; }
    .hub-sub { background: var(--panel-2); padding: 11px 16px; font-family: var(--mono); font-size:.72rem;
               color: var(--ink-dim); display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
    .hub-sub .spread { margin-left:auto; }
    .hub-body { padding: 14px 16px; }
    .hub-call { font-family: var(--display); font-weight:800; letter-spacing:-.02em; font-size:1.25rem;
                line-height:1.2; color: var(--ink); }
    .hub-call .hub-price { color: var(--action-hi); white-space:nowrap; }
    .hub-details { display:flex; gap:26px; flex-wrap:wrap; margin-top:10px; }
    .hub-d span { display:block; font-family: var(--mono); font-size:.6rem; letter-spacing:.05em;
                  text-transform:uppercase; color: var(--ink-faint); }
    .hub-d b { display:block; font-size:.95rem; font-weight:700; margin-top:2px;
               font-variant-numeric: tabular-nums; color: var(--ink); }
    .hub-c-high { color: var(--model); }
    .hub-c-lean { color: var(--gold); }
    .hub-c-long { color: var(--ink-faint); }
    .hub-slate table { width:100%; border-collapse:collapse; }
    .hub-slate td { padding:11px 16px; border-top:1px solid var(--line); vertical-align:middle; }
    .hub-slate tr:first-child td { border-top:0; }
    .hub-g { font-family: var(--mono); font-size:.72rem; color: var(--ink-faint); white-space:nowrap; }
    .hub-g img { width:20px; height:20px; object-fit:contain; vertical-align:middle; margin-right:3px; }
    .hub-sel { font-size:.92rem; font-weight:600; color: var(--ink); }
    .hub-cf { font-family: var(--mono); font-size:.62rem; letter-spacing:.05em; text-transform:uppercase;
              text-align:right; white-space:nowrap; }
    .hub-pr { text-align:right; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; color: var(--ink); }
    .hub-lockbar { display:inline-block; height:9px; width:100px; border-radius:3px; opacity:.5;
              background: repeating-linear-gradient(90deg, var(--line-strong) 0 20px, var(--line) 20px 32px); }
    .hub-unlock { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
              background: var(--panel-2); padding:13px 16px; border-top:1px solid var(--line); }
    .hub-unlock .n { font-size:.92rem; font-weight:700; color: var(--ink); }
    .hub-legend { padding:9px 16px; border-top:1px solid var(--line); font-family: var(--mono); font-size:.62rem; letter-spacing:.04em; color: var(--ink-faint); }
    .hub-ch { display:block; margin-top:2px; font-size:.6rem; letter-spacing:.03em; text-transform:none; color: var(--ink-dim); font-variant-numeric: tabular-nums; }
    .hub-g-short { display:none; }
    /* <=560px: full team names made the slate 230px wider than a phone and the card clips
       overflow, so confidence + price were invisible. Short labels + wrap + tighter cells. */
    @media (max-width:560px){
        .hub-g-full { display:none; }
        .hub-g-short { display:inline; }
        .hub-g { white-space:normal; }
        .hub-g img { width:16px; height:16px; }
        .hub-slate td { padding:10px 9px; }
        .hub-sel { font-size:.85rem; }
        .hub-lockbar { width:56px; }
    }
    /* [2026-08-20] The master hides .is-edge from guests because its label was jargon ("Edge").
       This page now labels it "The price says" — plain English — so guests get the value story back.
       Page styles render in MainContent (body), after the master's head styles, so this wins. */
    body:not(.subscribed) .apk-detail-item.is-edge { display: flex; }
    @media (max-width:560px){ .hub-g { font-size:.66rem; } .hub-call { font-size:1.08rem; } }

    /* --- HERO HEADER (tight, value-stating, primary intent above the fold) --- */
    .apk-hero { margin-bottom: 1.5em; }
    .apk-badges { display: flex; flex-wrap: wrap; gap: 0.5em; margin-bottom: 0.9em; align-items: center; }
    .apk-badge {
        display: inline-flex;
        align-items: center;
        gap: 0.4em;
        background: rgba(70,140,255,0.12);
        color: var(--accent-ink);
        font-family: var(--mono);
        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;
    }
    .apk-h1 {
        font-family: var(--display);
        font-size: clamp(1.7rem, 4vw, 2.45rem);
        font-weight: 800;
        color: var(--ink);
        letter-spacing: -0.025em;
        line-height: 1.1;
        margin: 0 0 0.45em;
    }
    .apk-h1 .apk-accent { color: var(--action-hi); }
    .apk-desc {
        font-size: 1.02em;
        color: var(--ink-dim);
        max-width: 760px;
        line-height: 1.6;
        margin: 0 0 1.1em;
    }
    .apk-desc strong { color: var(--ink); }

    /* --- DECISION BAR: proof strip + jump CTA, sits next to the picks decision --- */
    .apk-decision {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.75em;
    }
    .apk-jump {
        display: inline-flex;
        align-items: center;
        gap: 0.55em;
        padding: 0.7em 1.15em;
        min-height: 44px;
        box-sizing: border-box;
    }
    .apk-decision .bb-proof { min-height: 44px; box-sizing: border-box; }
    .apk-decision .bb-proof:hover { border-color: var(--card-edge); }
    .apk-decision .meta {
        font-family: var(--mono);
        font-size: 0.74em;
        color: var(--ink-faint);
        letter-spacing: 0.03em;
    }

    /* --- SECTION LABEL --- */
    .apk-section-label {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 0.75em;
        flex-wrap: wrap;
        margin: 0 0 1em;
    }
    .apk-section-label h2 {
        font-family: var(--display);
        margin: 0;
        font-size: 1.25em;
        font-weight: 800;
        color: var(--ink);
        letter-spacing: -0.01em;
    }
    .apk-section-label .meta { font-family: var(--mono); font-size: 0.72em; color: var(--ink-faint); text-transform: uppercase; letter-spacing: 0.06em; }

    /* --- LOADING / EMPTY STATE --- */
    .apk-loading {
        background: var(--panel-2);
        border: 1px solid var(--line-strong);
        padding: 2em;
        border-radius: var(--apk-radius-lg);
        text-align: center;
        margin-bottom: 1.5em;
    }

    /* --- GAME BLOCKS (ambient-lift via master .apk-game-block rule) --- */
    .apk-game-block {
        background: var(--panel);
        border-radius: var(--apk-radius-lg);
        margin-bottom: 1.25em;
        overflow: hidden;
        will-change: transform;
    }

    .apk-game-subheader {
        padding: 11px 16px;
        background: var(--panel-2);
        font-size: 0.85em;
        color: var(--ink-dim);
        border-bottom: 1px solid var(--line);
        display: flex;
        align-items: center;
        gap: 9px;
        flex-wrap: wrap;
        font-family: var(--mono);
    }
    .apk-game-subheader .game-date { color: var(--ink-faint); }
    .apk-game-subheader .starts-in { font-weight: 700; color: var(--action-hi); }

    .apk-game-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 18px 16px;
        background: var(--panel);
        border-bottom: 1px solid var(--line);
    }
    .apk-team-info {
        display: flex;
        align-items: center;
        flex-basis: 42%;
    }
    .apk-away-team  { justify-content: flex-start; }
    .apk-home-team  { justify-content: flex-end; flex-direction: row-reverse; }
    .apk-team-name  { font-family: var(--display); font-size: 1.12em; font-weight: 700; margin: 0 8px; white-space: nowrap; color: var(--ink); }
    .apk-team-label { font-family: var(--mono); font-size: 0.68em; text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-faint); margin: 0 8px; }
    .apk-vs-text    { font-family: var(--mono); font-weight: 700; font-size: 0.95em; margin: 0 15px; color: var(--ink-faint); }
    .apk-team-logo  { height: 38px; width: 38px; object-fit: contain; }

    /* ---- Fighter faces ---------------------------------------------------
       Markup is owned by Helpers\AthleteFaces.cs; these rules own the slot.
       UFC has no team logos (schedule_home_logo / schedule_away_logo are NULL on
       every row), so each slot resolves to a headshot or to the initials monogram.
       The box is ALWAYS reserved and there is deliberately no onerror handler, so
       a missing image can never collapse and reflow the row. */
    .tlogo-ph {
        flex: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: var(--panel-2, rgba(127,140,170,0.14));
        border: 1px solid var(--line, rgba(127,140,170,0.28));
        font-family: var(--mono);
        font-weight: 700;
        color: var(--ink-dim, #9aa6b8);
        letter-spacing: 0.02em;
    }
    .bb-ph-22 { width: 22px; height: 22px; font-size: 0.5rem; }
    .bb-ph-38 { width: 38px; height: 38px; font-size: 0.72rem; }

    /* Bet-line prop subject inside the collapsible picks list */
    .bb-bet-face { width: 22px; height: 22px; vertical-align: middle; margin-right: 7px; }
    img.bb-bet-face { object-fit: contain; border-radius: 4px; }

    /* A real headshot is circular and cropped to fill. Type+class beats the plain
       .apk-team-logo class rule, so object-fit:cover wins regardless of order. */
    img.bb-face {
        border-radius: 50%;
        object-fit: cover;
        background: var(--panel-2, rgba(127,140,170,0.14));
    }

    .apk-toggle-btn {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        padding: 13px 16px;
        min-height: 44px;
        box-sizing: border-box;
        background: var(--panel-2);
        color: var(--accent-ink);
        font-family: var(--ui);
        font-size: 0.9em;
        font-weight: 700;
        cursor: pointer;
        border-top: 1px solid var(--line);
        user-select: none;
        transition: background 0.15s;
    }
    .apk-toggle-btn:hover { background: rgba(70,140,255,0.12); }
    .apk-toggle-btn i { transition: transform 0.3s ease; }

    .apk-picks-collapsible {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-in-out;
        background: var(--void);
    }
    .apk-picks-collapsible.expanded { max-height: 100%; overflow: visible; }

    .apk-bet-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 14px 16px;
        border-bottom: 1px solid var(--line);
        font-size: 0.9em;
    }
    .apk-bet-item:last-child { border-bottom: none; }

    .apk-bet-desc-section {
        flex-grow: 1;
        margin-right: 20px;
        display: flex;
        align-items: center;
    }
    .apk-desc-text { font-weight: 700; color: var(--ink); }

    .apk-bet-details {
        display: flex;
        align-items: center;
        gap: 22px;
        flex-shrink: 0;
    }
    .apk-detail-item {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        min-width: 72px;
        text-align: right;
    }
    .apk-detail-item .lbl { font-family: var(--mono); font-size: 0.66em; text-transform: uppercase; letter-spacing: 0.05em; color: var(--ink-faint); margin-bottom: 3px; }
    .apk-detail-item .val { font-family: var(--mono); font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }
    /* EDGE = money green only */
    .apk-detail-item.is-edge .val { color: var(--model); }
    .apk-odds-val { font-family: var(--mono); font-weight: 700; color: var(--model); font-variant-numeric: tabular-nums; }

    .apk-bet-reasoning {
        font-size: 0.9em;
        color: var(--ink-dim);
        margin-top: 0;
        padding: 12px 16px;
        border-top: 1px solid var(--line);
        line-height: 1.55;
    }
    .apk-reasoning-content {
        display: block;
        padding: 10px;
    }
    .apk-reasoning-content h1,
    .apk-reasoning-content h2,
    .apk-reasoning-content h3 {
        font-family: var(--display);
        font-size: 1.2em;
        font-weight: 700;
        margin-top: 1em;
        margin-bottom: 0.5em;
        color: var(--ink);
    }
    .apk-reasoning-content p  { margin-top: 0.5em; margin-bottom: 0.5em; }
    .apk-reasoning-content hr { border: 0; height: 1px; background: var(--line); margin: 1em 0; }

    /* --- LOCKED-TEASE for gated picks --- */
    .apk-unlock-container { text-align: center; padding: 6px 0; }
    .apk-btn-unlock {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        padding: 9px 16px;
        min-height: 40px;
        box-sizing: border-box;
        background: var(--accent-grad);
        color: #fff;
        border: none;
        border-radius: 10px;
        text-decoration: none;
        font-family: var(--ui);
        font-weight: 700;
        font-size: 0.88em;
        cursor: pointer;
        width: 100%;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 10px 22px -8px var(--accent-glow);
        transition: filter 0.18s, transform 0.18s;
    }
    .apk-btn-unlock:hover { filter: brightness(1.07); transform: translateY(-1px); }

    /* --- DEMOTED ESSAY: AEO answer capsule --- */
    .apk-aeo-panel {
        background: var(--panel);
        border: 1px solid var(--card-edge);
        border-radius: var(--apk-radius-lg);
        padding: 1.6em 1.75em;
        margin: 0 0 1.5em;
        position: relative;
        overflow: hidden;
        box-shadow: 0 20px 42px -24px var(--accent-glow);
    }
    .apk-aeo-panel::after {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: radial-gradient(120% 80% at 50% -12%, rgba(70,140,255,0.10), transparent 60%);
        pointer-events: none;
    }
    .apk-aeo-grid {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        gap: 1.5em;
        align-items: start;
    }
    @media (max-width: 900px) { .apk-aeo-grid { grid-template-columns: 1fr; } }
    .apk-kicker {
        font-family: var(--mono);
        color: var(--ink-faint);
        font-size: 0.68em;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        margin: 0 0 0.5em;
        display: block;
    }
    .apk-answer {
        font-size: 0.95em;
        color: var(--ink-dim);
        line-height: 1.7;
        margin: 0 0 0.85em;
        max-width: 820px;
    }
    .apk-answer strong { color: var(--ink); }
    .apk-def-cards  { display: grid; gap: 0.6em; }
    .apk-def-card {
        background: var(--panel-2);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius);
        padding: 0.9em 1em;
    }
    .apk-def-title {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.5em;
        margin: 0 0 0.35em;
        font-size: 0.9em;
        font-weight: 700;
        color: var(--ink);
    }
    .apk-def-pill {
        font-family: var(--mono);
        font-size: 0.62em;
        border: 1px solid var(--line-strong);
        color: var(--ink-faint);
        border-radius: 2em;
        padding: 0.2em 0.55em;
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }
    .apk-def-card p { margin: 0; font-size: 0.86em; color: var(--ink-dim); line-height: 1.55; }

    /* --- COMPARE TABLE --- */
    .apk-compare {
        background: var(--panel);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius-lg);
        overflow: hidden;
        margin: 0 0 1.5em;
    }
    .apk-compare-head {
        padding: 1em 1.15em;
        border-bottom: 1px solid var(--line);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75em;
    }
    .apk-compare-head h2 { font-family: var(--display); margin: 0; font-size: 1.05em; font-weight: 800; color: var(--ink); }
    .apk-compare-meta { font-family: var(--mono); font-size: 0.68em; color: var(--ink-faint); text-transform: uppercase; letter-spacing: 0.05em; }
    .apk-compare-table { width: 100%; border-collapse: collapse; font-size: 0.9em; }
    .apk-compare-table th {
        text-align: left;
        font-size: 0.7em;
        font-family: var(--mono);
        letter-spacing: 0.08em;
        color: var(--ink-faint);
        text-transform: uppercase;
        background: var(--panel-2);
        padding: 0.7em 1em;
        border-bottom: 1px solid var(--line-strong);
    }
    .apk-compare-table td {
        padding: 0.8em 1em;
        border-bottom: 1px solid var(--line);
        color: var(--ink-dim);
        vertical-align: top;
        font-size: 0.95em;
        line-height: 1.5;
    }
    .apk-compare-table tr:last-child td { border-bottom: none; }
    .apk-compare-table strong { color: var(--ink); }

    /* --- HOW TO READ --- */
    .apk-howto {
        background: var(--panel);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius-lg);
        padding: 1.6em;
        margin: 0 0 1.5em;
    }
    .apk-howto h2 { font-family: var(--display); margin: 0 0 0.85em; font-size: 1.1em; font-weight: 800; color: var(--ink); }
    .apk-howto ol { margin: 0; padding-left: 1.25em; color: var(--ink-dim); }
    .apk-howto li { margin-bottom: 0.55em; font-size: 0.92em; line-height: 1.65; }
    .apk-howto li strong { color: var(--ink); }
    .apk-note {
        margin-top: 1em;
        padding: 0.9em 1em;
        background: var(--panel-2);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius);
        color: var(--ink-dim);
        font-size: 0.88em;
        line-height: 1.6;
    }
    .apk-link { color: var(--action-hi); text-decoration: none; }
    .apk-link:hover { color: var(--accent-ink); }

    /* --- TRUST STRIP --- */
    .apk-trust-strip {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 0.7em;
        margin: 0 0 1.5em;
    }
    @media (max-width: 900px) { .apk-trust-strip { grid-template-columns: 1fr; } }
    .apk-trust-card {
        background: var(--panel);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius);
        padding: 1.1em;
    }
    .apk-trust-title {
        margin: 0 0 0.45em;
        font-family: var(--display);
        font-weight: 700;
        font-size: 0.92em;
        color: var(--ink);
        display: flex;
        align-items: center;
        gap: 0.5em;
    }
    .apk-trust-title i { color: var(--action-hi); }
    .apk-trust-card p { margin: 0; color: var(--ink-dim); font-size: 0.86em; line-height: 1.55; }

    /* --- FAQ — native <details> for AEO + accessibility --- */
    .apk-faq {
        background: var(--panel);
        border: 1px solid var(--line);
        border-radius: var(--apk-radius-lg);
        overflow: hidden;
        margin-top: 1.5em;
    }
    .apk-faq-head {
        padding: 1em 1.25em;
        border-bottom: 1px solid var(--line);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75em;
    }
    .apk-faq-head h2 { font-family: var(--display); margin: 0; font-size: 1.1em; font-weight: 800; color: var(--ink); }
    .apk-faq-meta { font-family: var(--mono); font-size: 0.68em; color: var(--ink-faint); text-transform: uppercase; letter-spacing: 0.05em; }
    .apk-faq-list { padding: 0.5em; }
    .apk-faq-item {
        border: 1px solid var(--line);
        background: var(--panel-2);
        border-radius: var(--apk-radius);
        margin: 0.6em 0;
        overflow: hidden;
        transition: border-color 0.15s;
    }
    .apk-faq-item[open] { border-color: var(--card-edge); }
    .apk-faq-item summary {
        padding: 1em;
        min-height: 44px;
        box-sizing: border-box;
        cursor: pointer;
        font-family: var(--ui);
        font-weight: 700;
        font-size: 0.92em;
        color: var(--ink);
        display: flex;
        justify-content: space-between;
        align-items: center;
        list-style: none;
        gap: 1em;
    }
    .apk-faq-item summary::-webkit-details-marker { display: none; }
    .apk-faq-item summary::after { content: '+'; font-family: var(--mono); color: var(--action-hi); flex-shrink: 0; }
    .apk-faq-item[open] summary::after { content: '−'; }
    .apk-faq-answer {
        padding: 0 1em 1em;
        font-size: 0.9em;
        line-height: 1.75;
        color: var(--ink-dim);
        border-top: 1px solid var(--line);
    }
    .apk-faq-answer p { margin-top: 0.85em; margin-bottom: 0; color: var(--ink-dim); }

    /* --- UPSELL (Pro) — gradient CTA, money green for value framing --- */
    .all-access-pro-section { background: linear-gradient(180deg, var(--panel) 0%, var(--panel-2) 100%); border-top: 1px solid var(--card-edge); border-bottom: 1px solid var(--line); padding: 3em 5%; margin-top: 1em; }
    .all-access-pro-content { max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 2.5em; align-items: start; }
    .all-access-pro-left h2 { font-family: var(--mono); font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent-ink); margin: 0 0 0.9em; }
    .all-access-pro-headline { font-family: var(--display); font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; margin-bottom: 0.9em; line-height: 1.15; letter-spacing: -0.02em; color: var(--ink); }
    .all-access-pro-left p { color: var(--ink-dim); font-size: 0.98em; line-height: 1.6; }
    .all-access-pro-features { list-style: none; padding: 0; margin: 0 0 1.5em; }
    .all-access-pro-features li { padding: 0.75em 0; border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 0.75em; color: var(--ink); font-size: 0.95em; }
    .all-access-pro-features i { color: var(--model); font-size: 1.05em; flex-shrink: 0; }
    .all-access-pro-button { display: block; width: 100%; padding: 1em; min-height: 52px; box-sizing: border-box; background: var(--accent-grad); color: #fff; border: none; border-radius: 12px; font-family: var(--ui); font-size: 1.05em; font-weight: 800; cursor: pointer; text-align: center; box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 12px 26px -7px var(--accent-glow); transition: filter 0.18s, transform 0.15s; }
    .all-access-pro-button:hover { filter: brightness(1.07); transform: translateY(-1px); }
    .plan-selection { list-style: none; padding: 0; margin: 1.25em 0; }
    .plan-option { padding: 1em; background: var(--panel); border: 1px solid var(--line-strong); border-radius: var(--apk-radius); margin-bottom: 0.75em; cursor: pointer; position: relative; color: var(--ink); font-size: 0.92em; transition: border-color 0.15s; }
    .plan-option.active { border-color: var(--action-hi); background: rgba(70,140,255,0.1); }
    .plan-option .plan-price { font-family: var(--mono); font-weight: 700; font-variant-numeric: tabular-nums; color: var(--ink); }
    .plan-option .plan-term { color: var(--ink-dim); font-size: 0.92em; }
    .plan-badge { position: absolute; top: -10px; right: 10px; background: var(--model); color: #05080F; padding: 0.25em 0.75em; border-radius: 2em; font-family: var(--mono); font-size: 0.66em; font-weight: 700; letter-spacing: 0.04em; }
    @media (max-width: 768px) { .all-access-pro-content { grid-template-columns: 1fr; gap: 1.75em; } }

    /* --- EMAIL SIGNUP --- */
    .full-width-email-signup { background: var(--void); border-top: 1px solid var(--line); color: var(--ink); padding: 2.75em 5%; }
    .apk-email-wrap { max-width: 1000px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.75em; }
    .apk-email-text { flex: 1 1 380px; display: flex; align-items: center; gap: 1.25em; }
    .apk-email-logo { height: auto; width: 50px; flex-shrink: 0; }
    .apk-email-title { font-family: var(--display); font-size: 1.6em; font-weight: 800; margin: 0 0 0.4em; letter-spacing: -0.02em; color: var(--ink); }
    .apk-email-desc  { font-size: 0.98em; line-height: 1.5; color: var(--ink-dim); margin: 0; }
    .apk-email-desc strong { color: var(--ink); }
    .apk-email-form  { flex: 1 1 320px; display: flex; flex-direction: column; gap: 0.65em; align-items: center; position: relative; }
    .apk-email-row   { display: flex; gap: 0.65em; width: 100%; max-width: 420px; }
    .apk-email-input { flex-grow: 1; padding: 0.8em 0.9em; min-height: 46px; box-sizing: border-box; border-radius: var(--apk-radius); border: 1px solid var(--line-strong); background: var(--panel-2); color: var(--ink); font-size: 1em; font-family: var(--ui); }
    .apk-email-input::placeholder { color: var(--ink-faint); }
    .apk-signup-btn  { background: var(--accent-grad); color: #fff; font-family: var(--ui); font-weight: 800; padding: 0.8em 1.3em; min-height: 46px; box-sizing: border-box; border-radius: var(--apk-radius); border: none; cursor: pointer; flex-shrink: 0; box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 10px 24px -8px var(--accent-glow); transition: filter 0.18s, transform 0.15s; }
    .apk-signup-btn:hover { filter: brightness(1.07); transform: translateY(-1px); }
    .apk-email-disclaimer { font-size: 0.84em; color: var(--ink-faint); text-align: center; width: 100%; }
    .apk-email-disclaimer a { color: var(--action-hi); text-decoration: underline; }
    @media (max-width: 768px) {
        .apk-email-text { flex-direction: column; align-items: flex-start; }
        .apk-email-row  { flex-direction: column; max-width: 340px; }
        .apk-game-header { flex-direction: column; align-items: flex-start; padding: 12px 15px; }
        .apk-team-info   { width: 100%; margin-bottom: 6px; }
        .apk-vs-text     { display: none; }
        .apk-bet-item    { flex-direction: column; align-items: flex-start; padding: 12px 15px; }
        .apk-bet-desc-section { margin-right: 0; margin-bottom: 10px; width: 100%; }
        .apk-bet-details { flex-direction: row; justify-content: space-between; width: 100%; flex-wrap: wrap; gap: 8px; }
        .apk-detail-item { flex-direction: column; align-items: flex-start; text-align: left; flex: 1; }
    }

    /* Reduced motion */
    @media (prefers-reduced-motion: reduce) {
        .apk-game-block, .apk-btn-unlock, .apk-picks-collapsible { 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; }
