:root{--page:#f3f6fb;--surface:#fff;--surface-muted:#f7f9fc;--surface-strong:#eaf0f8;--text:#152139;--muted:#526177;--border:#cfdae8;--border-strong:#9eafc4;--accent:#0057a8;--accent-strong:#003f7d;--accent-soft:#e7f2ff;--focus:#006cd8;--shadow:0 18px 50px #182b471a;color:var(--text);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--page:#09121f;--surface:#111d2d;--surface-muted:#162438;--surface-strong:#203149;--text:#f3f7fc;--muted:#b5c1d1;--border:#30435d;--border-strong:#526985;--accent:#75b8ff;--accent-strong:#a9d4ff;--accent-soft:#173657;--focus:#8ac6ff;--shadow:0 24px 70px #00000057}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 85% -5%, #0057a81c, transparent 28rem), var(--page);min-width:320px;min-height:100vh;color:var(--text);margin:0;overflow-x:hidden}button,input,select{color:inherit;font:inherit}button,select,input[type=search]{border:1px solid var(--border-strong);background:var(--surface);border-radius:.7rem;min-height:44px;padding:.65rem .8rem}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}a{color:var(--accent);text-underline-offset:.18em}a:hover{color:var(--accent-strong)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:.6rem;padding:.75rem 1rem;font-weight:800;position:fixed;top:.75rem;left:.75rem;translate:0 -180%}.skip-link:focus{translate:0}.page{width:min(80rem,100%);margin:0 auto;padding:1rem}.site-header,.controls-panel,.results-header,.calendar-panel,.agenda-panel,.empty-state,.site-footer{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem}.site-header{color:#fff;background:linear-gradient(120deg,#ffffff0a,#0000 55%),#002e5d;border:0;grid-template-columns:1fr;align-items:start;gap:1rem;margin-bottom:1rem;padding:1.25rem 1.5rem;display:grid;overflow:hidden}.header-copy{max-width:none}.eyebrow,.empty-kicker{letter-spacing:.11em;text-transform:uppercase;margin-bottom:.55rem;font-size:.76rem;font-weight:850}.site-header h1{margin-bottom:.6rem;font-size:clamp(1.5rem,3.5vw,2.4rem);line-height:1.15}.lede{color:#dcecff;max-width:39rem;margin:0;font-size:.95rem;line-height:1.55}.team-lineup{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.team-mark{min-width:0;color:inherit;align-items:center;gap:.5rem;font-size:.83rem;font-weight:850;line-height:1.15;display:inline-flex}.team-lineup .team-mark{background:#ffffff1c;border:1px solid #ffffff3d;border-radius:999px;min-height:48px;padding:.35rem .7rem .35rem .4rem}.team-logo{object-fit:contain;background:#fff;border-radius:50%;flex:none;width:2.25rem;height:2.25rem;padding:.25rem}.team-logo[src="/logos/byu.png"]{background:#002e5d}.notice{border:1px solid #8bbbf1;border-left:.35rem solid var(--accent);background:var(--accent-soft);border-radius:.8rem;margin:0 0 1rem;padding:.85rem 1rem}.controls-panel{margin-bottom:1rem;padding:clamp(1rem,3vw,1.5rem)}.section-heading{margin-bottom:1.15rem}.section-heading>div,.control-hint,.result-context,.calendar-heading p,.event-time,.event-location,.site-footer{color:var(--muted)}.section-heading>div{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.2rem;font-size:.76rem;font-weight:800}.section-heading h2{margin:0;font-size:clamp(1.25rem,3vw,1.65rem)}.primary-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.month-navigation{grid-template-columns:44px minmax(11rem,1fr) 44px;gap:.45rem;width:min(100%,25rem);display:grid}.icon-button{padding:0;font-size:1.25rem;font-weight:800}.month-select{text-align:center;width:100%;font-weight:800}.view-switch{border:1px solid var(--border-strong);background:var(--surface-muted);border-radius:.75rem;grid-template-columns:1fr 1fr;padding:.2rem;display:inline-grid}.view-button{background:0 0;border:0;min-width:6.5rem;font-weight:800}.view-button[aria-pressed=true]{background:var(--text);color:var(--surface);box-shadow:0 4px 12px #14203629}.secondary-controls{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;padding-top:1rem;display:grid}.control{align-content:start;gap:.35rem;min-width:0;display:grid}.control-label,legend{color:var(--text);font-size:.82rem;font-weight:800}.control-hint{min-height:2em;font-size:.72rem;line-height:1.35}.filter-row{grid-template-columns:1fr;align-items:end;gap:.75rem;margin-top:1rem;display:grid}.team-filters{border:0;flex-wrap:wrap;gap:.6rem;min-width:0;margin:0;padding:0;display:flex}.team-filters legend{width:100%;margin-bottom:.3rem}.team-check{border:1px solid var(--border-strong);background:var(--surface-muted);cursor:pointer;border-radius:999px;align-items:center;min-height:48px;padding:.35rem .8rem .35rem .4rem;display:inline-flex;position:relative}.team-check:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.team-check:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.team-checkbox{opacity:0;width:1px;height:1px;position:absolute}.team-check .team-logo{width:2rem;height:2rem}.toggle-control{cursor:pointer;align-items:center;gap:.6rem;min-height:48px;display:inline-flex}.toggle-control input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{border:2px solid var(--border-strong);background:var(--surface-strong);border-radius:999px;flex:none;width:3rem;height:1.65rem;position:relative}.toggle-track:after{background:var(--muted);content:"";border-radius:50%;width:1.1rem;height:1.1rem;transition:translate .15s,background .15s;position:absolute;top:.15rem;left:.17rem}.toggle-control input:checked+.toggle-track{border-color:var(--accent);background:var(--accent-soft)}.toggle-control input:checked+.toggle-track:after{background:var(--accent);translate:1.27rem}.toggle-control input:focus-visible+.toggle-track{outline:3px solid var(--focus);outline-offset:3px}.toggle-label{font-size:.88rem;font-weight:750}.results-header{box-shadow:none;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem 1.25rem;display:flex}.result-count{margin-bottom:.15rem;font-size:1.25rem;font-weight:850}.result-context{margin:0;font-size:.86rem}.button{min-height:44px;padding:.68rem .95rem;font-weight:800}.button-primary{border-color:var(--accent-strong);background:var(--accent-strong);color:#fff}:root[data-theme=dark] .button-primary{color:#071525;background:#82c0ff;border-color:#82c0ff}.button-secondary{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.button-quiet{color:var(--accent);background:0 0;border-color:#0000}.button:hover,.icon-button:hover,.calendar-more:hover{filter:brightness(.96)}main{min-width:0}.month-layout{grid-template-columns:minmax(0,1.9fr) minmax(20rem,.72fr);align-items:start;gap:1rem;display:grid}.calendar-panel,.agenda-panel,.empty-state{min-width:0;padding:1rem}.calendar-heading{justify-content:space-between;align-items:end;margin-bottom:1rem;display:flex}.calendar-heading h2,.calendar-heading p{margin-bottom:.15rem}.calendar-heading p{font-size:.84rem}.calendar-table{table-layout:fixed;border-collapse:separate;border-spacing:.35rem;width:100%}.calendar-table th{color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:.35rem;font-size:.72rem}.calendar-day,.calendar-empty{border:1px solid var(--border);background:var(--surface-muted);vertical-align:top;border-radius:.65rem;height:8.5rem;padding:.45rem}.calendar-empty{background:0 0;border-color:#0000}.calendar-day-number{border-radius:50%;place-items:center;width:1.65rem;height:1.65rem;margin-bottom:.25rem;font-size:.78rem;font-weight:850;display:inline-grid}.calendar-events{gap:.3rem;min-width:0;display:grid}.calendar-event,.calendar-more{text-align:left;border:0;border-radius:.42rem;width:100%;min-width:0;min-height:0;padding:.38rem .42rem;overflow:hidden}.calendar-event{border-left:.25rem solid var(--team-color,var(--accent));background:var(--surface-strong);line-height:1.2}.calendar-event[data-team=byu]{--team-color:#0062b8}.calendar-event[data-team=weber]{--team-color:#492365}.calendar-event[data-team=pleasant-grove]{--team-color:#005bbb}:root[data-theme=dark] .calendar-event[data-team=weber]{--team-color:#c6a9e6}:root[data-theme=dark] .calendar-event[data-team=pleasant-grove]{--team-color:#84bdff}.calendar-team,.calendar-event-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-team{letter-spacing:.05em;text-transform:uppercase;margin-bottom:.1rem;font-size:.62rem;font-weight:900}.calendar-event-title{font-size:.7rem;font-weight:700}.calendar-more{color:var(--accent);background:0 0;font-size:.7rem;font-weight:850}.agenda-panel{gap:1rem;display:grid}.agenda-panel-compact{box-shadow:none}.date-group{min-width:0;scroll-margin-top:1rem}.date-group:focus{outline:none}.date-group:focus .date-group-header{box-shadow:0 0 0 3px var(--focus)}.date-group-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.55rem;padding:.25rem .15rem .65rem;display:flex}.date-group-header h2{margin:0;font-size:1rem}.date-count{color:var(--muted);white-space:nowrap;font-size:.74rem;font-weight:750}.date-cards{gap:.65rem;display:grid}.event-card{border:1px solid var(--border);border-left:.38rem solid var(--team-color,var(--accent));background:var(--surface-muted);border-radius:.8rem;padding:.85rem;position:relative;overflow:hidden}.event-card[data-team=byu]{--team-color:#0062b8}.event-card[data-team=weber]{--team-color:#492365}.event-card[data-team=pleasant-grove]{--team-color:#005bbb}:root[data-theme=dark] .event-card[data-team=weber]{--team-color:#c6a9e6}:root[data-theme=dark] .event-card[data-team=pleasant-grove]{--team-color:#84bdff}.event-card[data-past=true]:after{background:var(--surface-strong);color:var(--muted);content:"Past";border-radius:0 .7rem 0 .55rem;padding:.24rem .45rem;font-size:.65rem;font-weight:800;position:absolute;top:0;right:0}.event-card[data-schedule-status=cancelled]{border-style:dashed}.event-card[data-schedule-status=cancelled] h3{text-decoration:line-through}.event-identity{justify-content:space-between;align-items:center;gap:.65rem;display:flex}.event-identity .team-logo{width:1.8rem;height:1.8rem}.event-card h3{margin:.65rem 0 .35rem;font-size:1.08rem;line-height:1.28}.event-card p{margin-bottom:.28rem;font-size:.88rem;line-height:1.45}.status-list,.event-context,.event-actions,.detail-links,.dialog-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.status-badge,.context-chip{letter-spacing:.025em;border:1px solid #0000;border-radius:999px;align-items:center;min-height:1.65rem;padding:.2rem .5rem;font-size:.66rem;font-weight:850;display:inline-flex}.status-tba{color:#5d4300;background:#fff1bd;border-color:#b58b18}.status-all-day{color:#243f58;background:#e5f0fa;border-color:#5b7e9f}.status-provisional{color:#673b00;background:#ffead0;border-color:#c27b22}.status-postponed{color:#3e2b79;background:#eee8ff;border-color:#7864bb}.status-cancelled{color:#781c34;background:#ffe2e7;border-color:#b84961}:root[data-theme=dark] .status-tba{color:#ffe796;background:#463b17;border-color:#d4ae43}:root[data-theme=dark] .status-all-day{color:#d4eaff;background:#1c3a53;border-color:#7199bd}:root[data-theme=dark] .status-provisional{color:#ffd69b;background:#493019;border-color:#d08e3d}:root[data-theme=dark] .status-postponed{color:#ded4ff;background:#312752;border-color:#9784d6}:root[data-theme=dark] .status-cancelled{color:#ffd6df;background:#4c2130;border-color:#d36f87}.event-context{margin-top:.65rem}.context-chip{border-color:var(--border);background:var(--surface);color:var(--muted)}.event-actions{border-top:1px solid var(--border);margin-top:.8rem;padding-top:.75rem}.empty-state{text-align:center;max-width:42rem;margin:0 auto;padding:clamp(1.5rem,6vw,3rem)}.empty-state h2{margin-bottom:.5rem}.empty-state p:not(.empty-kicker){color:var(--muted)}.event-dialog{border:1px solid var(--border);background:var(--surface);width:min(42rem,100% - 2rem);max-height:min(52rem,100vh - 2rem);color:var(--text);border-radius:1rem;padding:0;overflow:auto;box-shadow:0 28px 100px #0006}.event-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#030a14b8}.dialog-header,.detail-list,.dialog-sources,.dialog-actions{margin:0;padding:1.25rem}.dialog-header{border-bottom:1px solid var(--border);background:var(--surface-muted)}.dialog-header h2{margin:1rem 0 .4rem;font-size:clamp(1.5rem,4vw,2rem)}.dialog-summary{color:var(--muted);margin:0;font-weight:700}.detail-list{grid-template-columns:minmax(7rem,.35fr) minmax(0,1fr);gap:0;display:grid}.detail-list dt,.detail-list dd{border-bottom:1px solid var(--border);margin:0;padding:.75rem 0}.detail-list dt{color:var(--muted);padding-right:1rem;font-size:.78rem;font-weight:800}.detail-list dd{font-size:.9rem;line-height:1.5}.detail-links a{border:1px solid var(--border-strong);border-radius:.6rem;min-height:44px;padding:.62rem .75rem;font-weight:750}.dialog-sources{padding-top:0}.dialog-sources h3,.dialog-notes h3{margin-bottom:.5rem;font-size:1rem}.source-list,.dialog-notes ul{color:var(--muted);margin:0;padding-left:1.2rem;font-size:.86rem;line-height:1.65}.dialog-notes{margin-top:1rem}.dialog-actions{border-top:1px solid var(--border);background:var(--surface);justify-content:flex-end;position:sticky;bottom:0}.dialog-close{min-width:6rem;font-weight:800}.site-footer{box-shadow:none;margin-top:1rem;padding:1rem 1.25rem;font-size:.84rem;line-height:1.55}.site-footer strong{color:var(--text)}@media (width<=67rem){.site-header{grid-template-columns:1fr;gap:1.5rem}.team-lineup{flex-wrap:wrap}.month-layout{display:block}.calendar-panel{margin-bottom:1rem;display:block}.agenda-panel-compact{box-shadow:var(--shadow)}}@media (width<=48rem){.secondary-controls{grid-template-columns:1fr 1fr}.secondary-controls .control:first-child{grid-column:1/-1}.filter-row{grid-template-columns:1fr}.control-hint{min-height:0}}@media (width<=36rem){.page{padding:.65rem}.site-header,.controls-panel,.results-header,.agenda-panel,.site-footer{border-radius:.85rem}.site-header{padding:1.35rem 1rem}.site-header h1{font-size:1.7rem}.team-lineup{display:none}.primary-toolbar{gap:.75rem;display:grid}.month-navigation,.view-switch{width:100%}.view-button{min-width:0}.secondary-controls{grid-template-columns:1fr}.secondary-controls .control:first-child{grid-column:auto}.team-filters{gap:.4rem;display:flex}.team-check{min-width:0;padding:.25rem .55rem}.team-check .team-mark{font-size:.75rem}.team-check .team-logo{width:1.65rem;height:1.65rem}.results-header{flex-direction:column;align-items:stretch}.results-header .button{width:100%}.agenda-panel{padding:.8rem}.event-identity{flex-direction:column;align-items:flex-start}.event-actions .button{flex:9rem}.detail-list{grid-template-columns:1fr}.detail-list dt{border-bottom:0;padding-bottom:.1rem}.detail-list dd{padding-top:.2rem}.dialog-actions{flex-direction:column;align-items:stretch}.dialog-actions .button,.dialog-close{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.calendar-event[data-team^=skyridge],.event-card[data-team^=skyridge]{--team-color:#a84400}:root[data-theme=dark] .calendar-event[data-team^=skyridge],:root[data-theme=dark] .event-card[data-team^=skyridge]{--team-color:#ffb071}.schedule-search{margin-top:.75rem}.display-options{margin-top:.5rem}.display-options summary{min-height:44px;color:var(--muted);cursor:pointer;padding:.7rem 0;font-size:.85rem;font-weight:700}.display-options .toggle-control{margin-top:.5rem}.calendar-time{color:var(--muted);margin-top:.2rem;font-size:.68rem;display:block}.calendar-event[data-verification=provisional]{border-left-style:dashed}.calendar-today .calendar-day-number{background:var(--accent);color:var(--surface)}@media (width<=67rem){.site-header{gap:.8rem}.site-header .team-lineup{display:none}.month-layout>.agenda-panel{margin-top:1rem}}@media (width<=36rem){.site-header{padding:1rem}.site-header .eyebrow{font-size:.66rem}.site-header .lede{font-size:.85rem;line-height:1.4}.controls-panel{padding:.85rem}.primary-toolbar{gap:.5rem;margin-bottom:.7rem}.filter-row{margin-top:0}.secondary-controls{grid-template-columns:1fr 1fr}.calendar-panel{padding:.5rem}.calendar-table{border-spacing:.1rem}.calendar-table th{letter-spacing:0;padding:.2rem 0;font-size:.6rem}.calendar-day,.calendar-empty{border-radius:.35rem;height:6.5rem;padding:.12rem}.calendar-day-number{width:1.4rem;height:1.4rem;margin-bottom:.1rem;font-size:.7rem}.calendar-event,.calendar-more{border-left-width:2px;min-height:32px;padding:.25rem .12rem}.calendar-team{letter-spacing:0;font-size:.5rem}.calendar-event-title{display:none}.calendar-time{white-space:nowrap;font-size:.5rem}.calendar-more{font-size:.55rem}.calendar-heading{margin-bottom:.5rem}.calendar-heading h2{font-size:1.2rem}}.calendar-day-jump{display:none}@media (width<=36rem){.calendar-events{display:none}.calendar-day,.calendar-empty{height:5rem}.calendar-day-jump{background:var(--accent-soft);width:100%;min-width:0;min-height:44px;color:var(--accent-strong);border:0;border-radius:.25rem;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;padding:.15rem;display:flex}.day-event-count{font-size:.9rem;font-weight:800}.day-event-label{font-size:.6rem}}
