.gptoday{width:100%;max-width:none;margin:0;padding:0;color:var(--gsp-text-primary)}.gptoday *{box-sizing:border-box}.gptoday a{color:inherit}.gptoday-hero{position:relative;overflow:hidden;padding:38px;border:1px solid #1f4668;border-radius:22px;background:radial-gradient(circle at 85% 15%,rgba(55,123,255,.24),transparent 32%),linear-gradient(135deg,#0c2639,#101f46 72%,#152d5d);box-shadow:0 22px 60px rgba(0,0,0,.22)}.gptoday-kicker,.gptoday-section header span,.gptoday-personalized header span,.gptoday-panel header>span,.gptoday-joe-read span{display:block;color:#52f2b1;font-size:12px;font-weight:900;letter-spacing:.15em}.gptoday-date{margin:16px 0 22px;color:#9db5cf}.gptoday-hero h2{font-size:28px;margin:0 0 8px}.gptoday-headline{max-width:720px;margin:0;color:#c4d5e8;font-size:18px;line-height:1.55}.gptoday-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.gptoday-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border:1px solid #356087;border-radius:10px;text-decoration:none;font-weight:800;background:#102943}.gptoday-btn--primary{background:#347cff;border-color:#347cff;color:white}.gptoday-profile{position:absolute;right:36px;top:36px;display:flex;gap:12px;align-items:center;padding:10px 14px;border:1px solid #365676;border-radius:14px;background:rgba(5,17,31,.58);backdrop-filter:blur(8px)}.gptoday-profile img,.gptoday-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.gptoday-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#3a83ff,#4ce4b0);font-weight:900;font-size:17px}.gptoday-profile strong,.gptoday-profile span{display:block}.gptoday-profile span{font-size:12px;color:#9db5cf;margin-top:3px}.gptoday-scoreboard{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:34px}.gptoday-scoreboard article{padding:15px;border:1px solid #31516d;border-radius:12px;background:rgba(6,22,38,.7)}.gptoday-scoreboard span{display:block;color:#91a9c2;font-size:12px;text-transform:uppercase}.gptoday-scoreboard strong{display:block;margin-top:5px;font-size:27px}.gptoday-scoreboard .is-bet strong{color:#52f2b1}.gptoday-scoreboard .is-wait strong{color:#ffd45b}.gptoday-scoreboard .is-no-bet strong{color:#ff748f}.gptoday-joe-read{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:18px 0 30px;padding:24px 28px;border:1px solid #1c5d55;border-radius:18px;background:linear-gradient(110deg,#0d3b39,#123861 75%,#173f7c)}.gptoday-joe-read h2{margin:7px 0;font-size:25px}.gptoday-joe-read p{margin:0;color:#b9d1dd;max-width:820px}.gptoday-joe-read a,.gptoday-section header a,.gptoday-panel header a{color:#69a7ff;font-weight:800;text-decoration:none}.gptoday-section,.gptoday-personalized{margin:32px 0}.gptoday-section>header,.gptoday-personalized>header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px}.gptoday-section h2,.gptoday-personalized h2{margin:5px 0 0;font-size:29px}.gptoday-opportunities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gptoday-opportunity{position:relative;overflow:hidden;padding:22px;border:1px solid #2c3429;border-radius:17px;background:var(--gsp-bg-card);min-height:330px}.gptoday-opportunity:before{content:"";position:absolute;left:0;right:0;top:0;height:4px}.gptoday-opportunity.decision-bet:before{background:#46eda9}.gptoday-opportunity.decision-wait:before{background:#ffd45b}.gptoday-opportunity.decision-no-bet:before{background:#ff6686}.gptoday-opportunity__top,.gptoday-opportunity__footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.gptoday-opportunity__top>span:last-child{color:#91a9c2;font-size:12px}.gptoday-decision{padding:6px 9px;border-radius:999px;font-weight:900;font-size:11px;background:#183b55}.decision-bet .gptoday-decision{color:#52f2b1}.decision-wait .gptoday-decision{color:#ffd45b}.decision-no-bet .gptoday-decision{color:#ff839a}.gptoday-opportunity h3{font-size:22px;line-height:1.25;margin:18px 0}.gptoday-opportunity__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.gptoday-opportunity__metrics div{padding:10px;border-radius:9px;background:#181a17}.gptoday-opportunity__metrics span{display:block;color:#8199b0;font-size:10px}.gptoday-opportunity__metrics strong{display:block;margin-top:4px}.gptoday-joe-summary{margin:16px 0;padding:14px;border-left:3px solid var(--gsp-brand);background:#121510}.gptoday-joe-summary span{color:#52f2b1;font-size:11px;font-weight:900}.gptoday-joe-summary p{margin:5px 0 0;color:#b7c9da;font-size:13px;line-height:1.5}.gptoday-opportunity__footer{position:absolute;left:22px;right:22px;bottom:20px}.gptoday-opportunity__footer small{color:#7f96ab}.gptoday-opportunity__footer a{color:#63a4ff;font-weight:900;text-decoration:none}.gptoday-empty{padding:30px;border:1px dashed #335570;border-radius:16px;background:#0c2133}.gptoday-empty strong{font-size:22px}.gptoday-empty p{color:#9db3c7}.gptoday-personalized{padding:25px;border:1px solid #27445e;border-radius:18px;background:#0b1f31}.gptoday-personalized header small{color:#7f96ab}.gptoday-personalized__grid{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;gap:14px}.gptoday-personalized__grid>article{padding:18px;border-radius:13px;background:#102940}.gptoday-personalized__grid>article>span{color:#81a0ba;font-size:11px;font-weight:900}.gptoday-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.gptoday-chips b{padding:9px 12px;border-radius:999px;background:#173d58;color:#6ce6bd}.gptoday-list{display:grid;gap:9px;margin-top:14px}.gptoday-list div{display:flex;gap:10px;align-items:center}.gptoday-list i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-style:normal;background:#244d6e;color:#66efbd;font-weight:900}.gptoday-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.gptoday-panel{padding:23px;border:1px solid #294760;border-radius:17px;background:#0b2032}.gptoday-panel header{display:flex;justify-content:space-between;gap:14px}.gptoday-panel h2{font-size:34px;margin:20px 0}.gptoday-bankroll-bar{height:10px;border-radius:999px;background:#19384f;overflow:hidden}.gptoday-bankroll-bar i{display:block;height:100%;background:#4de3ae}.gptoday-panel__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.gptoday-panel__stats div{padding:12px;border-radius:10px;background:#102b42}.gptoday-panel__stats span{display:block;color:#839cb2;font-size:11px}.gptoday-panel__stats strong{display:block;margin-top:5px}.gptoday-movers{display:grid;gap:8px;margin-top:20px}.gptoday-movers div{display:flex;justify-content:space-between;gap:15px;padding:12px;border-radius:9px;background:#102b42}.gptoday-movers span{color:#5ce2b2}.gptoday-department-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:20px}.gptoday-department-grid a{padding:13px;border-radius:9px;background:#102b42;text-decoration:none;font-weight:800}.gptoday-department-grid span{display:block;margin-top:4px;color:#829cb3;font-size:11px;font-weight:400}@media(max-width:1000px){.gptoday-profile{position:static;margin-top:25px;width:max-content}.gptoday-scoreboard{grid-template-columns:repeat(3,1fr)}.gptoday-opportunities{grid-template-columns:repeat(2,1fr)}.gptoday-personalized__grid{grid-template-columns:1fr}.gptoday-grid-two{grid-template-columns:1fr}}@media(max-width:680px){.gptoday{padding:0}.gptoday-hero{padding:24px}.gptoday-scoreboard{grid-template-columns:repeat(2,1fr)}.gptoday-opportunities{grid-template-columns:1fr}.gptoday-joe-read,.gptoday-section>header,.gptoday-personalized>header{align-items:flex-start;flex-direction:column}.gptoday-opportunity{min-height:350px}.gptoday-panel__stats{grid-template-columns:1fr}.gptoday-profile{width:100%}}


/* GO Sports Pro Today 1.1 — branded hero */
.gptoday-hero{
    min-height:520px;
    padding:46px 44px 38px;
    border:1px solid var(--gsp-brand);
    border-radius:22px;
    background-image:linear-gradient(90deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.03) 52%,rgba(0,0,0,0) 72%),url('../images/today/go-sports-pro-today-hero.webp');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    box-shadow:0 0 0 1px rgba(144,207,7,.18),0 22px 60px rgba(0,0,0,.44),inset 0 0 38px rgba(144,207,7,.06);
}
.gptoday-hero__copy{position:relative;z-index:2;max-width:68%}

.gptoday-kicker{color:var(--gsp-brand)}
.gptoday-profile{display:none}
.gptoday-btn--primary{background:var(--gsp-brand);border-color:var(--gsp-brand);color:var(--gsp-brand-ink)}
.gptoday-btn--primary:hover{filter:brightness(1.08)}
.gptoday-scoreboard{position:relative;z-index:2;margin-top:36px}
.gptoday-scoreboard article{border-color:rgba(144,207,7,.32);background:linear-gradient(145deg,rgba(4,5,5,.92),rgba(24,26,25,.88))}
@media(max-width:1000px){
    .gptoday-hero{min-height:500px;background-position:66% center}
    .gptoday-hero__copy{max-width:72%}
}
@media(max-width:680px){
    .gptoday-hero{min-height:620px;padding:28px 22px;background-position:72% center}
    .gptoday-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.46) 70%,rgba(0,0,0,.1));pointer-events:none}
    .gptoday-hero__copy,.gptoday-scoreboard{position:relative;z-index:2;max-width:100%}
    
}

/* GO Sports Pro Today 1.1.1 — hero scale and metallic title polish */
@media (min-width:1001px){
    .gptoday-hero{
        /* Keep the approved artwork; scale it down so Joe is more zoomed out. */
        background-size:92% auto;
        background-position:right center;
        background-color:#050606;
    }
    .gptoday-hero__copy{max-width:76%}
    
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero{
        background-size:96% auto;
        background-position:right center;
        background-color:#050606;
    }
    .gptoday-hero__copy{max-width:78%}
    
}

/* GO Sports Pro Today 1.1.2 — approved attached hero background */
.gptoday-hero{
    background-image:url('../images/today/go-sports-pro-today-hero.webp');
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    background-color:#050606;
}
@media (min-width:1001px){
    .gptoday-hero{
        background-size:cover;
        background-position:center center;
    }
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero{
        background-size:cover;
        background-position:center center;
    }
}
@media (max-width:680px){
    .gptoday-hero{
        background-size:cover;
        background-position:68% center;
    }
}

/* GO Sports Pro Today 1.1.3 — stronger metallic H1 */
@media (min-width:1001px){
    .gptoday-hero__copy{
        max-width:72%;
    }
    
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero__copy{max-width:74%}
    
}

/* GO Sports Pro Today 1.1.4 — full-canvas hero + crisp chrome H1 */
@media (min-width:681px){
    .gptoday-hero{
        /* Preserve the complete approved canvas so Joe and the frame are never cropped. */
        background-size:100% 100%;
        background-position:center center;
        background-repeat:no-repeat;
    }
}
@media (min-width:1001px){
    .gptoday-hero__copy{max-width:70%}
    
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero__copy{max-width:72%}
    
}


/* GO Sports Pro Today 1.1.5 — natural hero ratio + mock-style chrome title */
@media (min-width:1001px){
    .gptoday-hero{
        /* Match the 1920 × 941 artwork so the background is never stretched. */
        min-height:0;
        aspect-ratio:1920 / 941;
        background-size:100% 100%;
        background-position:center center;
        background-repeat:no-repeat;
        padding:46px 44px 34px;
    }
    .gptoday-hero__copy{max-width:68%}
    
    .gptoday-scoreboard{margin-top:30px}
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero{
        background-size:cover;
        background-position:center center;
    }
    
}

/* GO Sports Pro Today 1.1.6 — authoritative compact hero + mock chrome title */
@media (min-width:1001px){
    .gptoday-hero{
        min-height:0 !important;
        height:536px !important;
        aspect-ratio:auto !important;
        padding:46px 44px 32px !important;
        background-size:cover !important;
        background-position:center center !important;
        background-repeat:no-repeat !important;
    }
    .gptoday-hero__copy{
        max-width:68% !important;
    }
    
    .gptoday-scoreboard{
        margin-top:30px !important;
    }
}

@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero{
        height:560px !important;
        min-height:0 !important;
        aspect-ratio:auto !important;
        background-size:cover !important;
        background-position:center center !important;
    }
    
}

/* GO Sports Pro Today 1.1.7 — desktop hero container height only */
@media (min-width:1001px){
    .gptoday-hero{
        height:436px !important;
        min-height:0 !important;
        aspect-ratio:auto !important;
        overflow:hidden !important;
    }
}

/* GO Sports Pro Today 1.1.8 — exact 1920x695 hero asset + 30px container increase */
@media (min-width:1001px){
    .gptoday-hero{
        height:466px !important;
        min-height:0 !important;
        aspect-ratio:auto !important;
        overflow:hidden !important;
        background-image:url('../images/today/go-sports-pro-today-hero-1920x695.jpg') !important;
        background-size:100% auto !important;
        background-position:center top !important;
        background-repeat:no-repeat !important;
    }
}

/* GO Sports Pro Today 1.1.9 — fill complete 466px hero container */
@media (min-width:1001px){
    .gptoday-hero{
        height:466px !important;
        min-height:0 !important;
        aspect-ratio:auto !important;
        overflow:hidden !important;
        background-image:url('../images/today/go-sports-pro-today-hero-1920x695.jpg') !important;
        background-size:cover !important;
        background-position:center top !important;
        background-repeat:no-repeat !important;
    }
}

/* GO Sports Pro Today 1.2.0 — mock hero title + metric cards */
@media (min-width:1001px){
    .gptoday-hero{
        border:0 !important;
        box-shadow:0 18px 48px rgba(0,0,0,.32) !important;
    }
    
}

.gptoday-scoreboard{
    gap:10px !important;
}
.gptoday-scoreboard article{
    min-width:0;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    min-height:64px;
    padding:10px 14px !important;
    border:1px solid rgba(185,194,200,.30) !important;
    border-radius:10px !important;
    background:linear-gradient(145deg,rgba(8,10,10,.92),rgba(25,27,26,.88)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 8px 20px rgba(0,0,0,.18) !important;
    backdrop-filter:blur(7px);
}
.gptoday-scoreboard article>div{min-width:0}
.gptoday-scoreboard article>div>span{
    color:#b7b9b8 !important;
    font-size:10px !important;
    line-height:1.05;
    letter-spacing:.045em;
}
.gptoday-scoreboard article>div>strong{
    margin-top:3px !important;
    font-size:27px !important;
    line-height:1 !important;
    color:#f2f2f0;
}
.gptoday-score-icon{
    flex:0 0 38px;
    width:38px;
    height:38px;
    display:grid !important;
    place-items:center;
    border-radius:8px;
    background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
    border:1px solid rgba(255,255,255,.10);
    color:#d9d9d6 !important;
}
.gptoday-score-icon svg{
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.gptoday-scoreboard .is-bet .gptoday-score-icon{color:var(--gsp-brand) !important;background:rgba(144,207,7,.10);border-color:rgba(144,207,7,.25)}
.gptoday-scoreboard .is-wait .gptoday-score-icon{color:#c7e900 !important;background:rgba(199,233,0,.08);border-color:rgba(199,233,0,.22)}
.gptoday-scoreboard .is-no-bet .gptoday-score-icon{color:#ff5f6d !important;background:rgba(255,95,109,.09);border-color:rgba(255,95,109,.22)}
.gptoday-scoreboard .is-books .gptoday-score-icon{color:#d9d9d6 !important}
.gptoday-scoreboard .is-bet strong{color:var(--gsp-brand) !important}
.gptoday-scoreboard .is-wait strong{color:#c7e900 !important}
.gptoday-scoreboard .is-no-bet strong{color:#ff6675 !important}

@media (max-width:1000px){
    .gptoday-scoreboard article{min-height:62px}
}

/* GO Sports Pro Today 1.2.2 — rebuilt layered chrome H1 */
.gptoday-hero h1{
    position:relative !important;
    display:inline-block !important;
    width:max-content !important;
    max-width:100% !important;
    margin:8px 0 0 !important;
    white-space:nowrap !important;
    font-family:'Teko','Arial Narrow',sans-serif !important;
    font-size:clamp(64px,5.25vw,86px) !important;
    font-weight:700 !important;
    line-height:.80 !important;
    letter-spacing:.004em !important;
    text-transform:uppercase !important;
    color:transparent !important;
    -webkit-text-fill-color:transparent !important;
    -webkit-text-stroke:0 !important;
    background:none !important;
    filter:none !important;
    text-shadow:none !important;
}
.gptoday-hero h1::before,
.gptoday-hero h1::after{
    content:attr(data-text);
    position:absolute;
    inset:0;
    white-space:nowrap;
    font:inherit;
    letter-spacing:inherit;
    pointer-events:none;
}
.gptoday-hero h1::before{
    z-index:0;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
    -webkit-text-stroke:2px #050505 !important;
    transform:translate(0,7px);
    text-shadow:0 3px 0 #000,0 7px 7px rgba(0,0,0,.72) !important;
}
.gptoday-hero h1::after{
    z-index:1;
    color:transparent !important;
    background:linear-gradient(180deg,
        #ffffff 0%,
        #f7f7f5 18%,
        #d7d7d3 38%,
        #8d8d89 62%,
        #c7c7c3 79%,
        #f4f4f1 100%) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    -webkit-text-stroke:1.4px rgba(18,18,18,.98) !important;
    text-shadow:
        0 -1px 0 rgba(255,255,255,.90),
        1px 0 0 rgba(255,255,255,.20),
        0 2px 0 #777772,
        0 3px 0 #343432 !important;
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero h1{font-size:clamp(52px,6.8vw,70px) !important;}
}
@media (max-width:680px){
    .gptoday-hero h1{
        width:auto !important;
        white-space:normal !important;
        font-size:clamp(48px,15vw,70px) !important;
        line-height:.84 !important;
    }
    .gptoday-hero h1::before,
    .gptoday-hero h1::after{white-space:normal;}
}


/* GO Sports Pro Today 1.2.3 — approved title artwork replaces CSS-generated H1 */
.gptoday-hero h1.gptoday-title-art{
    display:block !important;
    position:relative !important;
    width:min(760px, 72vw) !important;
    max-width:72% !important;
    height:auto !important;
    margin:4px 0 2px !important;
    padding:0 !important;
    line-height:0 !important;
    color:inherit !important;
    background:none !important;
    -webkit-text-fill-color:initial !important;
    -webkit-text-stroke:0 !important;
    text-shadow:none !important;
    filter:none !important;
}
.gptoday-hero h1.gptoday-title-art::before,
.gptoday-hero h1.gptoday-title-art::after{
    content:none !important;
    display:none !important;
}
.gptoday-title-art img{
    display:block;
    width:100%;
    height:auto;
    object-fit:contain;
}
@media (min-width:1001px){
    .gptoday-hero h1.gptoday-title-art{
        width:760px !important;
        max-width:67% !important;
        margin-top:2px !important;
    }
}
@media (min-width:681px) and (max-width:1000px){
    .gptoday-hero h1.gptoday-title-art{
        width:650px !important;
        max-width:76% !important;
    }
}
@media (max-width:680px){
    .gptoday-hero h1.gptoday-title-art{
        width:100% !important;
        max-width:100% !important;
        margin:8px 0 6px !important;
    }
}

/* GO Sports Pro Today 1.2.4 — evaluation layout for two-line title */
@media (min-width:1001px){
    .gptoday-hero{
        height:536px !important;
        min-height:536px !important;
        background-size:100% auto !important;
        background-position:center top !important;
        background-repeat:no-repeat !important;
        background-color:#050505 !important;
    }
    .gptoday-hero h1.gptoday-title-art{
        width:760px !important;
        max-width:66% !important;
        margin:2px 0 4px !important;
    }
    .gptoday-title-art img{
        display:block !important;
        width:100% !important;
        height:auto !important;
        object-fit:contain !important;
    }
}

/* GO Sports Pro Today 1.2.9 — raise post-title hero content 20px */
@media (min-width:1001px){
    .gptoday-hero h1.gptoday-title-art{
        margin-bottom:-36px !important;
    }
}

/* GO Sports Pro Today 1.3.0 — Hero scoreboard neon card redesign */
.gptoday-scoreboard{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:1.18fr .92fr .92fr 1fr 1.02fr;
    gap:12px !important;
    margin-top:34px;
}
.gptoday-scoreboard article{
    --score-accent:var(--gsp-brand);
    --score-rgb:144,207,7;
    position:relative;
    isolation:isolate;
    min-width:0;
    min-height:90px;
    display:grid !important;
    grid-template-columns:54px minmax(0,1fr);
    align-items:center !important;
    gap:12px !important;
    padding:12px 14px !important;
    overflow:hidden;
    border:1px solid var(--score-accent) !important;
    border-radius:15px !important;
    background:
        radial-gradient(circle at 15% 110%,rgba(var(--score-rgb),.16),transparent 45%),
        linear-gradient(145deg,rgba(3,4,4,.98),rgba(15,17,16,.96) 65%,rgba(3,4,4,.98)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 0 24px rgba(var(--score-rgb),.055),
        0 0 9px rgba(var(--score-rgb),.34),
        0 12px 24px rgba(0,0,0,.34) !important;
    backdrop-filter:blur(8px);
}
.gptoday-scoreboard article::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    border-radius:inherit;
    background:linear-gradient(115deg,rgba(255,255,255,.055),transparent 26%,transparent 72%,rgba(var(--score-rgb),.05));
    pointer-events:none;
}
.gptoday-scoreboard article::after{
    content:"";
    position:absolute;
    left:9%;
    right:9%;
    bottom:-9px;
    height:17px;
    z-index:-2;
    background:rgba(var(--score-rgb),.22);
    filter:blur(15px);
    border-radius:50%;
    pointer-events:none;
}
.gptoday-scoreboard .is-wait{--score-accent:#f0df00;--score-rgb:240,223,0}
.gptoday-scoreboard .is-no-bet{--score-accent:#ef2637;--score-rgb:239,38,55}
.gptoday-scoreboard .is-books{--score-accent:#e9ecec;--score-rgb:233,236,236}
.gptoday-score-icon{
    flex:none;
    width:54px;
    height:58px;
    display:grid !important;
    place-items:center;
    border-radius:11px;
    color:var(--score-accent) !important;
    background:linear-gradient(145deg,rgba(var(--score-rgb),.10),rgba(0,0,0,.35)) !important;
    border:1px solid rgba(var(--score-rgb),.12) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.gptoday-score-icon svg{
    width:36px;
    height:36px;
    stroke-width:1.75;
    filter:drop-shadow(0 0 5px rgba(var(--score-rgb),.34));
}
.gptoday-scoreboard article>div{
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:8px;
}
.gptoday-scoreboard article>div>span{
    min-width:0;
    color:#eceeed !important;
    font-family:'Teko',Impact,'Arial Narrow',sans-serif;
    font-size:25px !important;
    font-weight:600;
    line-height:.88;
    letter-spacing:.01em;
    text-transform:uppercase;
    text-shadow:0 2px 0 #202020,0 0 5px rgba(255,255,255,.16);
}
.gptoday-scoreboard article>div>strong{
    margin:0 !important;
    min-width:1.55ch;
    color:var(--score-accent) !important;
    font-family:'Teko',Impact,'Arial Narrow',sans-serif;
    font-size:38px !important;
    font-weight:700;
    line-height:.85 !important;
    letter-spacing:-.035em;
    text-align:right;
    font-variant-numeric:tabular-nums;
    text-shadow:0 0 8px rgba(var(--score-rgb),.30);
}
.gptoday-scoreboard .is-games>div>span,
.gptoday-scoreboard .is-books>div>span{
    max-width:92px;
}
.gptoday-scoreboard .is-bet .gptoday-score-icon,
.gptoday-scoreboard .is-wait .gptoday-score-icon,
.gptoday-scoreboard .is-no-bet .gptoday-score-icon,
.gptoday-scoreboard .is-books .gptoday-score-icon{color:var(--score-accent) !important}
.gptoday-scoreboard .is-bet strong,
.gptoday-scoreboard .is-wait strong,
.gptoday-scoreboard .is-no-bet strong,
.gptoday-scoreboard .is-books strong{color:var(--score-accent) !important}

@media(max-width:1180px){
    .gptoday-scoreboard{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px !important}
    .gptoday-scoreboard article{grid-template-columns:44px minmax(0,1fr);gap:8px !important;padding:10px !important;min-height:78px}
    .gptoday-score-icon{width:44px;height:50px}
    .gptoday-score-icon svg{width:29px;height:29px}
    .gptoday-scoreboard article>div>span{font-size:20px !important}
    .gptoday-scoreboard article>div>strong{font-size:32px !important}
}
@media(max-width:1000px){
    .gptoday-scoreboard{grid-template-columns:repeat(3,minmax(0,1fr))}
    .gptoday-scoreboard article{min-height:82px}
}
@media(max-width:680px){
    .gptoday-scoreboard{grid-template-columns:1fr 1fr;gap:10px !important}
    .gptoday-scoreboard .is-games{grid-column:1/-1}
    .gptoday-scoreboard article{grid-template-columns:48px minmax(0,1fr);min-height:78px}
    .gptoday-score-icon{width:48px;height:52px}
    .gptoday-scoreboard article>div>span{font-size:21px !important}
    .gptoday-scoreboard article>div>strong{font-size:34px !important}
}

/* GO Sports Pro Today 1.3.1 — full-width scoreboard, deeper hero base, neon Joe's Read */
@media (min-width:1001px){
    .gptoday-hero{
        height:486px !important;
        padding-bottom:52px !important;
    }
    .gptoday-scoreboard{
        margin-left:-44px !important;
        margin-right:-44px !important;
        width:calc(100% + 88px) !important;
        padding:0 18px !important;
    }
}

.gptoday-joe-read{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:112px;
    margin:18px 0 30px;
    padding:22px 28px 22px 82px;
    border:1px solid rgba(144,207,7,.78);
    border-radius:16px;
    background:
        radial-gradient(circle at 8% 50%,rgba(144,207,7,.16),transparent 24%),
        linear-gradient(100deg,rgba(7,12,7,.99),rgba(12,18,12,.98) 58%,rgba(18,25,14,.96));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        inset 0 0 34px rgba(144,207,7,.045),
        0 0 12px rgba(144,207,7,.34),
        0 14px 32px rgba(0,0,0,.34);
}
.gptoday-joe-read::before{
    content:"✓";
    position:absolute;
    left:18px;
    top:50%;
    width:44px;
    height:54px;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
    color:#b8ef19;
    font-size:24px;
    font-weight:900;
    border:2px solid var(--gsp-brand);
    border-radius:50% 50% 46% 46% / 40% 40% 60% 60%;
    background:linear-gradient(145deg,rgba(144,207,7,.17),rgba(0,0,0,.5));
    box-shadow:0 0 13px rgba(144,207,7,.42),inset 0 0 12px rgba(144,207,7,.12);
}
.gptoday-joe-read::after{
    content:"";
    position:absolute;
    z-index:-1;
    right:180px;
    top:24px;
    width:300px;
    height:64px;
    opacity:.42;
    background:
        linear-gradient(135deg,transparent 0 10%,rgba(144,207,7,.48) 10.5% 11.5%,transparent 12% 23%,rgba(144,207,7,.48) 23.5% 24.5%,transparent 25% 38%,rgba(144,207,7,.48) 38.5% 39.5%,transparent 40% 53%,rgba(144,207,7,.48) 53.5% 54.5%,transparent 55% 68%,rgba(144,207,7,.48) 68.5% 69.5%,transparent 70% 83%,rgba(144,207,7,.48) 83.5% 84.5%,transparent 85%),
        linear-gradient(to bottom,transparent 49%,rgba(144,207,7,.12) 50%,transparent 51%);
    filter:drop-shadow(0 0 5px rgba(144,207,7,.34));
    transform:skewX(-8deg);
    pointer-events:none;
}
.gptoday-joe-read>div{position:relative;z-index:2}
.gptoday-joe-read span{color:#b5ea18;font-size:11px;letter-spacing:.14em}
.gptoday-joe-read h2{margin:5px 0 4px;font-size:25px;color:#f4f6f1}
.gptoday-joe-read p{color:#c3c9bf;font-size:14px}
.gptoday-joe-read a{
    position:relative;
    z-index:2;
    flex:0 0 auto;
    color:#b6ef17;
    font-size:14px;
    text-shadow:0 0 8px rgba(144,207,7,.3);
}
@media(max-width:1000px){
    .gptoday-joe-read::after{right:90px;width:220px;opacity:.28}
}
@media(max-width:680px){
    .gptoday-joe-read{padding:22px 20px 22px 72px;min-height:130px}
    .gptoday-joe-read::before{left:14px;width:40px;height:48px}
    .gptoday-joe-read::after{display:none}
}

/* GO Sports Pro Today 1.3.2 — scoreboard clearance and hero action polish */
@media (min-width:1001px){
    .gptoday-hero{
        height:516px !important;
        padding-bottom:72px !important;
    }
    .gptoday-scoreboard{
        margin-bottom:0 !important;
    }
}

/* Preserve black copy on the approved lime primary action. */
.gptoday .gptoday-btn--primary,
.gptoday .gptoday-btn--primary:visited{
    color:#071000 !important;
    background:linear-gradient(180deg,var(--gsp-brand-bright) 0%,var(--gsp-brand) 100%) !important;
    border-color:#a6e70b !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 5px 13px rgba(144,207,7,.22);
}

/* Match the mock's dark secondary briefing button. */
.gptoday-hero__actions .gptoday-btn:not(.gptoday-btn--primary),
.gptoday-hero__actions .gptoday-btn:not(.gptoday-btn--primary):visited{
    color:#f4f5f1 !important;
    background:linear-gradient(180deg,rgba(18,20,18,.88),rgba(3,5,4,.92)) !important;
    border:1px solid rgba(216,221,211,.48) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 13px rgba(0,0,0,.3);
    text-shadow:0 1px 1px rgba(0,0,0,.75);
}
.gptoday-hero__actions .gptoday-btn:not(.gptoday-btn--primary):hover{
    border-color:var(--gsp-brand) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 0 10px rgba(144,207,7,.22);
}

/* GO Sports Pro Today 1.3.3 — definitive scoreboard bottom-clearance fix */
@media (min-width:1001px){
    /* Let the hero grow with its real content instead of clipping the scoreboard
       against a fixed-height boundary. */
    .gptoday-hero{
        height:auto !important;
        min-height:548px !important;
        padding-bottom:28px !important;
        overflow:hidden;
    }
    .gptoday-scoreboard{
        margin-bottom:0 !important;
    }
    .gptoday-scoreboard article{
        margin-bottom:0 !important;
    }
}

/* GO Sports Pro Today 1.3.5 — dashboard card, eyebrow and league identity refinement */
.gptoday-personalized,
.gptoday-personalized__grid>article,
.gptoday-panel,
.gptoday-opportunity,
.gptoday-opportunity__metrics div,
.gptoday-joe-summary,
.gptoday-panel__stats div,
.gptoday-movers div,
.gptoday-department-grid a{
    background:var(--gsp-bg-card) !important;
}
.gptoday-personalized,
.gptoday-panel,
.gptoday-opportunity{
    border-color:rgba(144,207,7,.28) !important;
}
.gptoday-kicker,
.gptoday-section header span,
.gptoday-personalized header span,
.gptoday-panel header>span,
.gptoday-joe-read span,
.gptoday-personalized__grid>article>span,
.gptoday-joe-summary span{
    color:var(--gsp-brand) !important;
}
.gptoday-league-logos{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-top:16px;
}
.gptoday-league-logo{
    width:92px;
    height:56px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border:1px solid rgba(144,207,7,.36);
    border-radius:12px;
    background:var(--gsp-bg-card);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 0 10px rgba(144,207,7,.08);
}
.gptoday-league-logo img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}
.gptoday-league-logo strong{
    color:#f4f6f1;
    font-size:15px;
    letter-spacing:.04em;
}


/* Joe Daily Briefing 1.0 */
.gptoday-daily-briefing{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin:20px 0;padding:24px;border:1px solid rgba(138,201,2,.55);border-radius:18px;background:linear-gradient(120deg,#101811,#101111 58%,#13271e);box-shadow:0 0 26px rgba(138,201,2,.12)}
.gptoday-daily-briefing__main>span{color:#8ac902;font-size:12px;font-weight:800;letter-spacing:.16em}.gptoday-daily-briefing__main h2{margin:7px 0;font-size:28px}.gptoday-daily-briefing__main p{color:#d2d2ce;line-height:1.55}.gptoday-daily-briefing__main a{color:#8ac902;font-weight:800}.gptoday-daily-briefing__signals{display:grid;gap:9px}.gptoday-daily-briefing__signals article{background:#171918;border:1px solid #303431;border-radius:11px;padding:12px 14px}.gptoday-daily-briefing__signals span{display:block;color:#929792;font-size:11px;text-transform:uppercase}.gptoday-daily-briefing__signals strong{display:block;margin-top:4px;color:#f4f8f5}.gptoday-daily-briefing__signals article:last-child strong{font-size:13px;line-height:1.35;color:#f4dc16}@media(max-width:900px){.gptoday-daily-briefing{grid-template-columns:1fr}}

.gptoday-live-intelligence{margin:22px 0;padding:22px;background:#101111;border:1px solid #303431;border-radius:18px}.gptoday-live-intelligence header{display:flex;justify-content:space-between;align-items:end}.gptoday-live-intelligence header span{color:#8ac902;font-size:12px;font-weight:800;letter-spacing:1.4px}.gptoday-live-intelligence header h2{margin:5px 0}.gptoday-live-intelligence header a{color:#8ac902}.gptoday-live-intelligence__status{display:flex;align-items:center;gap:10px;padding:12px 0;color:#929792}.gptoday-live-intelligence__status i{width:10px;height:10px;border-radius:50%;background:#8ac902;box-shadow:0 0 12px #8ac902}.gptoday-live-intelligence__status strong{color:#8ac902}.gptoday-live-intelligence__feed{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gptoday-live-intelligence__feed article{background:#171918;border:1px solid #242725;border-radius:12px;padding:14px}.gptoday-live-intelligence__feed time{color:#929792;font-size:11px}.gptoday-live-intelligence__feed span{display:block;color:#8ac902;font-size:11px;font-weight:800;margin-top:7px}.gptoday-live-intelligence__feed strong{display:block;margin:4px 0}.gptoday-live-intelligence__feed p{color:#b8c0bb;font-size:13px;margin:0}@media(max-width:850px){.gptoday-live-intelligence__feed{grid-template-columns:1fr}}


/* v4.0z191 Universal Sports Context 1.0 */

/* v4.0z205 NFL Full-Platform Integration 1.0 */
.gptoday-global-summary{margin:10px 0 28px}.gptoday-global-summary .gptoday-scoreboard{margin-top:0!important}
@media(min-width:1001px){.gptoday-hero{min-height:466px!important;height:466px!important;padding-bottom:32px!important}}
.gptoday-sport-panel{padding:22px;border:1px solid rgba(144,207,7,.24);border-radius:20px;background:linear-gradient(145deg,#0c0f0d,#111411);box-shadow:0 14px 34px rgba(0,0,0,.2)}
.gptoday-sport-panel--nfl{border-color:rgba(144,207,7,.58);background:radial-gradient(circle at 90% 0,rgba(144,207,7,.1),transparent 34%),linear-gradient(145deg,#0b0f0c,#111411)}
.gptoday-sport-panel__header{align-items:flex-start!important}.gptoday-sport-panel__header p{max-width:760px;margin:8px 0 0;color:#aeb7af;line-height:1.55}.gptoday-sport-panel__actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.gptoday-sport-state{display:inline-flex;padding:6px 10px;border:1px solid #465047;border-radius:999px;color:#cfd5cf;font-size:10px;font-weight:900;letter-spacing:.08em}.gptoday-sport-state.is-connected{border-color:rgba(144,207,7,.42);color:var(--gsp-brand);background:rgba(144,207,7,.07)}.gptoday-sport-state.is-attention{border-color:rgba(255,95,109,.45);color:#ff7884}
.gptoday-sport-panel__summary{display:grid;grid-template-columns:110px 110px 110px minmax(220px,1fr);gap:10px;margin:18px 0}.gptoday-sport-panel__summary>div{padding:12px 14px;border:1px solid #292e2a;border-radius:11px;background:#151817}.gptoday-sport-panel__summary span{display:block;color:#818981;font-size:9px;font-weight:800;letter-spacing:.1em}.gptoday-sport-panel__summary strong{display:block;margin-top:4px;color:#eff2ee;font-size:20px}.gptoday-sport-panel__summary>div:last-child strong{font-size:12px;color:var(--gsp-brand)}
.gptoday-sport-empty{display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:18px;padding:22px;border:1px dashed #384038;border-radius:15px;background:#121513}.gptoday-sport-empty__mark{display:grid;place-items:center;width:74px;height:74px;border:1px solid rgba(144,207,7,.38);border-radius:16px;color:var(--gsp-brand);font-family:'Teko',sans-serif;font-size:30px;font-weight:700;background:rgba(144,207,7,.06)}.gptoday-sport-empty strong{font-size:19px}.gptoday-sport-empty p{margin:7px 0 0;color:#9fa8a0;line-height:1.5}
@media(max-width:800px){.gptoday-sport-panel__actions{align-items:flex-start}.gptoday-sport-panel__summary{grid-template-columns:repeat(2,1fr)}.gptoday-sport-empty{grid-template-columns:1fr}.gptoday-sport-panel{padding:17px}}
@media(min-width:1001px){.gptoday-global-summary .gptoday-scoreboard{margin-left:0!important;margin-right:0!important;width:100%!important;padding:0!important}}

/* v4.0z206 Market Intelligence Homepage Integration 1.0 */
.gptoday-layer-heading{position:relative;margin:42px 0 20px;padding:0 0 17px;border-bottom:1px solid rgba(138,201,2,.34)}
.gptoday-layer-heading:after{content:"";position:absolute;left:0;bottom:-1px;width:150px;height:2px;background:var(--gsp-brand)}
.gptoday-layer-heading span{display:block;color:var(--gsp-brand);font-size:11px;font-weight:900;letter-spacing:.16em}
.gptoday-layer-heading h2{margin:5px 0 3px;font-size:31px;line-height:1.1}
.gptoday-layer-heading p{max-width:820px;margin:0;color:#9ca7a2;font-size:14px}
.gptoday-market-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:34px}
.gptoday-market-panel{display:flex;flex-direction:column;min-height:300px;padding:24px;border:1px solid rgba(138,201,2,.25);border-radius:16px;background:linear-gradient(145deg,#101311,#0a0d0b);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.gptoday-market-panel header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.gptoday-market-panel header span{display:block;color:var(--gsp-brand);font-size:10px;font-weight:900;letter-spacing:.14em}
.gptoday-market-panel h3{margin:6px 0 0;font-size:26px}
.gptoday-market-panel header>b{padding:6px 8px;border:1px solid rgba(138,201,2,.35);border-radius:999px;color:var(--gsp-brand);font-size:9px;letter-spacing:.08em;white-space:nowrap}
.gptoday-market-panel>p{min-height:64px;margin:17px 0;color:#aeb6b1;font-size:14px;line-height:1.55}
.gptoday-market-panel__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 20px}
.gptoday-market-panel__metrics div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:#151815}
.gptoday-market-panel__metrics span{display:block;color:#7f8983;font-size:9px;text-transform:uppercase}
.gptoday-market-panel__metrics strong{display:block;overflow:hidden;margin-top:5px;color:#eceeeb;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.gptoday-market-panel>a{display:inline-flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.07);color:#78aaff;font-weight:900;text-decoration:none}
.gptoday-market-panel--prediction-markets{border-color:rgba(91,145,255,.32)}
.gptoday-market-panel--crypto-sportsbooks{border-color:rgba(195,158,64,.30)}
@media(max-width:1000px){.gptoday-market-panels{grid-template-columns:1fr}.gptoday-market-panel{min-height:0}}
@media(max-width:680px){.gptoday-layer-heading{margin-top:32px}.gptoday-market-panel__metrics{grid-template-columns:1fr}.gptoday-market-panel>p{min-height:0}}


/* v4.0z207 Market Intelligence Homepage Render Repair 1.0 */
.gptoday-market-intelligence{display:block!important;margin:44px 0 40px!important;padding:24px!important;border:1px solid rgba(144,207,7,.34)!important;border-radius:20px!important;background:radial-gradient(circle at 50% 0,rgba(144,207,7,.08),transparent 38%),#080b09!important}
.gptoday-market-intelligence .gptoday-layer-heading{display:block!important;margin:0 0 24px!important}
.gptoday-market-intelligence .gptoday-market-panels{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;margin:0!important}
.gptoday-market-intelligence .gptoday-market-panel{display:flex!important;visibility:visible!important;opacity:1!important;min-height:330px!important}
.gptoday-layer-heading--market h2{font-size:36px!important}
@media(max-width:1000px){.gptoday-market-intelligence .gptoday-market-panels{grid-template-columns:1fr!important}.gptoday-market-intelligence .gptoday-market-panel{min-height:0!important}}

/* Market Intelligence Homepage 2.0 */
.gptoday-market-intelligence{margin:54px 0 46px!important;padding:30px!important;border:1px solid rgba(144,207,7,.30)!important;border-radius:24px!important;background:radial-gradient(circle at 50% 0,rgba(144,207,7,.095),transparent 34%),linear-gradient(180deg,#090d0a,#060807)!important;overflow:hidden}
.gptoday-market-intelligence .gptoday-layer-heading{margin:0 0 28px!important}
.gptoday-market-showcases{display:grid;grid-template-columns:1fr;gap:20px}
.gptoday-market-showcase{position:relative;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);min-height:360px;border:1px solid rgba(144,207,7,.28);border-radius:20px;background:linear-gradient(135deg,rgba(18,23,19,.98),rgba(8,11,9,.98));box-shadow:0 20px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035);overflow:hidden}
.gptoday-market-showcase:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--gsp-brand);box-shadow:0 0 22px rgba(144,207,7,.5)}
.gptoday-market-showcase__main{display:flex;flex-direction:column;padding:30px 32px 28px}
.gptoday-market-showcase__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.gptoday-market-showcase__eyebrow,.gptoday-market-showcase__aside-label{display:block;color:var(--gsp-brand);font-size:10px;font-weight:900;letter-spacing:.16em}
.gptoday-market-showcase h3{margin:7px 0 0;font-family:"Teko",sans-serif;font-size:43px;line-height:.95;letter-spacing:.01em;text-transform:uppercase}
.gptoday-market-showcase__state{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(144,207,7,.35);border-radius:999px;color:#c8e98a;font-size:9px;letter-spacing:.09em;white-space:nowrap}
.gptoday-market-showcase__state i{width:7px;height:7px;border-radius:50%;background:var(--gsp-brand);box-shadow:0 0 10px rgba(144,207,7,.75)}
.gptoday-market-showcase__description{max-width:780px;margin:18px 0 20px;color:#b7c0ba;font-size:15px;line-height:1.62}
.gptoday-market-showcase__providers{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 22px}
.gptoday-market-provider{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#121613;color:#d8ded9;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.gptoday-market-provider--logo{width:98px;height:44px;padding:8px 11px}
.gptoday-market-provider--logo img{display:block;max-width:100%;max-height:25px;object-fit:contain}
.gptoday-market-showcase__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto}
.gptoday-market-showcase__metrics div{padding:14px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.025)}
.gptoday-market-showcase__metrics span,.gptoday-market-showcase__signals span{display:block;color:#7f8a83;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.gptoday-market-showcase__metrics strong{display:block;margin-top:7px;color:#f1f4f1;font-size:15px;line-height:1.2}
.gptoday-market-showcase__action{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding:15px 17px;border:1px solid rgba(144,207,7,.38);border-radius:11px;background:rgba(144,207,7,.08);color:#d8f49f;font-size:13px;font-weight:900;text-decoration:none;transition:.18s ease}
.gptoday-market-showcase__action:hover{transform:translateY(-1px);border-color:rgba(144,207,7,.72);background:rgba(144,207,7,.13)}
.gptoday-market-showcase__action b{font-size:19px}
.gptoday-market-showcase__intelligence{display:flex;flex-direction:column;padding:31px 28px;border-left:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 100% 0,rgba(144,207,7,.095),transparent 45%),rgba(0,0,0,.16)}
.gptoday-market-showcase__intelligence h4{margin:13px 0 9px;color:#f1f4f1;font-size:21px;line-height:1.22}
.gptoday-market-showcase__intelligence>p{margin:0 0 20px;color:#9ca7a0;font-size:13px;line-height:1.58}
.gptoday-market-showcase__signals{display:grid;gap:9px;margin-top:auto}
.gptoday-market-showcase__signals div{padding:13px 14px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.025)}
.gptoday-market-showcase__signals strong{display:block;margin-top:5px;color:#ecf0ed;font-size:14px}
.gptoday-market-showcase__signals small{display:block;margin-top:4px;color:#78827c;font-size:10px}
.gptoday-market-showcase--prediction-markets{border-color:rgba(120,164,255,.27)}
.gptoday-market-showcase--prediction-markets:before{background:#7ca6ff;box-shadow:0 0 22px rgba(124,166,255,.42)}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__eyebrow,.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__aside-label{color:#8eb2ff}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__state{border-color:rgba(124,166,255,.35);color:#b8ccff}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__state i{background:#7ca6ff;box-shadow:0 0 10px rgba(124,166,255,.75)}
.gptoday-market-showcase--crypto-sportsbooks{border-color:rgba(205,168,78,.28)}
.gptoday-market-showcase--crypto-sportsbooks:before{background:#cda84e;box-shadow:0 0 22px rgba(205,168,78,.4)}
.gptoday-market-showcase--crypto-sportsbooks .gptoday-market-showcase__eyebrow,.gptoday-market-showcase--crypto-sportsbooks .gptoday-market-showcase__aside-label{color:#d7b75f}
.gptoday-market-showcase--crypto-sportsbooks .gptoday-market-showcase__state{border-color:rgba(205,168,78,.36);color:#ead492}
.gptoday-market-showcase--crypto-sportsbooks .gptoday-market-showcase__state i{background:#cda84e;box-shadow:0 0 10px rgba(205,168,78,.7)}
@media(max-width:1050px){.gptoday-market-showcase{grid-template-columns:1fr}.gptoday-market-showcase__intelligence{border-top:1px solid rgba(255,255,255,.07);border-left:0}.gptoday-market-showcase__signals{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.gptoday-market-intelligence{margin-left:-8px!important;margin-right:-8px!important;padding:20px 14px!important;border-radius:18px!important}.gptoday-market-showcase__main,.gptoday-market-showcase__intelligence{padding:23px 20px}.gptoday-market-showcase h3{font-size:35px}.gptoday-market-showcase__header{display:block}.gptoday-market-showcase__state{margin-top:13px}.gptoday-market-showcase__metrics,.gptoday-market-showcase__signals{grid-template-columns:1fr}.gptoday-market-provider--logo{width:88px}.gptoday-market-showcase__description{font-size:14px}}

/* v4.0z208 Market Intelligence Homepage 2.0 */

/* v4.0z209 Homepage Graphic Section Headers 1.0 */
.gptoday-layer-heading--compact{display:flex!important;align-items:baseline!important;gap:14px!important;flex-wrap:wrap!important;margin-top:42px!important}
.gptoday-layer-heading--compact>span{margin:0!important;font-size:11px!important;letter-spacing:.18em!important;white-space:nowrap}
.gptoday-layer-heading--compact>h2{margin:0!important;font-family:"Teko",sans-serif!important;font-size:34px!important;line-height:1!important;text-transform:uppercase!important;white-space:nowrap}
.gptoday-layer-heading--compact>p{flex:1 1 420px;margin:0 0 1px!important;min-width:280px}
.gptoday-anchor-target{display:block;position:relative;top:-20px;height:0}

.gptoday-market-intelligence{padding:24px!important}
.gptoday-market-intelligence .gptoday-layer-heading{margin:0 0 18px!important}
.gptoday-market-showcases{gap:16px}
.gptoday-market-showcase{grid-template-columns:minmax(0,1.65fr) minmax(290px,.7fr);min-height:285px;border-radius:16px}
.gptoday-market-showcase__main{padding:22px 24px 20px}
.gptoday-market-showcase__intelligence{padding:23px 24px}
.gptoday-market-showcase__header{align-items:center}
.gptoday-market-showcase__identity{display:flex;align-items:center;gap:14px;min-width:0}
.gptoday-market-showcase__graphic{display:inline-flex;align-items:center;justify-content:center;flex:0 0 56px;width:56px;height:56px;border:1px solid rgba(144,207,7,.35);border-radius:50%;background:radial-gradient(circle,rgba(144,207,7,.25),rgba(144,207,7,.06));box-shadow:0 0 24px rgba(144,207,7,.16)}
.gptoday-market-showcase__graphic svg{width:31px;height:31px;fill:none;stroke:var(--gsp-brand);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.gptoday-market-showcase__heading-copy{min-width:0}
.gptoday-market-showcase__eyebrow{margin-bottom:4px}
.gptoday-market-showcase h3{margin:0;font-size:42px;white-space:nowrap}
.gptoday-market-showcase__description{margin:13px 0 15px;font-size:14px;line-height:1.5}
.gptoday-market-showcase__providers{flex-wrap:nowrap;gap:12px;margin:0 0 16px;overflow-x:auto;padding:4px 2px 7px;scrollbar-width:thin}
.gptoday-market-provider--logo{flex:0 0 112px;width:112px;height:58px;padding:8px 10px;background:rgba(255,255,255,.02)}
.gptoday-market-provider--logo img{max-height:39px}
.gptoday-market-provider:not(.gptoday-market-provider--logo){min-height:42px}
.gptoday-market-showcase__metrics div{padding:11px 13px}
.gptoday-market-showcase__action{margin-top:14px;padding:12px 15px}
.gptoday-market-showcase__intelligence h4{margin:10px 0 7px;font-size:19px}
.gptoday-market-showcase__intelligence>p{margin-bottom:13px}
.gptoday-market-showcase__signals{gap:7px}
.gptoday-market-showcase__signals div{padding:10px 12px}

.gptoday-market-showcase--sportsbooks{border-color:rgba(144,207,7,.64);box-shadow:0 0 26px rgba(144,207,7,.09),inset 0 1px 0 rgba(255,255,255,.04)}
.gptoday-market-showcase--sportsbooks .gptoday-market-showcase__graphic{border-color:rgba(144,207,7,.5)}

.gptoday-market-showcase--prediction-markets{border-color:rgba(38,142,255,.7);box-shadow:0 0 26px rgba(38,142,255,.09),inset 0 1px 0 rgba(255,255,255,.04)}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__graphic{border-color:rgba(38,142,255,.55);background:radial-gradient(circle,rgba(38,142,255,.28),rgba(38,142,255,.06));box-shadow:0 0 24px rgba(38,142,255,.18)}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__graphic svg{stroke:#3998ff}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__action{border-color:rgba(38,142,255,.46);background:rgba(38,142,255,.08);color:#90c6ff}
.gptoday-market-showcase--prediction-markets .gptoday-market-showcase__intelligence{background:radial-gradient(circle at 100% 0,rgba(38,142,255,.12),transparent 45%),rgba(0,0,0,.16)}

.gptoday-market-showcase--executive-intelligence{border-color:rgba(178,65,255,.72);box-shadow:0 0 26px rgba(178,65,255,.1),inset 0 1px 0 rgba(255,255,255,.04)}
.gptoday-market-showcase--executive-intelligence:before{background:#b241ff;box-shadow:0 0 22px rgba(178,65,255,.48)}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__graphic{border-color:rgba(178,65,255,.58);background:radial-gradient(circle,rgba(178,65,255,.28),rgba(178,65,255,.06));box-shadow:0 0 24px rgba(178,65,255,.2)}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__graphic svg{stroke:#c86cff}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__eyebrow,.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__aside-label{color:#c86cff}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__state{border-color:rgba(178,65,255,.4);color:#dfb2ff}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__state i{background:#b241ff;box-shadow:0 0 10px rgba(178,65,255,.8)}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__action{border-color:rgba(178,65,255,.48);background:rgba(178,65,255,.08);color:#dfb2ff}
.gptoday-market-showcase--executive-intelligence .gptoday-market-showcase__intelligence{background:radial-gradient(circle at 100% 0,rgba(178,65,255,.13),transparent 45%),rgba(0,0,0,.16)}

@media(max-width:1050px){.gptoday-market-showcase{min-height:0}.gptoday-market-showcase h3{white-space:normal}}
@media(max-width:700px){.gptoday-layer-heading--compact{display:grid!important;grid-template-columns:auto 1fr!important;gap:4px 10px!important}.gptoday-layer-heading--compact>p{grid-column:1/-1;min-width:0}.gptoday-market-showcase__graphic{flex-basis:48px;width:48px;height:48px}.gptoday-market-showcase__graphic svg{width:27px;height:27px}.gptoday-market-showcase h3{font-size:34px}.gptoday-market-provider--logo{flex-basis:98px;width:98px;height:52px}.gptoday-market-provider--logo img{max-height:34px}}


/* v4.0z210 Community Homepage Foundation 1.0 */
.gptoday-community{margin-top:20px;border:1px solid rgba(20,205,190,.48);border-radius:18px;overflow:hidden;background:radial-gradient(circle at 100% 0,rgba(20,205,190,.12),transparent 38%),linear-gradient(145deg,rgba(13,25,23,.98),rgba(5,10,9,.98));box-shadow:0 0 28px rgba(20,205,190,.07),inset 0 1px 0 rgba(255,255,255,.04)}
.gptoday-community__header{display:grid;grid-template-columns:minmax(330px,auto) 1fr auto;align-items:center;gap:24px;padding:22px 24px;border-bottom:1px solid rgba(20,205,190,.22)}
.gptoday-community__identity{display:flex;align-items:center;gap:14px}.gptoday-community__identity>div>span{display:block;color:#46d9ce;font-size:10px;font-weight:900;letter-spacing:.16em}.gptoday-community h2{margin:2px 0 0;font-family:"Teko",sans-serif;font-size:42px;line-height:.9;color:#f4f7f5;letter-spacing:.02em}.gptoday-community__graphic{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:1px solid rgba(20,205,190,.48);border-radius:50%;background:radial-gradient(circle,rgba(20,205,190,.27),rgba(20,205,190,.05));box-shadow:0 0 24px rgba(20,205,190,.17)}.gptoday-community__graphic svg{width:31px;height:31px;fill:none;stroke:#46d9ce;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.gptoday-community__header>p{margin:0;color:#a4b0aa;font-size:13px;line-height:1.55}.gptoday-community__header>a{color:#57e3d9;font-size:13px;font-weight:900;text-decoration:none;white-space:nowrap}.gptoday-community__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px}.gptoday-community__grid article{position:relative;min-height:190px;padding:20px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:linear-gradient(155deg,rgba(255,255,255,.035),rgba(0,0,0,.12));transition:.18s ease}.gptoday-community__grid article:hover{transform:translateY(-2px);border-color:rgba(20,205,190,.42);background:linear-gradient(155deg,rgba(20,205,190,.07),rgba(0,0,0,.12))}.gptoday-community__grid article>span{position:absolute;right:16px;top:13px;color:rgba(70,217,206,.3);font-family:"Teko",sans-serif;font-size:34px}.gptoday-community__grid h3{margin:0 34px 10px 0;color:#eef4f1;font-size:18px}.gptoday-community__grid p{margin:0 0 18px;color:#909d96;font-size:12px;line-height:1.55}.gptoday-community__grid b{position:absolute;left:20px;bottom:17px;color:#46d9ce;font-size:9px;letter-spacing:.1em}.gptoday-community footer{display:flex;align-items:center;gap:14px;padding:14px 20px;border-top:1px solid rgba(20,205,190,.17);background:rgba(20,205,190,.035)}.gptoday-community footer strong{color:#64e9df}.gptoday-community footer span{color:#89968f;font-size:11px}
.brand>a{display:block}.joe-global-bar__actions a[href*="#community"]{border-color:rgba(20,205,190,.35);color:#82eee7}.joe-global-bar__actions a[href*="#community"]:hover{background:rgba(20,205,190,.1)}
@media(max-width:1100px){.gptoday-community__header{grid-template-columns:1fr auto}.gptoday-community__header>p{grid-column:1/-1;grid-row:2}.gptoday-community__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.gptoday-community__header{grid-template-columns:1fr;padding:20px}.gptoday-community__header>a{justify-self:start}.gptoday-community__grid{grid-template-columns:1fr;padding:14px}.gptoday-community footer{align-items:flex-start;flex-direction:column;gap:4px}.gptoday-community h2{font-size:36px}.gptoday-community__graphic{width:48px;height:48px}}

.gptoday-community-bar{display:flex;gap:6px;flex-wrap:wrap;padding:10px 0;border-top:1px solid #21362b}.gptoday-community-bar a{font-size:11px;font-weight:800;text-decoration:none;color:#a8bbb1;background:#0a1510;border:1px solid #294338;border-radius:6px;padding:7px 9px}.gptoday-community-bar a:hover{color:#58efaf;border-color:#58efaf}

/* v4.0z212 Community Foundation 1.0 Deployment Repair */

/* v2.3.0 — Universal global opportunity cards on Today */
.gptoday-global-card-grid{margin-top:14px}
.gptoday-global-card-grid .usw-event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gptoday-global-card-grid .usw-event-card{border-color:#344c37}
.gptoday-global-card-grid .usw-event-card__joe-voice{-webkit-line-clamp:5}
@media(max-width:980px){.gptoday-global-card-grid .usw-event-grid{grid-template-columns:1fr}}


/* v4.0z268 — sport section visual identity */
.gptoday-sport-panel__header{position:relative;isolation:isolate;overflow:hidden;min-height:150px;padding:26px 28px;border-radius:16px;border:1px solid rgba(144,207,7,.22);background:linear-gradient(100deg,rgba(5,9,7,.98) 0%,rgba(5,9,7,.92) 56%,rgba(5,9,7,.68) 100%)}
.gptoday-sport-panel__header::before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--sport-header-image);background-repeat:no-repeat;background-position:right 7% center;background-size:auto 125%;opacity:.22;filter:saturate(.85) contrast(1.08)}
.gptoday-sport-panel--soccer .gptoday-sport-panel__header::before{background-size:cover;background-position:center 44%;opacity:.18;filter:saturate(.55) contrast(1.15)}
.gptoday-sport-panel__header::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080d0a 0%,rgba(8,13,10,.93) 49%,rgba(8,13,10,.52) 100%)}
.gptoday-sport-panel__header>div{position:relative;z-index:1}
.gptoday-sport-panel__header h2{max-width:760px;text-shadow:0 2px 20px rgba(0,0,0,.7)}
.gptoday-sport-panel__header p{max-width:780px;color:#c1c9c3}
.gptoday-sport-panel__actions{align-self:center}
.gptoday-sport-panel__actions a{text-shadow:0 1px 10px #000}
@media(max-width:760px){.gptoday-sport-panel__header{min-height:0;padding:22px 20px}.gptoday-sport-panel__header::before{background-size:auto 100%;opacity:.14}.gptoday-sport-panel__header::after{background:rgba(8,13,10,.9)}}

/* v4.0z269 — compact metallic sport intelligence headers */
.gptoday-sport-panel{padding:12px 14px 18px}
.gptoday-sport-panel__header{
  position:relative;isolation:isolate;overflow:hidden;display:grid!important;
  grid-template-columns:minmax(340px,1fr) auto auto;align-items:center!important;gap:22px;
  min-height:82px;padding:10px 18px;border-radius:13px;border:1px solid rgba(255,255,255,.17);
  background:
    linear-gradient(105deg,rgba(9,11,10,.18) 0 52%,rgba(0,0,0,.62) 52% 100%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,rgba(0,0,0,.025) 1px 3px),
    linear-gradient(100deg,#252827 0%,#777b78 32%,#242725 62%,#0b0d0c 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.7),0 8px 20px rgba(0,0,0,.22)
}
.gptoday-sport-panel__header::before{
  content:"";position:absolute;inset:0;z-index:-2;background:
  linear-gradient(118deg,transparent 0 55%,rgba(144,207,7,.72) 55.2% 56%,rgba(205,210,207,.9) 56.2% 61%,rgba(35,38,36,.96) 61.2% 100%);
  opacity:.78;filter:none
}
.gptoday-sport-panel--mlb .gptoday-sport-panel__header::before{background:linear-gradient(118deg,transparent 0 55%,rgba(180,23,35,.82) 55.2% 56%,rgba(205,210,207,.9) 56.2% 61%,rgba(35,38,36,.96) 61.2% 100%)}
.gptoday-sport-panel--nba .gptoday-sport-panel__header::before{background:linear-gradient(118deg,transparent 0 55%,rgba(232,111,18,.86) 55.2% 56%,rgba(205,210,207,.9) 56.2% 61%,rgba(35,38,36,.96) 61.2% 100%)}
.gptoday-sport-panel__header::after{content:"";position:absolute;right:0;top:0;bottom:0;width:42%;z-index:-1;background:radial-gradient(circle at 80% 50%,rgba(144,207,7,.08),transparent 52%),repeating-radial-gradient(circle at 20% 50%,#171a18 0 2px,#0b0d0c 2px 5px);opacity:.7;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
.gptoday-sport-panel__identity{display:flex;align-items:center;min-width:0;gap:13px;position:relative;z-index:2}
.gptoday-sport-panel__mark{flex:0 0 54px;display:grid;place-items:center;height:58px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.65))}
.gptoday-sport-panel__mark img{display:block;max-width:54px;max-height:56px;object-fit:contain}
.gptoday-sport-panel__mark span{font-size:44px;line-height:1;filter:grayscale(.2) drop-shadow(0 3px 8px rgba(0,0,0,.65))}
.gptoday-sport-panel__copy{display:flex;align-items:baseline;min-width:0;gap:15px}
.gptoday-sport-panel__eyebrow{font-family:"Teko",sans-serif;font-size:31px!important;font-weight:800!important;font-style:italic;line-height:1;letter-spacing:.015em!important;color:#eef1ee!important;text-shadow:0 2px 0 #202220,0 3px 7px #000;white-space:nowrap}
.gptoday-sport-panel__copy h2{margin:0!important;font-size:16px!important;line-height:1.1;color:var(--gsp-brand);font-weight:800;white-space:nowrap;text-shadow:0 1px 8px #000}
.gptoday-sport-panel__copy p{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gptoday-sport-panel__metrics{display:flex;align-items:center;position:relative;z-index:2}
.gptoday-sport-panel__metrics>div{min-width:64px;padding:2px 14px;text-align:center;border-left:1px solid rgba(255,255,255,.13)}
.gptoday-sport-panel__metrics span{display:block;color:#c5cbc6;font-size:9px;font-weight:900;letter-spacing:.08em}
.gptoday-sport-panel__metrics strong{display:block;margin-top:2px;font-family:"Teko",sans-serif;font-size:27px;line-height:1;color:var(--gsp-brand)}
.gptoday-sport-panel__metrics>div:nth-child(2) strong{color:#ffd02a}.gptoday-sport-panel__metrics>div:nth-child(3) strong{color:#ff404d}
.gptoday-sport-panel__actions{position:relative;z-index:2;align-items:flex-end;gap:5px;min-width:190px}
.gptoday-sport-panel__actions a{font-size:12px;font-weight:900;white-space:nowrap}.gptoday-sport-state{padding:5px 10px;font-size:9px}
.gptoday-global-card-grid{margin-top:10px}
@media(max-width:1180px){.gptoday-sport-panel__header{grid-template-columns:1fr auto}.gptoday-sport-panel__metrics{grid-row:2;grid-column:1}.gptoday-sport-panel__actions{grid-row:1/3;grid-column:2}.gptoday-sport-panel__copy{flex-wrap:wrap;gap:4px 12px}}
@media(max-width:760px){.gptoday-sport-panel{padding:10px}.gptoday-sport-panel__header{grid-template-columns:1fr;gap:10px;min-height:0;padding:12px 14px}.gptoday-sport-panel__actions{grid-row:auto;grid-column:auto;align-items:flex-start}.gptoday-sport-panel__metrics{grid-row:auto;grid-column:auto}.gptoday-sport-panel__identity{gap:9px}.gptoday-sport-panel__mark{flex-basis:42px;height:44px}.gptoday-sport-panel__mark img{max-width:40px;max-height:42px}.gptoday-sport-panel__mark span{font-size:34px}.gptoday-sport-panel__eyebrow{font-size:25px!important}.gptoday-sport-panel__copy h2{font-size:14px!important}.gptoday-sport-panel__header::before{opacity:.55}}

/* GO SPORTS PRO v11.6.4 — Homepage Top Sportsbooks */
.gptoday-top-books{margin:10px 0 20px;padding:0 6px}
.gptoday-top-books__heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}
.gptoday-top-books__heading h2{margin:0;font-family:"Teko",sans-serif;font-size:24px;font-weight:600;line-height:1;letter-spacing:.02em;color:#f2f4ef}
.gptoday-top-books__grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.gptoday-book-card{position:relative;display:flex;min-width:0;min-height:106px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px 7px 9px;overflow:hidden;border:1px solid rgba(151,170,95,.22);border-radius:7px;background:linear-gradient(145deg,#090a09 0%,#151716 58%,#090a09 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 7px 16px rgba(0,0,0,.22);text-decoration:none;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.gptoday-book-card::after{content:"";position:absolute;inset:auto 12% 0;height:1px;background:linear-gradient(90deg,transparent,rgba(177,232,0,.4),transparent);opacity:.65}
.gptoday-book-card:hover,.gptoday-book-card:focus-visible{transform:translateY(-2px);border-color:rgba(181,236,0,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 24px rgba(0,0,0,.34),0 0 18px rgba(155,215,0,.08);outline:none}
.gptoday-book-card__brand{display:flex;height:55px;max-width:100%;align-items:center;justify-content:center;flex-direction:column;line-height:1}
.gptoday-book-card__brand img{display:block;width:auto;max-width:82px;max-height:51px;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.gptoday-book-card__brand b{margin-top:1px;color:#62a7ff;font-family:"Teko",sans-serif;font-size:13px;letter-spacing:.06em}
.gptoday-book-card__name{max-width:100%;overflow:hidden;color:#f2f2ef;font-size:10px;font-weight:800;line-height:1.1;letter-spacing:.025em;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.gptoday-book-card__wordmark{color:#ef2637;font-family:"Teko",sans-serif;font-size:25px;font-style:italic;font-weight:700;letter-spacing:-.035em;text-shadow:0 2px 7px rgba(239,38,55,.18)}
.gptoday-book-card.is-fanduel-racing .gptoday-book-card__brand img{max-height:39px}
.gptoday-book-card.is-fanduel-racing .gptoday-book-card__brand{gap:0}
.gptoday-top-books__all{display:flex;width:max-content;align-items:center;gap:8px;margin:7px auto 0;color:var(--gsp-brand,#b5ec00)!important;font-size:11px;font-weight:800;text-decoration:none}
.gptoday-top-books__all span{font-size:16px;transition:transform .2s ease}
.gptoday-top-books__all:hover span{transform:translateX(3px)}
@media(max-width:1100px){.gptoday-top-books__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.gptoday-top-books{padding:0}.gptoday-top-books__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gptoday-book-card{min-height:101px}.gptoday-top-books__heading h2{font-size:23px}}


/* GO SPORTS PRO v11.6.5 — Compact Rectangular Sportsbook Logo Row */
.gptoday-top-books{margin:4px 0 14px!important;padding:0 6px!important}
.gptoday-top-books__heading{margin:0 0 6px!important}
.gptoday-top-books__grid{gap:6px!important}
.gptoday-book-card{
    min-height:0!important;
    height:72px!important;
    aspect-ratio:auto!important;
    gap:0!important;
    padding:2px 10px!important;
    border-radius:7px!important;
}
.gptoday-book-card__brand{height:100%!important;width:100%!important;max-width:100%!important}
.gptoday-book-card__brand img{max-width:88%!important;max-height:52px!important}
.gptoday-book-card__name,.gptoday-book-card__brand>b{display:none!important}
.gptoday-book-card__wordmark{font-size:27px!important}
.gptoday-book-card.is-fanduel-racing .gptoday-book-card__brand img{max-height:48px!important}
.gptoday-top-books__all{margin-top:5px!important}
@media(max-width:1100px){.gptoday-book-card{height:70px!important}}
@media(max-width:680px){
    .gptoday-top-books{margin-top:3px!important;margin-bottom:12px!important}
    .gptoday-book-card{height:66px!important;padding:2px 8px!important}
    .gptoday-book-card__brand img{max-height:46px!important}
}


/* GO SPORTS PRO v11.6.6 — Flush Landscape Sportsbook Row */
.gptoday-top-books{
    margin:-2px 0 10px!important;
    padding:0 6px!important;
}
.gptoday-top-books__heading{display:none!important}
.gptoday-top-books__grid{gap:6px!important}
.gptoday-book-card{
    min-height:0!important;
    height:58px!important;
    padding:0 9px!important;
    border-radius:6px!important;
}
.gptoday-book-card__brand{
    width:100%!important;
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}
.gptoday-book-card__brand img{
    width:auto!important;
    height:auto!important;
    max-width:94%!important;
    max-height:44px!important;
    object-fit:contain!important;
}
.gptoday-book-card__wordmark{font-size:29px!important}
.gptoday-book-card.is-fanduel-racing .gptoday-book-card__brand img{max-height:42px!important}
.gptoday-top-books__all{margin-top:4px!important}
@media(max-width:1100px){
    .gptoday-book-card{height:56px!important;padding:0 8px!important}
    .gptoday-book-card__brand img{max-height:42px!important}
}
@media(max-width:680px){
    .gptoday-top-books{margin-top:0!important;margin-bottom:10px!important;padding:0!important}
    .gptoday-book-card{height:54px!important;padding:0 7px!important}
    .gptoday-book-card__brand img{max-height:40px!important}
}


/* GO SPORTS PRO v11.6.7 — Tight Sportsbook Strip */
.gptoday-top-books{
    margin:-18px 0 8px!important;
    padding:0 6px!important;
}
.gptoday-top-books__grid{gap:6px!important}
.gptoday-book-card{
    height:48px!important;
    min-height:48px!important;
    padding:0 4px!important;
    border-radius:6px!important;
}
.gptoday-book-card__brand{height:48px!important;width:100%!important}
.gptoday-book-card__brand img{
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:46px!important;
}
.gptoday-book-card__wordmark{font-size:34px!important;line-height:1!important}
.gptoday-book-card.is-fanduel-racing .gptoday-book-card__brand img{max-height:45px!important}
.gptoday-top-books__all{margin-top:3px!important}
@media(max-width:1100px){
    .gptoday-top-books{margin-top:-14px!important}
    .gptoday-book-card{height:48px!important;min-height:48px!important;padding:0 4px!important}
    .gptoday-book-card__brand{height:48px!important}
    .gptoday-book-card__brand img{max-height:46px!important}
}
@media(max-width:680px){
    .gptoday-top-books{margin-top:-8px!important;margin-bottom:8px!important}
    .gptoday-book-card{height:46px!important;min-height:46px!important;padding:0 4px!important}
    .gptoday-book-card__brand{height:46px!important}
    .gptoday-book-card__brand img{max-height:43px!important}
}

/* GO SPORTS PRO v12.0.0 — Fantasy Bonus Foundation 1.0 */
@media (min-width:1001px){
  .gptoday-hero__copy{max-width:34% !important}
  .fantasy-bonus{position:absolute;z-index:4;left:34.5%;top:25px;width:38%;max-width:470px;text-align:center;font-family:Teko,Arial,sans-serif;color:#fff}
}
.fantasy-bonus__eyebrow{font-size:clamp(20px,2vw,31px);font-weight:700;letter-spacing:.045em;text-shadow:0 2px 8px #000;margin-bottom:7px}
.fantasy-bonus__frame{position:relative;padding:13px 14px 10px;border:2px solid #9bea00;border-radius:22px;background:linear-gradient(180deg,rgba(20,25,8,.96),rgba(2,4,2,.96));box-shadow:0 0 8px #9bea00,0 0 28px rgba(155,234,0,.32),inset 0 0 25px rgba(155,234,0,.1)}
.fantasy-bonus__frame h2{margin:0 0 7px !important;font-size:25px !important;line-height:1;color:#fff;letter-spacing:.04em}
.fantasy-bonus__reels{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.fantasy-bonus__reel{height:91px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border:1px solid #6b8c16;border-radius:12px;background:linear-gradient(#050705,#151b08 50%,#050705);box-shadow:inset 0 0 18px #000}
.fantasy-bonus__reel span{font-size:17px;line-height:1;color:rgba(255,255,255,.19)}
.fantasy-bonus__reel strong{font-size:35px;line-height:1.15;color:#9bea00;text-shadow:0 0 12px rgba(155,234,0,.75)}
.fantasy-bonus__button{position:relative;margin:-5px auto 0;min-width:190px;padding:8px 22px 6px;border:1px solid #d9ff35;border-radius:11px;background:linear-gradient(#d9ff18,#8ed500);box-shadow:0 4px 0 #527f00,0 0 20px rgba(155,234,0,.45);color:#050505;font:700 26px/1 Teko,Arial,sans-serif;cursor:pointer}
.fantasy-bonus__button:disabled{cursor:default;filter:saturate(.75);opacity:.92}
.fantasy-bonus__subline{margin:8px 0 2px !important;color:#fff !important;font:600 14px/1.1 Arial,sans-serif}
.fantasy-bonus__status{min-height:18px;color:#c8ff32;font:700 15px/1.2 Arial,sans-serif;letter-spacing:.03em}
.fantasy-bonus__account{display:grid;grid-template-columns:1fr 1fr;margin-top:5px;border-top:1px solid rgba(155,234,0,.34)}
.fantasy-bonus__account>div{padding:8px 8px 3px}.fantasy-bonus__account>div+div{border-left:1px solid rgba(155,234,0,.34)}
.fantasy-bonus__account span{display:block;font-size:15px;line-height:1;color:#fff}.fantasy-bonus__account strong{display:block;margin-top:3px;font-size:28px;line-height:1;color:#9bea00}
.fantasy-bonus.is-spinning .fantasy-bonus__reels{filter:brightness(1.18)}
.fantasy-bonus.is-spinning .fantasy-bonus__frame{animation:fantasyPulse .6s ease-in-out infinite alternate}
.fantasy-bonus.is-winner .fantasy-bonus__reel.is-main{animation:fantasyWin .7s ease-in-out 2}
@keyframes fantasyPulse{to{box-shadow:0 0 15px #9bea00,0 0 42px rgba(155,234,0,.55),inset 0 0 30px rgba(155,234,0,.17)}}
@keyframes fantasyWin{50%{transform:scale(1.05);box-shadow:0 0 30px rgba(155,234,0,.8),inset 0 0 20px #000}}
@media (max-width:1000px){.fantasy-bonus{position:relative;z-index:4;width:min(100%,520px);margin:24px auto 0}.gptoday-hero__copy{max-width:58% !important}.gptoday-hero{height:auto !important;min-height:620px !important}}
@media (max-width:680px){.gptoday-hero__copy{max-width:100% !important}.fantasy-bonus{margin-top:22px}.fantasy-bonus__eyebrow{font-size:24px}.fantasy-bonus__frame{padding:12px 10px}.fantasy-bonus__reel{height:76px}.fantasy-bonus__reel strong{font-size:28px}.fantasy-bonus__account strong{font-size:23px}}

/* GO SPORTS PRO v12.0.1 — Compact Fantasy Bonus Hero Refinement */
@media (min-width:1001px){
  .gptoday-hero__copy{max-width:40% !important}
  .gptoday-hero h1.gptoday-title-art{
    width:760px !important;
    max-width:100% !important;
    margin:2px 0 -36px !important;
  }
  .fantasy-bonus{
    left:40.5%;
    top:32px;
    width:31.5%;
    max-width:390px;
  }
  .fantasy-bonus__eyebrow{
    font-size:clamp(18px,1.55vw,25px);
    margin-bottom:5px;
  }
  .fantasy-bonus__frame{
    padding:10px 11px 7px;
    border-radius:18px;
  }
  .fantasy-bonus__frame h2{
    margin-bottom:5px !important;
    font-size:21px !important;
  }
  .fantasy-bonus__reels{gap:5px}
  .fantasy-bonus__reel{
    height:70px;
    border-radius:9px;
  }
  .fantasy-bonus__reel span{font-size:14px}
  .fantasy-bonus__reel strong{font-size:29px}
  .fantasy-bonus__button{
    min-width:170px;
    padding:6px 18px 4px;
    font-size:23px;
    border-radius:9px;
  }
  .fantasy-bonus__subline{
    margin:6px 0 1px !important;
    font-size:12px;
  }
  .fantasy-bonus__status{
    min-height:15px;
    font-size:13px;
  }
  .fantasy-bonus__account{margin-top:3px}
  .fantasy-bonus__account>div{padding:6px 6px 2px}
  .fantasy-bonus__account span{font-size:13px}
  .fantasy-bonus__account strong{font-size:23px}
}

/* GO SPORTS PRO v12.0.2 — Fantasy Bonus Interaction Effects */
@media (min-width:1001px){
  .fantasy-bonus{
    left:43%;
    top:34px;
    width:28%;
    max-width:350px;
    transition:filter .22s ease,transform .22s ease;
  }
  .fantasy-bonus__eyebrow{font-size:clamp(17px,1.35vw,23px)}
  .fantasy-bonus__frame{padding:9px 10px 6px}
  .fantasy-bonus__frame h2{font-size:20px !important}
  .fantasy-bonus__reel{height:65px}
  .fantasy-bonus__reel strong{font-size:27px}
  .fantasy-bonus__account strong{font-size:22px}
}
.fantasy-bonus:hover{z-index:8;filter:brightness(1.15)}
.fantasy-bonus:hover .fantasy-bonus__frame{
  animation:fantasyHoverSurge 1.05s ease-in-out infinite alternate;
  border-color:#d9ff35;
}
.fantasy-bonus__button{
  isolation:isolate;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.fantasy-bonus__button:not(:disabled):hover,
.fantasy-bonus__button:not(:disabled):focus-visible{
  transform:translateY(-3px) scale(1.12);
  filter:brightness(1.24) saturate(1.25);
  box-shadow:0 7px 0 #527f00,0 0 18px #d9ff35,0 0 45px #9bea00,0 0 85px rgba(155,234,0,.85);
  outline:none;
  animation:fantasyButtonBlast .65s ease-in-out infinite alternate;
}
.fantasy-bonus__confetti{
  position:absolute;
  z-index:20;
  inset:-180px -260px;
  overflow:visible;
  pointer-events:none;
}
.fantasy-bonus__confetti i{
  position:absolute;
  left:50%;
  top:50%;
  font-style:normal;
  font-size:var(--size);
  line-height:1;
  color:#c8ff18;
  text-shadow:0 0 8px rgba(155,234,0,.9);
  opacity:0;
  animation:fantasyConfettiBurst var(--duration) cubic-bezier(.12,.65,.22,1) var(--delay) forwards;
}
.fantasy-bonus__confetti i:nth-child(3n){color:#fff}
.fantasy-bonus__confetti i:nth-child(4n){color:#ffe600}
.fantasy-bonus__confetti i:nth-child(5n){color:#7be7ff}
@keyframes fantasyHoverSurge{
  0%{transform:scale(1);box-shadow:0 0 12px #9bea00,0 0 32px rgba(155,234,0,.42),inset 0 0 24px rgba(155,234,0,.12)}
  100%{transform:scale(1.025);box-shadow:0 0 24px #d9ff35,0 0 65px rgba(155,234,0,.9),0 0 110px rgba(155,234,0,.46),inset 0 0 38px rgba(155,234,0,.22)}
}
@keyframes fantasyButtonBlast{
  to{transform:translateY(-4px) scale(1.16);box-shadow:0 8px 0 #527f00,0 0 24px #e8ff6b,0 0 58px #9bea00,0 0 105px rgba(155,234,0,.95)}
}
@keyframes fantasyConfettiBurst{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotate(0deg)}
  8%{opacity:1}
  72%{opacity:1}
  100%{opacity:0;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(1.05) rotate(var(--spin))}
}
@media (prefers-reduced-motion:reduce){
  .fantasy-bonus:hover .fantasy-bonus__frame,
  .fantasy-bonus__button:not(:disabled):hover,
  .fantasy-bonus__button:not(:disabled):focus-visible,
  .fantasy-bonus__confetti i{animation:none !important}
}


/* GO SPORTS PRO v12.0.3 — Fantasy Bonus Effects Cache Fix */
@media (min-width:1001px){
  .fantasy-bonus{
    left:43.7% !important;
    width:26.5% !important;
    max-width:330px !important;
  }
}
.fantasy-bonus::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:20px -18px -12px;
  border-radius:28px;
  background:rgba(155,234,0,.10);
  filter:blur(20px);
  opacity:.55;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease,filter .2s ease;
}
.fantasy-bonus:hover::before{
  opacity:1;
  transform:scale(1.13);
  filter:blur(28px);
  animation:fantasyOuterHalo .72s ease-in-out infinite alternate;
}
.fantasy-bonus:hover .fantasy-bonus__frame{
  border-width:3px;
  animation:fantasyHoverSurgeStrong .72s ease-in-out infinite alternate !important;
}
.fantasy-bonus__button:not(:disabled):hover,
.fantasy-bonus__button:not(:disabled):focus-visible{
  transform:translateY(-5px) scale(1.20) !important;
  box-shadow:0 9px 0 #527f00,0 0 30px #f1ff83,0 0 72px #9bea00,0 0 135px rgba(155,234,0,1) !important;
  animation:fantasyButtonBlastStrong .48s ease-in-out infinite alternate !important;
}
@keyframes fantasyOuterHalo{
  to{opacity:.92;transform:scale(1.2);filter:blur(34px)}
}
@keyframes fantasyHoverSurgeStrong{
  0%{transform:scale(1.01);box-shadow:0 0 18px #9bea00,0 0 48px rgba(155,234,0,.72),inset 0 0 28px rgba(155,234,0,.18)}
  100%{transform:scale(1.055);box-shadow:0 0 38px #e5ff69,0 0 92px rgba(155,234,0,1),0 0 150px rgba(155,234,0,.72),inset 0 0 48px rgba(155,234,0,.30)}
}
@keyframes fantasyButtonBlastStrong{
  to{transform:translateY(-7px) scale(1.25);box-shadow:0 11px 0 #527f00,0 0 38px #fff,0 0 88px #baff16,0 0 160px rgba(155,234,0,1)}
}


/* GO SPORTS PRO v12.0.5 — Celebration Effects 2.0 */
.fantasy-bonus__celebration-layer{position:fixed;z-index:2147483000;inset:0;overflow:hidden;pointer-events:none;contain:layout paint style}
.fantasy-bonus__celebration-layer i{position:fixed;display:block;margin:0;padding:0;width:auto;height:auto;font-style:normal;font-size:var(--size);line-height:1;color:#c8ff18;text-shadow:0 0 8px currentColor,0 0 18px rgba(155,234,0,.85);opacity:0;will-change:transform,opacity;animation:fantasyCelebrationBurst var(--duration) cubic-bezier(.08,.62,.18,1) var(--delay) forwards}
.fantasy-bonus__celebration-layer i:nth-child(4n){color:#fff}.fantasy-bonus__celebration-layer i:nth-child(5n){color:#ffe600}.fantasy-bonus__celebration-layer i:nth-child(7n){color:#d7d7d7}.fantasy-bonus__celebration-layer i:nth-child(9n){color:#7be7ff}
.fantasy-bonus__celebration-flash{position:fixed;left:var(--origin-x);top:var(--origin-y);width:40px;height:40px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.98) 0,rgba(220,255,53,.9) 14%,rgba(155,234,0,.52) 38%,rgba(155,234,0,0) 72%);mix-blend-mode:screen;animation:fantasyCelebrationFlash .72s ease-out forwards}
.fantasy-bonus.is-celebrating .fantasy-bonus__frame{animation:fantasyWinnerKick .82s cubic-bezier(.16,.84,.24,1)}
.fantasy-bonus.is-winner .fantasy-bonus__reel:nth-child(2){animation:fantasyWinningReelPulse .85s ease-out 2}
@keyframes fantasyCelebrationBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.15) rotate(0deg) scaleY(var(--squash))}5%{opacity:1}64%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(1.15) rotate(var(--spin)) scaleY(var(--squash))}}
@keyframes fantasyCelebrationFlash{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}12%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(26)}}
@keyframes fantasyWinnerKick{0%{transform:scale(1)}35%{transform:scale(1.045);filter:brightness(1.35) saturate(1.35)}100%{transform:scale(1);filter:none}}
@keyframes fantasyWinningReelPulse{0%,100%{transform:scale(1);filter:none}45%{transform:scale(1.09);filter:brightness(1.5);box-shadow:0 0 28px #d9ff35,0 0 60px rgba(155,234,0,.95)}}
@media (prefers-reduced-motion:reduce){.fantasy-bonus__celebration-layer{display:none!important}.fantasy-bonus.is-celebrating .fantasy-bonus__frame,.fantasy-bonus.is-winner .fantasy-bonus__reel:nth-child(2){animation:none!important}}


/* GO SPORTS PRO v13.9.2 — TODAY Geometry Compliance Fix 1.0
   NFL is the master outer-canvas geometry. TODAY owns no page-level inset. */
.gsp-page-shell > .gptoday{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}
.gsp-page-shell > .gptoday > .gptoday-hero,
.gsp-page-shell > .gptoday > .gptoday-top-books,
.gsp-page-shell > .gptoday > .gptoday-layer-heading,
.gsp-page-shell > .gptoday > .gptoday-sport-panel,
.gsp-page-shell > .gptoday > .gptoday-market-intelligence,
.gsp-page-shell > .gptoday > .gptoday-community{
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
    box-sizing:border-box;
}
/* The sportsbook strip carried a legacy 6px side inset that made the TODAY
   canvas visibly narrower than the NFL master even after root migration. */
.gsp-page-shell > .gptoday > .gptoday-top-books{
    padding-left:0!important;
    padding-right:0!important;
}


/* GO SPORTS PRO v13.9.3 — TODAY Hero Edge Alignment Fix 1.0
   The approved 1920x695 hero artwork contains ~15px of dark canvas before the
   visible metallic/neon frame. At desktop scale that reads as an apparent
   ~10px page inset even though the hero element itself is already on the NFL
   master geometry. Overscan the background image horizontally by 20px so the
   artwork frame, not merely the CSS box, lands on the global left/right edges.
   No below-hero geometry is changed. */
@media (min-width:1001px){
    .gsp-page-shell > .gptoday > .gptoday-hero{
        margin-left:0!important;
        margin-right:0!important;
        width:100%!important;
        max-width:none!important;
        background-size:calc(100% + 20px) auto!important;
        background-position:center top!important;
    }
}


/* GO SPORTS PRO v13.9.4 — TODAY Hero Top Edge Alignment Fix 1.0
   The 1920x695 approved TODAY artwork has six near-black source rows before
   the metallic frame begins. At the current desktop scale those six rows
   render as approximately four CSS pixels, making TODAY look lower than the
   NFL master even though both hero boxes begin at the same Y coordinate.
   Move only the background artwork up 4px; do not move the hero box or any
   below-hero content. */
@media (min-width:1001px){
    .gsp-page-shell > .gptoday > .gptoday-hero{
        background-position:center -4px!important;
    }
}
