:root{--app-bg:#f9fafb;--surface:#fff;--surface-muted:#f2f4f7;--surface-subtle:#f9fafb;--text:#101828;--text-muted:#667085;--text-subtle:#98a2b3;--border:#eaecf0;--border-strong:#d0d5dd;--focus:#84caff;--focus-ring:#d1e9ff;--brand:#079455;--brand-strong:#067647;--brand-soft:#ecfdf3;--brand-border:#abefc6;--blue:#175cd3;--blue-soft:#eff8ff;--blue-border:#b2ddff;--danger:#b42318;--danger-strong:#912018;--danger-soft:#fffbfa;--danger-border:#fecdca;--warning:#b54708;--warning-strong:#93370d;--warning-soft:#fffcf5;--warning-border:#fedf89;--shadow-sm:0 1px 2px #1018280d;--shadow-card:0 1px 2px #1018280a, 0 8px 24px #1018280a;color:var(--text);background:var(--app-bg);font-synthesis-weight:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--app-bg:#0c111d;--surface:#101828;--surface-muted:#182230;--surface-subtle:#0f1728;--text:#f2f4f7;--text-muted:#98a2b3;--text-subtle:#667085;--border:#1d2939;--border-strong:#344054;--focus:#53b1fd;--focus-ring:#2e90fa38;--brand:#32d583;--brand-strong:#75e0a7;--brand-soft:#062c1d;--brand-border:#027a48;--blue:#84caff;--blue-soft:#102a56;--blue-border:#1849a9;--danger:#fda29b;--danger-strong:#f97066;--danger-soft:#4e1b1a;--danger-border:#7a271a;--warning:#fdb022;--warning-strong:#fec84b;--warning-soft:#3a2a0b;--warning-border:#854a0e;--shadow-sm:0 1px 2px #00000047;--shadow-card:0 1px 2px #0000003d, 0 10px 30px #0003}*{box-sizing:border-box}html{background:var(--app-bg);min-width:0}body{min-width:0;color:var(--text);background:radial-gradient(circle at top left, #75e0a71f, transparent 32rem), var(--app-bg);margin:0}button,input,select{font:inherit}a{color:inherit}.appShell{width:min(1180px,100%);min-height:100vh;margin:0 auto;padding:18px 24px 48px}.topbar{z-index:10;background:color-mix(in srgb, var(--app-bg) 88%, transparent);border:1px solid color-mix(in srgb, var(--border) 74%, transparent);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px;margin:0 -12px 18px;padding:12px;display:grid;position:sticky;top:0}.brandMark{min-height:48px;color:var(--text);letter-spacing:.03em;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:1.05rem;font-weight:900;text-decoration:none;display:inline-flex}.brandMark img{object-fit:contain;width:48px;height:48px}.brandMark:hover,.brandMark:focus-visible{color:var(--blue);outline:0}.breadcrumbs{min-width:0;color:var(--text-muted);align-items:center;margin:0;padding:0;font-size:.92rem;font-weight:700;list-style:none;display:flex}.breadcrumbs li{align-items:center;min-width:0;display:inline-flex}.breadcrumbs li+li:before{color:var(--text-subtle);content:"/";flex:none;margin:0 9px}.breadcrumbs button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.breadcrumbs button:hover,.breadcrumbs button:focus-visible{outline:0;text-decoration:underline}.breadcrumbs span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbarActions{align-items:center;gap:8px;display:flex}.topbarSpacer{min-width:0}.topbarNav{align-items:center;gap:4px;display:flex}.topbarNavLink{min-height:40px;color:var(--text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;padding:8px 10px;font-weight:800;text-decoration:none;display:inline-flex;position:relative}.topbarNavLink:hover,.topbarNavLink:focus-visible{color:var(--blue);background:var(--surface-muted);outline:0}.topbarNavLink.active{color:var(--text)}.topbarNavLink.active:after{background:var(--brand);content:"";border-radius:999px;height:2px;position:absolute;bottom:5px;left:10px;right:10px}.uiButton{min-width:0;color:var(--text);white-space:nowrap;cursor:pointer;background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:700;transition:background .12s,border-color .12s,box-shadow .12s,color .12s;display:inline-flex}.uiButton:hover:not(:disabled),.uiButton:focus-visible{border-color:var(--text-subtle);box-shadow:var(--shadow-sm), 0 0 0 4px var(--surface-muted);outline:0}.uiButton:disabled{cursor:not-allowed;opacity:.58}.uiButton-primary{color:#fff;background:var(--brand);border-color:var(--brand)}:root[data-theme=dark] .uiButton-primary{color:#052e1b}.uiButton-primary:hover:not(:disabled),.uiButton-primary:focus-visible{background:var(--brand-strong);border-color:var(--brand-strong);box-shadow:var(--shadow-sm), 0 0 0 4px var(--brand-soft)}.uiButton-ghost{color:var(--text-muted);background:var(--surface);border-color:var(--border);box-shadow:none}.uiButton-sm{min-height:36px;padding:8px 12px;font-size:.875rem}.uiButton-md{min-height:40px;padding:10px 14px;font-size:.925rem}.uiButton-icon{width:44px;height:44px;padding:0}.uiButtonIcon{display:inline-flex}.topbarActions .mobileMenuButton{display:none}.uiCard{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;overflow:hidden}.uiCard-interactive{transition:border-color .14s,box-shadow .14s,transform .14s}.uiCard-interactive:hover,.uiCard-interactive:focus-within{border-color:var(--blue-border);box-shadow:var(--shadow-sm), 0 14px 34px #10182817;transform:translateY(-1px)}:root[data-theme=dark] .uiCard-interactive:hover,:root[data-theme=dark] .uiCard-interactive:focus-within{box-shadow:var(--shadow-sm), 0 16px 36px #00000052}.uiBadge{border:1px solid #0000;border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:2px 8px;font-size:.78rem;font-weight:700;line-height:1.35;display:inline-flex}.uiBadge-gray{color:var(--text);background:var(--surface-muted);border-color:var(--border)}.uiBadge-green{color:var(--brand-strong);background:var(--brand-soft);border-color:var(--brand-border)}.uiBadge-blue{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-border)}.uiAlert{color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:8px;gap:12px;margin-top:16px;padding:14px 16px;display:flex}.uiAlertIcon{flex:none;margin-top:1px;display:inline-flex}.uiAlert strong{color:var(--danger-strong);display:block}.uiAlertBody{color:var(--danger);margin-top:8px}.uiField{gap:6px;min-width:0;display:grid}.uiFieldLabel{color:var(--text);align-items:center;gap:6px;font-size:.875rem;font-weight:700;display:inline-flex}.uiFieldIcon{color:var(--text-muted);display:inline-flex}.uiControl{width:100%;min-width:0;min-height:44px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);border-radius:8px;padding:10px 12px}.uiControl:focus{border-color:var(--focus);box-shadow:var(--shadow-sm), 0 0 0 4px var(--focus-ring);outline:0}.uiSelect{cursor:pointer}.datePicker{position:relative}.datePickerButton{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;display:inline-flex}.datePickerButton svg{color:var(--text-muted);flex:none}.datePickerPopover{z-index:20;background:var(--surface);border:1px solid var(--border);width:min(328px,100vw - 48px);box-shadow:var(--shadow-card);border-radius:8px;padding:12px;position:absolute;top:calc(100% + 8px);left:0}.datePickerHeader{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.datePickerHeader strong{text-align:center}.datePickerNavButton,.datePickerDay{min-width:0;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.datePickerNavButton{width:34px;height:34px}.datePickerNavButton:hover:not(:disabled),.datePickerDay:hover:not(:disabled){background:var(--surface-muted);border-color:var(--border)}.datePickerNavButton:focus,.datePickerDay:focus{border-color:var(--focus);box-shadow:0 0 0 4px var(--focus-ring);outline:0}.datePickerNavButton:disabled,.datePickerDay:disabled{color:var(--text-subtle);cursor:not-allowed;background:var(--surface-muted);opacity:.45}.datePickerWeekdays,.datePickerGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.datePickerWeekdays{color:var(--text-muted);text-align:center;margin-bottom:4px;font-size:.72rem;font-weight:800}.datePickerDay,.datePickerDaySpacer{aspect-ratio:1}.datePickerDay{font-size:.9rem;font-weight:800}.datePickerDay-selected{color:#fff;background:var(--brand);border-color:var(--brand)}.datePickerDay-selected:hover:not(:disabled){background:var(--brand-strong);border-color:var(--brand-strong)}.uiSkeleton{background:linear-gradient(90deg, var(--surface-muted) 0%, var(--surface-subtle) 50%, var(--surface-muted) 100%);background-size:200% 100%;border-radius:8px;animation:1.2s ease-in-out infinite shimmer;display:block;overflow:hidden}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.searchPanel{grid-template-columns:minmax(170px,1.1fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(120px,.65fr) minmax(120px,.65fr);gap:14px;padding:16px;display:grid;overflow:visible}.aboutPage{gap:16px;margin-top:12px;display:grid}.aboutHero{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;gap:16px;padding:24px;display:grid}.aboutHero h1{max-width:780px;color:var(--text);letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,3.5rem);line-height:1.05}.aboutHero p{max-width:720px;color:var(--text-muted);margin:0;font-size:1rem;line-height:1.6}.aboutHero .uiButton{width:fit-content}.aboutGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.aboutCard{gap:10px;padding:18px;display:grid}.aboutCard svg{color:var(--brand-strong)}.aboutCard h2{color:var(--text);margin:0;font-size:1.08rem;line-height:1.25}.aboutCard p{color:var(--text-muted);margin:0;line-height:1.55}.legalPage{gap:16px;margin-top:12px;display:grid}.legalHero{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;gap:12px;padding:24px;display:grid}.legalBadge{gap:6px}.legalHero h1{color:var(--text);letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}.legalHero p{max-width:760px;color:var(--text-muted);margin:0;line-height:1.6}.legalHero span{color:var(--text-subtle);font-size:.9rem;font-weight:700}.legalContent{gap:18px;padding:22px;display:grid}.legalSection{gap:8px;display:grid}.legalSection+.legalSection{border-top:1px solid var(--border);padding-top:18px}.legalSection h2{color:var(--text);letter-spacing:0;margin:0;font-size:1.08rem;line-height:1.3}.legalSection p{color:var(--text-muted);margin:0;line-height:1.65}.legalSection code{color:var(--text);background:var(--surface-muted);border:1px solid var(--border);border-radius:6px;padding:2px 5px}.allClubsPage{gap:16px;margin-top:12px;display:grid}.pageHeader{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;justify-content:space-between;align-items:end;gap:16px;padding:20px;display:flex}.pageHeader h1{color:var(--text);letter-spacing:0;margin:8px 0 0;font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.1}.pageHeaderControls{align-items:end;gap:12px;display:flex}.pageHeaderControls .uiField{width:min(220px,100%)}.pageHeaderControls .uiButton-icon{flex:none}.trackedClubList{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.trackedClubList>.emptyState{grid-column:1/-1}.trackedClubList-compact{grid-template-columns:1fr;gap:8px}.trackedClubCard{display:grid}.trackedClubCard-compact{grid-template-columns:minmax(0,1fr) minmax(220px,auto);align-items:center}.trackedClubSelect{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:grid}.trackedClubSelect:focus-visible{outline:3px solid var(--blue-border);outline-offset:-3px}.trackedClubSelect img{aspect-ratio:16/9;object-fit:cover;background:var(--surface-muted);width:100%}.trackedClubCard-compact .trackedClubSelect{grid-template-columns:minmax(0,1fr);align-items:center}.trackedClubCard-compact .trackedClubSelect img{display:none}.trackedClubBody{gap:12px;min-width:0;padding:16px;display:grid}.trackedClubCard-compact .trackedClubBody{grid-template-columns:minmax(160px,1.2fr) auto;align-items:center;gap:10px;padding:10px 12px}.trackedClubBody h2{color:var(--text);letter-spacing:0;margin:0 0 4px;font-size:1.08rem;line-height:1.25}.trackedClubBody p{color:var(--brand-strong);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:800;overflow:hidden}.trackedClubBadges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.trackedClubBadges .courtTypeBadges{display:contents}.trackedClubCard-compact .trackedClubBadges{flex-wrap:nowrap}.trackedClubCard-compact .addressLink{border-left:1px solid var(--border);align-self:stretch;align-items:center;max-width:320px;padding:10px 12px}.multisportBadge{color:#6941c6;background:#f4f3ff;border:1px solid #d9d6fe;border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:2px 8px;font-size:.78rem;font-weight:800;line-height:1.35;display:inline-flex}:root[data-theme=dark] .multisportBadge{color:#d6bbfb;background:#2e1f5e;border-color:#53389e}.trackedClubPrice{width:fit-content;color:var(--text-muted);align-items:center;gap:4px;font-size:.9rem;font-weight:700;display:inline-flex}.trackedClubPrice strong{min-height:24px;color:var(--brand-strong);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:999px;align-items:center;padding:1px 8px;font-weight:900;display:inline-flex}.resultBar{justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.resultBar>div:first-child{min-width:0;color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.resultBar strong{font-size:1rem}.resultActions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.resultSortControl{width:132px;color:var(--text-muted);align-items:center;display:inline-flex}.resultSortControl .uiControl{min-height:38px;padding:8px 10px;font-size:.9rem}.loadProgressBadge{min-height:24px;color:var(--text-muted);white-space:nowrap;background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:.78rem;font-weight:800;display:inline-flex}.loadProgressBadge-loading{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-border)}.loadProgressSpinner{border:2px solid;border-right-color:#0000;border-radius:999px;width:12px;height:12px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.detailStats,.failedLinks{flex-wrap:wrap;gap:8px;display:flex}.failedLinks a{min-height:30px;color:var(--danger-strong);background:var(--surface);border:1px solid var(--danger-border);border-radius:999px;align-items:center;padding:4px 9px;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.failedLinks a:hover{text-decoration:underline}.clubGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.clubCard{display:grid}.clubCompactList{gap:8px;display:grid}.clubResultsToolbar{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.clubResultsToolbar .loadProgressBadge{flex:none}.clubCompactRow{padding:0}.clubCompactSelect{width:100%;min-height:58px;color:inherit;text-align:left;cursor:pointer;background:0 0;border-bottom:1px solid #0000;grid-template-columns:minmax(180px,1fr) minmax(0,auto);align-items:center;gap:12px;padding:10px 12px;display:grid}.clubCompactSelect[aria-expanded=true]{border-bottom-color:var(--border)}.clubCompactSelect:focus-visible{outline:3px solid var(--blue-border);outline-offset:-3px}.clubCompactMain{align-items:baseline;gap:8px;min-width:0;display:flex}.clubCompactName{color:var(--text);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;margin:0;font-size:.98rem;font-weight:900;line-height:1.25;overflow:hidden}.clubCompactName:hover,.clubCompactName:focus-visible{color:var(--blue);outline:0;text-decoration:underline}.clubCompactMain span{color:var(--brand-strong);flex:none;font-size:.86rem;font-weight:900}.clubCompactToggle{min-width:0;color:inherit;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.clubCompactMeta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.clubCompactChevron{color:var(--text-muted);flex:none;transition:transform .12s}.clubCompactSelect[aria-expanded=true] .clubCompactChevron{transform:rotate(180deg)}.clubCompactSlots{background:var(--surface-muted);grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px;padding:10px 12px 12px;display:grid}.clubCompactSlot{min-height:42px;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;padding:7px 9px;text-decoration:none;display:grid}.clubCompactSlot:hover,.clubCompactSlot:focus-visible{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-soft);outline:0}.clubCompactSlot strong{color:var(--text);font-size:.9rem;line-height:1.2}.clubCompactSlot span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1;font-size:.78rem;overflow:hidden}.clubCompactSlot small{color:var(--brand-strong);grid-area:1/2/span 2;align-items:center;gap:4px;font-size:.78rem;font-weight:900;display:inline-flex}.clubSelect{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:grid}.clubSelect:focus-visible{outline:3px solid var(--blue-border);outline-offset:-3px}.clubSelect img,.imageSkeleton{aspect-ratio:16/9;object-fit:cover;background:var(--surface-muted);width:100%}.clubBody{gap:12px;padding:16px;display:grid}.clubTitleRow{justify-content:space-between;gap:12px;display:flex}.clubBody h2{color:var(--text);letter-spacing:0;margin:0 0 4px;font-size:1.08rem;line-height:1.25}.clubExternalTitle{color:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.clubExternalTitle:hover,.clubExternalTitle:focus-visible{color:var(--blue);text-underline-offset:3px;outline:0;text-decoration:underline}.clubExternalTitle svg{flex:none}.clubBody p{color:var(--brand-strong);margin:0;font-weight:800}.clubCardMetaRow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.freshnessBadge{width:fit-content;min-height:24px;color:var(--text-muted);background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:.78rem;font-weight:800;line-height:1.35;display:inline-flex}.freshnessBadge svg{flex:none}.freshnessBadge-stale{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-border)}.courtTypeBadges{flex-wrap:wrap;gap:6px;display:flex}.courtTypeBadge{border:1px solid #0000;border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:2px 8px;font-size:.78rem;font-weight:800;line-height:1.35;display:inline-flex}.courtTypeBadge-indoor{color:#175cd3;background:#eff8ff;border-color:#b2ddff}.courtTypeBadge-outdoor{color:#067647;background:#ecfdf3;border-color:#abefc6}:root[data-theme=dark] .courtTypeBadge-indoor{color:#84caff;background:#102a56;border-color:#1849a9}:root[data-theme=dark] .courtTypeBadge-outdoor{color:#75e0a7;background:#062c1d;border-color:#027a48}.clubMeta,.addressLink,.detailAddress,.detailInfoRow{color:var(--text-muted);align-items:flex-start;gap:7px;font-size:.925rem;line-height:1.45;display:inline-flex}.addressLink{padding:0 16px 16px;text-decoration:none}.addressLink svg,.detailAddress svg,.detailInfoRow svg{flex:none;margin-top:2px}.addressLink:hover,.detailAddress:hover,a.detailInfoRow:hover{color:var(--blue);text-decoration:underline}.detailInfoList{gap:8px;margin-top:12px;display:grid}.detailInfoRow{width:fit-content;max-width:100%;text-decoration:none}.priceInfoRow{width:100%}.detailBookingLink{color:var(--blue);font-weight:800}.priceValue{min-height:24px;color:var(--brand-strong);white-space:nowrap;background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:999px;align-items:center;margin:0 2px;padding:1px 7px;font-weight:900;line-height:1.35;display:inline-flex}.clubDetail{grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);align-items:stretch;gap:20px;margin-top:12px;padding:16px;display:grid}.clubDetail img{object-fit:cover;border-radius:8px;width:100%;height:100%;min-height:260px}.detailImageSkeleton{border-radius:8px;width:100%;min-height:260px}.clubDetailBody{align-content:space-between;gap:24px;min-width:0;padding:6px 4px;display:grid}.detailSkeleton .clubDetailBody{min-height:260px}.detailSkeletonStack{align-content:start;gap:12px;display:grid}.clubDetail h2{color:var(--text);letter-spacing:0;margin:12px 0 10px;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.12}.slotPanel{gap:16px;margin-top:16px;padding:16px;display:grid}.panelHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;display:flex}.panelHeader h2{color:var(--text);margin:8px 0 0;font-size:1.25rem;line-height:1.25}.slotList{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.slot{min-height:78px;color:inherit;background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;text-decoration:none;transition:background .12s,border-color .12s,box-shadow .12s;display:flex}.slot:hover,.slot:focus-visible{border-color:var(--brand-strong);box-shadow:0 0 0 4px var(--brand-soft);outline:0}.slot div{gap:4px;min-width:0;display:grid}.slot strong{color:var(--text);white-space:nowrap}.slot span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.slot small{color:var(--brand-strong);white-space:nowrap;flex:none;align-items:center;gap:5px;font-weight:800;display:inline-flex}.slot small svg{flex:none}.availabilityWarning{color:var(--warning);background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:8px;gap:12px;padding:16px;display:flex}.availabilityWarning>svg{flex:none;margin-top:2px}.availabilityWarning strong{color:var(--warning-strong);font-size:1rem;display:block}.availabilityWarning p{color:var(--warning);margin:6px 0 12px;line-height:1.5}.availabilityWarning a{min-height:34px;color:var(--warning-strong);background:var(--surface);border:1px solid var(--warning-border);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:.9rem;font-weight:800;text-decoration:none;display:inline-flex}.availabilityWarning a:hover,.availabilityWarning a:focus-visible{outline:0;text-decoration:underline}.emptyState{grid-column:1/-1;padding:24px}.emptyState strong{color:var(--text);font-size:1rem;display:block}.emptyState p{color:var(--text-muted);margin:6px 0 0;line-height:1.5}.loadingCard{min-height:280px}.lineSkeleton{height:16px}.lineSkeleton.wide{width:78%}.lineSkeleton.short{width:46%}.titleSkeleton{width:min(420px,82%);height:42px}.pillSkeleton{border-radius:999px;width:84px;height:24px}.widePill{width:150px}.slotSkeleton{pointer-events:none}.slotSkeleton .pillSkeleton{flex:none;width:48px}.siteFooter{color:var(--text-muted);border-top:1px solid var(--border);grid-template-columns:minmax(220px,1fr) minmax(280px,auto);gap:24px;margin-top:40px;padding:24px 0 0;display:grid}.footerBrand{align-content:start;gap:10px;display:grid}.footerLogo{width:fit-content;color:var(--text);letter-spacing:.03em;align-items:center;gap:8px;font-weight:900;text-decoration:none;display:inline-flex}.footerLogo img{object-fit:contain;width:34px;height:34px}.footerLogo:hover,.footerLogo:focus-visible{color:var(--blue);outline:0}.footerBrand p{max-width:420px;margin:0;line-height:1.55}.footerNav{grid-template-columns:repeat(2,minmax(130px,1fr));gap:22px;display:grid}.footerNav div{align-content:start;gap:9px;display:grid}.footerNav h2{color:var(--text);margin:0 0 2px;font-size:.9rem;line-height:1.2}.footerNav a{color:var(--text-muted);font-size:.92rem;font-weight:700;text-decoration:none}.footerNav a:hover,.footerNav a:focus-visible,.footerNav a[aria-current=page]{color:var(--blue);outline:0}.footerMeta{color:var(--text-subtle);border-top:1px solid var(--border);flex-wrap:wrap;grid-column:1/-1;gap:8px 18px;padding:16px 0 0;font-size:.85rem;display:flex}.footerMeta a{color:var(--blue);font-weight:800;text-decoration:none}.footerMeta a:hover,.footerMeta a:focus-visible{outline:0;text-decoration:underline}@media (width<=760px){.appShell{padding:12px 14px 36px}.topbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0 -6px 14px;padding:8px 10px}.brandMark{grid-area:1/1;min-height:36px;font-size:.9rem}.brandMark img{width:36px;height:36px}.topbarSpacer,.breadcrumbs{display:none}.topbarNav{background:var(--surface);border:1px solid var(--border);min-width:190px;box-shadow:var(--shadow-card);border-radius:8px;padding:8px;display:none;position:absolute;top:calc(100% + 6px);right:10px}.topbarNavOpen{gap:4px;display:grid}.topbarNavLink{min-height:38px;padding:8px 10px;font-size:.92rem}.topbarNavLink:hover,.topbarNavLink:focus-visible{background:var(--surface-muted)}.topbarNavLink.active:after{width:3px;height:auto;inset:8px 0}.topbarActions{grid-area:1/2;justify-content:flex-end;align-self:center}.topbarActions .uiButton-icon{width:40px;height:40px}.topbarActions .mobileMenuButton{display:inline-flex}.aboutHero{padding:18px}.aboutHero h1,.legalHero h1{font-size:2rem}.legalHero,.legalContent{padding:18px}.aboutGrid{grid-template-columns:1fr}.pageHeader{align-items:stretch;padding:16px;display:grid}.pageHeaderControls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;width:100%;display:grid}.pageHeaderControls .uiField{width:100%;min-width:0}.allClubsPage .pageHeaderControls{grid-template-columns:minmax(0,1fr) 44px;align-items:end}.allClubsSearchField{grid-column:1/-1}.allClubsPage .resultSortControl{grid-column:1;align-self:end;width:100%}.allClubsPage .resultSortControl .uiControl,.allClubsViewButton{min-height:44px}.allClubsViewButton{grid-column:2;place-self:end;width:44px;height:44px}.trackedClubList,.trackedClubCard-compact,.trackedClubCard-compact .trackedClubBody{grid-template-columns:1fr}.trackedClubCard-compact .trackedClubBadges{flex-wrap:wrap}.trackedClubCard-compact .addressLink{border-left:0;max-width:none;padding:0 12px 12px}.searchPanel,.clubDetail,.slotList{grid-template-columns:1fr}.searchPanel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.searchField{min-width:0}.searchField-date{grid-column:1/-1}.searchField-startTime{grid-area:3/1}.searchField-endTime{grid-area:3/2}.searchField-courtType{grid-area:4/1/auto/-1}.searchField .uiFieldLabel{font-size:.82rem}.searchField .uiControl{width:100%;max-width:100%;min-height:40px;padding:8px 10px;font-size:.92rem}.resultBar{gap:10px}.resultBar>div:first-child{flex:auto}.resultActions{gap:6px;max-width:none}.clubResultsToolbar{flex-wrap:wrap}.clubResultsToolbar .resultActions{flex:auto}.loadProgressLabel{display:none}.resultSortControl{width:138px}.resultSortControl .uiControl{min-height:40px}.resultActions .uiButton{flex:none}.clubGrid{grid-template-columns:1fr}.clubCompactSelect{grid-template-columns:1fr;align-items:start;min-height:72px}.clubCompactMain{justify-content:space-between}.clubCompactToggle{justify-content:space-between;width:100%}.clubCompactMeta{justify-content:flex-start}.clubCompactSlots{grid-template-columns:1fr}.clubDetail img,.detailImageSkeleton{min-height:190px}.clubDetailBody{gap:18px}.detailSkeleton .clubDetailBody{min-height:180px}.siteFooter,.footerNav{grid-template-columns:1fr}}
