@import "https://use.typekit.net/yuh0tps.css";@font-face{font-family:strive;src:url(/fonts/Strive-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#050505;--bg-muted:#0b0b0b;--surface:#131313eb;--surface-strong:#181818fa;--surface-soft:#ffffff0a;--border:#ffb31324;--border-strong:#ffb3134d;--text:#f5f0e8;--text-muted:#f5f0e8ad;--text-soft:#f5f0e880;--accent:#ffb313;--accent-strong:#ffb313;--accent-deep:#000;--danger:#ff6b6b;--success:#3dd598;--shadow:0 30px 80px #00000059;--radius-xl:32px;--radius-lg:24px;--radius-md:18px;--radius-sm:12px;--font-body:"Hanken Grotesk", sans-serif;--font-heading:"eurostile-extended", sans-serif;--font-hero:"strive", "Impact", "Haettenschweiler", "eurostile-extended", sans-serif;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--text);background:radial-gradient(circle at top,#ffb40029,#0000 26%),linear-gradient(#131313 0%,#050505 24% 100%);margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}#root,.app-shell{min-height:100vh}.public-page{color:#fff;min-height:100vh;font-family:var(--font-heading);background:#000;position:relative;overflow:hidden}.public-page:before{content:none;opacity:.18;pointer-events:none;background:linear-gradient(#0000 0,#ffffff05 1px,#0000 1px) 0 0/100% 96px,linear-gradient(90deg,#0000 0,#ffffff05 1px,#0000 1px) 0 0/96px 100%;position:absolute;inset:0}.container{z-index:1;width:min(1180px,100% - 32px);margin:0 auto;position:relative}.site-header{z-index:10;background:#000;border-bottom:1px solid #fff;position:sticky;top:0}.public-page .site-header{background:0 0;border-bottom:0;position:absolute;left:0;right:0}.site-header__inner{justify-content:space-between;align-items:center;gap:20px;padding:22px 0;display:flex}.brand{align-items:center;padding:12px;display:inline-flex}.brand img{width:auto;height:22px}.hero-mobile-brand{display:none}.hero-mobile-brand img{width:auto;height:16px}.site-header__links{align-items:center;gap:14px;display:flex}.site-header__links .button-secondary{font-size:.82rem}.site-header__login{display:inline-flex}.admin-session-pill{color:var(--text-muted);letter-spacing:.04em;font-size:.9rem}.public-page .admin-session-pill{color:#ffffffad;letter-spacing:0;text-transform:none;font-size:.72rem}.public-page .site-header__links .button-secondary{letter-spacing:.06em;min-height:32px;padding:.42rem .68rem;font-size:.68rem}.ghost-link{color:var(--text-muted);font-size:.95rem}.mobile-login-cta{display:none}.button,.button-secondary,.button-danger,.icon-button{border:1px solid var(--border-strong);transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.button,.button-secondary,.button-danger{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:.9rem 1.35rem;font-weight:700;display:inline-flex}.button{background:linear-gradient(135deg, var(--accent) 0%, #f79400 100%);color:#140c00;box-shadow:0 18px 40px #ffb40029}.button-secondary{color:var(--accent);background:#ffb40014}.button-danger{color:#ff9f9f;background:#ff6b6b14;border-color:#ff6b6b4d}.button--icon{padding:.9rem}.button:hover,.button-secondary:hover,.button-danger:hover,.icon-button:hover,.card-action:hover,.trainer-link:hover,.sidebar-link:hover{transform:translateY(-1px)}.public-page .button,.public-page .button-secondary{min-height:48px;box-shadow:none;font-family:var(--font-heading);border-color:currentColor;border-radius:0}.public-page .button{color:#000;background:#ffb313}.public-page .button-secondary{color:#fff;background:#000}.public-page .button:hover,.public-page .button-secondary:hover{transform:translateY(-2px)}.hero-section{background:linear-gradient(#0000006b 0%,#00000094 44%,#000000d6 100%),url(/images/hero-courts.jpeg) 50%/cover no-repeat,#000;align-items:center;min-height:100vh;padding:150px 0 92px;display:flex;position:relative}.hero-stack{text-align:center;place-items:center;min-height:min(640px,100vh - 220px);display:grid}.hero-content{align-content:center;justify-items:center;width:min(760px,100%);padding:clamp(34px,5vw,64px);display:grid}.eyebrow{color:#ffb313;text-transform:uppercase;letter-spacing:.16em;margin:0 0 18px;font-size:.78rem;font-weight:800}.hero-title{font-family:var(--font-hero);text-transform:uppercase;letter-spacing:0;transform-origin:50%;margin:0;font-size:clamp(3.6rem,8.2vw,6.8rem);line-height:.82;display:inline-block;transform:rotate(-4deg)}.hero-title span{display:block}.hero-title__accent{color:#ffb313}.hero-copy{color:#fff;max-width:560px;margin:28px auto 0;font-size:1.05rem;line-height:1.5}.hero-service-list{color:#ffb313;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex-wrap:nowrap;justify-content:center;gap:10px clamp(8px,1.6vw,18px);margin-top:26px;font-size:clamp(.58rem,1.4vw,.82rem);font-weight:900;display:flex}.hero-service-list span{align-items:center;gap:10px;display:inline-flex}.hero-service-list span+span:before{content:"";background:#fff;width:6px;height:6px}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:42px;display:flex}.package-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:18px;margin-top:42px;display:grid}.glass-card{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:linear-gradient(#131313f2,#0c0c0cfa);border:1px solid #ffffff14}.public-page .glass-card{box-shadow:none;background:#000;border:1px solid #fff;border-radius:0}.booking-confirmation-card{text-align:center;max-width:480px;color:var(--text);flex-direction:column;align-items:center;gap:12px;margin:0 auto;padding:48px 32px;display:flex}.booking-confirmation-card h1{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:1.4rem}.booking-confirmation-card p{color:var(--text-muted);margin:0;line-height:1.6}.booking-confirmation-card .button{margin-top:12px}.booking-confirmation-card__spin{animation:1.4s linear infinite booking-confirmation-spin}@keyframes booking-confirmation-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.package-stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.package-stat{text-align:center;border-right:1px solid #ffffff14;padding:28px}.package-stat:last-child{border-right:0}.package-stat__value{font-family:var(--font-heading);color:var(--accent);font-size:clamp(2.2rem,5vw,3.4rem);line-height:.95;display:block}.package-stat__label{color:var(--text-soft);letter-spacing:.22em;text-transform:uppercase;margin-top:10px;font-size:.72rem;display:block}.package-detail{padding:32px}.package-detail p{color:var(--text-muted);margin:0;font-size:1rem;line-height:1.65}.section{padding:62px 0}.section-title{font-family:var(--font-heading);color:#fff;letter-spacing:.08em;text-transform:uppercase;text-align:left;margin:0 0 28px;font-size:clamp(1.8rem,5vw,3rem)}.public-page .section-title{z-index:3;width:fit-content;font-family:var(--font-hero);letter-spacing:0;pointer-events:none;margin-top:18px;margin-bottom:-14px;font-size:clamp(2.55rem,5.8vw,4.9rem);line-height:.82;position:relative}.section-title__text{display:inline-block}.public-page .section-title__text{transform-origin:0;transform:translate(-10px,10px)rotate(-11deg)}.public-page .section-title__accent{color:#ffb313}.public-page .section-title__line{display:block}.public-page .packages-offer-grid,.public-page .trainers-grid{z-index:1;position:relative}.public-page .section:nth-of-type(2n){color:#000;background:#fff}.public-page .section:nth-of-type(2n) .section-title{color:#000}.trainers-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.trainer-card{flex-direction:column;justify-content:flex-end;min-height:500px;display:flex;position:relative;overflow:hidden}.trainer-card:after{content:"";pointer-events:none;background:linear-gradient(#0000 16%,#0000009e 58%,#000 100%);position:absolute;inset:0}.trainer-portrait{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.trainer-portrait__image{object-fit:cover;object-position:center top;width:100%;height:100%;transform:scale(1.02)}.trainer-portrait__initials{color:#ffffff80;letter-spacing:.02em;-webkit-user-select:none;user-select:none;font-size:2.5rem;font-weight:700}.trainer-card__body{z-index:1;padding:26px;position:relative}.pill{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:#ffb4001a;border-radius:999px;align-items:center;padding:.45rem .8rem;font-size:.72rem;font-weight:800;display:inline-flex}.public-page .pill,.public-page .trainer-package-pill{color:#000;background:#ffb313;border:1px solid #ffb313;border-radius:0}.public-page .trainer-card .pill,.public-page .trainer-package-pill{color:#fff;background:0 0;border-color:#0000}.public-page .trainer-card .pill{color:#000;background:#ffb313;border:0}.public-page .trainer-package-pill{background:#000;border:0;padding:.3rem .65rem}.pill--backup{color:#78b4ff;background:#78b4ff1f}.trainer-name{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.04em;margin:16px 0 10px;font-size:clamp(1.6rem,4vw,2.2rem);line-height:1}.trainer-copy{color:#fff;min-height:74px;line-height:1.55}.trainer-package-pills{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.trainer-package-pill{color:var(--text-muted);letter-spacing:.04em;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;align-items:center;padding:.3rem .65rem;font-size:.72rem;font-weight:600;display:inline-flex}.trainer-link{color:#ffb313;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-top:16px;padding:0;font-weight:700;display:inline-flex}.trainer-link svg{transition:transform .26s cubic-bezier(.22,1,.36,1)}.trainer-link:hover svg,.trainer-link:focus-visible svg{transform:translate(6px)}.public-page #trainers{color:#fff;background:#000}.public-page #trainers .section-title{color:#fff;margin-bottom:-28px}.public-page #trainers .trainers-grid{gap:22px}.public-page #trainers .trainer-card{min-height:540px;box-shadow:none;background:#050505;border:0;border-radius:0}.public-page #trainers .trainer-card:after{background:linear-gradient(#0000 24%,#0000008a 62%,#000 100%),linear-gradient(90deg,#00000094,#0000 54%)}.public-page #trainers .trainer-portrait__image{filter:saturate(.94)contrast(1.04);transition:transform .42s cubic-bezier(.22,1,.36,1);transform:none}.public-page #trainers .trainer-card:hover .trainer-portrait__image,.public-page #trainers .trainer-card:focus-within .trainer-portrait__image{transform:scale(1.035)}.public-page #trainers .trainer-card__body{padding:28px}.public-page #trainers .trainer-name{color:#fff;margin:14px 0 6px;font-size:clamp(1.55rem,2.9vw,2.35rem);line-height:.95}.public-page #trainers .trainer-copy{color:#fff;max-width:310px;min-height:0;font-size:.92rem;line-height:1.42}.public-page #trainers .trainer-link{color:#ffb313;margin-top:20px}.dialog-overlay{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000008f;border:0;position:fixed;inset:0}.dialog-card-wrap{z-index:41;width:min(1120px,100% - 32px);position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.dialog-card{background:linear-gradient(#101010fa,#0a0a0afc);border:1px solid #ffffff14;border-radius:30px;flex-direction:column;height:min(94dvh,860px);display:flex;overflow:hidden;box-shadow:0 40px 120px #0000006b}.dialog-card__header{grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:18px;padding:24px 24px 0;display:grid}.dialog-card__header-main{min-width:0}.dialog-card__header-extra{grid-area:1/2;justify-self:end;min-width:0}.dialog-card__title{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:clamp(1.25rem,3vw,1.85rem)}.booking-dialog-title__accent{color:#ffb313}.dialog-card__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:.92rem}.dialog-card__close{width:38px;height:38px;color:var(--text);background:0 0;border:1px solid #ffffff14;border-radius:14px;grid-area:1/3;place-items:center;display:grid}.dialog-card__body{overscroll-behavior:contain;flex:1;min-height:0;padding:20px 24px 16px;overflow:hidden auto}.dialog-card__footer{justify-content:flex-end;align-items:flex-end;gap:12px;padding:16px 24px 18px;display:flex}.dialog-card__footer:empty{padding:0;display:none}.booking-dialog-footer-progress{flex:0 360px;align-self:center;align-items:center;gap:10px;margin-right:auto;display:flex}.booking-dialog-footer-progress__copy{white-space:nowrap;align-items:baseline;gap:8px;min-width:0;display:flex}.booking-dialog-footer-progress__copy span{color:var(--text-soft);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.booking-dialog-footer-progress>strong{color:#ffb313;min-width:0;font-family:var(--font-heading);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:800;overflow:hidden}.booking-dialog-footer-progress__track{background:#ffffff1a;border-radius:999px;flex:0 0 120px;min-width:120px;height:4px;overflow:hidden}.booking-dialog-footer-progress__track span{border-radius:inherit;background:#ffb313;height:100%;transition:width .24s cubic-bezier(.22,1,.36,1);display:block}.booking-dialog-footer-progress--backup>strong{color:#bebebef2}.booking-dialog-footer-progress--backup .booking-dialog-footer-progress__track span{background:#bebebef2}.booking-dialog-layout{grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);gap:20px;display:grid}.booking-dialog-panel{background:#ffffff05;border:1px solid #ffffff0f;border-radius:24px;padding:22px}.booking-stepper{background:#ffffff06;border:1px solid #ffffff14;border-radius:999px;width:fit-content;max-width:100%;display:inline-flex;overflow:hidden}.booking-step{background:0 0;border:0;border-radius:0;align-items:center;gap:7px;min-height:34px;padding:0 12px;display:flex}.booking-step+.booking-step{border-left:1px solid #ffffff14}.booking-step--active{background:#ffb40014;border-color:#ffb4003d}.booking-step--done{background:#3dd5980f;border-color:#3dd5982e}.booking-step__index{width:20px;height:20px;color:var(--text);background:#ffffff0f;border-radius:999px;flex:0 0 20px;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.booking-step--active .booking-step__index{color:var(--accent);background:#ffb40029}.booking-step--done .booking-step__index{color:#74ebb9;background:#3dd59824}.booking-step__label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.1}.packages-offer-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-top:32px;display:grid}.package-offer-card{flex-direction:column;gap:12px;padding:28px 24px;display:flex}.public-page .package-offer-card{color:#fff;gap:16px;padding:0;position:relative}.public-page .package-offer-card:before{content:"";background:#ffb313;height:12px;display:block}.package-offer-card__name{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:0;font-size:1.1rem}.public-page .package-offer-card__name{color:#ffb313;box-sizing:border-box;align-items:center;min-height:70px;padding:26px 26px 0;font-size:1.18rem;line-height:1.15;display:flex}.package-offer-card__desc{color:var(--text-muted);min-height:6em;margin:0;font-size:.92rem;line-height:1.5}.public-page .package-offer-card__desc{color:#fff;padding:0 26px}.package-offer-card__specs{flex-wrap:wrap;gap:6px;display:flex}.public-page .package-offer-card__specs{padding:0 26px}.package-offer-card__price{align-items:baseline;gap:8px;display:flex}.public-page .package-offer-card__price{flex-wrap:wrap;padding:4px 26px 0}.package-offer-card__price-tiers{flex-wrap:wrap;align-items:baseline;gap:0 4px;display:flex}.package-offer-card__price-tiers strong{white-space:nowrap;font-size:1.05rem}.package-offer-card__price-tiers strong small{color:var(--text-muted);margin-left:1px;font-size:.68rem;font-weight:600}.package-offer-card__price-sep{color:var(--text-muted)}.package-offer-card__price strong{color:var(--text);font-size:1.4rem;font-weight:800}.public-page .package-offer-card__price strong{color:#fff}.package-offer-card__price span{color:var(--text-muted);font-size:.85rem}.public-page .package-offer-card__price span,.public-page .package-offer-card__price small{color:#fff}.public-page .package-offer-card__price small{flex-basis:100%;margin-left:0}.package-offer-card__price small{color:var(--accent);margin-left:auto;font-size:.78rem}.package-offer-card__cta{justify-content:center;width:100%;margin-top:auto}.public-page .package-offer-card__cta{border-width:1px 0 0;width:100%;margin-top:auto}.public-page #trainingen{color:#fff;background:#000}.public-page #trainingen .section-title{color:#fff;margin-bottom:-58px;margin-left:-22px}.public-page #trainingen .section-title__text{color:#ffb313;transform:translate(-18px,42px)rotate(-11deg)}.public-page #trainingen .package-offer-card{color:#000;background:#fff;border:0;border-radius:18px;overflow:hidden}.public-page #trainingen .package-offer-card:before{height:0}.public-page #trainingen .package-offer-card__name,.public-page #trainingen .package-offer-card__desc,.public-page #trainingen .package-offer-card__price span{color:#000}.public-page #trainingen .package-offer-card__price strong,.public-page #trainingen .package-offer-card__price small{color:#ffb313}.public-page #trainingen .pill{color:#000;background:#ffb313;border-color:#ffb313}.public-page #trainingen .package-offer-card__cta{border-top-color:#ffb313}.booking-picker-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.booking-picker-grid--packages,.booking-picker-grid--trainers{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-auto-rows:minmax(305px,1fr);align-items:stretch;min-height:0}.booking-picker-card{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;flex-direction:column;gap:8px;padding:18px 16px;transition:border-color .18s,background .18s;display:flex}.booking-picker-card:hover{background:#ffb4000f;border-color:#ffb40066}.booking-picker-card--package-image{isolation:isolate;background:#000;border-color:#ffffff1a;justify-content:flex-end;height:100%;min-height:305px;padding:18px;position:relative;overflow:hidden}.booking-picker-card--package-image:before,.booking-picker-card--package-image:after{content:"";pointer-events:none;position:absolute;inset:0}.booking-picker-card--package-image:before{z-index:0;background:var(--booking-card-image) var(--booking-card-position,center) / var(--booking-card-size,cover) no-repeat;filter:grayscale();transition:filter .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);transform:scale(1.02)}.booking-picker-card--package-image:after{z-index:1;background:linear-gradient(#00000029 0%,#000000ad 58%,#000000f5 100%),linear-gradient(90deg,#000000a8,#0000002e);transition:background .42s cubic-bezier(.22,1,.36,1)}.booking-picker-card--package-image>*{z-index:2;position:relative}.booking-picker-card--package-image:hover{border-color:#ffb31380}.booking-picker-card--package-image:hover:before,.booking-picker-card--package-image:focus-visible:before{filter:grayscale(0);transform:scale(1.045)}.booking-picker-card--package-image:hover:after,.booking-picker-card--package-image:focus-visible:after{background:linear-gradient(#0000001a 0%,#00000094 58%,#000000f0 100%),linear-gradient(90deg,#0009,#0000001f)}.booking-picker-card--package-image p{color:#ffffffdb}.booking-picker-card--package-image .pill{color:#000;background:#ffb313;border-color:#ffb313}.booking-picker-card--trainer:hover{background:#0000002e;border-color:#ffb31385}.booking-picker-card strong{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-size:.92rem}.booking-picker-card p{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.4}.booking-picker-card__meta{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.booking-picker-card--trainer{text-align:left;isolation:isolate;justify-content:flex-end;align-items:stretch;gap:10px;height:100%;min-height:305px;padding:18px;position:relative;overflow:hidden}.booking-picker-card--trainer:after{content:"";z-index:-1;background:linear-gradient(#00000014 20%,#0000009e 62%,#000000f5 100%),linear-gradient(90deg,#00000073,#0000 58%);position:absolute;inset:0}.booking-picker-trainer__portrait{z-index:-2;color:#ffffff80;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.2rem;font-weight:700;display:flex;position:absolute;inset:0;overflow:hidden}.booking-picker-trainer__portrait img{object-fit:cover;object-position:center top;filter:grayscale();width:100%;height:100%;transition:filter .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);transform:scale(1.01)}.booking-picker-card--trainer:hover .booking-picker-trainer__portrait img,.booking-picker-card--trainer:focus-visible .booking-picker-trainer__portrait img{filter:grayscale(0);transform:scale(1.04)}.booking-picker-card--trainer strong{font-size:1.05rem}.booking-picker-card--trainer small{color:#ffffffc7;font-size:.75rem}.booking-picker-card--trainer p{color:#ffffffe0;margin:0;font-size:.78rem;line-height:1.35}.booking-prive-running-total{border-radius:var(--radius-sm);background:#ffb40014;border:1px solid #ffb40033;align-items:center;gap:12px;padding:12px 16px;display:flex}.booking-prive-running-total strong{color:var(--accent);margin-left:auto;font-size:1.2rem;font-weight:800}.booking-prive-running-total small{color:var(--text-muted);font-size:.78rem}.booking-trainer-hint{background:#ffb3130f;border:1px solid #ffb3132e;border-radius:14px;gap:2px;margin:10px 0 0;padding:10px 12px;display:grid}.booking-trainer-hint h3{color:#fff;margin:0;font-size:.82rem}.booking-trainer-hint p{color:var(--text-muted);margin:0;font-size:.76rem;line-height:1.24}.booking-step-panel{gap:12px;min-height:0;display:grid}.booking-step-panel--slots{align-content:start;gap:10px}.booking-step-panel--choice,.booking-step-panel--intake{grid-template-rows:auto minmax(0,1fr);height:100%}.booking-step-panel--choice .booking-picker-grid--packages,.booking-step-panel--choice .booking-picker-grid--trainers{min-height:100%}.booking-step-panel__header{gap:4px;display:grid}.booking-step-panel__header--sentence{margin-top:-12px;margin-bottom:4px}.booking-step-panel__header h3{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:.95rem}.booking-step-panel .booking-step-panel__header--sentence h3,.booking-step-panel .booking-step-panel__header--sentence p{color:#ffb313;max-width:760px;font-family:var(--font-heading);letter-spacing:0;text-transform:none;font-size:.92rem;font-weight:600;line-height:1.45}.booking-step-panel__header p{color:var(--text-muted);margin:0;font-size:.86rem;line-height:1.45}.booking-step-summary{background:#ffb4000f;border:1px solid #ffb4001f;border-radius:20px;gap:4px;padding:16px 18px;display:grid}.booking-step-summary span,.booking-step-summary small{color:var(--text-muted)}.booking-step-summary strong{font-size:1rem}.booking-step-summary--compact{margin-top:-2px}.booking-dialog-panel--trainer{align-content:start;gap:18px;display:grid}.booking-dialog-trainer{gap:16px;display:grid}.booking-dialog-trainer img{aspect-ratio:1.05;object-fit:cover;object-position:center top;border:1px solid #ffffff14;border-radius:22px;width:100%}.booking-dialog-trainer h3,.booking-dialog-availability h3,.booking-dialog-success h3{font-family:var(--font-heading);text-transform:uppercase;margin:12px 0 8px}.booking-dialog-trainer p,.booking-dialog-success p{color:var(--text-muted);margin:0;line-height:1.6}.booking-dialog-pricing{gap:12px;display:grid}.booking-dialog-price-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:20px;gap:6px;padding:16px;display:grid}.booking-dialog-price-card span,.booking-dialog-price-card small,.booking-dialog-availability__row span{color:var(--text-muted)}.booking-dialog-price-card strong{font-size:1.2rem}.booking-dialog-availability,.booking-dialog-availability__list{gap:10px;display:grid}.booking-dialog-availability__row{background:#ffffff08;border-radius:18px;gap:4px;padding:12px 14px;display:grid}.booking-slot-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.booking-slot-card{text-align:left;color:var(--text);background:#ffffff05;border:1px solid #ffffff14;border-radius:18px;gap:6px;padding:14px;display:grid}.booking-slot-card span{color:var(--text-muted);font-size:.88rem}.booking-slot-card__main{align-items:center;gap:8px;min-width:0;display:flex}.booking-slot-card__main strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.booking-slot-card--active{background:#ffb40014;border-color:#ffb4004d}.booking-slot-card--backup{background:#afafaf17;border-color:#afafaf5c}.booking-slot-card--backup-hint{border-color:#afafaf38}.booking-slot-card--disabled,.booking-slot-card:disabled{color:#bebebe70;opacity:.42;cursor:not-allowed;background:#96969609;border-color:#9696961f}.booking-slot-card--disabled svg,.booking-slot-card:disabled svg,.booking-slot-card--disabled span,.booking-slot-card:disabled span,.booking-slot-card--disabled strong,.booking-slot-card:disabled strong{color:#bebebe7a}.booking-slot-card .booking-slot-card__backup-label{font-family:var(--font-heading);color:#bebebee6;text-transform:uppercase;letter-spacing:.04em;background:#bebebe21;border-radius:999px;flex:none;padding:4px 7px 3px;font-size:.64rem;font-weight:700}.booking-phase-steps{align-items:center;gap:0;padding:14px 0 4px;display:none}.booking-slot-progress-banner{background:#ffb3130e;border:1px solid #ffb31329;border-radius:14px;grid-template-columns:auto auto auto auto minmax(160px,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.booking-step-panel--backup-mode .booking-step-panel__header--sentence p{color:#bebebef2}.booking-slot-progress-banner--backup{background:#afafaf0f;border-color:#afafaf33}.booking-slot-progress-banner>span{text-overflow:ellipsis;white-space:nowrap;color:#ffb313;letter-spacing:.06em;text-transform:uppercase;min-width:0;font-size:.78rem;font-weight:800;overflow:hidden}.booking-slot-progress-banner--backup>span:first-child{color:#ffb313b8}.booking-slot-progress-banner>.booking-slot-progress-banner__backup-label,.booking-slot-progress-banner .booking-slot-progress-banner__backup-count{color:#bebebef2}.booking-slot-progress-banner strong{color:#fff;font-family:var(--font-heading);letter-spacing:.05em;white-space:nowrap;font-size:.86rem}.booking-slot-progress-banner strong small{color:var(--text-muted);font-size:.82em}.booking-slot-progress-banner__track{border-radius:999px;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;height:3px;display:grid;overflow:hidden}.booking-slot-progress-banner__track span{border-radius:inherit;background:#ffffff1a;height:100%;transition:background .22s cubic-bezier(.22,1,.36,1),opacity .22s cubic-bezier(.22,1,.36,1);display:block}.booking-slot-progress-banner__track .is-primary.is-selected{background:#ffb313}.booking-slot-progress-banner__track .is-backup.is-selected{background:#bebebef2}.booking-slot-progress-banner__track .is-backup:not(.is-selected){background:#bebebe42}.booking-phase-step{border-radius:8px;align-items:center;gap:8px;padding:8px 14px;transition:background .2s;display:flex}.booking-phase-step__number{width:22px;height:22px;color:var(--text-muted);background:#ffffff1a;border-radius:50%;flex-shrink:0;place-items:center;font-size:.75rem;font-weight:800;display:grid}.booking-phase-step__label{color:var(--text-muted);white-space:nowrap;font-size:.84rem}.booking-phase-step__connector{background:#ffffff1f;flex-shrink:0;width:24px;height:1px}.booking-phase-step--active .booking-phase-step__number{color:var(--accent);background:#ffb40033}.booking-phase-step--active .booking-phase-step__label{color:var(--text);font-weight:600}.booking-phase-step--done .booking-phase-step__number{color:#3dd598;background:#3dd59833}.booking-phase-step--done .booking-phase-step__label{color:#3dd598}.booking-phase-step--idle .booking-phase-step__number{color:#78b4ffb3;background:#78b4ff26}.booking-phase-step--idle .booking-phase-step__label{color:#78b4ffcc;font-weight:600}.booking-phase-step--locked{opacity:.4}.booking-package-flow{grid-template-rows:minmax(0,1fr);gap:12px;height:100%;min-height:0;display:grid}.booking-accordion{background:#ffffff06;border:1px solid #ffffff14;border-radius:20px;margin:0;padding:0;transition:border-color .18s,background .18s;overflow:hidden}.booking-accordion--open{background:#ffb4000e;border-color:#ffb40038}.booking-accordion--complete{border-color:#3dd59833}.booking-participants-list .booking-accordion{background:0 0;border:0;border-radius:0}.booking-participants-list .booking-accordion--open,.booking-participants-list .booking-accordion--complete{background:0 0;border-color:#0000}.booking-accordion__header{width:100%;min-height:48px;color:var(--text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;padding:0 14px;font-weight:800;display:flex}.booking-accordion__header--static{cursor:default}.booking-accordion__header-copy{gap:2px;min-width:0;display:grid}.booking-accordion__header-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.booking-accordion__header-row strong{min-width:0}.booking-accordion__header strong,.booking-accordion__header small,.booking-accordion__role-pill{display:block}.booking-accordion__header small{color:var(--text-soft);font-size:.76rem;font-weight:700}.booking-accordion__role-pill{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;border:1px solid #ffffff1a;border-radius:999px;flex:none;padding:.28rem .65rem;font-size:.68rem;font-weight:800}.booking-accordion__role-pill--primary{color:#ffd15a;background:#ffb40014;border-color:#ffb4005c}.booking-accordion__header svg{color:var(--accent);flex:none;transition:transform .18s}.booking-accordion--open .booking-accordion__header svg{transform:rotate(180deg)}.booking-accordion--complete .booking-accordion__header svg{color:#74ebb9;transform:none}.booking-accordion__body{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .22s,opacity .18s;display:grid}.booking-accordion__body--open{opacity:1;grid-template-rows:1fr}.booking-accordion__body-inner{gap:12px;min-height:0;padding:0 14px;transition:padding .22s;display:grid;overflow:hidden}.booking-accordion__body--open .booking-accordion__body-inner{padding-bottom:14px}.booking-dialog-trainer--inline{grid-template-columns:118px minmax(0,1fr);align-items:start}.booking-dialog-trainer--inline img{aspect-ratio:1;border-radius:18px}.booking-dialog-trainer--inline small{color:var(--text-soft);margin-top:10px;display:block}.booking-intake-grid{grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);align-items:stretch;gap:14px;height:100%;min-height:0;display:grid}.booking-trainer-summary,.booking-participants-list{gap:10px;height:100%;min-height:0;display:grid}.booking-trainer-summary{background:0 0;border:0;border-radius:0;padding:0}.booking-dialog-header-progress{gap:10px;min-width:0;display:grid}.booking-dialog-header-summary{display:none}.booking-dialog-header-summary .selected-slot-summary{border-radius:18px;padding:10px 12px}.booking-trainer-summary__toggle{width:100%;min-height:44px;color:var(--text);text-align:left;pointer-events:none;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.booking-trainer-summary__toggle-copy{gap:2px;min-width:0;display:grid}.booking-trainer-summary__toggle-copy strong{font-size:.92rem}.booking-trainer-summary__toggle-copy small{color:var(--text-soft);font-size:.76rem;line-height:1.3}.booking-trainer-summary__toggle svg{color:var(--accent);flex:none;transition:transform .18s;display:none}.booking-trainer-summary--open .booking-trainer-summary__toggle svg{transform:rotate(180deg)}.booking-trainer-summary__body{opacity:1;grid-template-rows:1fr;height:100%;transition:grid-template-rows .22s,opacity .18s;display:grid}.booking-trainer-summary--open .booking-trainer-summary__body{opacity:1;grid-template-rows:1fr}.booking-trainer-summary__body-inner{gap:10px;height:100%;min-height:0;padding-top:0;transition:padding .22s;display:grid;overflow:hidden}.booking-trainer-summary--open .booking-trainer-summary__body-inner{padding-top:0}.booking-dialog-trainer--compact{isolation:isolate;background:#000;border-radius:18px;align-content:end;gap:0;height:100%;min-height:310px;padding:18px;position:relative;overflow:hidden}.booking-dialog-trainer--compact img{z-index:-2;aspect-ratio:auto;object-position:center top;border:0;border-radius:0;height:100%;min-height:0;position:absolute;inset:0}.booking-dialog-trainer--compact:after{content:"";z-index:-1;background:linear-gradient(#0000000a 18%,#00000094 58%,#000000f5 100%),linear-gradient(90deg,#0000009e,#0000001f);position:absolute;inset:0}.booking-dialog-trainer__content{z-index:1;gap:12px;display:grid;position:relative}.booking-dialog-trainer__copy{max-width:270px}.booking-dialog-trainer--compact h3{color:#fff;margin:10px 0 4px;font-size:1.15rem}.booking-dialog-trainer--compact p{color:#fff;font-size:.86rem;line-height:1.35}.booking-dialog-trainer--compact small{color:#ffffffb8;margin-top:6px;font-size:.76rem;line-height:1.3;display:block}.booking-requirement-list{gap:8px;display:grid}.booking-dialog-trainer--compact .booking-requirement-list{margin-top:2px}.booking-requirement-list div{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffb4001f;border:1px solid #ffb4002e;border-radius:14px;gap:2px;padding:9px 11px;display:grid}.booking-requirement-list strong{font-size:.86rem}.booking-requirement-list span{color:var(--text-muted);font-size:.78rem;line-height:1.3}.booking-dialog-availability__list--compact{gap:8px}.booking-dialog-availability__list--compact .booking-dialog-availability__row{border-radius:14px;padding:7px 10px;font-size:.78rem}.booking-participant-row{background:#ffffff06;border:1px solid #ffffff14;border-radius:18px;min-width:0;margin:0;padding:12px}.booking-participant-row--complete{border-color:#3dd59833}.booking-participant-row legend{color:var(--text);align-items:center;gap:8px;padding:0 6px;font-size:.82rem;font-weight:800;display:inline-flex}.booking-participant-row legend svg{color:#74ebb9}.booking-participant-row__fields{grid-template-columns:1fr;gap:12px;display:grid}.booking-participant-row__fields .form-field{gap:5px}.booking-participant-row__fields .form-field label{font-size:.78rem}.booking-participant-row__fields .form-input{box-sizing:border-box;border-radius:12px;height:43.8px;min-height:43.8px;padding:.65rem .75rem;line-height:1.2}.booking-participant-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:10px;display:flex}.booking-participant-nav>span{color:var(--text-muted);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:800}.booking-participant-nav__button{color:#fff;min-height:30px;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.68rem;font-weight:800;display:inline-flex}.booking-participant-nav__button:hover:not(:disabled),.booking-participant-nav__button:focus-visible:not(:disabled){color:#ffb313;border-color:#ffb313a3}.booking-participant-nav__button:disabled{opacity:.34;cursor:not-allowed}.booking-participants-progress{color:var(--text-muted);text-align:right;font-size:.84rem}.booking-waitlist-toggle{all:unset;cursor:pointer;color:var(--text-muted);text-underline-offset:3px;align-items:center;gap:6px;margin-top:12px;font-size:.84rem;text-decoration:underline;transition:color .15s;display:flex}.booking-waitlist-toggle:hover{color:var(--text)}.booking-waitlist-banner{background:#ffb3130f;border:1px solid #ffb3132e;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;display:flex}.booking-waitlist-banner h3{color:#fff;margin:0 0 2px;font-size:.82rem}.booking-waitlist-banner p{color:var(--text-muted);margin:0;font-size:.76rem;line-height:1.24}.booking-waitlist-toggle--button{color:#ffb313;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;border:1px solid #ffb313;flex:none;margin-top:0;padding:.42rem .66rem;font-size:.68rem;text-decoration:none}.booking-waitlist-toggle--button:hover{color:#000;background:#ffb313}.booking-waitlist-form{flex-direction:column;gap:4px;display:flex}.booking-waitlist-form__intro{color:var(--text-muted);margin-bottom:4px;font-size:.9rem}.form-input--textarea{resize:vertical;min-height:80px;line-height:1.5}.wap{margin-top:4px;overflow-x:auto}.wap__grid{grid-template-columns:72px repeat(7,1fr);gap:4px;min-width:340px;display:grid}.wap__corner{grid-column:1}.wap__day-header{color:var(--text-muted);text-align:center;justify-content:center;align-items:center;padding:4px 2px;font-size:.78rem;font-weight:600;display:flex}.wap__day-short{display:block}.wap__day-full{display:none}.wap__slot-label{color:var(--text-muted);white-space:nowrap;align-items:center;padding-right:8px;font-size:.78rem;display:flex}.wap__cell{cursor:pointer;background:#ffffff08;border:1.5px solid #ffffff14;border-radius:6px;height:36px;transition:background .14s,border-color .14s}.wap__cell:hover{background:#ffb4001a;border-color:#ffb4004d}.wap__cell--active{border-color:var(--accent);background:#ffb4002e}.wap__cell--active:hover{background:#ffb40047}@media (width>=520px){.wap__day-short{display:none}.wap__day-full{font-size:.72rem;display:block}}.form-field__optional{color:var(--text-muted);font-size:.8rem;font-weight:400}.form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.slot-progress{background:#ffb4000e;border:1px solid #ffb40024;border-radius:16px;gap:8px;padding:12px;display:grid}.slot-progress__header,.booking-slot-controls,.booking-slot-pager{align-items:center;gap:12px;display:flex}.slot-progress__header{color:var(--text-muted);justify-content:space-between}.slot-progress__bar{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.slot-progress__bar span{border-radius:inherit;background:linear-gradient(90deg, #ffb400b8, var(--accent));height:100%;transition:width .18s;display:block}.selected-slot-summary{background:#ffb4000e;border:1px solid #ffb40024;border-radius:16px;gap:10px;padding:12px;display:grid}.selected-slot-summary__toggle{color:inherit;text-align:left;background:0 0;border:0;gap:10px;padding:0;display:grid}.selected-slot-summary__header,.selected-slot-summary__hint{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.selected-slot-summary__copy{gap:2px;min-width:0;display:grid}.selected-slot-summary__copy strong,.selected-slot-summary__percent{color:#f5f0e8f0;font-size:.9rem}.selected-slot-summary__percent{align-items:center;gap:6px;display:inline-flex}.selected-slot-summary__copy small,.selected-slot-summary__hint small{color:var(--text-muted);font-size:.76rem}.selected-slot-summary__bar{height:6px}.selected-slot-summary--complete{background:#3dd59816;border-color:#3dd59842}.selected-slot-summary--complete .selected-slot-summary__copy strong,.selected-slot-summary--complete .selected-slot-summary__percent{color:#e7fff1}.selected-slot-summary--complete .selected-slot-summary__percent svg{color:#74ebb9}.selected-slot-summary--complete .slot-progress__bar{background:#3dd5981f}.selected-slot-summary--complete .slot-progress__bar span{background:linear-gradient(90deg,#3dd598c2,#74ebb9)}.selected-slot-summary__hint svg{color:var(--accent);flex:none;transition:transform .18s}.selected-slot-summary--open .selected-slot-summary__hint svg{transform:rotate(180deg)}.selected-slot-summary__panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .22s,opacity .18s;display:grid}.selected-slot-summary__panel--open{opacity:1;grid-template-rows:1fr}.selected-slot-summary__panel>.selected-slot-list{min-height:0;overflow:hidden}.selected-slot-summary__panel--open>.selected-slot-list{padding-top:2px}.booking-slot-toolbar{grid-template-columns:minmax(190px,auto) minmax(0,1fr);align-items:center;gap:10px;margin-top:2px;display:grid}.booking-slot-toolbar__date{min-width:0}.booking-slot-toolbar__date .form-field{max-width:190px}.booking-slot-toolbar__date-field{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;display:grid}.booking-slot-toolbar__date-field label{white-space:nowrap;margin:0;font-size:.74rem}.booking-slot-toolbar__date-field .form-input{min-height:38px;padding:8px 12px;font-size:.82rem}.booking-slot-pager{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;min-height:40px;display:flex}.booking-slot-pager span,.booking-slot-pager strong{color:var(--text-muted);white-space:nowrap;font-size:.84rem}.booking-slot-pager strong{color:#f5f0e8e6}.booking-slot-pager strong small{color:var(--text-muted);font-size:.92em}.booking-slot-pager__counts{align-items:center;gap:12px;display:flex}.booking-slot-pager__actions{align-items:center;gap:10px;display:flex}.booking-slot-pager__icon-button{color:#fff;background:0 0;border:0;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;display:inline-flex}.booking-slot-pager__icon-button:hover:not(:disabled),.booking-slot-pager__icon-button:focus-visible:not(:disabled){color:#ffb313;background:0 0;transform:translateY(-1px)}.booking-slot-pager__icon-button:disabled{color:#ffffff3d;cursor:not-allowed}.booking-slot-card svg{color:var(--accent)}.selected-slot-list{gap:7px;display:grid}.selected-slot-list--backup{border-top:1px solid #ffffff14;margin-top:10px;padding-top:10px}.selected-slot-list__label{color:#78b4ffcc;text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:.75rem;font-weight:700}.selected-slot-item--backup>span{color:#78b4ffb3}.selected-slot-item{color:#f5f0e8db;background:#3dd59814;border-radius:14px;grid-template-columns:24px minmax(0,1fr) 28px;align-items:center;gap:8px;padding:8px 10px;display:grid}.selected-slot-item>span{color:#74ebb9;background:#3dd59829;border-radius:999px;place-items:center;width:24px;height:24px;font-size:.76rem;font-weight:800;display:grid}.selected-slot-item strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.84rem;overflow:hidden}.selected-slot-item__remove{width:28px;height:28px;color:var(--text-muted);opacity:0;pointer-events:none;background:#ffffff0f;border:0;border-radius:999px;place-items:center;padding:0;transition:opacity .16s,transform .16s,background .16s,color .16s;display:grid;transform:scale(.92)}.selected-slot-item:hover .selected-slot-item__remove,.selected-slot-item:focus-within .selected-slot-item__remove{opacity:1;pointer-events:auto;transform:scale(1)}.selected-slot-item__remove:hover,.selected-slot-item__remove:focus-visible{color:var(--accent);background:#ffb4001f}@media (hover:none){.selected-slot-item__remove{opacity:1;pointer-events:auto;transform:scale(1)}}.booking-slot-layout{grid-template-columns:1fr;align-items:start;gap:0;min-height:0;display:grid}.booking-slot-overview,.booking-slot-options{gap:14px;min-height:0;display:grid}.booking-slot-floating-bar{display:none}.booking-slot-overview{background:#ffffff06;border:1px solid #ffffff14;border-radius:20px;padding:12px}.booking-slot-options__viewport{min-height:414px;position:relative;overflow:hidden}.booking-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px}.booking-slot-card{border-radius:14px;gap:4px;min-height:74px;padding:10px 12px}.booking-slot-card strong{font-size:.92rem}.booking-slot-card span{font-size:.82rem}.stripe-payment-card{background:linear-gradient(135deg,#635bff29,#00d4ff0f),#ffffff09;border:1px solid #635bff59;border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid}.stripe-payment-card svg{color:#a9a5ff}.stripe-payment-card span,.stripe-payment-card small{color:var(--text-muted);display:block}.stripe-payment-card strong{margin:4px 0;font-size:1.4rem;display:block}.stripe-payment-card__badge{text-align:right;background:#0a0d1952;border:1px solid #ffffff1f;border-radius:18px;justify-self:end;gap:4px;padding:12px 14px;display:grid}.stripe-payment-card__badge span{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.stripe-payment-card__badge strong{margin:0;font-size:.98rem}.booking-payment-fields,.booking-payment-progress{gap:14px;display:grid}.booking-payment-fields__compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.booking-payment-note{color:var(--text-muted);background:#ffffff08;border:1px solid #ffffff14;border-radius:18px;padding:14px 16px;font-size:.86rem;line-height:1.5}.booking-payment-progress__item{background:#ffffff06;border:1px solid #ffffff14;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;padding:14px 16px;display:grid}.booking-payment-progress__item strong,.booking-dialog-success__meta strong{display:block}.booking-payment-progress__item small,.booking-dialog-success__meta span{color:var(--text-muted)}.booking-payment-progress__item--active{background:#ffb40014;border-color:#ffb40059}.booking-payment-progress__item--done{background:#3dd59814;border-color:#3dd59833}.booking-payment-progress__index{width:30px;height:30px;color:var(--text-soft);border:1px solid #ffffff1f;border-radius:999px;place-items:center;font-size:.82rem;font-weight:700;display:grid}.button:disabled,.button-secondary:disabled{cursor:not-allowed;opacity:.46;transform:none}.booking-dialog-message{padding:18px}.booking-dialog-success{background:#3dd59814;border:1px solid #3dd59829;border-radius:20px;padding:18px}.booking-dialog-success__meta{gap:12px;margin-top:16px;display:grid}.booking-dialog-success__meta>div{background:#ffffff08;border-radius:16px;gap:4px;padding:14px 16px;display:grid}.booking-dialog-footer-button--icon{letter-spacing:.06em;min-height:36px;box-shadow:none;border-width:1px;justify-content:center;align-items:center;gap:7px;padding:.46rem .75rem;font-size:.76rem;display:inline-flex}.booking-dialog-footer-button.button-secondary{color:#fff;background:0 0;border-color:#ffffff6b}.booking-dialog-footer-button.button{color:#000;background:#ffb313c7}.stats-bar{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px;margin-top:22px;padding:36px;display:grid}.public-page .stats-bar{color:#000;background:#ffb313;border-color:#000;margin-top:24px}.stats-block h3,.admin-panel h3{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.08em;margin:0}.stats-number{font-family:var(--font-heading);color:var(--accent);margin:0 0 12px;font-size:3rem}.public-page .stats-number,.public-page .stats-label,.public-page .stats-bar .eyebrow{color:#000}.public-page .stats-bar .pill{color:#fff;background:#000;border-color:#000}.stats-label{color:var(--text-muted);margin:0;font-size:1.05rem}.level-pills{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.site-footer{text-align:center;color:var(--text-soft);padding:30px 0 36px;font-size:.88rem}.loading-state,.error-state,.empty-state{text-align:center;color:var(--text-muted);padding:48px}.admin-skeleton{background:#ffffff0f;border-radius:999px;display:block;position:relative;overflow:hidden}.admin-skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff24,#0000);animation:1.35s ease-in-out infinite admin-skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.admin-grid--scaffold .admin-card{pointer-events:none}.admin-card--scaffold{cursor:default}.admin-panel--scaffold{overflow:hidden}.admin-skeleton--fill{border-radius:inherit;width:100%;height:100%}.admin-skeleton--avatar{border-radius:999px;width:36px;height:36px}.admin-skeleton--title{width:min(220px,70%);height:20px}.admin-skeleton--meta{width:min(280px,86%);height:14px;margin-top:8px}.admin-skeleton--meta-wide{width:min(340px,96%)}.admin-skeleton--meter,.admin-skeleton--meter-large{border-radius:18px}.admin-skeleton--meter{width:120px;height:28px}.admin-skeleton--meter-large{width:100%;height:48px}.admin-skeleton--pill{width:74px;height:30px}.admin-skeleton--pill-wide{width:118px}.admin-skeleton--action{border-radius:14px;width:44px;height:44px}.admin-skeleton--copy{width:min(320px,74%);height:14px}.admin-skeleton--control{border-radius:14px;width:104px;height:42px}.admin-skeleton--control-wide{width:148px}.admin-skeleton--control-xl{width:188px}.admin-skeleton--range{width:190px;height:18px}.admin-skeleton--legend{width:220px;height:18px}.admin-skeleton--calendar-head,.admin-skeleton--calendar-cell{border-radius:16px;width:100%}.admin-skeleton--calendar-head{height:32px}.admin-skeleton--calendar-cell{height:74px}.admin-skeleton--calendar-time{width:100%;height:24px}.admin-skeleton--eyebrow{width:108px;height:12px}.admin-skeleton--hero{width:min(240px,78%);height:38px}.admin-skeleton--subtitle{width:72px;height:18px}.admin-skeleton--row-label{width:92px;height:14px}.admin-skeleton--row-value{width:112px;height:16px}.admin-skeleton--paragraph{border-radius:10px;width:100%;height:16px}.admin-skeleton--paragraph-short{width:72%}.admin-skeleton--panel-title{width:180px;height:22px;margin-bottom:20px}.admin-skeleton--stat{width:86px;height:30px}.admin-skeleton--tab{width:132px;height:38px}.admin-skeleton--time{width:54px;height:18px}.admin-skeleton--time-small{width:42px;height:14px;margin-top:6px}.calendar-scaffold{gap:18px;display:grid}.calendar-scaffold__toolbar{gap:14px;display:grid}.calendar-scaffold__toolbar-row,.calendar-scaffold__group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.calendar-scaffold__toolbar-row{justify-content:space-between;gap:14px 20px}.calendar-scaffold__grid{gap:12px;display:grid}.calendar-scaffold__header,.calendar-scaffold__row{grid-template-columns:48px repeat(7,minmax(0,1fr));gap:10px;display:grid}.calendar-scaffold__body{gap:10px;display:grid}.schedule-metric-card--scaffold{pointer-events:none}.trainer-id-card--scaffold .trainer-id-card__image{overflow:hidden}.booking-queue-card--scaffold{pointer-events:none}@keyframes admin-skeleton-shimmer{to{transform:translate(100%)}}.admin-layout{background:radial-gradient(circle at 100% 0,#ffb4001a,#0000 28%),#080808;grid-template-columns:88px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080808eb;border-right:1px solid #ffffff0f;flex-direction:column;gap:24px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0}.sidebar__brand{width:56px;height:56px;color:var(--accent);font-family:var(--font-heading);background:0 0;border:0;border-radius:18px;place-items:center;font-size:1.35rem;font-weight:900;display:grid}.sidebar__nav{flex-direction:column;gap:10px;display:flex}.sidebar-link{aspect-ratio:1;width:100%;color:var(--text-soft);background:0 0;border:0;border-radius:18px;place-items:center;padding:0;display:grid}.sidebar-link svg{font-size:1.32rem}.sidebar-link--active{color:var(--accent)}.sidebar__footer{flex-direction:column;gap:10px;margin-top:auto;display:flex}.icon-button{width:100%;height:52px;color:var(--text-muted);background:0 0;border-radius:16px;place-items:center;display:grid}.icon-button--accent{width:52px;color:var(--accent);background:0 0;border-color:#ffb4003d}.admin-main{padding:18px}.admin-layout--dashboard .admin-main{min-height:100vh}.admin-layout--dashboard .admin-topbar{display:none}.admin-topbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:26px;display:flex}.admin-topbar__controls{align-items:center;gap:8px;margin-left:auto;display:flex}.admin-topbar__action{justify-content:flex-end;align-items:center;display:flex}.push-toggle--active{color:var(--color-accent,#f5c300)}.admin-title-row{align-items:center;gap:10px;min-height:56px;display:flex}.admin-title-backlink{color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.admin-title-icon{color:inherit;flex:none}.admin-title{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:clamp(1.2rem,2.3vw,1.8rem);line-height:1}.admin-subtitle{color:var(--text-muted);margin:4px 0 0}.admin-panel{box-shadow:var(--shadow);background:#111111f5;border:1px solid #ffffff12;border-radius:28px;padding:24px}.admin-page{gap:18px;display:grid}.panel-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.admin-page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.admin-page-header--compact{margin-bottom:8px}.admin-page-header__lead{min-width:0}.admin-page-header__meta{margin-bottom:8px}.admin-page-header__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.08em;margin:0}.admin-page-header__controls{justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.admin-page-header__controls--search{flex:1}.panel-toolbar__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.search-field{width:100%;color:var(--text-muted);background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;align-items:center;gap:10px;padding:0 .95rem;display:inline-flex}.search-input,.form-input,.form-select,.form-textarea{box-sizing:border-box;width:100%;min-height:43.8px;color:var(--text);font:inherit;appearance:none;background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;padding:.95rem 1rem;line-height:1.2}.form-select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.form-select option{color:var(--text);background:#111}.search-input{background:0 0;border:0;min-width:0;padding-left:0;padding-right:0}.search-input:focus{outline:none}.search-field:focus-within{border-color:#ffb4003d}.form-textarea{resize:vertical;min-height:132px}.form-input:-webkit-autofill{-webkit-text-fill-color:var(--text);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff08}.form-input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff08}.form-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff08}.trainer-select{position:relative}.trainer-select__trigger,.trainer-select__option{width:100%;color:var(--text);background:#ffffff08;border:1px solid #ffffff14;border-radius:16px}.trainer-select__trigger{justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:.8rem 1rem;display:flex}.trainer-select__menu{z-index:5;background:#0a0a0afa;border:1px solid #ffffff14;border-radius:18px;gap:8px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 22px 50px #00000073}.trainer-select__option{justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:.75rem .9rem;display:flex}.trainer-select__option--active{background:#ffb40014;border-color:#ffb4003d}.trainer-select__value{text-align:left;align-items:center;gap:12px;min-width:0;display:flex}.trainer-select__value span{gap:2px;min-width:0;display:grid}.trainer-select__value strong,.trainer-select__value small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trainer-select__value small{color:var(--text-muted)}.trainer-select__avatar{object-fit:cover;object-position:center top;border:1px solid #ffffff14;border-radius:999px;flex:0 0 34px;width:34px;height:34px}.admin-grid{gap:14px;display:grid}.admin-card{border-bottom:1px solid #ffffff14;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 0;display:grid}.admin-card--interactive{cursor:pointer}.admin-card--interactive:focus-visible{outline-offset:6px;outline:1px solid #ffb4004d}.admin-card__title{margin:0;font-size:1.08rem;font-weight:700}.admin-card__lead{align-items:center;gap:12px;min-width:0;display:flex}.admin-card__info{min-width:0}.admin-card__summary{justify-content:flex-end;align-items:center;gap:14px;display:flex}.admin-card__avatar{object-fit:cover;object-position:center top;border:1px solid #ffffff14;border-radius:999px;flex:0 0 36px;width:36px;height:36px}.admin-card__meta{color:var(--text-muted);margin:3px 0 0}.admin-card__tags{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.status-badge{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;min-width:90px;padding:.5rem .8rem;font-size:.76rem;font-weight:800;display:inline-flex}.status-badge--active,.status-badge--confirmed{color:#74ebb9;background:#3dd5981f}.status-badge--lead,.status-badge--pending,.status-badge--new{color:var(--accent);background:#ffb4001f}.status-badge--inactive,.status-badge--cancelled{color:#ff9f9f;background:#ff6b6b1f}.status-badge--waitlist{color:#a0b4ff;background:#7896ff1f}.card-actions{justify-content:flex-end;gap:10px;display:flex}.card-action{color:var(--text);background:0 0;border:1px solid #ffffff14;border-radius:14px;padding:.75rem .95rem}.icon-button:hover{background:#ffffff0f}.icon-button--accent:hover{background:#ffb4001f}.card-action:hover{background:#ffffff0f}.sheet-overlay{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000073;border:0;outline:none;padding:0;position:fixed;inset:0}.sheet-overlay:focus,.sheet-overlay:focus-visible{outline:none}.sheet{z-index:31;background:#0d0d0dfa;border-left:1px solid #ffffff14;flex-direction:column;width:min(520px,100%);height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-30px 0 80px #00000073}.sheet__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:24px 24px 0;display:flex}.sheet__title{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:1.5rem}.sheet__subtitle{color:var(--text-muted);margin:10px 0 0}.sheet__body{flex:1;padding:24px;overflow:auto}.sheet__close{width:42px;height:42px;color:var(--text);background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px}.form-grid{gap:14px;display:grid}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field{gap:8px;display:grid}.form-field label{color:var(--text-muted);font-size:.9rem}.form-field--checkbox label{cursor:pointer;color:var(--text);align-items:center;gap:10px;font-size:.95rem;display:flex}.form-helper-text{color:var(--text-soft);font-size:.82rem;line-height:1.45}.form-input--invalid{border-color:#ff6b6b8c;box-shadow:0 0 0 1px #ff6b6b38}.sheet__footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:0 24px 24px;display:flex}.sheet__footer-group{align-items:center;gap:8px;display:flex}.sheet__footer-group--start{margin-right:auto}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:min(520px,100%);padding:36px}.login-card__heading{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:2rem}.login-card__copy{color:var(--text-muted);margin:14px 0 24px}.login-help{color:var(--text-soft);margin-top:18px;font-size:.92rem}.trainer-detail-shell{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.trainer-detail-shell--dashboard{display:block}.trainer-detail-shell--dashboard .trainer-profile-column,.trainer-detail-shell--dashboard .trainer-detail-main>.admin-panel:first-child{display:none}.trainer-detail-shell--dashboard .trainer-detail-main{min-height:calc(100vh - 36px)}.trainer-detail-shell--dashboard .trainer-detail-main>.admin-panel{flex-direction:column;min-height:calc(100vh - 36px);display:flex}.trainer-detail-shell--dashboard .booking-queue,.trainer-detail-shell--dashboard .availability-overview,.trainer-detail-shell--dashboard .exception-overview{flex:1}.trainer-detail-shell--dashboard .exception-calendar .fc{height:calc(100vh - 168px)!important}.trainer-profile-column{align-items:start;gap:20px;display:grid}.trainer-profile-column .trainer-id-card{position:sticky;top:18px}.trainer-id-card{background:radial-gradient(circle at top, #ffffff1f, transparent 40%), linear-gradient(180deg, var(--trainer-accent-from), var(--trainer-accent-to));border:1px solid #ffffff14;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 30px 60px #00000052}.trainer-id-card:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #ffffff24;position:absolute;inset:0}.trainer-id-card__image{aspect-ratio:.86;background:#ffffff0d}.trainer-id-card__image img,.trainer-id-card__image-fallback{width:100%;height:100%;display:block}.trainer-id-card__image img{object-fit:cover;object-position:center top}.trainer-id-card__image-fallback{font-family:var(--font-heading);color:#ffffffad;place-items:center;font-size:5rem;display:grid}.trainer-id-card__body{gap:20px;padding:22px;display:grid}.trainer-id-card__eyebrow{text-transform:uppercase;letter-spacing:.14em;color:#ffffffb8;font-size:.75rem}.trainer-id-card__header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.trainer-id-card__header-side{justify-items:end;gap:12px;display:grid}.trainer-id-card__nav{gap:8px;display:inline-flex}.trainer-id-card__nav-button{color:#ffffffd6;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;place-items:center;width:38px;height:38px;transition:transform .18s,background .18s,border-color .18s,opacity .18s;display:grid}.trainer-id-card__nav-button:hover:not(:disabled){color:var(--accent);background:#ffb4001a;border-color:#ffb4003d;transform:translateY(-1px)}.trainer-id-card__nav-button:disabled{opacity:.35;cursor:default}.trainer-id-card__name{font-family:var(--font-heading);text-transform:uppercase;overflow-wrap:anywhere;margin:0;font-size:clamp(1.4rem,2.6vw,1.95rem);line-height:.94}.trainer-id-card__level{color:#ffffffb8;margin:10px 0 0}.trainer-id-card__rows{gap:12px;display:grid}.trainer-id-card__row{border-top:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:16px;padding-top:12px;display:flex}.trainer-id-card__row span{color:#ffffff9e}.trainer-id-card__row strong{text-align:right;overflow-wrap:anywhere;max-width:56%}.trainer-id-card__section{gap:10px;display:grid}.trainer-id-card__section h3{margin:0;font-size:.98rem}.trainer-id-card__section p{color:#ffffffd1;margin:0;line-height:1.6}.trainer-id-card__tags{flex-wrap:wrap;gap:8px;display:flex}.trainer-packages-list{gap:8px;display:grid}.trainer-package-checkbox{cursor:pointer;color:var(--text);align-items:center;gap:10px;font-size:.92rem;display:flex}.trainer-package-checkbox input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:16px;height:16px}.trainer-detail-main{gap:20px;display:grid}.detail-list{gap:12px;display:grid}.detail-item{background:#ffffff08;border:1px solid #ffffff0f;border-radius:18px;padding:16px}.detail-item strong{margin-bottom:6px;display:block}.detail-item p{color:var(--text-soft);margin:0}.detail-item__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.schedule-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.schedule-metric-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:20px;gap:6px;padding:18px;display:grid}.schedule-metric-card span,.schedule-metric-card small{color:var(--text-muted)}.schedule-metric-card strong{font-size:1.7rem;line-height:1}.detail-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.detail-section-header h3{margin:0}.detail-section-header p{color:var(--text-muted);margin:8px 0 0}.detail-tabs-bar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.detail-tabs{background:#ffffff09;border:1px solid #ffffff0f;border-radius:999px;gap:8px;padding:6px;display:inline-flex}.detail-tab{color:var(--text-muted);letter-spacing:.04em;background:0 0;border:0;border-radius:999px;padding:.8rem 1.1rem;font-weight:700}.detail-tab--active{color:var(--accent);background:#ffb4001f;box-shadow:inset 0 0 0 1px #ffb40029}.detail-tab-action{border-radius:14px;flex:none;width:42px;height:42px}.detail-tab-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.detail-tab-actions .button,.detail-tab-actions .button-secondary{min-height:44px;padding:.72rem .95rem;font-size:.78rem}.booking-queue{gap:12px;display:grid}.booking-queue-card{background:linear-gradient(#ffffff08,#ffffff04),#0d0d0df5;border:1px solid #ffffff14;border-radius:22px;grid-template-columns:78px 3px minmax(0,1fr) auto;align-items:stretch;gap:16px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff0a,0 18px 34px #0000002e}.booking-queue-card--request{border-color:#ffb40024}.booking-queue-card__time{text-align:left;align-content:start;gap:3px;padding-top:6px;display:grid}.booking-queue-card__time strong{font-size:.95rem}.booking-queue-card__time span{color:var(--text-muted);font-size:.86rem}.booking-queue-card__accent{background:linear-gradient(180deg, var(--accent), #ffb4002e);border-radius:999px;align-self:stretch}.booking-queue-card--booking .booking-queue-card__accent{background:linear-gradient(#59a6ffeb,#59a6ff2e)}.booking-queue-card__body{gap:10px;min-width:0;display:grid}.booking-queue-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.booking-queue-card__header strong{margin-bottom:4px;font-size:1rem;display:block}.booking-queue-card__header p{color:var(--text-muted);margin:0;font-size:.92rem}.booking-queue-card__header-meta{align-items:center;gap:10px;display:flex}.booking-queue-card__status{min-width:82px}.booking-queue-card__contacts{color:var(--text-soft);flex-wrap:wrap;gap:10px 16px;font-size:.9rem;display:flex}.booking-queue-card__contacts span{align-items:center;gap:6px;display:inline-flex}.booking-queue-card__chips{flex-wrap:wrap;gap:8px;display:flex}.booking-chip{min-height:28px;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;background:#ffffff0b;border-radius:999px;align-items:center;gap:6px;padding:.35rem .7rem;font-size:.78rem;font-weight:700;display:inline-flex}.booking-chip--participants{color:#f8e0a4}.booking-queue-card__notes,.booking-queue-card__admin-note{border-radius:16px;margin:0;padding:12px 14px;line-height:1.55}.booking-queue-card__notes{color:#f5f0e8d6;background:#ffffff09}.booking-queue-card__admin-note{color:#ffc3c3;background:#ff6b6b14;border:1px solid #ff6b6b24}.booking-queue-card__actions{align-items:flex-start;gap:8px;padding-top:6px;display:flex}.booking-queue-action{width:42px;height:42px;color:var(--text);background:0 0;border:1px solid #ffffff14;border-radius:14px;place-items:center;transition:transform .18s,background .18s,border-color .18s,color .18s,opacity .18s;display:grid}.booking-queue-action:hover:not(:disabled){background:#ffffff0f;transform:translateY(-1px)}.booking-queue-action:disabled{opacity:.45;cursor:default}.booking-queue-action--confirm{color:#74ebb9;border-color:#3dd59838}.booking-queue-action--confirm:hover:not(:disabled){background:#3dd5981a}.booking-queue-action--cancel{color:#ffb7b7;border-color:#ff6b6b33}.booking-queue-action--cancel:hover:not(:disabled){background:#ff6b6b14}.booking-request-sheet__summary{background:#ffffff08;border:1px solid #ffffff0f;border-radius:18px;gap:6px;padding:14px 16px;display:grid}.booking-request-sheet__summary p{color:var(--text-muted);margin:0}.availability-overview{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.availability-day-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:22px;padding:18px}.availability-day-card header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.availability-day-card header h4{margin:0}.availability-day-card header span{color:var(--text-muted);font-size:.9rem}.availability-day-card__body{gap:10px;display:grid}.availability-chip{background:#ffffff0a;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.availability-chip strong,.availability-chip small{display:block}.availability-chip small{color:var(--text-muted);margin-top:4px}.availability-chip__actions{gap:8px;display:flex}.exception-overview{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:start;gap:18px;display:grid}.exception-calendar{min-width:0}.exception-list{gap:12px;display:grid}.checkbox-field{color:var(--text-soft);align-items:center;gap:10px;display:inline-flex}.calendar-shell{gap:14px;display:grid}.calendar-toolbar{flex-direction:column;gap:12px;display:flex}.calendar-toolbar__copy{margin:0}.calendar-toolbar__controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 20px;display:flex}.calendar-toolbar__left,.calendar-toolbar__right,.calendar-toolbar__calendar-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.calendar-nav-group{background:#ffb40014;border:1px solid #ffb4003d;border-radius:14px;display:inline-flex;overflow:hidden}.calendar-nav-button,.calendar-today-button,.calendar-view-toggle__button{color:var(--text-soft);text-transform:uppercase;letter-spacing:.05em;border:0}.calendar-nav-button{background:0 0;place-items:center;width:46px;height:40px;display:grid}.calendar-nav-button+.calendar-nav-button{border-left:1px solid #ffb40033}.calendar-today-button{background:#ffb40014;border:1px solid #ffb4003d;border-radius:14px;min-height:40px;padding:.72rem .95rem;font-weight:700}.calendar-range-label{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;font-size:.98rem}.calendar-view-toggle{border:1px solid #ffb4003d;border-radius:14px;display:inline-flex;overflow:hidden}.calendar-view-toggle__button{background:0 0;min-height:40px;padding:.72rem .95rem;font-weight:700}.calendar-view-toggle__button--icon{justify-content:center;align-items:center;min-width:52px;padding-inline:.82rem;display:inline-flex}.calendar-view-toggle__button+.calendar-view-toggle__button{border-left:1px solid #ffb4002e}.calendar-view-toggle__button--active{color:#fff2d3;background:#ffb40038}.trainer-filter{position:relative}.trainer-filter__badge{background:var(--accent);color:#140c00;border-radius:999px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.trainer-filter__dropdown{background:var(--surface-overlay,#1e1a14);border:1px solid var(--border-strong);z-index:50;border-radius:14px;flex-direction:column;gap:2px;min-width:190px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 40px #0006}.trainer-filter__clear{text-align:left;width:100%;color:var(--accent);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:none;border-radius:8px;margin-bottom:4px;padding:6px 10px;font-size:.75rem;font-weight:600;display:block}.trainer-filter__clear:hover{background:#ffb40014}.trainer-filter__option{cursor:pointer;color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:.875rem;transition:background .14s;display:flex}.trainer-filter__option input{display:none}.trainer-filter__option:hover{background:#ffffff0d}.trainer-filter__option--checked{color:#fff2d3;background:#ffb40014}.trainer-filter__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:26px;height:26px}.trainer-filter__avatar-fallback{background:var(--border-strong);width:26px;height:26px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.booking-event__compact-trainer{opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.calendar-legend{flex-wrap:wrap;gap:10px;display:flex}.legend-item{cursor:pointer;min-height:40px;color:var(--text-muted);font:inherit;background:#ffffff08;border:1px solid #ffb40029;border-radius:999px;align-items:center;gap:8px;padding:.58rem .9rem;font-size:.94rem;font-weight:600;transition:background .16s,border-color .16s,color .16s,opacity .16s;display:inline-flex}.legend-item--active{border-color:color-mix(in srgb, var(--legend-color) 42%, transparent);background:color-mix(in srgb, var(--legend-color) 16%, transparent);color:#fff2d3}.legend-item:not(.legend-item--active){opacity:.7}.legend-item:before{content:"";background:var(--legend-color);border-radius:999px;width:12px;height:12px}.fc{--fc-border-color:#ffffff14;--fc-page-bg-color:transparent;--fc-neutral-bg-color:#ffffff0a;--fc-list-event-hover-bg-color:#ffffff14;--fc-button-bg-color:#ffb40024;--fc-button-border-color:#ffb4003d;--fc-button-hover-bg-color:#ffb4003d;--fc-button-active-bg-color:#ffb40052;--fc-today-bg-color:#ffb40014;color:var(--text)}.calendar-shell .fc-theme-standard .fc-scrollgrid,.calendar-shell .fc-theme-standard td,.calendar-shell .fc-theme-standard th{border-color:#ffffff14}.fc .fc-toolbar-title{font-family:var(--font-heading);text-transform:uppercase;font-size:1.3rem}.fc .fc-button{text-transform:uppercase;letter-spacing:.06em;box-shadow:none;border-radius:12px}.fc .fc-timegrid-slot-label,.fc .fc-col-header-cell-cushion,.fc .fc-daygrid-day-number{color:var(--text-muted)}.fc .fc-event{border:0;border-radius:12px;padding:3px 5px}.calendar-shell--week .fc{--fc-border-color:#ffffff1a;--fc-neutral-bg-color:#ffffff05;--fc-now-indicator-color:#59a6fffa}.calendar-shell--week .fc .fc-toolbar{margin-bottom:20px}.calendar-shell--week .fc .fc-timegrid-slot,.calendar-shell--week .fc .fc-timegrid-axis,.calendar-shell--week .fc .fc-col-header-cell{background:linear-gradient(#ffffff04,#ffffff02),#090909e0}.calendar-shell--week .fc .fc-timegrid-slot-lane{transition:background-color .16s}.calendar-shell--week .fc .fc-timegrid-slot-lane:hover{background:#ffffff08}.calendar-shell--week .fc .fc-timegrid-axis-cushion,.calendar-shell--week .fc .fc-timegrid-slot-label-cushion,.calendar-shell--week .fc .fc-col-header-cell-cushion{color:#ffffff9e}.calendar-shell--week .fc .fc-col-header-cell-cushion{letter-spacing:.08em;text-transform:uppercase;padding:12px 0;font-size:.78rem;font-weight:700}.calendar-shell--week .fc .fc-timegrid-slot-label-cushion{letter-spacing:.04em;padding-right:10px;font-size:.78rem}.calendar-shell--week .fc .fc-timegrid-now-indicator-line{border-color:#59a6ffe6;animation:2.4s ease-in-out infinite calendar-now-line-pulse;box-shadow:0 0 14px #59a6ff59}.calendar-shell--week .fc .fc-timegrid-now-indicator-arrow{filter:drop-shadow(0 0 8px #59a6ff73);border-color:#59a6fff2;animation:2.4s ease-in-out infinite calendar-now-arrow-pulse}.calendar-shell--week .fc .fc-highlight{background:#ffb4001f;box-shadow:inset 0 0 0 1px #ffb40042}.calendar-shell--week .fc .fc-event.booking-selection-event{cursor:pointer;background:#ffb40024;border:1px dashed #ffb4006b;border-radius:12px;transition:background .16s,box-shadow .16s,border-color .16s;box-shadow:inset 0 0 0 1px #ffb4002e}.calendar-shell--week .fc .fc-event.booking-selection-event:hover{background:#ffb4002e;border-color:#ffb4008f;box-shadow:inset 0 0 0 1px #ffb4003d}.calendar-shell--week .fc .fc-event.booking-selection-event .fc-event-main{min-height:100%}.calendar-slot-actions{justify-content:center;align-items:center;gap:10px;height:100%;padding:8px;display:flex}.calendar-slot-action{width:32px;height:32px;color:var(--accent);cursor:pointer;background:#ffb4002e;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s;display:flex}.calendar-slot-action:hover{background:#ffb40052}.calendar-slot-action--block{color:#ff6060;background:#ff505024}.calendar-slot-action--block:hover{background:#ff505047}.booking-event--blocked{cursor:pointer;border-radius:6px;background:repeating-linear-gradient(-45deg,#78787826,#78787826 4px,#3c3c3c14 4px 8px)!important;border:1px solid #b4b4b433!important}.blocked-period-event{color:#c8c8c8b3;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;padding:4px 6px;font-size:.75rem;font-weight:600;display:flex;overflow:hidden}.block-dialog-backdrop{z-index:200;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.block-dialog{background:var(--surface,#1a1a1a);border:1px solid #ffffff14;border-radius:16px;flex-direction:column;gap:16px;min-width:280px;max-width:360px;padding:24px;display:flex;box-shadow:0 24px 56px #00000080}.block-dialog__title{margin:0;font-size:1rem;font-weight:700}.block-dialog__time{color:#ffffff8c;margin:0;font-size:.85rem}.block-dialog__toggle{cursor:pointer;align-items:center;gap:10px;font-size:.88rem;display:flex}.block-dialog__footer{justify-content:flex-end;gap:10px;display:flex}.button--danger{color:#ff6060;background:#ff50502e;border:1px solid #ff50504d}.calendar-shell--week .fc .fc-timegrid-col.fc-day-today{background:#ffffff04}.calendar-shell--week .fc .fc-event.booking-event{border:1px dashed color-mix(in srgb, var(--booking-accent,var(--accent)) 78%, #ffffff2e);background:linear-gradient(#ffffff0a,#ffffff03),#0c0e12f5;border-radius:14px;padding:0;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;overflow:hidden;box-shadow:inset 0 1px #ffffff08,0 10px 30px #0000004d}.calendar-shell--week .fc .fc-event.booking-event:hover{border-color:color-mix(in srgb, var(--booking-accent,var(--accent)) 90%, #fff3);background:linear-gradient(#ffffff0e,#ffffff04),#101218fa;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff0d,0 14px 32px #00000057}.calendar-shell--week .fc .fc-event.booking-event.booking-event--past{filter:grayscale(.9)saturate(.75);opacity:.58}.calendar-shell--week .fc .fc-event.booking-event.booking-event--backup{--booking-accent:#78b4ff}.calendar-shell--week .fc .fc-event-main{height:100%}.booking-event__content{color:#f6f1eb;align-content:center;gap:4px;min-height:100%;padding:10px 8px;display:grid}.booking-event__header{align-items:center;gap:8px;display:flex}.booking-event__avatar{border:1px solid color-mix(in srgb, var(--booking-accent,var(--accent)) 38%, #ffffff24);background:#ffffff0d;border-radius:999px;flex:0 0 28px;width:28px;height:28px;overflow:hidden;box-shadow:0 0 0 2px #ffffff04}.booking-event__avatar-image,.booking-event__avatar-fallback{width:100%;height:100%;display:block}.booking-event__avatar-image{object-fit:cover}.booking-event__avatar-fallback{color:#ffffffe0;place-items:center;font-size:.78rem;font-weight:700;display:grid}.booking-event__stack{gap:2px;min-width:0;display:grid}.booking-event__title{overflow-wrap:anywhere;font-size:.98rem;font-weight:700;line-height:1.15}.booking-event__meta{color:#ffffffb8;letter-spacing:.02em;font-size:.84rem;font-weight:500}.booking-event__players{color:#ffffff80;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:400;overflow:hidden}.booking-event__content--compact{padding:2px 6px;overflow:hidden}.booking-event__compact-row{white-space:nowrap;align-items:baseline;gap:5px;min-width:0;display:flex;overflow:hidden}.booking-event__compact-time{opacity:.75;flex-shrink:0;font-size:.73rem;font-weight:700}.booking-event__compact-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:600;overflow:hidden}.calendar-shell--week .fc .fc-event.booking-event.booking-event--short{border-radius:12px}.booking-event--short .booking-event__content{padding:6px 8px}.booking-event--short .booking-event__header{gap:7px}.booking-event--short .booking-event__avatar{flex-basis:24px;width:24px;height:24px}.booking-event--short .booking-event__stack{gap:1px}.booking-event--short .booking-event__title{font-size:.9rem;line-height:1.1}.booking-event--short .booking-event__meta{font-size:.78rem;line-height:1.1}.booking-list{gap:16px;display:grid}.booking-list--timeline{gap:42px}.booking-day-group{gap:18px;display:grid}.booking-day-group__title{color:#ffffff94;letter-spacing:.01em;margin:0;font-size:1rem;font-weight:600}.booking-day-group__entries{gap:14px;display:grid}.booking-list--cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),320px));justify-content:start;gap:18px}.booking-list-card{background:linear-gradient(#ffffff08,#ffffff04),#0a0a0aeb;border:1px solid #ffffff14;border-radius:26px;overflow:hidden;box-shadow:0 22px 48px #0000003d}.booking-list-card--backup{border-color:#78b4ff40}.booking-list-card--grid{grid-template-rows:minmax(0,1fr) auto;min-height:374px;display:grid}.booking-list-card--timeline{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.booking-list-card--timeline-with-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.booking-list-card__hitbox{cursor:pointer;grid-template-columns:112px minmax(0,1fr);gap:18px;padding:20px;display:grid}.booking-list-card__hitbox--grid{grid-template-columns:1fr;align-content:start;gap:16px;height:100%}.booking-list-card__hitbox--timeline{grid-template-columns:182px minmax(0,1fr) minmax(0,300px);align-items:center;gap:18px;padding:0}.booking-list-card__hitbox--timeline-actions{grid-template-columns:182px minmax(0,1fr) minmax(0,300px) auto}.booking-list-card__hitbox--timeline-no-notes{grid-template-columns:182px minmax(0,1fr)}.booking-list-card__hitbox--timeline-no-notes.booking-list-card__hitbox--timeline-actions{grid-template-columns:182px minmax(0,1fr) auto}.booking-list-card__hitbox:focus-visible{outline-offset:-2px;outline:2px solid #ffb400b3}.booking-list-card__time{align-content:start;gap:6px;display:grid}.booking-list-card__time strong{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;font-size:1.22rem}.booking-list-card__time span{color:var(--text-muted);font-size:.92rem}.booking-list-card__time--grid{border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 14px;min-height:54px;padding-bottom:12px;display:flex}.booking-list-card__time--grid strong{font-size:1.08rem}.booking-list-card__time--timeline{background:#ffffff12;border-radius:28px;align-content:center;justify-items:center;gap:2px;min-height:108px;padding:16px 18px;box-shadow:inset 0 1px #ffffff0a}.booking-list-card__time--timeline strong{color:#ffb400;font-size:1.18rem;line-height:1}.booking-list-card__body{gap:14px;min-width:0;display:grid}.booking-list-card__body--timeline{gap:10px;padding:10px 0}.booking-list-card__body--grid{grid-template-rows:minmax(92px,auto) auto;align-content:start}.booking-list-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.booking-list-card__header--grid{flex-direction:column;justify-content:flex-start;min-height:92px}.booking-list-card__header--timeline{align-items:center}.booking-list-card__header--grid .availability-tooltip{align-self:flex-start}.booking-list-card__header strong{margin-top:8px;font-size:1.12rem;display:block}.booking-list-card__header--grid>div{align-content:start;min-height:100%;display:grid}.booking-list-card__title-row{justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.booking-list-card__title-row .booking-list-card__eyebrow{flex:none;justify-content:flex-end}.booking-list-card__title-row strong{margin-top:0}.booking-list-card--timeline .booking-list-card__title-row{justify-content:flex-start;align-items:center}.booking-list-card__header p{color:var(--text-muted);margin:6px 0 0}.booking-list-card__stamp{max-width:220px;color:var(--text-muted);text-align:right;flex:none;font-size:.92rem;line-height:1.45}.booking-list-card__eyebrow{flex-wrap:wrap;gap:10px;display:flex}.booking-list-card__meta{color:var(--text-soft);flex-wrap:wrap;gap:10px 18px;font-size:.92rem;display:flex}.booking-list-card__meta span{align-items:center;gap:6px;display:inline-flex}.booking-list-card__meta--grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.booking-list-card__meta--timeline{gap:10px 20px}.booking-list-card__meta--timeline span{color:#ffffff8f}.booking-list-card__aside--timeline{justify-content:flex-end;align-self:stretch;align-items:center;display:flex}.booking-list-card__notes{color:#ffcf5a;margin:0;font-style:italic;line-height:1.55}.booking-list-card__notes--grid{min-height:76px}.booking-list-card__aside--timeline .booking-list-card__notes{color:#ffb400;background:#ffffff05;border-radius:0;width:100%;max-width:300px;padding:18px 20px;font-size:.95rem}.booking-list-card__players{overflow-wrap:anywhere}.booking-list-card__slots{background:#ffffff09;border-radius:18px;gap:10px;padding:14px 16px;display:grid}.booking-list-card__slots-label{color:#ffcf5a;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.booking-list-card__slots-list{gap:6px;display:grid}.booking-list-card__slot{color:#f5f0e8d6;margin:0;font-size:.92rem;line-height:1.45}.booking-list-card__slot--backup{color:#78b4ffbf;font-size:.84rem}.booking-detail__backup-label{color:#78b4ffcc;text-transform:uppercase;letter-spacing:.06em;margin-top:8px;font-size:.72rem;font-weight:700;display:block}.booking-list-card__row-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.booking-list-card__actions{justify-content:flex-end;gap:10px;padding:0 20px 20px;display:flex}.booking-list-card__actions--grid{padding:0}.booking-list-card__actions--icon{align-items:center}.booking-list-card__icon-action{justify-content:center;width:42px;height:42px;padding:0}.booking-list-card--timeline .booking-list-card__actions{padding:0}.booking-list-card__actions--timeline{justify-content:flex-end;align-self:center}.booking-list-card__footer{align-content:end;gap:14px;padding:0 20px 20px;display:grid}.booking-list-card__footer--with-actions{min-height:128px}.booking-list-card__notes-spacer{min-height:76px}.booking-list-card__actions-spacer{min-height:34px}.availability-tooltip{flex:none;position:relative}.availability-tooltip__trigger{color:#fff2d3;letter-spacing:.04em;text-transform:uppercase;background:#ffb40014;border:1px solid #ffb40033;border-radius:999px;min-height:40px;padding:.65rem .9rem;font-size:.82rem;font-weight:700}.availability-tooltip__card{z-index:8;background:radial-gradient(circle at 100% 0,#ffb40029,#0000 42%),#0e0e0efa;border:1px solid #ffffff14;border-radius:22px;width:min(340px,100vw - 56px);padding:18px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 26px 60px #0000006b}.availability-tooltip__header{gap:4px;padding-bottom:12px;display:grid}.availability-tooltip__header span{color:var(--text-muted);font-size:.9rem}.availability-tooltip__body{gap:10px;display:grid}.availability-tooltip__row{background:#ffffff0a;border-radius:16px;gap:3px;padding:10px 12px;display:grid}.availability-tooltip__row span{color:var(--text-muted);font-size:.84rem}.availability-tooltip__row strong{font-size:.94rem}.availability-tooltip__exceptions{gap:10px;padding-top:4px;display:grid}.availability-tooltip__exception{background:#ff6b6b17;border-radius:16px;gap:3px;padding:10px 12px;display:grid}.availability-tooltip__exception span{color:var(--text-muted);font-size:.84rem}.booking-detail{gap:18px;display:grid}.booking-detail__hero{background:radial-gradient(circle at 100% 0,#ffb4002e,#0000 36%),#ffffff0a;border-radius:24px;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px;display:flex}.booking-detail__hero-copy h3{margin:10px 0 6px;font-size:1.35rem}.booking-detail__hero-copy p{color:var(--text-muted);margin:0}.booking-detail__eyebrow{flex-wrap:wrap;gap:10px;display:flex}.booking-detail__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-detail__card,.booking-detail__section{background:#ffffff0a;border-radius:20px;gap:6px;padding:16px 18px;display:grid}.booking-detail__card span,.booking-detail__section span,.booking-detail__section label{color:var(--text-muted);font-size:.88rem}.booking-detail__card strong{font-size:1rem}.booking-detail__card p,.booking-detail__section p{color:var(--text-soft);margin:0;line-height:1.55}.booking-detail__multiline{white-space:pre-line}.court-picker{flex-direction:column;gap:6px;display:flex}.court-picker__item{color:var(--text-soft);font:inherit;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:10px;padding:.6rem .85rem;transition:background .16s,border-color .16s;display:flex}.court-picker__item:hover{background:#ffffff0f}.court-picker__item--selected{border-color:color-mix(in srgb, var(--accent) 42%, transparent);background:color-mix(in srgb, var(--accent) 16%, transparent);color:#fff2d3}.court-picker__dot{background:#ffffff40;border-radius:999px;flex:none;width:10px;height:10px}.court-picker__dot--available{background:#3dd598}.court-picker__dot--busy{background:#ff6b6b}.booking-detail__hint--warning{color:#ffb400}.booking-detail__hint-link{color:var(--accent);font-size:.88rem;text-decoration:underline;display:inline-block}.package-sessions-list{flex-direction:column;gap:4px;display:flex}.package-session{background:#ffffff08;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:7px 10px;display:flex}.package-session--current{background:#ffb40012;border-color:#ffb40033}.package-session--past{opacity:.45}.package-session__index{color:var(--text-muted);text-align:center;flex-shrink:0;width:16px;font-size:.72rem;font-weight:700}.package-session__info{color:var(--text);flex:1;font-size:.83rem}.package-groups{flex-direction:column;gap:16px;padding:16px 0;display:flex}.package-group{border:1px solid var(--border-strong);border-radius:16px;overflow:hidden}.package-group__header{border-bottom:1px solid var(--border-strong);background:#ffffff08;padding:12px 16px}.package-group__header h4{margin:0 0 2px;font-size:.9rem;font-weight:700}.package-group__header p{color:var(--text-muted);margin:0;font-size:.78rem}.package-group__sessions{flex-direction:column;gap:3px;padding:8px;display:flex}.detail-tab__badge{min-width:18px;height:18px;color:var(--accent);background:#ffb4002e;border-radius:999px;justify-content:center;align-items:center;margin-left:4px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.empty-state--compact{min-height:0;padding:12px 14px;font-size:.9rem}@keyframes calendar-now-line-pulse{0%,to{opacity:.72;box-shadow:0 0 10px #59a6ff3d}50%{opacity:1;box-shadow:0 0 18px #59a6ff80}}@keyframes calendar-now-arrow-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@media (width<=1080px){.package-grid,.stats-bar,.trainer-detail-shell,.booking-dialog-layout,.schedule-metrics,.exception-overview,.booking-detail__grid{grid-template-columns:1fr}.trainers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card{grid-template-columns:1fr}.card-actions{justify-content:flex-start}.trainer-profile-column,.trainer-profile-column .trainer-id-card{position:static}.calendar-toolbar__controls{align-items:flex-start}.hero-stack{min-height:0}}@media (width<=840px){.admin-layout{grid-template-columns:1fr}.sidebar{z-index:20;height:auto;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#080808f5;border-top:1px solid #ffffff14;border-bottom:0;border-right:0;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;position:fixed;inset:auto 0 0}.sidebar__brand{display:none}.sidebar__nav{flex-direction:row;flex:1;justify-content:space-evenly;gap:8px}.dialog-card-wrap{width:auto;inset:10px;transform:none}.dialog-card{height:100%;max-height:calc(100dvh - 20px)}.dialog-card__header,.dialog-card__body,.dialog-card__footer{padding-left:18px;padding-right:18px}.dialog-card__footer{flex-wrap:wrap}.dialog-card__header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.dialog-card__header-extra{grid-area:2/1/auto/-1;justify-self:stretch;width:100%}.dialog-card__close{grid-area:1/2}.booking-picker-grid--packages,.booking-picker-grid--trainers{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(320px,auto)}.booking-picker-card--package-image,.booking-picker-card--trainer{min-height:320px}.booking-slot-grid,.booking-slot-toolbar,.booking-slot-layout{grid-template-columns:1fr}.booking-slot-toolbar{align-items:stretch}.booking-slot-toolbar__date .form-field{max-width:none}.booking-slot-toolbar__date-field{grid-template-columns:1fr;align-items:stretch;gap:6px}.booking-slot-pager{justify-content:flex-start}.booking-slot-options__viewport{min-height:0}.booking-dialog-header-progress{gap:10px;width:100%}.booking-dialog-header-summary{display:block}.booking-dialog-header-summary .selected-slot-summary{border-radius:18px;padding:10px 12px}.booking-slot-pager--desktop,.booking-slot-overview{display:none}.booking-slot-floating-bar{z-index:6;padding:10px 18px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(#0a0a0a00,#0a0a0aeb 22%,#0a0a0afa);margin:10px -18px -18px;display:block;position:sticky;bottom:-18px}.booking-slot-pager--floating{background:#161616f5;border:1px solid #ffb4001f;border-radius:18px;justify-content:space-between;min-height:56px;padding:10px 14px;box-shadow:0 16px 28px #00000047}.booking-slot-pager--floating .booking-slot-pager__counts{min-width:0}.booking-slot-pager--floating .booking-slot-pager__counts span,.booking-slot-pager--floating .booking-slot-pager__counts strong{font-size:.82rem}.booking-package-flow{padding-bottom:84px}.booking-dialog-footer-button--icon{border-radius:12px;min-width:38px;min-height:38px;padding:0}.booking-dialog-footer-button--icon span{display:none}.dialog-card__footer{justify-content:flex-end;align-items:center;gap:10px}.dialog-card__footer>*{flex:none}.booking-dialog-footer-progress{flex:220px;gap:8px;min-width:190px;max-width:100%;margin-right:auto}.booking-dialog-footer-progress__copy{gap:6px}.booking-dialog-footer-progress__copy span,.booking-dialog-footer-progress__copy strong{font-size:.68rem}.booking-intake-grid,.booking-participant-row__fields,.booking-payment-fields__compact{grid-template-columns:1fr}.booking-waitlist-banner{flex-direction:column;align-items:flex-start}.booking-step-panel--intake,.booking-intake-grid,.booking-trainer-summary,.booking-trainer-summary__body,.booking-trainer-summary__body-inner,.booking-dialog-trainer--compact{height:auto}.stripe-payment-card{grid-template-columns:1fr;justify-items:start}.stripe-payment-card__badge{text-align:left;justify-self:start}.booking-trainer-summary{position:static}.booking-trainer-summary__toggle{pointer-events:auto}.booking-trainer-summary__toggle svg{display:block}.booking-trainer-summary__body{opacity:0;grid-template-rows:0fr}.booking-trainer-summary--open .booking-trainer-summary__body{opacity:1;grid-template-rows:1fr}.booking-trainer-summary__body-inner,.booking-trainer-summary--open .booking-trainer-summary__body-inner{padding-top:0}.booking-dialog-trainer--compact{min-height:260px}.form-grid--three,.booking-dialog-trainer--inline{grid-template-columns:1fr}.booking-stepper{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.booking-step{flex:1 1 0;justify-content:center;min-width:0;padding:0 8px}.booking-step__label{white-space:normal;overflow-wrap:anywhere;text-align:center;min-width:0}.booking-list-card__hitbox{grid-template-columns:1fr}.booking-list-card__hitbox--timeline,.booking-list-card__hitbox--timeline-no-notes{grid-template-columns:1fr;gap:14px}.booking-list-card__time--timeline{justify-items:start;width:fit-content;min-width:132px;min-height:0}.booking-list-card__body--timeline{padding:0}.booking-list-card__header--timeline{align-items:flex-start}.booking-list-card__aside--timeline{justify-content:flex-start}.booking-list-card__aside--timeline .booking-list-card__notes{max-width:none}.booking-list-card--timeline .booking-list-card__actions{padding-left:0}.booking-list-card__meta--grid{grid-template-columns:1fr}.booking-list-card__header,.booking-detail__hero{flex-direction:column}.booking-list-card__stamp{text-align:left;max-width:none}.booking-list-card__title-row{flex-direction:column}.booking-list-card__title-row .booking-list-card__eyebrow{justify-content:flex-start}.booking-list-card__actions{flex-wrap:wrap;justify-content:stretch}.booking-list-card__actions>*{flex:100%}.booking-list-card__actions--icon{justify-content:flex-end}.booking-list-card__actions--icon>*{flex:none}.sidebar-link{aspect-ratio:auto;width:52px;min-width:52px;height:52px}.sidebar__footer{flex-direction:row;gap:8px;margin-top:0}.sidebar__footer .icon-button{width:52px;height:52px}.admin-main{padding:18px 18px calc(104px + env(safe-area-inset-bottom))}}@media (width<=720px){.admin-session-pill{display:none}.booking-picker-grid--packages,.booking-picker-grid--trainers{grid-template-columns:1fr;grid-auto-rows:minmax(300px,auto)}.booking-picker-card--package-image,.booking-picker-card--trainer{min-height:300px}.booking-picker-card--trainer p{font-size:.76rem}.site-header__links .button-secondary{min-height:unset;padding:.4rem .75rem;font-size:.75rem}.site-header__inner,.panel-toolbar,.admin-page-header,.admin-topbar,.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-toolbar__right{flex-wrap:nowrap;justify-content:space-between;gap:8px;width:100%}.calendar-toolbar__right>*{flex:0 auto}.calendar-toolbar__right .calendar-view-toggle{min-width:0}.calendar-toolbar__right .calendar-view-toggle__button{padding-inline:.78rem}.site-header__inner{padding:16px 0}.site-header__links{flex-wrap:wrap;justify-content:flex-end;gap:10px;width:100%}.site-header__links .button-secondary{text-align:center;width:100%}.admin-session-pill,.ghost-link{font-size:.86rem}.mobile-login-cta{display:none}.hero-section{min-height:100svh;padding:132px 0 56px}.hero-stack{min-height:0}.hero-content{padding:34px 0 38px}.hero-cta{flex-direction:column;align-items:stretch}.hero-service-list{gap:6px;font-size:clamp(.5rem,2.35vw,.66rem)}.hero-service-list span+span:before{width:5px;height:5px}.public-page .button,.public-page .button-secondary{width:100%}.public-page .section-title{font-size:clamp(2.25rem,13vw,3.35rem)}.trainers-grid,.form-grid--two{grid-template-columns:1fr}.availability-tooltip__card{width:min(320px,100vw - 72px);left:0;right:auto}.package-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.package-stat{border-bottom:0;border-right:1px solid #ffffff14;padding:18px 6px 16px}.package-stat:last-child{border-right:0}.package-stat__value{white-space:nowrap;letter-spacing:.01em;font-size:clamp(1rem,5.7vw,1.55rem)}.package-stat__label{letter-spacing:.16em;margin-top:8px;font-size:.48rem}.hero-section{padding:128px 0 52px}.hero-copy{max-width:330px;padding:0;font-size:1rem;line-height:1.6}.package-grid{margin-top:50px}.trainer-card{min-height:420px}.trainer-card__body,.stats-bar,.package-detail{padding:20px}.package-detail p{text-align:center}.stats-number{font-size:2.5rem}.admin-main{padding:18px}.admin-topbar{margin-bottom:18px}.admin-topbar__action{justify-content:flex-end;width:100%}.admin-topbar__action .icon-button--accent{width:48px;height:48px}.admin-page-header{margin-bottom:14px}.admin-page-header__controls{width:100%}.search-field{min-height:52px}.admin-card{gap:14px;padding:16px 0}.admin-card__tags{gap:10px}.card-actions{width:100%}.card-action{flex:1;justify-content:center}.booking-queue-card{grid-template-columns:1fr;gap:12px}.booking-queue-card__time,.booking-queue-card__actions{padding-top:0}.booking-queue-card__accent{min-height:3px}.booking-queue-card__header,.booking-queue-card__actions{flex-wrap:wrap}.booking-queue-card__actions{justify-content:flex-start}.detail-layout,.calendar-shell{gap:16px}.calendar-toolbar{gap:10px}.calendar-view-toggle__button--mobile-hidden{display:none}.fc .fc-toolbar{gap:10px}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1rem}.fc .fc-toolbar-chunk{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.fc .fc-toolbar-title{text-align:center;font-size:1.05rem}.sheet{border-left:0;width:100%}.sheet__header,.sheet__body,.sheet__footer,.login-card{padding-left:18px;padding-right:18px}.sheet__footer{padding-bottom:calc(18px + env(safe-area-inset-bottom));flex-wrap:wrap}.sheet__footer>*{flex:calc(50% - 6px);justify-content:center}.sheet__footer>.sheet__footer-group{flex-basis:100%}.sheet__footer-group>*{flex:1 1 0;justify-content:center}}@media (width<=540px){.container{width:min(100% - 24px,1180px)}.hero-title{font-size:clamp(2.8rem,16vw,4.2rem)}.section{padding:36px 0}.trainer-card{min-height:360px}.stats-bar{padding:18px}.button,.button-secondary,.button-danger{padding:.82rem 1.1rem;font-size:.82rem}.admin-main{padding:16px 16px calc(100px + env(safe-area-inset-bottom))}.admin-title{font-size:2rem}.admin-subtitle{font-size:.94rem}.sidebar{padding-left:10px;padding-right:10px}.sidebar__nav{gap:4px}.sidebar-link,.sidebar__footer .icon-button{width:46px;min-width:46px;height:46px}.sheet__footer>*{flex-basis:100%}.sheet__footer-group>*{flex:100%;justify-content:center}}.stats-page{gap:20px;display:grid}.stats-period-toggle{background:#ffffff09;border:1px solid #ffffff0f;border-radius:999px;gap:6px;padding:6px;display:inline-flex}.stats-period-btn{color:var(--text-soft);letter-spacing:.04em;background:0 0;border:0;border-radius:999px;padding:8px 18px;font-size:.84rem;font-weight:600;transition:background .16s,color .16s}.stats-period-btn--active{color:var(--accent);background:#ffb31324}.stats-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stats-kpi{background:#111111f5;border:1px solid #ffffff12;border-radius:24px;gap:8px;padding:24px;display:grid}.stats-kpi--accent{background:linear-gradient(145deg,#ffb31312 0%,#111111f5 60%);border-color:#ffb31333}.stats-kpi--skeleton{min-height:120px}.stats-kpi__header{align-items:center;gap:7px;display:flex}.stats-kpi__icon{color:var(--text-soft);flex-shrink:0}.stats-kpi--accent .stats-kpi__icon{color:var(--accent)}.stats-kpi__label{color:var(--text-soft);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;line-height:1.2}.stats-kpi__value{font-family:var(--font-heading);color:var(--text);font-size:clamp(2rem,3.2vw,3rem);line-height:1}.stats-kpi--accent .stats-kpi__value{color:var(--accent)}.stats-kpi__trend{align-items:center;gap:4px;font-size:.76rem;font-weight:600;display:inline-flex}.stats-kpi__trend--up{color:var(--success)}.stats-kpi__trend--down{color:var(--danger)}.stats-kpi__trend--neutral{color:var(--text-soft);font-weight:400}.stats-secondary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.stats-secondary-card{background:#ffffff06;border:1px solid #ffffff0e;border-radius:20px;gap:6px;padding:20px;display:grid}.stats-secondary-card--skeleton{min-height:100px}.stats-secondary-card__icon{color:var(--text-soft)}.stats-secondary-card__value{font-family:var(--font-heading);color:var(--text);font-size:1.7rem;line-height:1}.stats-secondary-card__label{color:var(--text-muted);font-size:.8rem;font-weight:600}.stats-secondary-card__sub{color:var(--text-soft);font-size:.72rem}.stats-trainer-section{background:#111111f5;border:1px solid #ffffff12;border-radius:24px;gap:16px;padding:22px 24px;display:grid}.stats-section-header{color:var(--text-soft);align-items:center;gap:8px;display:flex}.stats-section-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.16em;color:var(--text-soft);margin:0;font-size:.82rem;font-weight:700}.stats-trainer-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.stats-trainer-row{border-radius:14px;grid-template-columns:28px 1fr auto auto;align-items:center;gap:14px;padding:12px 14px;transition:background .14s;display:grid}.stats-trainer-row:hover{background:#ffffff09}.stats-trainer-row--skeleton{background:0 0;min-height:46px}.stats-trainer-rank{font-family:var(--font-heading);color:var(--text-soft);text-align:center;font-size:.82rem}.stats-trainer-list li:first-child .stats-trainer-rank{color:var(--accent)}.stats-trainer-name{font-size:.92rem;font-weight:600}.stats-trainer-stat{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:5px;min-width:100px;font-size:.82rem;display:inline-flex}.stats-footnote{color:var(--text-soft);align-items:flex-start;gap:6px;margin:0;font-size:.72rem;line-height:1.55;display:flex}.stats-footnote svg{flex-shrink:0;margin-top:2px}@media (width<=1080px){.stats-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-secondary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=620px){.stats-kpi-grid{grid-template-columns:1fr}.stats-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-trainer-row{grid-template-rows:auto auto;grid-template-columns:24px 1fr}.stats-trainer-stat{grid-column:2;justify-content:flex-start;min-width:0}.stats-trainer-stat+.stats-trainer-stat{display:none}}:root{--ui-radius-2xs:10px;--ui-radius-xs:12px;--ui-radius-sm:16px;--ui-radius-md:20px;--ui-radius-lg:24px;--ui-radius-xl:32px;--ui-shadow-soft:0 20px 50px #0000002e;--ui-shadow-deep:0 28px 80px #00000047}.ui-demo-page{background:radial-gradient(circle at 0 0,#ffb4002e,#0000 22%),radial-gradient(circle at 100% 0,#ffffff0f,#0000 16%),linear-gradient(#131313 0%,#070707 30%,#050505 100%);min-height:100vh}.ui-demo-hero{padding:80px 0 32px}.ui-demo-hero__stack{gap:18px;max-width:760px;display:grid}.ui-demo-hero__eyebrow,.ui-demo-section__eyebrow,.ui-map-view__eyebrow,.ui-calendar__eyebrow{color:var(--accent);letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.ui-demo-hero__title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(2.7rem,7vw,5.2rem);line-height:.96}.ui-demo-hero__copy,.ui-demo-section__copy{color:var(--text-muted);margin:0;line-height:1.65}.ui-demo-grid{gap:18px;display:grid}.ui-demo-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-demo-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-demo-stack,.ui-demo-section__stack{gap:14px;display:grid}.ui-demo-section{padding:24px 0}.ui-demo-section__header{gap:10px;margin-bottom:18px;display:grid}.ui-demo-section__title{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:clamp(1.4rem,4vw,2.2rem)}.ui-demo-inline,.ui-demo-chip-row,.ui-demo-radius-row,.ui-demo-button-row{flex-wrap:wrap;gap:12px;display:flex}.ui-demo-radius-row{align-items:end}.ui-demo-surface{gap:12px;min-height:100%;display:grid}.ui-demo-form-row{grid-template-columns:minmax(0,260px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.ui-button,.ui-icon-button,.ui-chip,.ui-dropdown__trigger,.ui-dropdown__option,.ui-calendar-toggle__button,.ui-segmented__button,.ui-list-item{transition:transform .18s,border-color .18s,background .18s,box-shadow .18s,color .18s}.ui-button{letter-spacing:.07em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:800;display:inline-flex}.ui-button span{white-space:nowrap}.ui-button--block{width:100%}.ui-button--sm{min-height:40px;padding:0 16px;font-size:.8rem}.ui-button--lg{min-height:54px;padding:0 24px;font-size:.95rem}.ui-button--primary{background:linear-gradient(135deg, var(--accent) 0%, #f79400 100%);color:#140c00;box-shadow:0 18px 40px #ffb40029}.ui-button--secondary{color:var(--accent);background:#ffb40014;border-color:#ffb40047}.ui-button--danger{color:#ffb6b6;background:#ff6b6b14;border-color:#ff6b6b4d}.ui-button--ghost{color:var(--text);background:#ffffff08;border-color:#ffffff14}.ui-button:hover,.ui-icon-button:hover,.ui-chip:hover,.ui-dropdown__trigger:hover,.ui-dropdown__option:hover,.ui-segmented__button:hover,.ui-calendar-toggle__button:hover,.ui-list-item:hover{transform:translateY(-1px)}.ui-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.ui-icon-button{border-radius:var(--ui-radius-sm);width:48px;height:48px;color:var(--text);cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;place-items:center;display:inline-grid}.ui-icon-button--accent{color:var(--accent);background:#ffb4001f;border-color:#ffb40047}.ui-icon-button--sm{width:40px;height:40px}.ui-icon-button--lg{width:54px;height:54px}.ui-card{min-width:0;box-shadow:var(--ui-shadow-soft);border:1px solid #ffffff14;gap:14px;display:grid}.ui-card--surface{background:linear-gradient(#ffffff08,#ffffff04),#0a0a0aeb}.ui-card--accent{background:radial-gradient(circle at 100% 0,#ffb40029,#0000 38%),#0c0c0cf2;border-color:#ffb40029}.ui-card--outline{background:#ffffff05}.ui-card--interactive{cursor:pointer}.ui-card--interactive:hover{box-shadow:var(--ui-shadow-deep);transform:translateY(-2px)}.ui-card--radius-sm{border-radius:var(--ui-radius-sm)}.ui-card--radius-md{border-radius:var(--ui-radius-md)}.ui-card--radius-lg{border-radius:var(--ui-radius-lg)}.ui-card--radius-xl{border-radius:var(--ui-radius-xl)}.ui-card--padding-sm{padding:16px}.ui-card--padding-md{padding:20px}.ui-card--padding-lg{padding:28px}.ui-card__header{justify-content:space-between;align-items:start;gap:14px;display:flex}.ui-card__title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1rem}.ui-card__description{color:var(--text-muted);margin:0;line-height:1.55}.ui-pill,.ui-tag{letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:8px;font-weight:800;display:inline-flex}.ui-pill{border-radius:999px;padding:.52rem .85rem;font-size:.72rem}.ui-pill--accent{color:var(--accent);background:#ffb4001f}.ui-pill--success{color:#74ebb9;background:#3dd5981f}.ui-pill--danger{color:#ffb6b6;background:#ff6b6b1f}.ui-pill--neutral{color:var(--text-muted);background:#ffffff0f}.ui-chip{min-height:40px;color:var(--text);cursor:pointer;background:#ffffff09;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.ui-chip--selected{color:#fff1c9;background:#ffb40014;border-color:#ffb4004d}.ui-chip--success.ui-chip--selected{background:#3dd5981a;border-color:#3dd59840}.ui-tag{border-radius:var(--ui-radius-xs);width:fit-content;color:var(--text-muted);background:#ffffff0f;padding:.4rem .65rem;font-size:.68rem}.ui-tag--accent{color:#fff1c9;background:#ffb4001f}.ui-tag--neutral{background:#ffffff0f}.ui-switch{border-radius:var(--ui-radius-md);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.ui-switch__copy{gap:4px;display:grid}.ui-switch__copy strong{font-size:.94rem}.ui-switch__copy small{color:var(--text-muted);line-height:1.4}.ui-switch__track{background:#ffffff14;border-radius:999px;flex:none;width:54px;height:32px;position:relative;box-shadow:inset 0 1px #ffffff0a}.ui-switch__thumb{background:#fff8e9;border-radius:999px;width:24px;height:24px;transition:transform .18s,background .18s;position:absolute;top:4px;left:4px}.ui-switch--checked{background:#ffb4000f;border-color:#ffb40038}.ui-switch--checked .ui-switch__track{background:#ffb4002e}.ui-switch--checked .ui-switch__thumb{background:var(--accent);transform:translate(22px)}.ui-segmented,.ui-calendar-toggle{background:#ffffff06;border:1px solid #ffffff14;border-radius:999px;width:fit-content;max-width:100%;display:inline-flex;overflow:auto hidden}.ui-segmented__button,.ui-calendar-toggle__button{min-height:42px;color:var(--text-muted);letter-spacing:.05em;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:800;display:inline-flex}.ui-segmented__button+.ui-segmented__button,.ui-calendar-toggle__button+.ui-calendar-toggle__button{border-left:1px solid #ffffff14}.ui-segmented__button--active,.ui-calendar-toggle__button--active{color:var(--accent);background:#ffb40014}.ui-dropdown{min-width:0;position:relative}.ui-dropdown__trigger{border-radius:var(--ui-radius-md);width:100%;min-height:56px;color:var(--text);text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.ui-dropdown__trigger-value,.ui-dropdown__option-copy{gap:2px;min-width:0;display:grid}.ui-dropdown__trigger-value small,.ui-dropdown__option-copy small{color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.ui-dropdown__option-copy span{color:var(--text-muted);font-size:.86rem;line-height:1.4}.ui-dropdown__menu{z-index:12;border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-deep);background:radial-gradient(circle at 100% 0,#ffb40024,#0000 40%),#0e0e0efa;border:1px solid #ffffff14;gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 12px);left:0;right:0}.ui-dropdown__option{border-radius:var(--ui-radius-sm);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#ffffff06;border:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.ui-dropdown__option--active{background:#ffb40014;border-color:#ffb40038}.ui-scroll-area{border-radius:var(--ui-radius-lg);background:#ffffff06;border:1px solid #ffffff14;min-width:0;overflow:hidden}.ui-scroll-area__viewport{scrollbar-width:thin;scrollbar-color:#ffb40080 #ffffff14;gap:10px;padding:14px;display:grid;overflow:auto}.ui-scroll-area__viewport::-webkit-scrollbar{width:10px;height:10px}.ui-scroll-area__viewport::-webkit-scrollbar-track{background:#ffffff0d;border-radius:999px}.ui-scroll-area__viewport::-webkit-scrollbar-thumb{background:linear-gradient(#ffb400e0,#f79400e0) padding-box padding-box;border:2px solid #0000;border-radius:999px}.ui-list-view{gap:14px;display:grid}.ui-list-item{border-radius:var(--ui-radius-lg);background:linear-gradient(#ffffff08,#ffffff04),#0a0a0aeb;border:1px solid #ffffff14;grid-template-columns:124px minmax(0,1fr) auto;align-items:start;gap:18px;padding:18px;display:grid}.ui-list-item__time{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:1rem}.ui-list-item__body{gap:8px;display:grid}.ui-list-item__body h4{margin:0;font-size:1.02rem}.ui-list-item__body p{color:var(--text-muted);margin:0;line-height:1.55}.ui-list-item__eyebrow{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.ui-list-item__tags{flex-wrap:wrap;gap:8px;display:flex}.ui-list-item__trailing{align-items:center;display:flex}.ui-map-view,.ui-calendar{gap:16px;min-width:0;display:grid}.ui-map-view__header,.ui-calendar__toolbar{justify-content:space-between;align-items:start;gap:16px;display:flex}.ui-map-view__header h3,.ui-calendar__copy h3{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;margin:8px 0 4px}.ui-map-view__header span,.ui-calendar__copy span{color:var(--text-muted)}.ui-map-view__compass{width:42px;height:42px;color:var(--accent);background:#ffb40014;border:1px solid #ffb4003d;border-radius:999px;place-items:center;display:grid}.ui-map-view__surface{aspect-ratio:16/9;border-radius:var(--ui-radius-xl);background:radial-gradient(circle,#ffb4001f,#0000 44%),linear-gradient(#ffffff06,#ffffff03),#0e0e0e;border:1px solid #ffffff14;position:relative;overflow:hidden}.ui-map-view__surface:before,.ui-map-view__surface:after{content:"";position:absolute;inset:0}.ui-map-view__surface:before{opacity:.45;background:linear-gradient(#0000 calc(50% - 1px),#ffffff29 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),linear-gradient(90deg,#0000 calc(50% - 1px),#ffffff29 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px))}.ui-map-view__surface:after{background:repeating-linear-gradient(90deg,#0000,#0000 64px,#ffffff09 64px 65px),repeating-linear-gradient(0deg,#0000,#0000 64px,#ffffff09 64px 65px)}.ui-map-view__court{border-radius:var(--ui-radius-lg);background:#ffb4000b;border:1px solid #ffb40033;width:29%;position:absolute;top:12%;bottom:12%}.ui-map-view__court--left{left:6%}.ui-map-view__court--right{right:6%}.ui-map-marker{color:#fff2d3;box-shadow:var(--ui-shadow-soft);background:#080808f0;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:6px;padding:.42rem .6rem;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.ui-map-marker--success{color:#74ebb9}.ui-map-marker--danger{color:#ffb6b6}.ui-map-view__legend{flex-wrap:wrap;gap:14px;display:flex}.ui-map-view__legend-item{color:var(--text-muted);align-items:center;gap:8px;display:inline-flex}.ui-map-view__legend-dot{background:var(--accent);border-radius:999px;width:10px;height:10px}.ui-map-view__legend-dot--success{background:var(--success)}.ui-map-view__legend-dot--danger{background:var(--danger)}.ui-calendar__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.ui-calendar__day{border-radius:var(--ui-radius-lg);background:#ffffff06;border:1px solid #ffffff14;gap:12px;min-height:100%;padding:16px;display:grid}.ui-calendar__day-header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.ui-calendar__day-header span{color:var(--text-muted)}.ui-calendar__day-header strong{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase}.ui-calendar__events{gap:10px;display:grid}.ui-calendar__empty{border-radius:var(--ui-radius-md);min-height:104px;color:var(--text-soft);border:1px dashed #ffffff14;place-items:center;display:grid}.ui-calendar-item{border-radius:var(--ui-radius-sm);background:#ffffff0a;border:1px solid #ffffff14;gap:4px;padding:12px 14px;display:grid}.ui-calendar-item__time{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.ui-calendar-item small{color:var(--text-muted)}.ui-calendar-item--accent{background:#ffb40014;border-color:#ffb40038}.ui-calendar-item--success{background:#3dd59814;border-color:#3dd59833}.ui-calendar-item--danger{background:#ff6b6b14;border-color:#ff6b6b33}.ui-demo-radius-card{text-align:center;background:#ffffff08;border:1px solid #ffffff14;width:120px;padding:18px 14px}.ui-demo-radius-card strong,.ui-demo-radius-card span{display:block}.ui-demo-radius-card span{color:var(--text-soft);margin-top:8px;font-size:.8rem}.ui-demo-note{color:var(--text-soft);font-size:.9rem;line-height:1.55}@media (width<=1080px){.ui-demo-grid--three,.ui-calendar__grid{grid-template-columns:1fr 1fr}}@media (width<=840px){.ui-demo-grid--two,.ui-demo-grid--three,.ui-demo-form-row,.ui-calendar__grid,.ui-list-item{grid-template-columns:1fr}.ui-list-item__trailing{justify-content:flex-start}}@media (width<=720px){.ui-demo-hero{padding-top:44px}.ui-map-view__header,.ui-calendar__toolbar{flex-direction:column;align-items:stretch}}
