:root{
  --page:#f3f6fa;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --surface-blue:#eef5ff;
  --ink:#14213d;
  --ink-soft:#4f6075;
  --line:#d7e0ea;
  --line-strong:#b8c5d4;
  --blue:#1559a5;
  --blue-dark:#0d3f79;
  --blue-soft:#e8f1ff;
  --green:#2fa94f;
  --green-dark:#157534;
  --green-soft:#e9f8ed;
  --green-glow:rgba(66,214,104,.42);
  --red:#cf2f3a;
  --gold:#f0b429;
  --shadow:0 7px 20px rgba(24,45,77,.09);
  --shadow-soft:0 3px 10px rgba(24,45,77,.07);
  --radius:14px;
}

*{box-sizing:border-box}
html{min-height:100%;background:var(--page)}
body{
  min-height:100vh;
  margin:0;
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:linear-gradient(180deg,#edf3f9 0,#f7f9fc 190px,var(--page) 100%);
}
button,input,select{font:inherit}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* Trevi Fountain masthead */
.compact-hero{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:18px;
  min-height:118px;
  padding:0;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(105deg,#061c38 0%,#0d3f79 58%,#1559a5 100%);
  border-bottom:4px solid var(--red);
  box-shadow:0 3px 10px rgba(13,63,121,.22);
}
.hero-copy{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:15px clamp(14px,3vw,28px)}
.compact-hero p{max-width:790px;margin:0;color:#d8e7fb;font-size:.88rem;font-weight:650;line-height:1.4}
.brand{display:flex;align-items:center;gap:10px;font-size:clamp(1rem,2.15vw,1.42rem);font-weight:950;letter-spacing:.015em;line-height:1.08}
.brand-mark{display:grid;width:31px;height:31px;flex:0 0 auto;place-items:center;color:#fff;background:var(--red);border-radius:50%;font-size:.93rem;box-shadow:0 0 0 3px rgba(255,255,255,.15)}
.hero-photo-wrap{position:relative;flex:0 0 clamp(205px,28vw,430px);min-height:118px;overflow:hidden;border-left:1px solid rgba(255,255,255,.18)}
.hero-photo-wrap::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(13,63,121,.82),rgba(13,63,121,.06) 44%,rgba(13,63,121,0))}
.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}

main{max-width:1780px;margin:0 auto;padding:13px clamp(8px,1.6vw,18px) 24px}
.builder-panel,.calendar-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.builder-panel{padding:8px 12px}
.calendar-section{margin-top:12px;padding:12px}

/* Clear numbered rows */
.step-row{display:grid;grid-template-columns:190px minmax(0,1fr);gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.step-row:last-of-type{border-bottom:0}
.compact-heading strong{display:block;color:var(--blue-dark);font-size:.86rem;font-weight:950;letter-spacing:.015em}
.compact-heading span{display:block;margin-top:3px;color:var(--ink-soft);font-size:.70rem;line-height:1.28}
.league-grid,.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px}

/* League and event tiles */
.league-card,.event-card{
  position:relative;
  min-height:84px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:7px;
  cursor:pointer;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:11px;
  box-shadow:var(--shadow-soft);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.league-card:hover,.event-card:hover{transform:translateY(-2px);border-color:#8fb4df;box-shadow:0 7px 14px rgba(25,66,111,.14)}
.league-card.selected,.event-card.selected{background:var(--green-soft);border-color:#65c67b;box-shadow:0 0 0 2px rgba(47,169,79,.14),0 5px 12px rgba(47,169,79,.14)}
.league-logo,.event-logo{display:block;width:58px;height:38px;object-fit:contain}
.event-logo img{width:58px;height:38px;object-fit:contain}
.league-name,.event-name{color:var(--ink);font-size:.73rem;font-weight:900;line-height:1.08;text-align:center}
.selected-label{display:none;color:var(--green-dark);font-size:.58rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.selected .selected-label{display:block}
.event-card input{position:absolute;top:6px;left:6px;width:14px;height:14px;accent-color:var(--green)}

/* Game mode */
.mode-picker{display:flex;gap:8px;flex-wrap:wrap}
.mode-option{display:flex;align-items:center;gap:7px;padding:8px 11px;color:var(--ink);background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;font-size:.78rem;font-weight:850;cursor:pointer}
.mode-option:hover{border-color:#98b6d8;background:#f2f7fd}
.mode-option:has(input:checked){color:var(--green-dark);background:var(--green-soft);border-color:#72c985}
.mode-option input{margin:0;accent-color:var(--green)}
.team-entry.disabled{opacity:.52;background:#f1f3f5;border-radius:11px;padding-inline:8px}

/* Search controls */
.autocomplete-wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px}
.search-box input{width:100%;height:40px;padding:0 12px;color:var(--ink);background:#fff;border:2px solid var(--green);border-radius:9px;outline:0;box-shadow:0 0 0 3px var(--green-glow);transition:.18s ease}
.search-box input:focus{box-shadow:0 0 0 4px rgba(66,214,104,.52),0 5px 14px rgba(47,169,79,.18)}
.search-box input:disabled{color:#7d8995;background:#e6eaee;border-color:#b6c0ca;box-shadow:none}
.button{border:1px solid transparent;border-radius:9px;padding:9px 13px;font-size:.78rem;font-weight:900;cursor:pointer;transition:.15s ease}
.button:hover:not(:disabled){transform:translateY(-1px)}
.button.secondary{color:#fff;background:var(--blue)}
.button.secondary:hover{background:var(--blue-dark)}
.button.subtle{color:var(--ink);background:#eef2f6;border-color:var(--line)}
.button.subtle:hover{background:#e2e8ef}
.button.ghost{color:var(--blue-dark);background:#fff;border-color:var(--line)}
.button.ghost:hover{background:var(--surface-blue)}
.button:disabled{opacity:.52;cursor:not-allowed}
.suggestions{display:none;position:absolute;z-index:30;top:46px;left:0;right:0;max-height:270px;overflow:auto;background:#fff;border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 15px 34px rgba(20,45,75,.18)}
.suggestions.open{display:block}
.suggestion{width:100%;padding:9px 10px;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f5}
.suggestion:hover{background:var(--surface-blue)}
.suggestion strong{display:block;color:var(--blue-dark);font-size:.83rem}
.suggestion small{color:var(--ink-soft);font-size:.69rem}
.selected-line{grid-column:2;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px;color:var(--ink);font-size:.76rem}
.selected-team-list{display:flex;gap:5px;flex-wrap:wrap}
.team-chip{display:flex;gap:5px;align-items:center;padding:4px 7px;color:var(--blue-dark);font-weight:850;background:var(--blue-soft);border:1px solid #c8daf0;border-radius:999px}
.team-chip button{border:0;background:transparent;color:var(--red);cursor:pointer;font-weight:950}
.team-count{color:var(--ink-soft)}

/* Calendar controls */
.action-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:10px}
.range-picker{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-right:auto}
.range-picker strong{color:var(--blue-dark);font-size:.79rem;font-weight:950}
.range-buttons{display:grid;grid-template-columns:repeat(5,max-content);gap:5px}
.range-button{padding:7px 10px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:.73rem;font-weight:900;transition:.15s ease}
.range-button:hover{background:var(--surface-blue);border-color:#a8c1dd}
.range-button.selected{color:var(--green-dark);background:var(--green-soft);border-color:#73ca87}
.range-select-label{display:flex;align-items:center;gap:5px;color:var(--ink-soft);font-size:.69rem;font-weight:900}
.range-select-label select{padding:7px 9px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;font-size:.73rem;font-weight:900}

/* Calendar */
.calendar-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px;padding:0 2px}
.eyebrow{margin:0;color:var(--blue);font-size:.70rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}
h1{margin:0;color:var(--blue-dark);font-size:1.32rem;font-weight:950;letter-spacing:-.02em}
.status-pill{padding:6px 10px;color:#fff;background:var(--blue);border-radius:999px;font-size:.71rem;font-weight:900}
.live-data-status{display:flex;gap:3px;flex-direction:column;margin:0 0 9px;padding:8px 10px;font-size:.75rem;background:#f7fafc;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px}
.live-data-status span{color:var(--ink-soft)}
.live-data-status.success{background:#f1fbf3;border-color:#bae2c2;border-left-color:var(--green)}
.live-data-status.warning{background:#fff8e7;border-color:#f1d486;border-left-color:#d99a00}
.calendar-grid{display:grid;gap:7px;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-grid.days-1{grid-template-columns:1fr}
.day-column{min-width:0;min-height:116px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-soft)}
.day-header{padding:7px 8px;color:#fff;background:var(--blue-dark);border-bottom:3px solid var(--red)}
.day-header strong,.day-header span{display:block}
.day-header strong{font-size:.73rem;font-weight:950}
.day-header span{margin-top:1px;color:#d3e3f5;font-size:.62rem}
.game-card{position:relative;margin:5px;padding:7px;overflow:hidden;background:#fff;border:1px solid #d9e2ec;border-left:4px solid var(--blue);border-radius:7px}
.game-topline{display:flex;align-items:center;gap:6px;min-height:27px}
.game-logo{display:block;width:38px;height:29px;flex:0 0 auto;object-fit:contain}
.tag{color:var(--blue);font-size:.58rem;font-weight:950;letter-spacing:.045em;text-transform:uppercase}
.game-title{margin:4px 0 0;color:var(--blue-dark);font-size:.70rem;font-weight:950;line-height:1.17}
.game-meta,.channel{margin:3px 0 0;color:var(--ink-soft);font-size:.61rem;line-height:1.23}
.channel{color:#263b55;font-weight:800}
.empty-day{padding:9px;color:var(--ink-soft);font-size:.65rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:1180px){.step-row{grid-template-columns:165px minmax(0,1fr)}.league-grid,.event-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}.league-card,.event-card{min-height:78px}.league-logo,.event-logo,.event-logo img{width:52px;height:35px}}
@media(max-width:980px){.step-row{grid-template-columns:1fr;gap:6px}.selected-line{grid-column:1}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.compact-hero{min-height:104px}.hero-copy{padding:12px 14px}.hero-photo-wrap{flex-basis:180px;min-height:104px}.compact-hero p{margin-top:2px;text-align:left}.range-buttons{grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.range-button{padding:7px 5px}.range-picker{width:100%}.range-select-label{width:100%;justify-content:space-between}.range-select-label select{min-width:132px}}
@media(max-width:650px){.compact-hero{position:relative;display:block;min-height:146px}.hero-copy{position:relative;z-index:2;min-height:146px;padding:15px 14px;background:linear-gradient(90deg,rgba(6,28,56,.95),rgba(6,28,56,.76),rgba(6,28,56,.26))}.hero-photo-wrap{position:absolute;inset:0;min-height:146px;border-left:0}.hero-photo-wrap::before{background:linear-gradient(90deg,rgba(6,28,56,.7),rgba(6,28,56,.08))}.compact-hero p{max-width:88%;color:#eef6ff}.brand{max-width:92%;font-size:1.1rem}main{padding:8px 6px 16px}.builder-panel,.calendar-section{border-radius:11px}.league-grid,.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.autocomplete-wrap{grid-template-columns:1fr 1fr}.search-box{grid-column:1/-1}.button{padding:8px 10px}.league-card,.event-card{min-height:72px}.league-logo,.event-logo,.event-logo img{width:47px;height:32px}}
@media print{html,body{background:#fff}.compact-hero,.builder-panel,.live-data-status{display:none}.calendar-section{margin:0;padding:0;border:0;box-shadow:none}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.day-column,.game-card{box-shadow:none}}

/* Live-feed diagnostics: makes an empty off-season schedule distinguishable from a failed request. */
.feed-details {
  display: block;
  margin-top: .45rem;
  font-size: .78rem;
  line-height: 1.45;
  opacity: .9;
}


/* Refined Trevi masthead and phone-first layout */
.compact-hero{
  min-height:96px;
  background:linear-gradient(105deg,#061b34 0%,#0b3b70 62%,#1559a5 100%);
  border-bottom-width:3px;
}
.hero-copy{gap:5px;padding:10px clamp(12px,2.4vw,24px)}
.compact-hero p{max-width:720px;font-size:.80rem;line-height:1.32}
.brand{gap:11px;font-size:inherit;line-height:1}
.brand-logo{
  display:block;
  width:58px;
  height:58px;
  flex:0 0 auto;
  border-radius:50%;
  object-fit:cover;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.25));
}
.brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.brand-kicker{color:#dcecff;font-size:clamp(.72rem,1vw,.82rem);font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.brand-title{color:#fff;font-size:clamp(1.08rem,2vw,1.47rem);font-weight:950;letter-spacing:-.025em;line-height:1.02}
.hero-photo-wrap{flex-basis:clamp(185px,25vw,380px);min-height:96px}
.hero-photo-wrap::after{content:"";position:absolute;inset:auto 0 0 0;height:28%;z-index:1;background:linear-gradient(0deg,rgba(6,27,52,.38),transparent)}

/* Larger tap areas without adding visual bulk */
.league-card,.event-card{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.range-button,.button,.mode-option{min-height:40px;touch-action:manipulation}

@media(max-width:760px){
  .compact-hero{min-height:86px}
  .hero-copy{padding:8px 12px}
  .hero-photo-wrap{min-height:86px;flex-basis:155px}
  .brand-logo{width:50px;height:50px}
  .compact-hero p{font-size:.74rem;line-height:1.28}
}

@media(max-width:650px){
  body{background:linear-gradient(180deg,#edf3f9 0,#f7f9fc 145px,var(--page) 100%)}
  .compact-hero{min-height:116px}
  .hero-copy{min-height:116px;padding:10px 11px;background:linear-gradient(90deg,rgba(6,27,52,.97),rgba(6,27,52,.82) 62%,rgba(6,27,52,.28))}
  .hero-photo-wrap{min-height:116px}
  .brand{gap:8px;max-width:100%}
  .brand-logo{width:48px;height:48px}
  .brand-kicker{font-size:.62rem;letter-spacing:.13em}
  .brand-title{font-size:1.06rem}
  .compact-hero p{max-width:95%;font-size:.70rem;line-height:1.22}
  main{padding:7px 5px calc(14px + env(safe-area-inset-bottom))}
  .builder-panel{padding:6px 8px}
  .calendar-section{padding:8px}
  .step-row{gap:5px;padding:8px 0}
  .compact-heading strong{font-size:.82rem}
  .compact-heading span{font-size:.67rem}
  .league-grid,.event-grid{gap:6px}
  .league-card,.event-card{min-height:70px;padding:5px;border-radius:9px}
  .league-name,.event-name{font-size:.68rem}
  .selected-label{font-size:.53rem}
  .mode-picker{display:grid;grid-template-columns:1fr;gap:6px}
  .mode-option{width:100%;min-height:42px;padding:8px 10px;border-radius:10px}
  .action-row{gap:6px}
  .range-buttons{gap:4px}
  .range-button{min-height:40px;padding:5px 3px;font-size:.69rem}
  .action-row>.button{min-width:76px;flex:1}
  .calendar-heading{align-items:flex-start}
  h1{font-size:1.16rem}
  .status-pill{padding:5px 8px;font-size:.66rem}
}

@media(max-width:520px){
  .league-grid,.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calendar-grid{grid-template-columns:1fr}
  .day-column{min-height:auto}
  .autocomplete-wrap{grid-template-columns:1fr 1fr}
  .search-box{grid-column:1/-1}
  .range-select-label{display:none}
  .game-card{margin:4px;padding:7px}
  .game-title{font-size:.74rem}
  .game-meta,.channel{font-size:.64rem}
}

@media(max-width:365px){
  .brand-logo{width:43px;height:43px}
  .brand-title{font-size:.96rem}
  .brand-kicker{font-size:.56rem}
  .compact-hero p{font-size:.66rem}
  .range-button{font-size:.63rem}
}


/* Compact site navigation */
.site-nav{display:flex;gap:7px;flex-wrap:wrap;margin-top:3px}
.site-nav a{display:inline-flex;align-items:center;min-height:34px;padding:6px 11px;color:#eaf4ff;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:.72rem;font-weight:900;text-decoration:none;transition:.15s ease}
.site-nav a:hover,.site-nav a.active{color:#fff;background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.5)}
@media(max-width:650px){.site-nav{gap:5px;margin-top:2px}.site-nav a{min-height:32px;padding:5px 9px;font-size:.67rem}}



/* Growth package: discoverability, trust pages and sharing */
.discovery-section,.guide-article{margin-top:12px;padding:clamp(14px,2.2vw,24px);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.discovery-heading{max-width:980px}.discovery-heading h2,.guide-article h1{margin:3px 0 6px;color:var(--blue-dark);font-size:clamp(1.28rem,2.8vw,2rem);line-height:1.12}.discovery-heading p,.guide-article p{color:var(--ink-soft);font-size:.88rem;line-height:1.62}
.guide-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:14px 0}.guide-link-grid a{display:flex;flex-direction:column;gap:4px;padding:11px;color:var(--blue-dark);background:var(--surface-blue);border:1px solid #c8daf0;border-radius:10px;text-decoration:none;transition:.15s ease}.guide-link-grid a:hover{transform:translateY(-2px);background:#e2efff;border-color:#8fb4df}.guide-link-grid span{color:var(--ink-soft);font-size:.72rem;line-height:1.35}
.how-it-works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.how-it-works-grid article{padding:11px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}.how-it-works-grid strong{color:var(--blue-dark);font-size:.82rem}.how-it-works-grid p{margin:5px 0 0;color:var(--ink-soft);font-size:.74rem;line-height:1.4}
details{margin-top:7px;padding:9px 10px;background:#fbfdff;border:1px solid var(--line);border-radius:9px}summary{color:var(--blue-dark);font-size:.79rem;font-weight:900;cursor:pointer}details p{margin:6px 0 0;color:var(--ink-soft);font-size:.76rem;line-height:1.45}
.site-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:14px;padding:16px clamp(12px,3vw,28px);color:#eaf4ff;background:#071a33;border-top:4px solid var(--red)}.site-footer div{display:flex;flex-direction:column;gap:3px}.site-footer span{color:#c6d6ea;font-size:.68rem}.site-footer nav{display:flex;flex-wrap:wrap;gap:9px}.site-footer a{color:#eaf4ff;font-size:.71rem;font-weight:800;text-decoration:none}.site-footer a:hover{text-decoration:underline}.noscript{padding:12px;color:#fff;background:#8a2430;text-align:center;font-weight:800}
.guide-main{max-width:1050px}.guide-article{margin-top:0}.guide-article h2{margin:18px 0 7px;color:var(--blue-dark);font-size:1.08rem}.guide-cta{display:inline-flex;margin:9px 0;padding:10px 14px;color:#fff;background:var(--green-dark);border-radius:9px;font-size:.83rem;font-weight:950;text-decoration:none}.guide-cta:hover{background:#0f602a}.guide-faq{margin-top:16px}
@media(max-width:650px){.discovery-section,.guide-article{padding:12px}.how-it-works-grid{grid-template-columns:1fr}.site-footer{display:block;padding:13px}.site-footer nav{margin-top:9px}.guide-link-grid{grid-template-columns:1fr}.discovery-heading p,.guide-article p{font-size:.81rem}}


/* Search-friendly guide hub and phone-first discovery cards */
.quick-link-row{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0 0}.quick-link-row a{display:inline-flex;align-items:center;min-height:38px;padding:7px 10px;color:var(--blue-dark);background:#edf5ff;border:1px solid #c8daf0;border-radius:999px;font-size:.72rem;font-weight:900;text-decoration:none}.quick-link-row a:hover{background:#dfeeff;border-color:#8fb4df}.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:8px;margin:14px 0}.topic-card{padding:11px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-soft)}.topic-card h3{margin:0 0 5px;color:var(--blue-dark);font-size:.88rem}.topic-card p{margin:0;color:var(--ink-soft);font-size:.74rem;line-height:1.42}.guide-list{padding-left:18px;color:var(--ink-soft);font-size:.84rem;line-height:1.62}.guide-note{padding:10px;background:#f6f9fc;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;color:var(--ink-soft);font-size:.8rem;line-height:1.5}.guide-article .guide-link-grid{margin-top:12px}@media(max-width:650px){.quick-link-row{gap:5px}.quick-link-row a{min-height:36px;padding:6px 9px;font-size:.68rem}.topic-grid{grid-template-columns:1fr}.guide-list{font-size:.79rem}}

/* Clock utility promotion */
.guide-link-grid .clock-promo-card{background:linear-gradient(135deg,#071a33,#0d3f79);border-color:rgba(207,51,73,.72);box-shadow:0 10px 24px rgba(7,26,51,.16)}
.guide-link-grid .clock-promo-card strong{color:#fff4a8}
.guide-link-grid .clock-promo-card span{color:#e5f0ff}

/* ============================================================
   MENU BY BUDGET SISTER-SITE VISUAL SYSTEM — 2026-06-03
   Additive styling only: preserves live sports IDs and JS flow.
   ============================================================ */
:root{
  --page:#fbf3e7;
  --surface:#fffdf8;
  --surface-soft:#fff8ee;
  --surface-blue:#fff1d6;
  --ink:#221713;
  --ink-soft:#665249;
  --line:rgba(55,34,25,.14);
  --line-strong:rgba(116,66,38,.34);
  --blue:#a6562c;
  --blue-dark:#3f251b;
  --blue-soft:#fff1d6;
  --green:#58775a;
  --green-dark:#3f6442;
  --green-soft:#e5f1dd;
  --green-glow:rgba(88,119,90,.28);
  --red:#a93428;
  --gold:#dca549;
  --shadow:0 18px 52px rgba(54,32,23,.13);
  --shadow-soft:0 8px 22px rgba(54,32,23,.08);
  --radius:24px;
}
html{background:var(--page)}
body{background:radial-gradient(circle at 8% 0,rgba(220,165,73,.24),transparent 28rem),linear-gradient(180deg,#fff7ec,#fbf3e7 42%,#fffaf3);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.top-strip{background:#2d1a13;color:#ffe8c8;text-align:center;font-weight:800;padding:.54rem 1rem;font-size:.9rem;letter-spacing:.005em}

/* Menu By Budget-like sticky navigation on the main planner. */
.nav{position:sticky;top:0;z-index:50;background:rgba(251,243,231,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(54,32,23,.07)}
.navin{max-width:1500px;margin:auto;padding:.68rem 1rem;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center}
.home-brand{display:flex;gap:.68rem;align-items:center;color:var(--blue-dark);font-size:1.08rem;font-weight:950;letter-spacing:-.04em;text-decoration:none}
.mark{width:43px;height:43px;border-radius:15px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--gold),var(--blue),var(--red));box-shadow:0 12px 28px rgba(166,86,44,.25)}
.mark img{display:block;width:43px;height:43px;object-fit:cover;border-radius:15px}
.navlinks{display:flex;justify-content:center;gap:.28rem;flex-wrap:wrap}
.navlinks a{position:relative;padding:.46rem .66rem;color:var(--blue-dark);border-radius:999px;font-size:.86rem;font-weight:850;text-decoration:none;transition:.18s ease}
.navlinks a:hover,.navlinks a.active{background:#f5dfbf;transform:translateY(-1px)}
.sister-cta{display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--blue-dark),#744226);border:0;border-radius:999px;padding:.7rem .95rem;box-shadow:0 12px 28px rgba(63,37,27,.2);text-decoration:none}

/* Above-the-fold flow mirrors the paired menu planner. */
.home-main{max-width:none;padding:0 0 22px}
.plannerHero{max-width:1500px;margin:auto;padding:.72rem 1rem .55rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.28fr);gap:.82rem;align-items:stretch}
.plannerPanel{min-width:0;background:rgba(255,253,248,.94);border:1px solid var(--line);border-radius:26px;padding:clamp(.88rem,1.8vw,1.28rem);box-shadow:var(--shadow)}
.kicker{display:inline-flex;width:max-content;max-width:100%;background:#fff1d6;color:#744226;border:1px solid rgba(116,66,38,.14);border-radius:999px;padding:.36rem .62rem;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.sports-planner-panel>h1{margin:.58rem 0 .45rem;color:var(--blue-dark);font-size:clamp(1.75rem,3.45vw,3.12rem);line-height:.96;letter-spacing:-.065em}
.lead{max-width:1080px;margin:0;color:var(--ink-soft);font-size:.98rem;font-weight:600}
.heroPhoto{position:relative;overflow:hidden;border:6px solid rgba(255,253,248,.9);border-radius:26px;background:#2d1a13;box-shadow:0 22px 62px rgba(54,32,23,.23)}
.heroPhoto img{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center 43%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.heroPhoto:hover img{transform:scale(1.04)}
.heroPhoto:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,12,8,.68),transparent 60%)}
.cap{position:absolute;left:.85rem;right:.85rem;bottom:.85rem;z-index:2;color:#fff}
.cap strong{display:block;font-size:1rem;letter-spacing:-.025em}.cap span{display:block;margin-top:.18rem;color:rgba(255,255,255,.82);font-size:.76rem;font-weight:650;line-height:1.35}

/* Planner panel keeps the existing controls, IDs and JS hooks. */
.builder-panel{margin-top:.78rem;padding:.42rem .82rem;background:#fff7ed;border:2px solid rgba(220,165,73,.86);border-radius:22px;box-shadow:none}
.step-row{grid-template-columns:176px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid rgba(116,66,38,.14)}
.compact-heading strong{color:var(--blue-dark);font-size:.82rem}.compact-heading span{color:var(--ink-soft);font-size:.68rem}
.league-grid,.event-grid{gap:7px;grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}
.league-card,.event-card{min-height:78px;padding:6px;background:#fffdf8;border-color:var(--line);border-radius:15px;box-shadow:0 7px 16px rgba(54,32,23,.07)}
.league-card:hover,.event-card:hover{border-color:rgba(166,86,44,.52);box-shadow:0 11px 22px rgba(54,32,23,.12)}
.league-card.selected,.event-card.selected{background:linear-gradient(180deg,#f7fff3,#fffdf8);border-color:rgba(88,119,90,.58);box-shadow:0 0 0 2px rgba(88,119,90,.12),0 9px 20px rgba(54,32,23,.09)}
.league-name,.event-name{color:var(--blue-dark)}
.mode-option{color:var(--blue-dark);background:#fffdf8;border-color:var(--line)}
.mode-option:hover{border-color:rgba(166,86,44,.45);background:#fff2dc}.mode-option:has(input:checked){color:var(--green-dark);background:var(--green-soft);border-color:rgba(88,119,90,.52)}
.team-entry.disabled{background:rgba(242,221,195,.36)}
.search-box input{border-color:var(--green);border-radius:14px;background:#fffdf8;box-shadow:0 0 0 3px var(--green-glow)}
.search-box input:disabled{background:#eee8df;border-color:#c9bdaf;color:#86766c}
.button{border-radius:999px;padding:8px 12px}.button.secondary{background:linear-gradient(135deg,var(--blue-dark),#744226)}.button.secondary:hover{background:linear-gradient(135deg,#2d1a13,#6d3d24)}.button.subtle{background:#fff2d8;border-color:var(--line)}.button.subtle:hover,.button.ghost:hover{background:#f5dfbf}.button.ghost{color:var(--blue-dark);background:#fffdf8;border-color:var(--line)}
.range-button,.range-select-label select{background:#fffdf8;border-color:var(--line)}.range-button:hover{background:#fff2dc;border-color:rgba(166,86,44,.4)}.range-button.selected{color:var(--green-dark);background:var(--green-soft);border-color:rgba(88,119,90,.55)}
.suggestions{border-color:var(--line-strong);box-shadow:0 15px 34px rgba(54,32,23,.18)}.suggestion:hover{background:#fff2dc}.suggestion strong{color:var(--blue-dark)}
.team-chip{color:var(--blue-dark);background:#fff1d6;border-color:rgba(116,66,38,.18)}

/* Calendar and guide cards inherit the sister-site surface treatment. */
.calendar-section,.discovery-section,.guide-article{border-color:var(--line);border-radius:24px;background:rgba(255,253,248,.9);box-shadow:var(--shadow)}
.calendar-section,.discovery-section{max-width:1500px;margin:0 auto 12px}.calendar-section{padding:12px}.discovery-section{margin-top:0}
.eyebrow{color:var(--blue)}
h1,.discovery-heading h2,.guide-article h1,.guide-article h2{color:var(--blue-dark)}
.status-pill{background:linear-gradient(135deg,var(--blue-dark),#744226)}
.live-data-status{background:#fff8ee;border-color:var(--line);border-left-color:var(--blue)}.live-data-status.success{background:#f7fff3;border-color:rgba(88,119,90,.3);border-left-color:var(--green)}.live-data-status.warning{background:#fff7e3;border-color:rgba(220,165,73,.55);border-left-color:var(--gold)}
.day-column{background:#fffdf8;border-color:var(--line);border-radius:14px}.day-header{background:linear-gradient(135deg,var(--blue-dark),#744226);border-bottom-color:var(--gold)}.game-card{background:#fffdf8;border-color:var(--line);border-left-color:var(--blue);border-radius:10px}
.guide-link-grid a,.quick-link-row a{color:var(--blue-dark);background:#fff1d6;border-color:rgba(116,66,38,.16);border-radius:16px}.guide-link-grid a:hover,.quick-link-row a:hover{background:#f5dfbf;border-color:rgba(166,86,44,.42)}
.how-it-works-grid article,.topic-card{background:#fff8ee;border-color:var(--line);border-radius:16px}.how-it-works-grid strong,.topic-card h3,summary{color:var(--blue-dark)}
details{background:#fffaf3;border-color:var(--line);border-radius:14px}
.guide-cta{background:linear-gradient(135deg,var(--blue-dark),#744226);border-radius:999px;box-shadow:0 10px 22px rgba(63,37,27,.18)}.guide-cta:hover{background:linear-gradient(135deg,#2d1a13,#6d3d24)}
.guide-link-grid .clock-promo-card{background:linear-gradient(135deg,#3f251b,#744226,#a6562c);border-color:rgba(220,165,73,.4);box-shadow:0 10px 24px rgba(63,37,27,.16)}

/* Secondary pages retain their markup but now look like the sister site. */
.compact-hero{max-width:1500px;min-height:132px;margin:.72rem auto;padding:0 1rem;gap:12px;color:#fff;background:transparent;border:0;box-shadow:none;overflow:visible}
.compact-hero .hero-copy{flex:1;padding:1rem 1.12rem;background:linear-gradient(135deg,#3f251b,#744226 70%,#a6562c);border-radius:26px;box-shadow:var(--shadow)}
.compact-hero p{color:rgba(255,255,255,.82)}
.compact-hero .hero-photo-wrap{flex:0 0 clamp(220px,27vw,390px);min-height:132px;border:6px solid rgba(255,253,248,.9);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}
.compact-hero .hero-photo-wrap::before{background:linear-gradient(90deg,rgba(63,37,27,.5),rgba(63,37,27,0))}
.compact-hero .site-nav a{color:#fff8ec;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.2)}
.compact-hero .site-nav a:hover,.compact-hero .site-nav a.active{background:rgba(255,255,255,.22)}
.brand-logo{border-radius:15px;box-shadow:0 9px 20px rgba(30,16,10,.25)}
.guide-main{max-width:1050px;padding-top:0}
.site-footer{margin-top:14px;padding:1.4rem clamp(12px,3vw,28px);color:#fff1d6;background:#261611;border-top:0}.site-footer span{color:rgba(255,241,214,.72)}.site-footer a{color:#ffd893}

/* Tactile polish and accessibility. */
a:focus-visible,.button:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.league-card,.event-card,.guide-link-grid a,.how-it-works-grid article,.topic-card,.game-card{transition:transform .18s ease,box-shadow .2s ease,border-color .18s ease,background .18s ease}
.guide-link-grid a:hover,.how-it-works-grid article:hover,.topic-card:hover,.game-card:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(54,32,23,.11)}

@media(max-width:1050px){
 .plannerHero{grid-template-columns:1fr}.sports-hero-photo{min-height:240px;max-height:300px}.navin{grid-template-columns:1fr auto}.navlinks{grid-column:1/-1;grid-row:2;justify-content:flex-start}.sister-cta{grid-column:2;grid-row:1}.compact-hero{display:grid;grid-template-columns:1fr}.compact-hero .hero-photo-wrap{min-height:210px;max-height:260px}
}
@media(max-width:760px){
 .top-strip{font-size:.8rem;padding:.44rem .68rem}.plannerHero{padding:.58rem .58rem .45rem}.plannerPanel{padding:.76rem;border-radius:20px}.sports-planner-panel>h1{font-size:clamp(1.65rem,8.5vw,2.45rem)}.lead{font-size:.88rem}.builder-panel{padding:.34rem .62rem;border-radius:17px}.step-row{grid-template-columns:1fr;gap:6px}.selected-line{grid-column:1}.navin{padding:.58rem .68rem;gap:.56rem}.home-brand{font-size:.98rem}.navlinks{gap:.18rem}.navlinks a{padding:.39rem .52rem;font-size:.75rem}.sister-cta{padding:.57rem .72rem;font-size:.74rem}.calendar-section,.discovery-section{margin-left:.58rem;margin-right:.58rem}.compact-hero{margin:.58rem 0;padding:0 .58rem}.guide-main{padding-left:.58rem;padding-right:.58rem}
}
@media(max-width:520px){
 .sports-hero-photo{display:none}.navin{display:flex;flex-wrap:wrap}.navlinks{order:3;width:100%;justify-content:flex-start}.sister-cta{margin-left:auto}.league-grid,.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-hero .hero-photo-wrap{display:none}.compact-hero .hero-copy{border-radius:20px}.home-brand .mark{width:38px;height:38px}.home-brand .mark img{width:38px;height:38px}.site-footer{display:block}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
