:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-teal:#183f43;--color-teal-strong:#123235;--color-teal-soft:#e7efed;--color-aubergine:#4b344d;--color-aubergine-soft:#f0e8ee;--color-clay:#d07a5f;--color-clay-soft:#f8e9e2;--color-canvas:#f6f1ea;--color-canvas-deep:#ece3d8;--color-surface:#fffdfa;--color-surface-strong:#fff;--color-ink:#202626;--color-slate:#667170;--color-line:#ddd5ca;--color-line-strong:#bdb4a9;--color-success:#285b3c;--color-success-soft:#e7f2ea;--color-warning:#805700;--color-warning-soft:#fff4df;--color-danger:#8a3027;--color-danger-soft:#fbedeb;--font-display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--font-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow-card:0 1.25rem 3.5rem #2026261a;--shadow-soft:0 .75rem 2rem #20262612;--radius-card:1.25rem;--radius-control:.7rem;background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-sans)}*{box-sizing:border-box}html{background:var(--color-canvas);min-height:100%}body{background:radial-gradient(circle at 8% 0%, #d07a5f1f, transparent 24rem), radial-gradient(circle at 92% 12%, #4b344d1a, transparent 28rem), var(--color-canvas);min-height:100%;color:var(--color-ink);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0}::selection{background:var(--color-aubergine);color:var(--color-surface)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:.2rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:.2rem solid var(--color-clay);outline-offset:.2rem}a{color:var(--color-teal)}h1,h2,h3{color:var(--color-ink);font-family:var(--font-display);text-wrap:balance;font-weight:600}h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.25rem,7vw,4rem);line-height:1}h2{letter-spacing:-.025em}p{color:var(--color-slate);line-height:1.65}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.home-page,.auth-page,.dashboard-page{place-items:center;min-height:100svh;padding:clamp(1rem,4vw,3rem);display:grid}.home-page,.auth-page{isolation:isolate;position:relative;overflow:hidden}.home-page:before,.auth-page:before{z-index:-1;content:"";border:1px solid #4b344d1f;border-radius:999px;width:min(48rem,80vw);height:min(48rem,80vw);position:fixed;inset:auto -16rem -20rem auto}.home-card,.auth-card,.dashboard-shell{border-radius:var(--radius-card);box-shadow:var(--shadow-card);background:#fffdfaf5;border:1px solid #4b344d24}.home-card,.auth-card{text-align:center;width:min(100%,43rem);padding:clamp(2rem,6vw,4rem)}.home-card{position:relative;overflow:hidden}.home-card:after{background:linear-gradient(90deg, var(--color-clay), var(--color-aubergine), var(--color-teal));content:"";border-radius:999px;width:7rem;height:.32rem;position:absolute;inset:0 auto auto 50%;transform:translate(-50%)}.home-logo-wrap{place-items:center;margin:-1rem auto 0;display:grid}.home-logo{width:min(100%,29rem);height:auto}.home-kicker{color:var(--color-aubergine);font-family:var(--font-display);margin:.75rem 0 0;font-size:clamp(1.25rem,4vw,1.65rem);font-weight:600;line-height:1.3}.home-intro,.auth-intro{max-width:35rem;margin:1rem auto 0;font-size:1.05rem}.home-actions{justify-content:center;margin-top:1.75rem;display:flex}.home-signals{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:2rem;display:flex}.home-signals span{border:1px solid var(--color-line);background:var(--color-canvas);color:var(--color-slate);border-radius:999px;padding:.4rem .75rem;font-size:.78rem;font-weight:700}.auth-logo{width:min(100%,18rem);height:auto;margin:-1.5rem auto 0}.eyebrow{color:var(--color-aubergine);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.76rem;font-weight:800}.primary-link,.primary-button,.secondary-button{border-radius:var(--radius-control);cursor:pointer;justify-content:center;align-items:center;min-height:2.85rem;font-weight:750;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s,transform .16s,box-shadow .16s;display:inline-flex}.primary-link,.primary-button{border:1px solid var(--color-teal);background:var(--color-teal);color:var(--color-surface);box-shadow:0 .45rem 1rem #183f4329}.primary-link{padding:.8rem 1.35rem}.primary-button,.secondary-button{padding:.75rem 1rem}.primary-button:hover,.primary-link:hover{border-color:var(--color-teal-strong);background:var(--color-teal-strong);transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.62;transform:none}.secondary-button{border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-teal)}.secondary-button:hover{border-color:var(--color-aubergine);background:var(--color-aubergine-soft);color:var(--color-aubergine)}.auth-form{text-align:left;gap:1.2rem;margin-top:2rem;display:grid}.form-field{gap:.5rem;display:grid}.form-field label{color:var(--color-ink);font-weight:750}.form-field input,.service-form select,.service-form textarea{border:1px solid var(--color-line-strong);border-radius:var(--radius-control);background:var(--color-surface-strong);width:100%;min-height:3rem;color:var(--color-ink);padding:.7rem .8rem}.form-field input:focus,.service-form select:focus,.service-form textarea:focus{border-color:var(--color-teal);box-shadow:0 0 0 .2rem #183f4317}.form-error{border-left:.25rem solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger);margin:0;padding:.7rem .85rem;font-size:.95rem}.success-message{border-left:.25rem solid var(--color-success);background:var(--color-success-soft);color:var(--color-success);margin:0 0 1rem;padding:.7rem .85rem}.status-message{color:var(--color-slate);margin:0;font-size:1rem}.dashboard-shell{justify-content:space-between;align-items:flex-start;gap:2rem;width:min(100%,72rem);padding:clamp(1.5rem,4vw,3rem);display:flex}.dashboard-main{flex:1;min-width:0}.dashboard-brand-lockup{align-items:center;gap:.85rem;margin-bottom:1.35rem;display:flex}.dashboard-logo{width:10rem;height:auto}.dashboard-brand-lockup span{border-left:1px solid var(--color-line);color:var(--color-slate);letter-spacing:.08em;text-transform:uppercase;padding-left:.85rem;font-size:.78rem;font-weight:750}.dashboard-shell h1{max-width:40rem;font-size:clamp(2.35rem,6vw,3.75rem)}.dashboard-shell h2{color:var(--color-aubergine);margin:1.25rem 0 0;font-size:1.45rem}.signed-in-user,.membership-role{margin:.5rem 0 0}.signed-in-user strong,.membership-role strong{color:var(--color-ink)}.dashboard-actions{flex:none;justify-items:end;gap:1rem;display:grid}.dashboard-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.dashboard-feature-card{border:1px solid var(--color-line);background:var(--color-surface-strong);min-height:15rem;box-shadow:var(--shadow-soft);border-radius:1rem;flex-direction:column;align-items:flex-start;padding:1.35rem;display:flex;position:relative;overflow:hidden}.dashboard-feature-card:before{background:var(--color-clay);content:"";border-radius:999px;width:3rem;height:.2rem;position:absolute;inset:0 auto auto 1.35rem}.dashboard-feature-card h3{margin:0;font-size:1.5rem}.dashboard-feature-card>p:not(.dashboard-feature-label){flex:1}.dashboard-feature-label{color:var(--color-aubergine);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .55rem;font-size:.72rem;font-weight:800}.workspace-page,.slot-preview-page,.booking-preview-page{background:0 0;min-height:100svh;padding:clamp(1rem,4vw,2.5rem)}.workspace-shell,.slot-preview-shell,.booking-preview-shell{width:min(100%,78rem);margin:0 auto}.workspace-header,.slot-preview-header,.booking-preview-header{border-bottom:1px solid #4b344d26;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.workspace-header p,.slot-preview-header p:not(.eyebrow),.booking-preview-header p:not(.eyebrow){max-width:45rem;margin:.75rem 0 0}.workspace-header h1,.slot-preview-header h1,.booking-preview-header h1{font-size:clamp(2.35rem,6vw,4rem)}.workspace-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:1.5rem;display:grid}.panel,.feature-card,.slot-preview-panel,.booking-section,.booking-summary-card{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-soft)}.panel,.slot-preview-panel,.booking-section,.booking-summary-card{padding:1.5rem}.panel h2,.feature-card h3,.service-card h3,.slot-preview-panel h2,.slot-preview-panel h3,.booking-section h2,.booking-summary-card h2,.booking-summary-card h3{margin-top:0}.service-form{gap:1rem;margin-top:1.25rem;display:grid}.service-form textarea{resize:vertical}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.checkbox-field{color:var(--color-ink);align-items:flex-start;gap:.65rem;line-height:1.4;display:flex}.checkbox-field input{accent-color:var(--color-teal);margin-top:.2rem}.form-actions,.service-actions,.request-actions{flex-wrap:wrap;gap:.75rem;display:flex}.service-list,.appointment-list{gap:1rem;margin-top:1.25rem;display:grid}.service-card,.appointment-card,.slot-card{border:1px solid var(--color-line);background:var(--color-surface-strong);border-radius:.9rem;padding:1.15rem}.service-card-heading,.appointment-card-heading{justify-content:space-between;gap:1rem;display:flex}.service-category,.appointment-service,.slot-results-date{color:var(--color-aubergine);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .35rem;font-size:.72rem;font-weight:800}.status-pill,.request-status,.time-zone-label{background:var(--color-canvas-deep);color:var(--color-slate);border-radius:999px;align-self:flex-start;padding:.32rem .65rem;font-size:.8rem;font-weight:750}.status-pill.active,.request-status.confirmed,.slot-count-pill{background:var(--color-success-soft);color:var(--color-success)}.request-status.requested{background:var(--color-warning-soft);color:var(--color-warning)}.request-status.declined,.request-status.expired{background:var(--color-danger-soft);color:var(--color-danger)}.request-status.cancelled{background:var(--color-canvas-deep);color:#62594f}.service-details,.appointment-details,.slot-service-summary,.booking-summary-list{gap:.65rem;margin:1rem 0;display:grid}.service-details div,.appointment-details div{grid-template-columns:5rem minmax(0,1fr);gap:.75rem;display:grid}.service-details dt,.appointment-details dt,.slot-service-summary dt,.booking-summary-list dt{color:var(--color-slate);font-size:.9rem}.service-details dd,.appointment-details dd,.slot-service-summary dd,.booking-summary-list dd{overflow-wrap:anywhere;min-width:0;color:var(--color-ink);margin:0;font-weight:650}.empty-state,.slot-preview-empty,.booking-empty{border:1px dashed var(--color-line-strong);text-align:center;background:#f6f1ea73;border-radius:.9rem;margin-top:1.25rem;padding:2rem 1rem}.feature-card{max-width:28rem;padding:1.25rem}.dashboard-stack{display:grid}.availability-note,.appointments-note,.slot-preview-note,.booking-preview-banner{border-left:.25rem solid var(--color-teal);background:var(--color-teal-soft);color:var(--color-teal);margin:0 0 1rem;padding:.75rem .9rem;line-height:1.55}.reschedule-request-message{border-left:.25rem solid var(--color-clay);background:var(--color-clay-soft);color:var(--color-aubergine);margin:.85rem 0 0;padding:.75rem .9rem;font-weight:750}.danger-button{color:var(--color-danger);border-color:#bd6d63}.danger-button:hover{background:var(--color-danger-soft)}.inactive-card{opacity:.78;background:#f8f4ee}@media (max-width:58rem){.workspace-grid{grid-template-columns:1fr}}@media (max-width:48rem){.dashboard-shell{flex-direction:column}.dashboard-actions,.dashboard-actions .secondary-button{width:100%}}@media (max-width:40rem){.dashboard-features{grid-template-columns:1fr}}@media (max-width:36rem){.home-page,.auth-page,.dashboard-page{align-items:start;padding:1rem}.home-card,.auth-card,.dashboard-shell{margin-top:1rem;padding:2rem 1.25rem}.workspace-header,.slot-preview-header,.booking-preview-header,.service-card-heading,.appointment-card-heading{flex-direction:column}.workspace-header .secondary-button,.slot-preview-header .secondary-button,.booking-preview-header .secondary-button,.dashboard-actions,.secondary-button{width:100%}.form-row,.appointment-details div{grid-template-columns:1fr}.dashboard-brand-lockup{flex-direction:column;align-items:flex-start}.dashboard-brand-lockup span{border-left:0;padding-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
