:root{color:#172c29;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--color-accent:#173e36;--color-muted:#596762;--color-border:#dce5de;background:#f8faf8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit}a:focus-visible{outline-offset:6px;border-radius:6px;outline:3px solid #378879}.app-shell{flex-direction:column;min-height:100svh;display:flex}.site-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:20px 16px;display:flex}.site-header nav a{text-underline-offset:4px;font-size:14px}.brand{letter-spacing:-1px;align-items:center;gap:10px;font-size:23px;font-weight:700;text-decoration:none;display:inline-flex}main{flex:1;align-items:center;padding:36px 16px;display:grid}main.workspace-main{align-items:start;padding-block:28px 48px}.welcome{gap:32px;width:100%;max-width:1120px;margin-inline:auto;display:grid}.welcome-access{border:1px solid var(--color-border);background:#fff;border-radius:14px;padding:24px}.welcome-access h2{margin:0;font-size:20px}.welcome-access p{color:var(--color-muted);margin:20px 0 0;font-size:14px;line-height:1.6}.welcome-actions{gap:12px;margin-top:24px;display:grid}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:var(--color-accent);margin:0 0 18px;font-size:12px;font-weight:700}h1{letter-spacing:-.04em;margin:0;font-size:clamp(36px,5vw,52px);font-weight:650;line-height:1.15}.site-footer{color:var(--color-muted);border-top:1px solid var(--color-border);padding:20px 16px;font-size:12px}.button{border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;min-height:48px;font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:12px 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(1.15)}.button.secondary{color:var(--color-accent);border-color:var(--color-border);background:#fff}button:disabled{cursor:wait;opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #378879}.account-card{border:1px solid var(--color-border);background:#fff;border-radius:18px;width:100%;min-width:0;max-width:480px;margin-inline:auto;padding:28px 22px}.account-card h1{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:clamp(28px,4vw,36px);line-height:1.2}.account-card p{color:var(--color-muted);font-size:15px;line-height:1.65}.account-card form{gap:20px;margin-top:24px;display:grid}.account-card label{gap:8px;font-size:14px;font-weight:600;display:grid}.account-card input,.account-card select{width:100%;min-width:0;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #bbc9bf;border-radius:8px;padding:12px;font-size:16px}.field-help{color:var(--color-muted);font-size:12px;font-weight:400;line-height:1.5}.captcha-verification{min-width:0}.field{gap:8px;display:grid}.account-card>.button{width:100%;margin-top:12px}.form-link{text-align:center;text-underline-offset:3px;margin-top:20px;font-size:14px;display:block}.form-footer{text-align:center;margin-top:28px}.notice{background:#eef6f0;border-radius:8px;padding:12px 14px}.account-card .notice{color:#254b36}.account-card .notice.error{color:#8a3324;background:#fff0ed}.account-email{overflow-wrap:anywhere}.workspace-card{background:0 0;border:0;border-radius:0;max-width:1280px;padding:0}.workspace-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.workspace-header>div{flex:240px;min-width:0}.workspace-header .eyebrow{margin-bottom:10px}.workspace-header .account-email{margin:8px 0 0}.workspace-header>.button{flex:none}.workspace-navigation{z-index:20;left:16px;right:16px;bottom:max(12px, env(safe-area-inset-bottom));border:1px solid var(--color-border);background:#fff;border-radius:16px;gap:8px;padding:8px;display:flex;position:fixed;box-shadow:0 4px 24px #173e3614}.workspace-navigation a{border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;min-height:60px;padding:8px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.workspace-navigation a[aria-current=page]{background:var(--color-accent);color:#fff}.workspace-main:has(.workspace-navigation){padding-bottom:120px}.app-shell:has(.workspace-navigation) .site-footer{padding-bottom:100px}.clients-section h2,.planning-section h2,.profile-section h2{margin:0;font-size:24px}.clients-layout{align-items:start;gap:24px;margin-top:24px;display:grid}.client-invitation,.planning-panel,.client-space-summary,.profile-panel{border:1px solid var(--color-border);background:#fff;border-radius:12px;min-width:0;padding:22px}.planning-panel h3,.profile-panel h3{margin:0;font-size:18px}.client-directory{min-width:0}.client-list{gap:12px;margin-block:20px 0;padding:0;list-style:none;display:grid}.client-list li{border:1px solid var(--color-border);background:#fff;border-radius:12px;gap:12px;min-width:0;padding:18px;display:grid}.client-details{min-width:0}.client-list h3{overflow-wrap:anywhere;margin:0;font-size:17px}.client-list p{margin:4px 0 0}.client-email{overflow-wrap:anywhere}.client-list .button{width:100%}.client-actions{flex-direction:column;gap:8px;display:flex}.client-space-summary h2{overflow-wrap:anywhere;margin:0 0 12px;font-size:22px}.profile-layout{align-items:start;gap:24px;margin-top:24px;display:grid}.profile-panel>.button{width:100%}.space-selector{min-width:0}.client-space-layout{gap:24px;margin-top:28px;display:grid}.client-space-summary{max-width:720px}.client-space-summary .account-email{margin-top:0}.planning-editor{border:0;min-width:0;margin:0;padding:0}.planning-sections{align-items:start;gap:24px;margin-top:24px;display:grid}.planning-editor input,.planning-editor select{max-width:100%}.planning-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:12px;display:grid}.planning-list{gap:10px;padding:0;list-style:none;display:grid}.planning-list li{border:1px solid var(--color-border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px;font-size:14px;display:flex}.remove-button{min-height:44px;color:var(--color-accent);border:1px solid var(--color-border);font:inherit;cursor:pointer;background:#fff;border-radius:6px;padding:8px}.planning-save{gap:12px;margin-top:24px;display:grid}.planning-save .notice{margin:0}.planning-save>div{gap:12px;display:grid}.planning-save>div>.button{justify-self:start}.duration-picker{border:0;min-width:0;margin:24px 0 0;padding:0}.duration-picker legend{margin-bottom:12px;font-size:14px;font-weight:600}.duration-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.planning-editor .duration-picker label{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.planning-editor .duration-picker input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--color-accent);padding:0}.duration-picker label.selected{border-color:var(--color-accent);background:#eef6f0}.planning-editor .duration-add{background:#f8faf8;border:1px dashed #bbc9bf;width:100%;min-height:48px;padding:10px 12px;font-size:14px}.duration-add::placeholder{color:var(--color-muted);opacity:1}.planning-row label{min-width:0}.planning-row input[type=time]{width:100%;min-width:0;padding-inline:8px}@media (width>=768px){.site-header,.site-footer{padding:24px max(32px,50% - 640px)}main{padding:64px 32px}main.workspace-main{padding-block:40px 64px}.workspace-navigation{box-shadow:none;border-radius:12px;margin-top:24px;position:sticky;inset:12px auto auto}.workspace-navigation a{flex-direction:row;flex:0 auto;gap:8px;min-height:48px;padding:12px 20px;font-size:14px}.workspace-main:has(.workspace-navigation){padding-bottom:64px}.app-shell:has(.workspace-navigation) .site-footer{padding-bottom:24px}.profile-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome{grid-template-columns:minmax(0,1fr) minmax(320px,440px);align-items:center;gap:48px}.planning-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-settings-panel{grid-column:1/-1}#planning-settings{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.planning-save{grid-template-columns:minmax(0,1fr) auto;align-items:center}.client-space-layout.multiple-spaces{grid-template-columns:280px minmax(0,1fr);align-items:start}}@media (width>=960px){.client-list li{grid-template-columns:minmax(0,1fr) minmax(140px,180px);align-items:center}.client-list .client-actions{grid-column:2}}@media (width>=1200px){.planning-sections{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-settings-panel{grid-column:auto}#planning-settings{grid-template-columns:minmax(0,1fr)}}:is(.app-shell:has(.workspace-shell) .site-header,.app-shell:has(.workspace-shell) .site-footer){display:none}.workspace-shell{width:100%;min-width:0;max-width:1440px;margin-inline:auto}.workspace-content{min-width:0}.workspace-brand{letter-spacing:-.8px;align-items:center;gap:8px;margin-bottom:24px;font-size:23px;font-weight:750;text-decoration:none;display:flex}.workspace-brand span{letter-spacing:0;color:var(--color-muted);border:1px solid var(--color-border);border-radius:4px;padding:3px 5px;font-size:11px}.workspace-navigation{top:auto;bottom:max(12px, env(safe-area-inset-bottom));gap:4px;margin:0;padding:6px;position:fixed;left:12px;right:12px;box-shadow:0 4px 24px #173e3614}.workspace-navigation a{flex-direction:column;flex:1;gap:6px;min-width:0;min-height:62px;padding:6px 4px;font-size:11px}main.workspace-main:has(.workspace-shell){padding:24px 16px 116px;display:block}.clients-section,.planning-section,.profile-section{margin-top:0}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px;display:flex}.page-heading h1{letter-spacing:-.04em;margin:0;font-size:clamp(28px,3vw,36px);line-height:1.15}.page-heading p{margin:8px 0 0}.workspace-content p{color:var(--color-muted);font-size:15px;line-height:1.6}.workspace-content .notice{color:#254b36}.workspace-content .notice.error{color:#8a3324;background:#fff0ed}.workspace-content form{gap:18px;margin-top:20px;display:grid}.workspace-content label{gap:8px;font-size:14px;font-weight:600;display:grid}.workspace-content input,.workspace-content select{width:100%;min-width:0;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #bbc9bf;border-radius:8px;padding:12px;font-size:16px}.workspace-content h2{margin-top:0;font-size:20px}.workspace-content h3{font-size:17px}.coach-context{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding-bottom:16px;display:flex}.coach-context>div{min-width:0}.coach-context h2{margin:0;font-size:17px}.coach-context p{margin:6px 0 0;font-size:12px}.coach-context label{width:100%;max-width:280px}.section-navigation{z-index:15;border-bottom:1px solid var(--color-border);background:#f8faf8;gap:4px;margin-bottom:24px;display:flex;position:sticky;top:0}.section-navigation a{min-height:52px;color:var(--color-muted);border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;padding:12px 8px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.section-navigation a[aria-current=location]{border-color:var(--color-accent);color:var(--color-accent);font-weight:700}.section-navigation a:hover{color:var(--color-accent);background:#eef6f0}:target,.workspace-content h2,.workspace-content h3,#reserve,#account-controls{scroll-margin-top:84px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading-skeleton{min-width:0}.skeleton-layout{gap:24px;display:grid}.skeleton-panel{border:1px solid var(--color-border);background:#fff;border-radius:12px;align-content:start;gap:18px;min-width:0;padding:22px;display:grid}.skeleton-line,.skeleton-field{background:linear-gradient(100deg,#e8eee9 20%,#f4f7f4 40%,#e8eee9 60%) 0 0/240% 100%;border-radius:6px;animation:1.8s ease-in-out infinite skeleton-shimmer}.skeleton-line{width:90%;height:14px}.skeleton-title{width:50%;height:22px}.skeleton-short{width:65%}.skeleton-field{height:48px}.skeleton-list .skeleton-panel{gap:12px}.skeleton-list .skeleton-field{width:75%;height:24px}.skeleton-slots .skeleton-layout{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skeleton-slots .skeleton-panel{gap:0;padding:12px}.skeleton-slots .skeleton-line:not(.skeleton-title){display:none}.skeleton-slots .skeleton-title{width:100%;height:20px}.profile-panel .skeleton-panel,.account-card .skeleton-panel{border:0;padding:12px 0}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width>=768px){.skeleton-planning .skeleton-layout,.skeleton-fields .skeleton-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-planning .skeleton-panel:last-child{grid-column:1/-1}.skeleton-planning .skeleton-panel{min-height:360px}.profile-panel .skeleton-layout,.account-card .skeleton-layout{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.skeleton-line,.skeleton-field{animation:none}}.toast-region{z-index:100;inset-inline:16px;top:max(16px, env(safe-area-inset-top));pointer-events:none;position:fixed}.toast-region ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.toast{border:1px solid #bbc9bf;border-left:4px solid var(--color-accent);pointer-events:auto;background:#fff;border-radius:12px;align-items:start;gap:12px;padding:14px;display:flex;box-shadow:0 8px 32px #173e3626}.toast>div{flex:1;min-width:0}.toast-label{color:var(--color-accent);font-size:12px;font-weight:700;display:block}.toast p{overflow-wrap:anywhere;margin:4px 0 0;font-size:14px;line-height:1.5}.toast button{min-height:44px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:0 0 44px;justify-content:center;align-items:center;margin:-7px -7px 0 0;padding:0;font-size:25px;display:flex}.toast button:hover{background:#f2f5f2}.toast-error{border-left-color:#a0392a}.toast-error .toast-label{color:#8a3324}.toast-info{border-left-color:#31637b}.toast-info .toast-label{color:#31637b}.account-sign-out{border-top:1px solid var(--color-border);margin-top:24px;padding-top:24px}.session-layout{align-items:start;gap:28px;display:grid}.booking-panel{border:1px solid var(--color-border);background:#fff;border-radius:12px;min-width:0;padding:22px}.booking-panel h2{margin:0}.session-list{gap:14px;padding:0;list-style:none;display:grid}.session-list>li{border:1px solid var(--color-border);background:#fff;border-radius:12px;gap:16px;min-width:0;padding:20px;display:grid}.session-list>li.cancelled{background:#f2f5f2}.session-filters{flex-wrap:wrap;gap:6px;margin:18px 0;display:flex}.session-filters button{border:1px solid var(--color-border);min-height:44px;color:var(--color-muted);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:8px 12px;font-size:14px}.session-filters button[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600}.session-pagination{gap:10px;margin-top:20px;display:grid}.session-pagination p{margin:0;font-size:13px}.session-pagination>div{flex-wrap:wrap;gap:8px;display:flex}.session-pagination .button{min-height:44px;padding:10px 16px}.session-time{gap:8px;display:grid}.session-time span{color:var(--color-muted);font-size:13px}.session-time strong{letter-spacing:-.02em;font-size:22px}.session-details h3,.session-details p{overflow-wrap:anywhere;margin:0}.session-actions{flex-wrap:wrap;gap:8px;display:flex}.session-actions .button{min-height:44px}.session-confirmation{border-top:1px solid var(--color-border);grid-column:1/-1;padding-top:12px}.session-confirmation .button{margin:4px 8px 4px 0}.empty-state{border:1px dashed #bbc9bf;border-radius:12px;padding:28px 22px}.slot-picker{border:0;min-width:0;margin:0;padding:0}.slot-picker legend{margin-bottom:12px;font-size:14px;font-weight:600}.slot-picker>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:280px;padding:4px;display:grid;overflow-y:auto}.workspace-content .slot-picker label{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;font-size:14px;display:flex;position:relative}.workspace-content .slot-picker input{opacity:0;cursor:pointer;min-height:0;position:absolute;inset:0}.slot-picker label.selected{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.slot-picker label:has(input:focus-visible){outline-offset:1px;outline:3px solid #378879}.slot-picker label:has(input:disabled){cursor:wait;opacity:.6}@media (width<=359px){.planning-row{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){main.workspace-main:has(.workspace-shell){padding:32px 32px 116px}.page-heading{margin-bottom:32px}.session-list>li{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.session-actions{grid-column:1/-1}.session-layout .booking-panel{max-width:600px}}@media (width>=1024px){.toast-region{inset-inline:auto 24px;width:360px;top:24px}.section-navigation{justify-content:start;gap:8px;padding-block:4px}.section-navigation a{border-bottom:0;border-radius:6px;flex:0 auto;min-height:44px;padding:8px 16px}.workspace-content .section-highlight{outline:2px solid var(--color-accent);outline-offset:3px}main.workspace-main:has(.workspace-shell){padding:32px}.workspace-shell{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:36px;display:grid}.workspace-sidebar{position:sticky;top:32px}.workspace-brand{margin-bottom:36px}.workspace-navigation{box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;gap:8px;padding:0;position:static}.workspace-navigation a{flex-direction:row;justify-content:start;gap:12px;min-height:48px;padding:12px;font-size:14px}.planning-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-settings-panel{grid-column:1/-1}#planning-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.client-list li{grid-template-columns:minmax(0,1fr) 150px}.client-list .client-actions{grid-area:auto/2}}.booking-modal{border:1px solid var(--color-border);color:#172c29;background:#fff;border-radius:1rem;width:min(38rem,100vw - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:1.25rem;overflow-y:auto}.booking-modal::backdrop{background:#00000073}.booking-modal .booking-panel{box-shadow:none;border:0;padding:0}.modal-close{margin-bottom:.75rem;margin-left:auto;display:block}.modal-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.modal-actions .button{flex:180px}
