/* =====================================================================
   Calendar page (Figma 15:838) + Date strip (554:28927)
   ===================================================================== */
/* Date strip (Figma 7:53) + Date Cell (1242:13417): 7 equal cells, 4px gap. All text 12/16 text-secondary; Selected = gold. */
.date-strip-wrap{position:relative;width:100%}
.date-strip{display:flex;gap:var(--space-4);width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 var(--space-10);margin-bottom:-10px}
.date-strip::-webkit-scrollbar{display:none}
.date-cell{flex:0 0 calc((100% - 24px) / 7);scroll-snap-align:start;min-width:0;justify-content:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-16);box-sizing:border-box;height:84px;
  border:1px solid var(--neutral-300);border-radius:var(--radius-md);background:var(--surface-default);color:var(--text-secondary);font:var(--text-xs);cursor:pointer;
  box-shadow:var(--shadow-button-default);transition:background-color .2s,border-color .2s,box-shadow .2s}
.date-cell span{font:var(--text-xs);color:inherit}
.date-cell:is(:hover,.is-hover){background:var(--button-nav-secondary-bg-hover);border-color:var(--border-default);box-shadow:var(--shadow-button-hover)}
.date-cell:is(:active,.is-pressed){background:var(--button-nav-secondary-bg-pressed);border-color:var(--border-strong);box-shadow:var(--shadow-button-pressed)}
.date-cell:focus-visible,.date-cell.is-focus{outline:none;box-shadow:var(--shadow-button-focus)}
.date-cell:disabled,.date-cell.is-disabled{background:var(--border-subtle);cursor:not-allowed}
.date-cell.is-selected{background:var(--accent-default);border-color:var(--accent-hover);color:var(--accent-text)}
.date-cell.is-selected:is(:hover,.is-hover,:active,.is-pressed){background:var(--accent-hover)}

/* Page */
.calendar{background:var(--surface-background);padding-top:172px} /* Figma 745:22994: title 172 from the top (navbar 122 + 50); not a Figma token yet */
.calendar__wrap{width:min(1200px,100% - 48px);margin-inline:auto}
.calendar__hero{display:flex;flex-direction:column;gap:var(--space-20);padding-bottom:var(--space-40)}
.calendar__hero-in{width:min(1308px,100% - 48px);margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-12);padding-bottom:0}
.calendar__hero-in .calendar__lead{margin-bottom:calc(var(--space-48) - var(--space-12))} /* + 12 gap = 48 lead → featured (Figma) */
.calendar__featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-20)}
.calendar__divider{margin:0 auto var(--space-16);width:min(1308px,100% - 48px)} /* + 8 = 24 divider → ALL EVENTS */
.calendar__watch{margin-top:var(--space-16);padding-bottom:var(--space-80)}
.calendar__watch .section-header{margin-bottom:var(--space-16)}
.calendar__hero--plain{padding-bottom:var(--space-32)}
.calendar__title{font:var(--text-7xl);text-transform:uppercase;color:var(--text-primary);margin:0}
.calendar__lead{font:var(--text-lg);color:var(--text-secondary);max-width:720px;margin:0}
.calendar__bar{position:sticky;top:0;z-index:40;background:var(--surface-background);padding:var(--space-20) 0}
.calendar__bar.is-stuck{box-shadow:0 1px 0 var(--border-default)}
body[data-nav-active="calendar"] .nav{position:absolute}
.calendar__filters{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-24);margin-bottom:var(--space-20)}
.calendar__selects{display:flex;gap:var(--space-16);align-items:flex-end}
.calendar__selects .select{width:200px}
.calendar__count{font:var(--text-lg);color:var(--text-secondary);margin:0;white-space:nowrap}
.calendar__feed{display:flex;flex-direction:column;gap:var(--space-32);margin-top:0;padding-bottom:var(--space-64)} /* bar 20 below the strip = Figma 20 */
/* Game Day list Date Strip instance is 50 tall (Figma 745:23007; the component default is 84) */
.calendar__bar [data-list-only] .date-cell{height:50px;padding-block:var(--space-4)}
.calendar__bar [data-list-only] .date-strip__arrow{top:5px}
.cal-day{display:flex;flex-direction:column;gap:var(--space-16)}
.cal-day__label{margin:0;font:var(--text-xl);color:var(--text-secondary)}
.cal-day__list{display:flex;flex-direction:column;gap:var(--space-16)}
.calendar .worth{margin-top:0}
.calendar .worth__label{padding:var(--space-24) 0 var(--space-16)}
.calendar [hidden]{display:none!important}
.calendar__empty{padding:var(--space-64) 0;text-align:center;font:var(--text-lg);color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:var(--space-12)}
.calendar__empty p{margin:0}.calendar__empty-title{margin:0;font:var(--text-2xl);color:var(--text-primary)}
.calendar__empty[hidden]{display:none!important}
/* Toggle Group (Figma 1241:43365) + Toggle Item (1187:32209) */
.toggle-group{display:inline-flex;gap:var(--space-2);padding:var(--space-2);background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.toggle-item{padding:var(--space-8) var(--space-20);border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font:var(--text-sm);cursor:pointer;transition:background-color .2s,box-shadow .2s}
.toggle-item:not(.is-selected):not(.is-disabled):hover{box-shadow:inset 0 0 0 1px var(--border-strong)}
.toggle-item.is-selected{background:var(--accent-default);color:var(--accent-text)}
.toggle-item.is-disabled{opacity:.4;cursor:not-allowed}
.toggle-item:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}
.calendar__selects .calendar__clear{height:44px;align-self:flex-end;margin:0}

.date-cell__head{display:flex;gap:var(--space-4);align-items:center}
.date-cell__count{display:block}
/* Arrows (Figma 1240:43065): 40px button, 8px padding, centred on the strip's left/right edge, shown on hover/focus only; same at-start / at-end behavior as the 85ers carousel */
.date-strip__arrow{position:absolute;top:22px;height:40px;width:40px;display:flex;align-items:center;justify-content:center;padding:var(--space-8);box-sizing:border-box;border:1px solid var(--neutral-300);border-radius:var(--radius-md);background:var(--surface-default);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-button-default);transition:background-color .2s,border-color .2s,box-shadow .2s,opacity .2s}
.date-strip__arrow{z-index:2;opacity:0;visibility:hidden}
.date-strip__arrow--next{right:-20px}.date-strip__arrow--prev{left:-20px}
.date-strip-wrap:hover .date-strip__arrow,.date-strip-wrap:focus-within .date-strip__arrow{opacity:1;visibility:visible}
.date-strip__arrow:hover{background:var(--button-nav-secondary-bg-hover);border-color:var(--border-default);box-shadow:var(--shadow-button-hover)}
.date-strip__arrow:active{background:var(--button-nav-secondary-bg-pressed);border-color:var(--border-strong);box-shadow:var(--shadow-button-pressed)}
.date-strip__arrow:focus-visible{outline:none;box-shadow:var(--shadow-button-focus)}
.date-strip-wrap[data-at-start] .date-strip__arrow--prev,.date-strip-wrap[data-at-end] .date-strip__arrow--next,.date-strip-wrap[data-fits] .date-strip__arrow{opacity:0;visibility:hidden}

/* Section title above the filters (Figma Game Day 745:22994 "ALL EVENTS", Watch Guide 745:23907 "ALL RECOMMENDATIONS") */
.calendar__headwrap{padding-top:var(--space-8)}
.calendar__heading{margin:0;font:var(--text-3xl);text-transform:uppercase;color:var(--text-primary)}

/* Tablet lead copy (Figma 2062:16948) */
.calendar .gd-lead-tab{display:none}
@media (min-width:600px) and (max-width:1023px){.calendar .gd-lead-web{display:none}.calendar .gd-lead-tab{display:block}}

/* ===== Game Day on tablet + phone (Prompt 18; Figma tablet 2062:16916, phone list 2062:33108, month 2112:16344, week 2112:93045) ===== */
.calendar .calendar__frow,.calendar .calendar__appview,.calendar__dots,.calendar__heading-app,.cal-sel{display:none}
.calendar__frow .app-filter-row__chips .filter-chip{flex:none}
@media (max-width:1023px){
  .calendar__selects{display:none}
  .calendar__filters{display:contents}
  .calendar__bar{position:static;padding:0}
  .calendar__bar>.calendar__wrap{display:flex;flex-direction:column}
  .calendar__bar [data-view-toggle]{order:0}
  .calendar .calendar__frow{display:flex;order:1}
  .calendar__bar [data-list-only]{order:2}
  .calendar__bar [data-list-only] .date-cell{flex:0 0 72px;height:50px;padding:var(--space-4) var(--space-8)}
  .calendar__bar [data-list-only] .date-strip__arrow{top:5px}
  .cal-day__label{text-transform:uppercase}
  .cal-day__list{gap:var(--space-12)}
}
/* Tablet 600–1023 (2062:16916): navbar 120; hero 40 top (title 36, 12, lead 14/20); featured 2 × 332×360, 16 apart, 8 / 40;
   divider 8; All Events 40 top: title 36, 20, View switch 40, 20, Filter Row 56 (to the right edge), 20, Date Strip 50, 20, feed
   (headings 28, 12, cards 12 apart, days 32 apart) */
@media (min-width:600px) and (max-width:1023px){
  .calendar{padding-top:calc(var(--nav-h,120px) + var(--space-40))}
  .calendar__hero{padding-bottom:var(--space-40)}
  .calendar__hero-in,.calendar__divider,.calendar__wrap{width:calc(100% - 2 * var(--space-32))}
  .calendar__title{font:var(--text-3xl)}
  .calendar__lead{font:var(--text-sm);max-width:none}
  .calendar__hero-in .calendar__lead{margin-bottom:var(--space-20)}
  .calendar__featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-16)}
  .calendar__featured .event-card--featured{height:360px;padding:var(--space-16)}
  .calendar__featured .event-card__ftitle{white-space:normal;font:var(--text-2xl);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .calendar__divider{margin-bottom:var(--space-40)}
  .calendar__headwrap{padding-top:0}
  .calendar__heading{font:var(--text-3xl)}
  .calendar__bar>.calendar__wrap{padding-top:var(--space-20);gap:var(--space-20)}
  .calendar__bar [data-view-toggle]{display:flex}
  .calendar .calendar__frow{width:calc(100% + var(--space-32));min-height:56px;padding:0;border-bottom:0;background:none}
  .calendar__frow .app-filter-row__chips{padding-right:var(--space-32)}
  .cal-view{margin-top:var(--space-20)}
  .calendar__feed{margin-top:var(--space-20)}
  .cal-day__label{font:var(--text-xl)}
}
/* Phone <600 (2062:33108): App / Header + Tab Bar (Game Day); Featured Events 16 top, 300×294 cards 12 apart that scroll + dots;
   divider 8; List Bar (UPCOMING EVENTS + View Toggle, 24 top); Filter Row 56 (border/subtle); Date Strip 8 / 8 (16 left);
   feed 16 sides, headings 20, 12, cards 12 apart, days 24 apart */
@media (max-width:599px){
  .calendar{padding-top:0}
  .calendar__hero{padding:0}
  .calendar__hero-in{width:100%;gap:0;padding:var(--space-16) 0 var(--space-8)}
  .calendar__lead{display:none}
  .calendar__title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0} /* the page keeps its one h1 (visually hidden: the phone frame shows no page title) */
  .calendar__featured{display:flex;gap:var(--space-12);padding:0 var(--space-16);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:var(--space-16);scrollbar-width:none}
  .calendar__featured::-webkit-scrollbar{display:none}
  .calendar__featured>.event-card--featured{flex:none;width:300px;height:294px;padding:var(--space-16);scroll-snap-align:start}
  .calendar__featured .event-card__ftitle{white-space:normal;font:var(--text-2xl);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .calendar__dots{display:flex;justify-content:center;gap:var(--space-6);padding:var(--space-12) var(--space-16) var(--space-4)}
  .calendar__dots i{width:6px;height:6px;border-radius:var(--radius-full);background:var(--border-strong);transition:width .2s}
  .calendar__dots i.is-active{width:16px;background:var(--text-primary)}
  .calendar__divider{width:100%;margin:0}
  .calendar__wrap{width:100%;box-sizing:border-box}
  .calendar__headwrap{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);padding:var(--space-24) var(--space-12) 0 var(--space-16)}
  .calendar__heading{height:32px;display:flex;align-items:center;font:var(--text-mobile-label);letter-spacing:.44px;color:var(--text-secondary)}
  .calendar__heading-web{display:none}.calendar__heading-app{display:inline}
  .calendar .calendar__appview{display:flex}
  .calendar__bar [data-view-toggle]{display:none}
  .calendar .calendar__frow{box-sizing:border-box;height:56px;padding:0 0 0 var(--space-16);gap:var(--space-8);border-bottom:1px solid var(--border-subtle);background:var(--surface-background)}
  .calendar__frow .app-filter-row__chips{padding-right:var(--space-16)}
  .calendar__bar [data-list-only]{padding:var(--space-8) 0 var(--space-8) var(--space-16)}
  .calendar__bar [data-list-only] .date-strip{padding-right:var(--space-16)}
  .calendar__bar [data-list-only] .date-strip__arrow{display:none}
  .calendar__feed{gap:var(--space-24);margin-top:0;padding:var(--space-16) var(--space-16) var(--space-32)}
  .cal-day__label{font:var(--text-mobile-xl)}
  .calendar__empty{padding:var(--space-40) var(--space-16)}
  .calendar__empty-title{font:var(--text-xl)}
  .calendar__empty .btn{width:100%}
  .cal-view{padding:var(--space-8) var(--space-16) 0}
  .calendar .cal-sel{padding:var(--space-16) var(--space-16) var(--space-32)}
}
@media (prefers-reduced-motion:reduce){.calendar__dots i{transition:none}}
/* Phone calendar frames (2112:16344 / 2112:93045) start with the List Bar: no Featured Events, dots or divider */
@media (max-width:599px){
  .calendar[data-view="calendar"] :is(.calendar__featured,.calendar__dots,.calendar__divider){display:none}
  .calendar[data-view="calendar"] .calendar__hero-in{padding:0}
  .calendar[data-view="calendar"] .calendar__headwrap{padding-top:var(--space-24)}
}
/* Phone calendar (Figma month 2112:16344, week 2112:93045): Monthly | Weekly full width, then ‹ label ›; the Event type select moves
   into the Filters sheet. Month = rounded box, 7 columns, 40 tall day buttons with up to 3 sport dots (6×6), selected = accent/subtle;
   Selected day container below (radius lg, title 18/24 uppercase, rows time | title + league | ⋮). Week = 7-day strip, 3 columns. */
.calm,.calw,.calw__strip{display:none}
@media (max-width:1023px){
  .cal-view .cal-toolbar__types{display:none}
  .cal-sel{display:block;padding:var(--space-16) 0 var(--space-48)}
  .cal-sel[hidden]{display:none!important}
}
@media (max-width:599px){
  .cal-view .cal-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-12);padding-bottom:var(--space-12)}
  .cal-view .cal-toolbar__nav{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:var(--space-8)}
  .cal-view .cal-toolbar__nav .toggle-group{grid-row:1;grid-column:1 / -1;margin:0;display:grid;grid-template-columns:1fr 1fr}
  .cal-view .cal-toolbar__nav [data-cal-today]{grid-row:2;grid-column:2;font:var(--text-xs)}
  .cal-view .cal-toolbar__nav [data-cal-prev]{grid-row:2;grid-column:1}
  .cal-view .cal-toolbar__nav [data-cal-next]{grid-row:2;grid-column:3}
}
@media (max-width:1023px){
  .cal-month.is-phone,.cal-view.is-phone .cal-month{border:0}
  .cal-view.is-phone .cal-month__head{display:none}
  .calm{display:flex;flex-direction:column;gap:0;padding:var(--space-8);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-default)}
  .calm__row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0} /* Figma Month grid 2163:100353: weekdays 32, weeks 56, no gaps */
  .calm__dow{display:flex;align-items:center;justify-content:center;height:32px;font:var(--text-mobile-xs);color:var(--text-secondary);padding:0}
  .calm__day{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;height:56px;padding:var(--space-8) 0 0;border:0;border-radius:var(--radius-md);background:none;color:var(--text-primary);font:var(--text-mobile-base);cursor:pointer;transition:background-color .2s}
  .calm__day.is-outside{color:var(--text-secondary)}
  .calm__day.is-today .calm__num{font-weight:700}
  .calm__day:hover{background:var(--button-nav-ghost-bg-hover)}
  .calm__day.is-selected{background:var(--button-nav-ghost-bg-hover);box-shadow:inset 0 0 0 1px var(--border-default)}
  .calm__day:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}
  .calm__dots{display:flex;gap:var(--space-2);height:6px}
  .calm__dots i{width:6px;height:6px;border-radius:var(--radius-full)}
  .cal-sel__box{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-16);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-default)}
  .cal-sel__title{margin:0;font:var(--text-mobile-xl);text-transform:uppercase;color:var(--text-secondary)} /* Figma 2163:100873 Mobile/09 */
  .cal-sel__list{display:flex;flex-direction:column}
  .cal-sel__row{display:flex;align-items:center;gap:var(--space-12);min-height:56px;padding:var(--space-10);border:0;background:none;text-align:left;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md)}
  .cal-sel__row:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}
  .cal-sel__row.is-past{opacity:.6}
  .cal-sel__time{flex:none;width:52px;text-align:center;font:var(--text-xs-semibold);white-space:nowrap}
  .cal-sel__time::after{content:none}
  .cal-sel__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2);position:relative;padding-left:var(--space-12)}
  .cal-sel__info::before{content:"";position:absolute;left:0;top:50%;width:1px;height:32px;transform:translateY(-50%);background:var(--border-default)} /* Divider 1 × 32 (Figma 1817:77286) */
  .cal-sel__name{font:var(--text-card-title-sm);text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cal-sel__league{font:var(--text-mobile-xs);color:var(--text-secondary)}
  .cal-sel__more{flex:none;box-sizing:border-box;width:32px;height:32px;padding:var(--space-6);fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}
  .cal-sel__none{margin:0;font:var(--text-mobile-base);color:var(--text-secondary)}
  .calw--7 .calw__card .sports-label{max-width:100%}
  .calw__strip{display:flex;gap:var(--space-4);margin:0 calc(-1 * var(--space-16)) var(--space-12) 0;overflow-x:auto;scrollbar-width:none}
  .calw__strip::-webkit-scrollbar{display:none}
  .calw__strip .date-cell{flex:0 0 82px;height:50px;padding:var(--space-4) var(--space-8)}
  .calw--7~*,.calw__strip:has(+.calw--7){display:none}
  .calw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-default);overflow:hidden}
  .calw--7{grid-template-columns:repeat(7,minmax(0,1fr))}
  .calw__col{display:flex;flex-direction:column;gap:var(--space-8);min-width:0;padding:var(--space-12) var(--space-8) var(--space-16)}
  .calw__col+.calw__col{border-left:1px solid var(--border-default)}
  .calw__head{display:flex;flex-direction:column;align-items:center;margin:0 0 var(--space-8);font:var(--text-mobile-xs);color:var(--text-secondary)}
  .calw__head b{font:var(--text-mobile-3xl);color:var(--text-primary)}
  .calw__card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-6);padding:var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-background);color:var(--text-primary);text-align:left;cursor:pointer}
  .calw__card.is-past{opacity:.6}
  .calw__card:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}
  .calw__card .sports-label{min-width:0;height:20px;font:var(--text-mobile-xxs)}
  .calw__title{font:var(--text-mobile-xs);overflow-wrap:break-word;hyphens:auto;min-width:0;max-width:100%}
  .calw__more{align-self:flex-start;border:0;background:none;padding:var(--space-4) var(--space-6);font:var(--text-mobile-xs);color:var(--text-primary);cursor:pointer}
  .calw__none{margin:0;font:var(--text-mobile-xs);color:var(--text-secondary);text-align:center}
}
/* Game Day tablet + phone: no separate Newsletter Section (phone frames 2062:33108 have none; on tablet the Footer's band covers it,
   same rule as Watch Guide and Inside Storied) */
@media (max-width:1023px){main.calendar~.nli-sub{display:none}}

/* Selected-day row + ⋮ (Prompt 28, Figma 2143:19127): the row opens the event; the ⋮ is its own button that opens the action sheet */
.cal-sel__item{display:flex;align-items:center;gap:var(--space-4)}
.cal-sel__item .cal-sel__row{flex:1;min-width:0}
button.cal-sel__more{display:grid;place-items:center;flex:none;width:32px;height:32px;padding:var(--space-6);border:0;border-radius:var(--radius-md);background:none;color:var(--text-primary);cursor:pointer}
button.cal-sel__more:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}
button.cal-sel__more svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}
.cal-sheet{position:fixed;inset:0;z-index:900;display:flex;align-items:flex-end;justify-content:center;padding:0 var(--space-10) var(--space-10)}
.cal-sheet[hidden]{display:none}
.cal-sheet__scrim{position:absolute;inset:0;background:rgba(0,0,0,.45);   /* same scrim as the menu sheet; not a Figma token yet */
  opacity:0;transition:opacity .2s}
.cal-sheet__panel{position:relative;transform:translateY(16px);opacity:0;transition:transform .2s var(--ease-out,ease),opacity .2s}
.cal-sheet.is-open .cal-sheet__scrim{opacity:1}
.cal-sheet.is-open .cal-sheet__panel{transform:none;opacity:1}
@media (prefers-reduced-motion:reduce){.cal-sheet__scrim,.cal-sheet__panel{transition:none}}

/* ===== Prompt 31 (2026-10-27) ===== */
/* 2.5 Tablet header (Figma 2410:145252, every tablet Game Day state): "ALL EVENTS" left and the List | Calendar toggle right on one
   40 px line, vertically centred; the Filter Row follows 20 below. The toggle stays in the bar (one control, shared with desktop) and
   is lifted onto the heading line. */
@media (min-width:600px) and (max-width:1023px){
  .calendar__headwrap{display:flex;align-items:center;min-height:40px;box-sizing:border-box;padding-right:calc(171px + var(--space-16))}   /* 171 = View switch width in Figma; not a Figma token yet */
  .calendar__bar>.calendar__wrap{position:relative}
  .calendar__bar [data-view-toggle]{position:absolute;right:0;top:-40px;height:40px;align-items:center}
  .calendar__bar [data-view-toggle] .toggle-group{height:40px;box-sizing:border-box}
  .calendar .calendar__results{order:1}   /* bar gap 20: Filter Row → Results Header 20, then its own 16 / 4 padding (Figma y 156 → 176 → 286) */
}
/* Results Header on phones: 16 sides inside the bar */
@media (max-width:599px){.calendar .calendar__results{order:1;padding-inline:var(--space-16) var(--space-12)}}
/* 2.2 Game Day / Mobile — Day events sheet (Figma 2412:3804): floating bottom sheet 8 from the sides and the bottom, radius xl (24),
   surface/background, border/subtle, Elevation/Sheet; 8 / 16 / 12 padding, 12 gap; Grabber Row (4 top, 8 bottom, 36 × 4 bar, radius 1);
   date heading Mobile/09 uppercase; the event rows are the Selected-day rows (time | title + league | ⋮). Scrim = shadow/author-card-hover
   (rgba 0 0 0 / .12 Light, .45 Dark) as drawn. Closes on scrim tap, swipe down and Escape. */
.cal-sheet--day{z-index:880;padding:0 var(--space-8) calc(var(--space-8) + env(safe-area-inset-bottom,0px))}
.cal-sheet--day .cal-sheet__scrim{background:var(--shadow-author-card-hover)}
.gd-day-sheet{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--space-12);width:100%;max-height:calc(100dvh - 96px);overflow:hidden;
  padding:var(--space-8) var(--space-16) var(--space-12);background:var(--surface-background);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sheet);outline:none;touch-action:pan-y}
.gd-day-sheet__grab{display:flex;justify-content:center;flex:none;padding:var(--space-4) 0 var(--space-8);cursor:grab}
.gd-day-sheet__grab span{width:36px;height:4px;border-radius:1px;background:var(--border-strong)}   /* 36 × 4, radius 1: not Figma tokens yet */
.gd-day-sheet__title{margin:0;flex:none;font:var(--text-mobile-xl);text-transform:uppercase;color:var(--text-primary)}
.gd-day-sheet__list{display:flex;flex-direction:column;gap:var(--space-12);min-height:0;overflow-y:auto;overscroll-behavior:contain}
.gd-day-sheet .cal-sel__row{padding:var(--space-10)}
.cal-sheet--day.is-dragging .cal-sheet__panel{transition:none}
@media (min-width:600px){.cal-sheet--day{display:none!important}}
