/* 30PICK'EM — v0.9.49 visual polish (rc3)
   Presentation only: Today / Live Scores, The 30 weekly feature, and the
   Card Saved moment. Loaded last so it wins over the legacy !important layers
   without editing them. No promo, Player Card, picks or scoring selectors. */

:root{
  --p49-ink:#040c17;
  --p49-panel:#071629;
  --p49-cyan:#58d7ff;
  --p49-cyan-soft:rgba(88,215,255,.16);
  --p49-hair:rgba(148,190,230,.13);
  --p49-hair-2:rgba(148,190,230,.22);
  --p49-gold:#ffd45c;
  --p49-gold-soft:rgba(255,212,92,.32);
  --p49-live:#ff5d73;
  --p49-text:#f4f8fc;
  --p49-muted:#8ea3b8;
  --p49-display:"Oswald","Barlow Condensed",Inter,sans-serif;
}

/* ======================================================================
   1 · TODAY / LIVE SCORES
   ====================================================================== */
html body #app #hub [data-hub-panel="today"] .hubSectionHead{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;
  margin:0 0 10px!important;padding:0 0 10px!important;border:0!important;border-bottom:1px solid var(--p49-hair)!important;
}
html body #app #hub [data-hub-panel="today"] .hubSectionHead>div:first-child{grid-column:1/-1;min-width:0}
html body #app #hub [data-hub-panel="today"] .hubSectionHead .boardKicker{color:var(--p49-cyan)!important;font-size:10px!important;letter-spacing:.22em!important}
html body #app #hub [data-hub-panel="today"] .hubSectionHead .title{
  margin:4px 0 3px!important;font-family:var(--p49-display)!important;font-size:30px!important;font-weight:700!important;
  line-height:1!important;letter-spacing:-.005em!important;text-transform:uppercase;color:var(--p49-text)!important;
}
html body #app #hub [data-hub-panel="today"] .hubSectionHead .title+.small{font-size:12.5px!important;color:var(--p49-muted)!important;line-height:1.35}
html body #app #hub [data-hub-panel="today"] .hubSectionHead .liveRefreshStamp0533{
  order:2;grid-column:1;justify-self:start;display:inline-flex!important;align-items:center;gap:7px;
  margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;
  font:800 10px/1 Inter,system-ui,sans-serif!important;letter-spacing:.16em;color:#7ff0b4!important;white-space:nowrap;
}
html body #app #hub [data-hub-panel="today"] .liveRefreshStamp0533 small{font-weight:600!important;letter-spacing:.02em!important;color:var(--p49-muted)!important;font-size:11px!important}
html body #app #hub [data-hub-panel="today"] .hubSectionHead>.btn{
  order:3;grid-column:2;min-height:34px!important;padding:0 14px!important;border-radius:999px!important;
  border:1px solid var(--p49-hair-2)!important;background:rgba(8,24,44,.7)!important;color:#cfe6f7!important;
  font:700 11px/1 Inter,system-ui,sans-serif!important;letter-spacing:.04em;box-shadow:none!important;
}

/* Filters: one segmented control + a broadcast-style league rail. */
html body #app #hub .todaySportsFilterGroup.hubTodayFilters{
  margin:0 0 14px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;
}
html body #app #hub .hubTodayFilters .todaySportsTabs{padding:0!important;margin:0!important;border:0!important;background:none!important}
html body #app #hub .hubTodayFilters .todaySportsTabs.primary{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px!important;
  border:1px solid var(--p49-hair)!important;border-radius:12px;background:rgba(3,11,22,.78)!important;
}
html body #app #hub .hubTodayFilters .todaySportsTabs.primary .todaySportsTab.hubTodayTab{
  min-width:0!important;min-height:34px!important;padding:0 6px!important;border:1px solid transparent!important;border-radius:9px!important;
  background:transparent!important;box-shadow:none!important;color:#9db0c4!important;
  font:700 11.5px/1 Inter,system-ui,sans-serif!important;letter-spacing:.02em;
}
html body #app #hub .hubTodayFilters .todaySportsTabs.primary .todaySportsTab.hubTodayTab.active{
  border-color:var(--p49-gold-soft)!important;background:linear-gradient(180deg,rgba(255,212,92,.14),rgba(255,212,92,.05))!important;color:#ffe49a!important;
}
html body #app #hub .hubTodayFilters .todaySportsTabs.leagues{
  display:flex!important;gap:2px;margin-top:6px!important;overflow-x:auto;scrollbar-width:none;
  border-bottom:1px solid var(--p49-hair)!important;
}
html body #app #hub .hubTodayFilters .todaySportsTabs.leagues::-webkit-scrollbar{display:none}
html body #app #hub .hubTodayFilters .todaySportsTabs.leagues .todaySportsTab.hubTodayTab{
  position:relative;flex:1 0 auto;min-width:44px!important;min-height:38px!important;padding:0 10px!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:#7f94aa!important;font:600 13px/1 var(--p49-display)!important;letter-spacing:.09em;
}
html body #app #hub .hubTodayFilters .todaySportsTabs.leagues .todaySportsTab.hubTodayTab.active{color:#fff!important}
html body #app #hub .hubTodayFilters .todaySportsTabs.leagues .todaySportsTab.hubTodayTab.active:after{
  content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--p49-cyan);
  box-shadow:0 0 10px rgba(88,215,255,.45);
}

/* Quick stats: one integrated strip when there is something to count;
   hidden entirely when the selected view is empty. */
html body #app #hub #hubTodayStats.todaySportsQuickStats{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;margin:0 0 12px!important;
  border:1px solid var(--p49-hair)!important;border-radius:14px;background:rgba(5,17,32,.72)!important;overflow:hidden;
}
html body #app #hub #hubTodayStats.todaySportsQuickStats>span{
  min-width:0;padding:10px 4px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  text-align:center;font:700 8.5px/1.2 Inter,system-ui,sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:var(--p49-muted)!important;
}
html body #app #hub #hubTodayStats.todaySportsQuickStats>span+span{border-left:1px solid var(--p49-hair)!important}
html body #app #hub #hubTodayStats.todaySportsQuickStats>span b{display:block;margin-bottom:3px;font:700 20px/1 var(--p49-display);color:var(--p49-text)}
html body #app #hub #hubTodayStats.todaySportsQuickStats.isEmptyView,
html body #modalSheet .todaySportsSheet .todaySportsQuickStats.isEmptyView{display:none!important}

/* Empty state: a lit, sport-specific stage instead of a blank dashboard. */
html body :is(#app #hub,#modalSheet) .todaySportsEmpty.todayEmpty2{
  position:relative;display:flex!important;flex-direction:column;align-items:stretch;gap:0;overflow:hidden;
  margin:0!important;padding:0 0 20px!important;min-height:0!important;
  border:1px solid rgba(94,190,245,.20)!important;border-radius:20px!important;
  background:linear-gradient(180deg,#071a30 0%,#05111f 58%,#040c17 100%)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(200,236,255,.06)!important;text-align:center;
}
.todayEmpty2 .todayEmptyStage{
  --stage-tint:rgba(70,170,255,.16);
  position:relative;height:100px;overflow:hidden;
  background:
    radial-gradient(42% 70% at 12% -12%,rgba(190,230,255,.24),transparent 70%),
    radial-gradient(42% 70% at 88% -12%,rgba(190,230,255,.20),transparent 70%),
    radial-gradient(90% 90% at 50% 120%,var(--stage-tint),transparent 64%),
    linear-gradient(180deg,rgba(18,58,104,.55),rgba(18,58,104,0));
}
.todayEmpty2 .todayEmptyStage:before{content:"";position:absolute;inset:0;opacity:.9;pointer-events:none}
.todayEmpty2 .todayEmptyStage{-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent);mask-image:linear-gradient(180deg,#000 45%,transparent)}
.todayEmpty2 .todayEmptyStage span{
  position:absolute;left:0;right:0;bottom:6px;z-index:1;
  font:700 88px/1 var(--p49-display);letter-spacing:.03em;
  color:transparent;-webkit-text-stroke:1px rgba(150,220,255,.34);
  background:linear-gradient(180deg,rgba(150,220,255,.20),rgba(150,220,255,0) 85%);-webkit-background-clip:text;background-clip:text;
}
/* sport atmospheres */
.todayEmpty--football .todayEmptyStage{--stage-tint:rgba(40,150,90,.30)}
.todayEmpty--football .todayEmptyStage:before{
  background:repeating-linear-gradient(90deg,transparent 0 33px,rgba(255,255,255,.07) 33px 34px);
  -webkit-mask:linear-gradient(180deg,transparent 30%,#000);mask:linear-gradient(180deg,transparent 30%,#000);
}
.todayEmpty--basketball .todayEmptyStage{--stage-tint:rgba(214,128,52,.28)}
.todayEmpty--basketball .todayEmptyStage:before{
  background:
    radial-gradient(circle at 50% 100%,transparent 0 52px,rgba(255,255,255,.12) 53px 54px,transparent 55px),
    radial-gradient(circle at 50% 100%,transparent 0 118px,rgba(255,255,255,.06) 119px 120px,transparent 121px);
}
.todayEmpty--baseball .todayEmptyStage{--stage-tint:rgba(196,132,72,.26)}
.todayEmpty--baseball .todayEmptyStage:before{
  background:
    linear-gradient(45deg,transparent calc(50% - 1px),rgba(255,255,255,.09) 50%,transparent calc(50% + 1px)) left bottom/50% 100% no-repeat,
    linear-gradient(-45deg,transparent calc(50% - 1px),rgba(255,255,255,.09) 50%,transparent calc(50% + 1px)) right bottom/50% 100% no-repeat;
}
.todayEmpty--hockey .todayEmptyStage{--stage-tint:rgba(190,225,255,.22)}
.todayEmpty--hockey .todayEmptyStage:before{
  background:
    linear-gradient(90deg,transparent calc(50% - 1.5px),rgba(255,93,115,.30) calc(50% - 1.5px) calc(50% + 1.5px),transparent calc(50% + 1.5px)),
    linear-gradient(90deg,transparent calc(25% - 1.5px),rgba(88,160,255,.26) calc(25% - 1.5px) calc(25% + 1.5px),transparent calc(25% + 1.5px)),
    linear-gradient(90deg,transparent calc(75% - 1.5px),rgba(88,160,255,.26) calc(75% - 1.5px) calc(75% + 1.5px),transparent calc(75% + 1.5px));
}
.todayEmpty--soccer .todayEmptyStage{--stage-tint:rgba(46,160,96,.28)}
.todayEmpty--soccer .todayEmptyStage:before{
  background:
    radial-gradient(circle at 50% 100%,transparent 0 46px,rgba(255,255,255,.11) 47px 48px,transparent 49px),
    linear-gradient(90deg,transparent calc(50% - .5px),rgba(255,255,255,.10) calc(50% - .5px) calc(50% + .5px),transparent calc(50% + .5px)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 30px,transparent 30px 60px);
}
.todayEmpty--fav .todayEmptyStage,.todayEmpty--board .todayEmptyStage,.todayEmpty--all .todayEmptyStage{--stage-tint:rgba(255,212,92,.14)}
.todayEmpty--all .todayEmptyStage:before,.todayEmpty--board .todayEmptyStage:before,.todayEmpty--fav .todayEmptyStage:before{
  background:repeating-linear-gradient(90deg,transparent 0 39px,rgba(120,200,255,.05) 39px 40px);
  -webkit-mask:linear-gradient(180deg,transparent 20%,#000);mask:linear-gradient(180deg,transparent 20%,#000);
}
.todayEmpty2 .todayEmptyText{position:relative;z-index:1;margin-top:-6px;padding:0 22px}
.todayEmpty2 .todayEmptyKicker{font:800 10px/1 Inter,system-ui,sans-serif;letter-spacing:.22em;color:var(--p49-cyan)}
html body :is(#app #hub,#modalSheet) .todayEmpty2 .todayEmptyText>b{
  display:block;margin:9px auto 7px;max-width:320px;
  font:700 25px/1.04 var(--p49-display)!important;text-transform:uppercase;letter-spacing:-.003em;color:var(--p49-text)!important;
}
html body :is(#app #hub,#modalSheet) .todayEmpty2 .todayEmptyText>.small{max-width:290px;margin:0 auto!important;font-size:13px!important;line-height:1.45;color:#9fb2c6!important}
html body :is(#app #hub,#modalSheet) .todayEmpty2 .btn.todayEmptyAction{
  align-self:center;width:auto!important;min-width:200px;min-height:44px!important;margin:18px 22px 0!important;padding:0 22px!important;
  border:1px solid rgba(88,215,255,.42)!important;border-radius:12px!important;
  background:linear-gradient(180deg,rgba(22,72,118,.55),rgba(8,30,54,.7))!important;box-shadow:0 8px 20px rgba(0,0,0,.28)!important;
  color:#e3f6ff!important;font:600 14px/1 var(--p49-display)!important;letter-spacing:.12em;text-transform:uppercase;
}

/* ======================================================================
   2 · THE 30 — weekly feature
   ====================================================================== */
html body #app #hub .hubWeekFeature:not(.hubWeekEmpty){
  border-color:rgba(94,190,245,.22)!important;
  background:
    radial-gradient(48% 28% at 10% 0,rgba(180,225,255,.13),transparent 72%),
    radial-gradient(48% 28% at 90% 0,rgba(180,225,255,.10),transparent 72%),
    radial-gradient(90% 40% at 50% 0,rgba(30,110,210,.20),transparent 70%),
    linear-gradient(180deg,#081d38 0%,#05122a 34%,#040c19 100%)!important;
}
html body #app #hub .hubWeekFeature:not(.hubWeekEmpty) .hubWeekGlow{
  opacity:1!important;inset:0 18% auto 18%!important;height:2px;z-index:1!important;
  background:linear-gradient(90deg,transparent,var(--p49-cyan) 30%,var(--p49-gold) 70%,transparent)!important;
}
html body #app #hub .hubWeekFeature:not(.is-super) .hubWeekTitle{
  max-width:none!important;margin-top:9px!important;font-family:var(--p49-display)!important;font-size:31px!important;font-weight:700!important;
  line-height:1!important;letter-spacing:-.005em;text-transform:uppercase;
}
html body #app #hub .hubWeekFeature .hubWeekEyebrow{letter-spacing:.22em!important}

/* YOUR PICKS / LIVE / FINAL as one broadcast score bug */
html body #app #hub .hubWeekMetrics.hubScorebug{
  display:grid!important;grid-template-columns:1.55fr 1fr 1fr;gap:0!important;margin-top:18px!important;
  border-top:1px solid var(--p49-hair-2);border-bottom:1px solid var(--p49-hair-2);
  background:linear-gradient(90deg,rgba(88,215,255,.06),rgba(88,215,255,0) 70%);
}
html body #app #hub .hubWeekMetrics.hubScorebug>div{
  min-height:0!important;padding:12px 12px 11px!important;border:0!important;border-radius:0!important;
  background:none!important;box-shadow:none!important;
}
html body #app #hub .hubWeekMetrics.hubScorebug>div+div{border-left:1px solid var(--p49-hair)!important}
html body #app #hub .hubWeekMetrics.hubScorebug>div:first-child{padding-left:2px!important}
html body #app #hub .hubWeekMetrics.hubScorebug span{display:block;color:var(--p49-muted)!important;font:800 8.5px/1 Inter,system-ui,sans-serif!important;letter-spacing:.18em!important}
html body #app #hub .hubWeekMetrics.hubScorebug b{
  display:block;margin-top:7px!important;font:700 30px/1 var(--p49-display)!important;color:var(--p49-text)!important;font-variant-numeric:tabular-nums;
}
html body #app #hub .hubWeekMetrics.hubScorebug b small{font:600 15px/1 var(--p49-display);color:#6f86a0;margin-left:1px}
html body #app #hub .hubWeekMetrics.hubScorebug .hubBugPicks b{color:#fff3c4!important}
.hubBugBar{display:block;height:3px;margin-top:9px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden}
.hubBugBar em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--p49-cyan),var(--p49-gold))}
html body #app #hub .hubWeekMetrics.hubScorebug .hubBugLive.isLive b{color:#ff8b9b!important}
html body #app #hub .hubWeekMetrics.hubScorebug .hubBugLive.isLive span:before{
  content:"";display:inline-block;width:6px;height:6px;margin:0 6px 1px 0;border-radius:50%;vertical-align:middle;
  background:var(--p49-live);animation:p49Pulse 1.8s ease-in-out infinite;
}

/* sport mix: quiet line of type, not pills */
html body #app #hub .hubWeekFeature .hubWeekSports{display:flex!important;flex-wrap:wrap;gap:4px 0!important;margin-top:10px!important}
html body #app #hub .hubWeekFeature .hubWeekSports>span{
  padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  font:700 10px/1.4 Inter,system-ui,sans-serif!important;letter-spacing:.14em;color:#8195aa!important;
}
html body #app #hub .hubWeekFeature .hubWeekSports>span+span:before{content:"·";margin:0 9px;color:#4d6178}
html body #app #hub .hubWeekFeature .hubWeekSports b{color:#bfe9ff!important}

/* SPOTLIGHT marquee */
html body #app #hub .hubSpotlight.hubMarquee{
  position:relative;overflow:hidden;margin-top:16px!important;padding:14px 14px 18px!important;
  border:1px solid rgba(255,212,92,.30)!important;border-radius:16px!important;
  background:
    radial-gradient(70% 90% at 50% 0,rgba(255,205,80,.10),transparent 62%),
    radial-gradient(60% 120% at 50% 120%,rgba(30,120,220,.18),transparent 60%),
    linear-gradient(180deg,#0b2240,#051326)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,236,170,.08)!important;
}
.hubMarquee:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.7;
  background:repeating-linear-gradient(90deg,transparent 0 41px,rgba(255,255,255,.035) 41px 42px);
  -webkit-mask:linear-gradient(180deg,transparent 35%,#000);mask:linear-gradient(180deg,transparent 35%,#000);
}
.hubMarqueeTop{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
html body #app #hub .hubMarquee .hubSpotlightBadge{
  flex:0 0 auto;padding:4px 8px;border:1px solid var(--p49-gold-soft);border-radius:6px;background:rgba(255,212,92,.07);
  color:#ffe08a!important;font:800 9px/1 Inter,system-ui,sans-serif!important;letter-spacing:.2em!important;
}
.hubMarqueeMeta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9db1c6;font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.04em}
html body #app #hub .hubMarquee .hubMarqueeTeams{
  position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin-top:16px;
}
html body #app #hub .hubMarquee .hubMarqueeTeams b{
  min-width:0;font:700 23px/1.02 var(--p49-display)!important;text-transform:uppercase;letter-spacing:.005em;color:#fff!important;
  text-shadow:0 2px 14px rgba(0,0,0,.6);overflow-wrap:break-word;
}
html body #app #hub .hubMarquee .hubMarqueeTeams b:first-child{text-align:right}
html body #app #hub .hubMarquee .hubMarqueeTeams b:last-child{text-align:left}
html body #app #hub .hubMarquee .hubMarqueeTeams>span{
  display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
  border:1px solid rgba(255,212,92,.38);background:rgba(4,14,27,.85);color:#ffd96e;font:700 12px/1 Inter,system-ui,sans-serif;
}
html body #app #hub .hubMarquee.hubMarquee--live{border-color:rgba(255,93,115,.42)!important}
html body #app #hub .hubMarquee.hubMarquee--live .hubSpotlightBadge{border-color:rgba(255,93,115,.5);background:rgba(255,93,115,.10);color:#ff9aa8!important}
html body #app #hub .hubMarquee.hubMarquee--live .hubSpotlightBadge:before{
  content:"";display:inline-block;width:6px;height:6px;margin:0 6px 1px 0;border-radius:50%;vertical-align:middle;background:var(--p49-live);animation:p49Pulse 1.8s ease-in-out infinite;
}
html body #app #hub .hubMarquee.hubMarquee--final{border-color:var(--p49-hair-2)!important}

/* LIVE ON THE 30 — score-bug rows */
html body #app #hub .hub30Module{
  border-color:var(--p49-hair)!important;background:linear-gradient(180deg,rgba(8,26,48,.82),rgba(4,13,25,.88))!important;
}
html body #app #hub .hub30Live{border-color:rgba(255,93,115,.20)!important}
html body #app #hub .hub30Live .hub30ModuleHead span:before{
  content:"";display:inline-block;width:6px;height:6px;margin:0 7px 1px 0;border-radius:50%;vertical-align:middle;
  background:var(--p49-live);animation:p49Pulse 1.8s ease-in-out infinite;
}
html body #app #hub .hub30Live .hub30ModuleHead span{color:#ff97a6!important}
html body #app #hub .hub30LiveRow{
  display:block!important;padding:10px 12px 9px!important;border:1px solid rgba(255,255,255,.07)!important;border-radius:12px!important;
  background:linear-gradient(90deg,rgba(255,93,115,.06),rgba(2,10,20,.6) 28%)!important;box-shadow:inset 2px 0 0 rgba(255,93,115,.55)!important;
}
html body #app #hub .hub30LiveRow.gotw{box-shadow:inset 2px 0 0 rgba(255,212,92,.7)!important;background:linear-gradient(90deg,rgba(255,212,92,.07),rgba(2,10,20,.6) 28%)!important}
.hub30LiveHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
html body #app #hub .hub30LiveRow .hub30LiveSport{display:inline-flex!important;align-items:center;margin:0!important;color:#9fdcff!important;font:800 9px/1 Inter,system-ui,sans-serif!important;letter-spacing:.14em!important}
.hub30LiveDot{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--p49-live);animation:p49Pulse 1.8s ease-in-out infinite}
html body #app #hub .hub30LiveRow .hub30LiveHead small{margin:0!important;color:#ff9aa8!important;font:700 10px/1 Inter,system-ui,sans-serif!important;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.hub30LiveLine{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:2px 0}
.hub30LiveLine b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a9bbcc;font:700 13px/1.25 Inter,system-ui,sans-serif}
.hub30LiveLine strong{flex:0 0 auto;color:#a9bbcc;font:700 20px/1 var(--p49-display);font-variant-numeric:tabular-nums}
.hub30LiveLine.lead b,.hub30LiveLine.lead strong{color:#fff}

/* paired actions */
html body #app #hub .hubWeekFeature .hubWeekActions{display:grid!important;grid-template-columns:1.25fr 1fr!important;gap:9px!important;margin-top:16px!important}
html body #app #hub .hubWeekFeature .hubWeekActions .btn{min-height:46px!important;padding:0 8px!important;font-size:13px!important;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}

@keyframes p49Pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,93,115,.45)}50%{opacity:.55;box-shadow:0 0 0 4px rgba(255,93,115,0)}}

/* ======================================================================
   3 · CARD SAVED — one surface, clear result, paired actions
   ====================================================================== */
/* Content-height bottom sheet: the moment sits over the board with its
   actions in thumb reach instead of floating in a full-screen panel. */
html body #modal:not(.hidden):has(.cc2){align-items:flex-end!important;padding:0!important}
html body #modal:has(.cc2)>#modalSheet{
  height:auto!important;min-height:0!important;max-height:min(92vh,92dvh)!important;margin-top:auto!important;
  border-radius:24px 24px 0 0!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;
  box-shadow:0 -18px 50px rgba(0,0,0,.55)!important;
}
html body #modalSheet:has(.cc2):before{background:linear-gradient(90deg,transparent,rgba(88,215,255,.6),transparent)!important}
html body #modalSheet:has(.cardCompleteMoment.cc2){
  border-color:rgba(94,190,245,.20)!important;
  background:
    radial-gradient(70% 34% at 50% 0,rgba(40,140,230,.22),transparent 72%),
    linear-gradient(180deg,#081b33 0%,#050f1d 46%,#040a14 100%)!important;
}
html body #modalSheet:has(.cc2) .sheetTopAccent{opacity:0!important}
html body #modalSheet:has(.cc2) .sheetClose{border-color:var(--p49-hair-2)!important;background:rgba(8,22,40,.8)!important;color:#cfe3f3!important;box-shadow:none!important}
html body #modalSheet .cardCompleteMoment.cc2{
  margin:0!important;padding:0 2px 2px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  overflow:visible;text-align:center;
}
html body #modalSheet .cardCompleteMoment.cc2:before{display:none!important}
.cc2Head{display:flex;align-items:center;justify-content:center;gap:10px}
html body #modalSheet .cc2 .cardCompleteMark{
  width:34px!important;height:34px!important;margin:0!important;border-radius:10px!important;
  border:1px solid rgba(88,215,255,.40)!important;background:rgba(10,34,60,.85)!important;box-shadow:none!important;
  color:#e9f8ff!important;font:700 15px/1 var(--p49-display)!important;letter-spacing:0!important;
}
html body #modalSheet .cc2 .cc2Head .boardKicker{margin:0!important;color:#ffe08a!important;font:600 15px/1 var(--p49-display)!important;letter-spacing:.26em!important}
html body #modalSheet .cc2.superCardComplete .cc2Head{flex-direction:column;gap:8px}
.cc2Result{margin-top:16px}
.cc2Result b{display:block;font:700 76px/.92 var(--p49-display);color:#fff;letter-spacing:-.01em;font-variant-numeric:tabular-nums;text-shadow:0 6px 28px rgba(40,150,255,.22)}
.cc2Result b small{font:600 32px/1 var(--p49-display);color:#6f87a2;margin-left:2px}
.cc2Result>span{display:block;margin-top:8px;color:var(--p49-muted);font:800 10px/1 Inter,system-ui,sans-serif;letter-spacing:.24em;text-transform:uppercase}
html body #modalSheet .cc2 .title{
  max-width:330px!important;margin:10px auto 18px!important;font:600 14px/1.4 Inter,system-ui,sans-serif!important;
  text-transform:none!important;letter-spacing:0!important;color:#b7c7d7!important;
}
.cc2Meta{border-top:1px solid var(--p49-hair);text-align:left}
.cc2Meta>div{padding:11px 2px;border-bottom:1px solid var(--p49-hair)}
.cc2Tb{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 12px}
.cc2Tb span{color:var(--p49-muted);font:800 9.5px/1 Inter,system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.cc2Tb b{justify-self:end;color:#fff;font:700 20px/1 var(--p49-display);font-variant-numeric:tabular-nums}
.cc2Tb small{grid-column:1/-1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8297ac;font-size:11.5px;line-height:1.3}
.cc2Missed{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:10px}
.cc2Missed b{color:#f0c66a;font:600 12px/1 var(--p49-display);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.cc2Missed span{color:#a9b4bf;font-size:12px;line-height:1.35}
.cc2Saved{margin:12px 0 0;color:#8fe3c0;font:700 11.5px/1.3 Inter,system-ui,sans-serif;letter-spacing:.02em}
html body #modalSheet .cc2 .modalFooterActions.cc2Actions{
  display:grid!important;grid-template-columns:1.35fr 1fr!important;gap:10px!important;margin:16px 0 0!important;padding:0!important;border:0!important;
}
html body #modalSheet .cc2 .cc2Actions .btn{
  min-height:50px!important;margin:0!important;padding:0 10px!important;border-radius:13px!important;
  font:600 15px/1 var(--p49-display)!important;letter-spacing:.1em!important;text-transform:uppercase;
}
html body #modalSheet .cc2 .cc2Actions .btn.primary{
  border:1px solid rgba(255,228,128,.78)!important;color:#0a0d10!important;
  background:linear-gradient(180deg,#f9d566 0%,#ebb73a 55%,#d49b1c 100%)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.5)!important;
}
html body #modalSheet .cc2 .cc2Actions .btn.cc2Secondary{
  border:1px solid rgba(190,215,240,.22)!important;background:rgba(10,24,42,.6)!important;color:#dce8f3!important;box-shadow:none!important;
}
@media(max-width:390px){
  .cc2Result b{font-size:68px}
  html body #modalSheet .cc2 .cc2Actions .btn{font-size:14px!important;letter-spacing:.07em!important}
  html body #app #hub .hubMarquee .hubMarqueeTeams b{font-size:20px!important}
  html body #app #hub .hubWeekFeature:not(.is-super) .hubWeekTitle{font-size:26px!important}
  html body #app #hub .hubWeekFeature .hubWeekActions .btn{font-size:12px!important;letter-spacing:.03em}
  .todayEmpty2 .todayEmptyStage span{font-size:78px}
}

@media (prefers-reduced-motion:reduce){
  .hub30LiveDot,
  html body #app #hub .hub30Live .hub30ModuleHead span:before,
  html body #app #hub .hubMarquee.hubMarquee--live .hubSpotlightBadge:before,
  html body #app #hub .hubWeekMetrics.hubScorebug .hubBugLive.isLive span:before{animation:none}
}
@media(max-width:374px){
  html body #app #hub .hubWeekFeature:not(.is-super) .hubWeekTitle{font-size:24px!important}
}


/* v0.9.49.1 — universal Hub promise, standard + Super Card */
html body #app #hub .hubWeekTitle.hubWeekPromise{
  display:grid!important;
  gap:4px!important;
  width:100%!important;
  max-width:none!important;
  margin-top:14px!important;
  font-size:clamp(25px,7.4vw,30px)!important;
  line-height:1.03!important;
  letter-spacing:-.008em!important;
}
html body #app #hub .hubWeekTitle.hubWeekPromise span{
  display:block;
  white-space:nowrap;
}
html body #app #hub .hubWeekTitle.hubWeekPromise span:first-child{color:#fff}
html body #app #hub .hubWeekTitle.hubWeekPromise span:last-child{color:#f3f7fb}


/* v0.9.49.2 — universal Card Complete / Super Card Complete system */
html body #modalSheet .cardCompleteMoment.cc3{
  width:min(100%,620px)!important;
  padding:24px 22px 22px!important;
}
html body #modalSheet .cc3 .cc3Brand{
  display:flex;
  min-height:34px;
  align-items:center;
  justify-content:center;
}
html body #modalSheet .cc3 .cc3Brand>.boardKicker{
  margin:0!important;
  color:#ffe08a!important;
  font:600 16px/1 var(--p49-display)!important;
  letter-spacing:.28em!important;
}
html body #modalSheet .cc3 .cc3Brand--super{
  display:grid;
  justify-items:center;
  gap:7px;
}
html body #modalSheet .cc3 .cc3SuperTag{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:4px 7px;
  margin-top:1px;
  color:#c3cfdb;
  font:600 9.5px/1.25 Inter,system-ui,sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
}
html body #modalSheet .cc3 .cc3SuperTag>span{white-space:nowrap}
html body #modalSheet .cc3 .cc3SuperTag b{font-weight:900}
html body #modalSheet .cc3 .cc3SuperTag .g{color:#efc664}
html body #modalSheet .cc3 .cc3SuperTag .c{color:#70d6ff}
html body #modalSheet .cc3 .cc3Result{margin-top:13px}
html body #modalSheet .cc3 .cc3Result b{
  font-size:82px!important;
  line-height:.90!important;
  letter-spacing:-.025em!important;
}
html body #modalSheet .cc3 .cc3Result b small{
  font-size:35px!important;
  color:#7289a3!important;
}
html body #modalSheet .cc3 .cc3Result>span{
  margin-top:9px!important;
  color:#8fa6bc!important;
  letter-spacing:.25em!important;
}
html body #modalSheet .cc3 .cc3Title{
  margin:9px auto 15px!important;
  color:#d8e3ec!important;
  font-size:15px!important;
  font-weight:650!important;
}
html body #modalSheet .cc3 .cc3Meta{
  margin-top:0;
  border-top:1px solid rgba(128,176,217,.18);
  border-bottom:1px solid rgba(128,176,217,.18);
}
html body #modalSheet .cc3 .cc3Meta>div{
  padding:12px 3px!important;
}
html body #modalSheet .cc3 .cc3Tb{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 14px!important;
}
html body #modalSheet .cc3 .cc3Tb span{
  align-self:center;
}
html body #modalSheet .cc3 .cc3Tb b{
  font-size:22px!important;
}
html body #modalSheet .cc3 .cc3Tb small{
  color:#8ba0b3!important;
}
html body #modalSheet .cc3 .cc3Missed{
  grid-template-columns:auto minmax(0,1fr)!important;
}
html body #modalSheet .cc3 .cc3Saved{
  margin:13px 0 0!important;
  font-size:12px!important;
}
html body #modalSheet .cc3 .cc3Actions{
  margin-top:15px!important;
}
html body #modalSheet .cc3.superCardComplete{
  padding-top:19px!important;
}
html body #modalSheet .cc3.superCardComplete .scCompleteGlow{
  top:-20px;
  height:190px;
  opacity:.82;
}
@media(max-width:430px){
  html body #modalSheet .cardCompleteMoment.cc3{padding:21px 17px 19px!important}
  html body #modalSheet .cc3 .cc3Result b{font-size:74px!important}
  html body #modalSheet .cc3 .cc3Result b small{font-size:31px!important}
  html body #modalSheet .cc3 .cc3Brand>.boardKicker{font-size:15px!important}
}
@media(max-width:374px){
  html body #modalSheet .cc3 .cc3Result b{font-size:68px!important}
  html body #modalSheet .cc3 .cc3Actions{grid-template-columns:1fr!important}
}


/* v0.9.49.2 — 30PICK’EM+ accents without borrowing Super Card art */
html body #app #hub .hubWeekFeature.is-plus{
  border-color:rgba(76,195,255,.30)!important;
  background:
    radial-gradient(72% 54% at 100% 0,rgba(44,154,224,.15),transparent 68%),
    linear-gradient(145deg,rgba(8,33,62,.97),rgba(3,14,27,.99) 64%,rgba(4,12,23,.99))!important;
}
html body #app #hub .hubPlusEyebrow{color:#72dcff!important}
html body #modalSheet .cc3 .cc3Brand--plus{
  display:grid;
  justify-items:center;
  gap:9px;
}
html body #modalSheet .cc3 .plusCompleteMark{
  color:#eefaff;
  font:800 23px/1 "Oswald","Barlow Condensed",sans-serif;
  letter-spacing:.045em;
  text-transform:uppercase;
}
html body #modalSheet .cc3 .plusCompleteMark span{
  display:inline-block;
  margin-left:2px;
  color:#65d8ff;
  font-size:1.16em;
  text-shadow:0 0 14px rgba(80,210,255,.30);
}
html body #modalSheet .cc3.plusCardComplete{
  background:
    radial-gradient(68% 28% at 50% 0,rgba(41,157,227,.17),transparent 74%),
    linear-gradient(180deg,#081b33 0%,#050f1d 46%,#040a14 100%)!important;
}
html body #modalSheet .cc3.plusCardComplete .cc3Brand>.boardKicker{color:#8be2ff!important}
