:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;color:#17233d;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:#f4f7fb}button,a{font:inherit}.coach-banner{position:relative;width:100%;height:auto;aspect-ratio:4 / 1;overflow:hidden;border-bottom:1px solid #224d83;background:#06142f}.coach-banner picture{display:block;width:100%;height:100%}.coach-banner img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.banner-socials{position:absolute;right:clamp(14px,3vw,44px);bottom:14px;display:flex;align-items:center;gap:18px;padding:8px 12px;border-left:3px solid #36b8ff;border-radius:4px;color:#fff;background:#030f2ad1;font-size:13px;line-height:1.2;text-shadow:0 1px 3px rgb(0 0 0 / 55%)}.banner-socials strong{font-weight:800}.page-header{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(44px,1fr);min-height:52px;align-items:center;gap:20px;padding:6px clamp(14px,2.5vw,36px);border-bottom:1px solid #d5deed;background:#fff}.identity{min-width:0}.identity h1{margin:0;font-size:18px;font-weight:760;letter-spacing:0}.identity p{margin:3px 0 0;color:#65718a;font-size:11px}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,3vw,42px)}.site-nav a{padding:12px 4px 10px;border-bottom:2px solid transparent;color:#294568;font-size:16px;font-weight:800;line-height:1;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{border-bottom-color:#19a9c5;color:#0a5f91}.site-nav a:focus-visible{border-radius:3px;outline:3px solid #80d6d1;outline-offset:2px}.refresh-button{display:inline-grid;width:36px;height:36px;justify-self:end;place-items:center;border:1px solid #c7d3e5;border-radius:6px;color:#173d70;background:#fff;cursor:pointer}.refresh-button:hover{background:#eef5ff}.refresh-button:focus-visible,.sheet-tab:focus-visible{outline:3px solid #80d6d1;outline-offset:2px}main{padding:12px clamp(10px,1.7vw,26px) 20px}.schedule-legend{display:flex;width:100%;align-items:center;flex-wrap:wrap;gap:6px 12px;margin:0 auto 8px;color:#334155;font-size:11px;line-height:1.3}.updated-time{margin-left:auto;color:#65758a;font-size:10px}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-swatch{width:11px;height:11px;border:2px solid currentColor;border-radius:2px;background:currentColor}.schedule-toolbar{display:flex;min-height:40px;align-items:end;justify-content:space-between;gap:18px;margin-bottom:8px}.month-heading{margin:0;padding-bottom:5px;font-size:20px;font-weight:780;letter-spacing:0}.sheet-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:thin}.sheet-tab{position:relative;min-width:-moz-max-content;min-width:max-content;padding:8px 12px 9px;border:1px solid #cbd6e7;border-bottom:0;color:#65718a;background:transparent;cursor:pointer}.sheet-tab[aria-selected=true]{color:#173d70;font-weight:720;background:#fff}.sheet-tab[aria-selected=true]:after{position:absolute;right:8px;bottom:0;left:8px;height:3px;background:#17a6a0;content:""}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,18vw);gap:10px;align-items:stretch}.table-shell{min-width:0;overflow:hidden;border:2px solid #244f83;background:#fff}table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}th,td{border:1px solid #9eb0c8}th:last-child,td:last-child{border-right:0}tbody tr:last-child td{border-bottom:0}th{height:29px;padding:4px 3px;color:#fff;background:#173d70;font-size:11px;font-weight:720;text-align:center}td{height:auto;padding:0;overflow:visible;vertical-align:top;background:#fff;font-size:9px;line-height:1.24;letter-spacing:0}.cell-content{display:flex;min-width:0;min-height:var(--week-height, 110px);height:auto;flex-direction:column;align-items:stretch;gap:4px;padding:4px 5px 5px;overflow:visible}td.is-empty{background:#e9eeec!important}.date-line{display:inline-flex;min-width:24px;min-height:22px;align-items:center;align-self:flex-start;justify-content:center;margin:0 0 4px;padding:2px 6px;border-radius:4px;color:#fff;background:#17a6a0;font-size:10px;font-weight:800;line-height:1.15}.event-line{display:block;min-width:0;margin:0;padding:3px 4px;position:relative;overflow-wrap:anywhere;border-left:4px solid #4b5563;border-radius:2px;color:#1f2937;background:#f1f5f9}.event-line.kind-group,.legend-item.kind-group{color:#9a3412}.event-line.kind-group{border-left-color:#c2410c;background:#ffedd5}.event-line.kind-vip,.legend-item.kind-vip{color:#6d28d9}.event-line.kind-vip{border-left-color:#7c3aed;background:#f3e8ff}.event-line.kind-sas,.legend-item.kind-sas{color:#9a3412}.event-line.kind-sas{border-left-color:#c2410c;background:#ffedd5}.event-line.kind-tmc,.legend-item.kind-tmc{color:#9a3412}.event-line.kind-tmc{border-left-color:#c2410c;background:#ffedd5}.event-line.kind-travel,.legend-item.kind-travel{color:#7a4b00}.event-line.kind-travel{border-left-color:#a16207;background:#fef3c7}.event-line.kind-availability,.legend-item.kind-availability{color:#0f766e}.event-line.kind-availability{border-left-color:#0f857d;background:#d9f7f4}.event-line.kind-reserved,.legend-item.kind-reserved{color:#475569}.event-line.kind-reserved{border-left-color:#64748b;background:#f1f5f9}.event-line.kind-reserved:has(.event-time),.legend-item.kind-reserved{color:#9a3412}.event-line.kind-reserved:has(.event-time){border-left-color:#c2410c;background:#ffedd5}.event-line.kind-free,.legend-item.kind-free{color:#166534}.event-line.kind-free{border-left-color:#22c55e;color:#12340e;background:#b7ff3c;box-shadow:inset 0 0 0 1px #22c55e4d}.event-line.kind-special{border-left-color:#0284c7;color:#0c4a6e;background:#e0f2fe}.event-time{display:block;color:currentColor;font-size:8px;font-weight:800;line-height:1.2}.event-title{display:block;margin-top:2px;font-weight:750;line-height:1.3}.notes-rail{min-width:0;border:1px solid #a0aaa6;background:#fff}.notes-section+.notes-section{border-top:1px solid #a0aaa6}.notes-heading{margin:0;padding:7px 9px;color:#fff;background:#173d70;font-size:11px;font-weight:750}.notes-list{display:grid;margin:0;padding:0;list-style:none}.note-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:6px 8px;border-top:1px solid #d8dddb;font-size:9px;line-height:1.3}.note-item:nth-child(odd){background:#f2f6fb}.note-item:first-child{border-top:0}.note-label{color:#34413e}.note-value{color:#6a7471;font-weight:700}.note-item.highlight-travel{border-left:4px solid #d6a800;background:#fff6cc}.note-item.highlight-holiday{border-left:4px solid #2e7d32;background:#e8f5e9}.note-item.highlight-makeup{border-left:4px solid #9aa1a8;background:#eef1f3}.note-item[class*=highlight-] .note-label,.note-item[class*=highlight-] .note-value{color:#20304f;font-weight:800}.school-note{display:block}.contact-qr-wrap{position:relative;width:calc(100% - 20px);max-width:200px;aspect-ratio:1;margin:12px auto 14px;overflow:hidden;border:1px solid #d5deed;border-radius:5px;background:#fff;box-shadow:0 8px 22px #17304e1f}.contact-qr{position:absolute;top:-68.33%;left:-28.33%;display:block;width:156.33%;max-width:none;height:auto}.contact-guidance{margin:0;padding:0 12px 10px;color:#40546f;font-size:10px;line-height:1.45}.contact-confirm{display:block;margin:0 12px 14px;padding:8px 10px;border-radius:999px;color:#10224a;background:#fc0;font-size:10px;font-weight:800;text-align:center;text-decoration:none}.contact-confirm:hover{background:#ffdf57}.contact-confirm:focus-visible{outline:3px solid #ffcc00;outline-offset:2px}.status{display:grid;min-height:45vh;place-items:center;padding:40px 20px;text-align:center}.status strong{display:block;margin-bottom:8px;font-size:18px}.status span{color:#68736f;font-size:14px}[hidden]{display:none!important}@media(max-width:900px){.calendar-layout{grid-template-columns:1fr}.table-shell{overflow-x:auto}table{min-width:720px}.notes-rail{display:grid;grid-template-columns:1fr 1fr}.notes-section+.notes-section{border-top:0;border-left:1px solid #a0aaa6}.contact-section{grid-column:1 / -1;border-top:1px solid #a0aaa6!important;border-left:0!important}}@media(max-width:640px){.coach-banner{aspect-ratio:1683 / 935}.banner-socials{right:8px;bottom:8px;left:8px;justify-content:center;gap:12px;padding:7px 8px;font-size:11px}.page-header{grid-template-columns:minmax(0,1fr) 36px;gap:7px 12px;min-height:56px;padding:8px 10px 0}.identity h1{font-size:16px}.site-nav{grid-column:1 / -1;grid-row:2;width:calc(100% + 20px);margin-left:-10px;gap:0;border-top:1px solid #e2e8f1}.site-nav a{flex:1 1 16.666%;padding:12px 2px 10px;font-size:clamp(10px,3.2vw,13px);text-align:center}.refresh-button{grid-column:2;grid-row:1}main{padding:8px 0 0}.schedule-legend{width:calc(100% - 18px);margin-bottom:10px;font-size:10px}.updated-time{width:100%;margin-left:0}.schedule-toolbar{align-items:center;padding:0 9px}.month-heading{font-size:17px}.sheet-tab{padding-right:9px;padding-left:9px}.table-shell,.notes-rail{border-right:0;border-left:0}.cell-content{min-height:108px}.notes-rail{grid-template-columns:1fr}.contact-section{grid-column:auto}.notes-section+.notes-section{border-top:1px solid #a0aaa6;border-left:0}}body{font-family:Manrope,Inter,system-ui,sans-serif;background:#eaf1f9}body>.spatial-site-header{min-height:44px}.spatial-schedule-context h1{margin:0;color:#10224a;font-size:14px;letter-spacing:-.02em}.refresh-button{border-color:#d4a900;border-radius:999px;color:#10224a;background:#fc0}.refresh-button:hover{background:#ffdf57}.refresh-button:focus-visible,.sheet-tab:focus-visible{outline-color:#fc0}main{position:relative;padding-top:8px;background:radial-gradient(circle at 88% 0,rgb(94 136 199 / 20%),transparent 34%)}.schedule-toolbar{min-height:46px;padding:0 12px;color:#fff;background:#10224a}.sheet-tab{color:#d6e3f5;border-color:#58749a}.sheet-tab[aria-selected=true]{color:#10224a;background:#f8fbff}.sheet-tab[aria-selected=true]:after{background:#fc0}.table-shell{border-color:#10224a;box-shadow:0 22px 54px #10224a21}th{background:#10224a}.date-line{background:#28518d}.notes-rail{border-color:#9fb4ce;background:#ffffffe0}@media(max-width:760px){.spatial-schedule-context{display:none}main{padding-top:10px}.schedule-toolbar{padding-inline:9px}}
