@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--background:#f5efe6;--foreground:#231815;--panel:#fffbf7e0;--panel-strong:#fffaf5;--border:#422a2124;--accent:#a04d34;--accent-strong:#7f3721;--muted:#6b5b54;--shadow:0 20px 60px #58301f1f}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#e3b19a59,#0000 28rem),linear-gradient(#f7f1e8 0%,#f4ecdf 46%,#efe5d8 100%);flex-direction:column;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}.app-shell{width:min(1120px,100% - 32px);margin:32px auto 64px}.app-card{background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px}.public-booking-shell{width:min(760px,100% - 32px);overflow:hidden}.app-header{justify-content:space-between;align-items:flex-start;gap:20px;padding:28px 32px 18px;display:flex}.app-title{letter-spacing:-.06em;font-size:clamp(2.4rem,6vw,4.5rem);line-height:.95}.app-subtitle{color:var(--muted);margin-top:10px;font-size:1rem}.app-nav{flex-wrap:wrap;gap:12px;display:flex}.app-nav a{border:1px solid var(--border);background:#ffffff9e;border-radius:999px;padding:12px 18px;font-weight:600}.app-main{gap:20px;padding:0 32px 32px;display:grid}.panel-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.panel{background:var(--panel-strong);border:1px solid var(--border);border-radius:24px;padding:22px}.panel h2,.panel h3{margin-bottom:14px;font-size:1.2rem}.panel-heading-row{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.panel-heading-row h2{margin-bottom:0}.filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.filter-tabs a{border:1px solid var(--border);color:var(--muted);background:#a04d340f;border-radius:999px;padding:9px 12px;font-size:.9rem;font-weight:700}.filter-tabs a[aria-current=page]{color:var(--accent-strong);background:#a04d3424;border-color:#a04d3447}.detail-list{gap:12px;display:grid}.detail-list div{gap:4px;display:grid}.detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.detail-value{font-size:1.02rem}.app-form{gap:14px;display:grid}.app-form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.app-field{gap:8px;display:grid}.app-field label{color:var(--muted);font-size:.92rem;font-weight:600}.app-field input,.app-field select,.app-field textarea{border:1px solid var(--border);width:100%;min-height:48px;color:var(--foreground);font:inherit;background:#fff;border-radius:14px;padding:12px 14px}.app-field textarea{resize:vertical}.app-button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff8f4;width:fit-content;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:0 18px;font-weight:700}.service-list{gap:14px;display:grid}.slot-list{flex-wrap:wrap;gap:10px;display:flex}.slot-button{border:1px solid var(--border);min-width:112px;min-height:42px;color:var(--foreground);font:inherit;cursor:pointer;background:#fff;border-radius:12px;padding:0 18px}.slot-button.is-active{color:var(--accent-strong);background:#a04d341f;border-color:#a04d3473}.booking-flow{gap:18px;padding-bottom:88px;display:grid}.booking-flow-section{border-top:1px solid var(--border);padding:22px 0}.booking-flow-section:first-child{border-top:0;padding-top:0}.booking-section-heading{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:20px;display:flex}.booking-section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,5vw,2.6rem)}.booking-section-heading span{color:var(--muted);font-weight:700}.service-choice-list{gap:22px;display:grid}.specialist-choice-list{gap:14px;display:grid}.specialist-choice{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:8px 0;display:grid}.specialist-choice span:nth-child(2){gap:5px;display:grid}.specialist-choice strong{font-size:1.15rem}.specialist-choice small{color:var(--muted);font-size:.94rem;line-height:1.35}.specialist-avatar{width:54px;height:54px;color:var(--accent-strong);background:#a04d341f;border-radius:999px;place-items:center;font-weight:900;display:grid}.service-choice{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:18px;justify-content:space-between;align-items:center;gap:18px;padding:4px 0;display:flex}.service-choice span:first-child{gap:8px;display:grid}.service-choice strong{font-size:1.25rem;font-weight:700}.service-choice small{max-width:54ch;color:var(--muted);font-size:1rem;line-height:1.45}.service-choice b{letter-spacing:.04em;font-size:1.05rem}.service-choice-mark{border:1px solid var(--border);width:32px;height:32px;color:var(--accent-strong);background:#a04d3414;border-radius:999px;flex:none;place-items:center;font-weight:900;display:grid}.booking-calendar{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:28px;display:grid}.booking-weekday{color:var(--muted);text-align:center;text-transform:lowercase;font-size:.86rem;font-weight:700}.booking-day{min-height:54px;color:var(--foreground);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:14px;place-items:center;font-size:1.1rem;font-weight:800;display:grid}.booking-day .is-muted{color:#6b5b547a}.booking-day.is-selected{color:var(--accent-strong);background:#a04d3424}.slot-groups{gap:30px;display:grid}.slot-group{gap:14px;display:grid}.slot-group h3{margin:0;font-size:1.5rem}.slot-group .slot-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.slot-group .slot-button{min-height:56px}.empty-time-state{color:var(--muted);text-align:center;justify-items:center;gap:12px;padding:42px 18px;display:grid}.empty-time-state strong{color:var(--foreground);font-size:1.3rem}.booking-details-card,.client-data-card{border:1px solid var(--border);background:#ffffff6b;border-radius:22px;gap:20px;padding:20px;display:grid}.client-data-card{margin-top:16px}.client-data-card h3{margin:0;font-size:1.4rem}.booking-detail-line,.booking-detail-total{justify-content:space-between;align-items:center;gap:18px;display:flex}.booking-detail-line{color:var(--muted)}.booking-detail-total{border-top:1px solid var(--border);padding-top:14px}.booking-detail-total strong{white-space:nowrap}.booking-sticky-bar{z-index:2;background:var(--panel-strong);border-top:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:16px;margin:10px -32px -32px;padding:18px 32px;display:grid;position:sticky;bottom:0}.booking-sticky-bar span{color:var(--muted);font-weight:700}.booking-sticky-bar strong{font-size:1.15rem}.service-item{border:1px solid var(--border);background:#fff;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.service-item.is-cancelled{color:#231815ad;background:#6b5b5414}.service-meta{color:var(--muted);margin-top:6px;font-size:.95rem}.appointment-actions{justify-items:end;gap:10px;display:grid}.link-button{color:var(--accent-strong);cursor:pointer;font:inherit;text-underline-offset:4px;background:0 0;border:0;font-size:.92rem;font-weight:700;text-decoration:underline}.badge{color:var(--accent-strong);white-space:nowrap;background:#a04d341a;border-radius:999px;padding:8px 12px;font-weight:700}.login-shell{width:min(480px,100% - 32px);margin:72px auto;padding:30px}.error-note{color:#8d1f1f;background:#a034341f;border-radius:14px;margin-bottom:14px;padding:12px 14px}.success-note,.helper-note{border-radius:14px;padding:12px 14px}.success-note{color:#285b34;background:#3d7f4d1f}.helper-note{color:var(--muted);background:#a04d3414}.booking-summary{background:#a04d3414;border:1px solid #a04d341f;border-radius:18px;margin-bottom:18px;padding:14px 16px}.booking-summary strong{margin-top:4px;font-size:1.05rem;display:block}.booking-panel{overflow:hidden}.booking-panel-header{margin-bottom:18px}.booking-panel-header h2{letter-spacing:-.04em;margin:6px 0 0;font-size:clamp(1.6rem,4vw,2.5rem)}.booking-step{grid-template-columns:minmax(72px,auto) repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:14px;display:grid}.booking-step-label{width:fit-content;color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;background:#a04d341a;border-radius:999px;align-self:center;padding:8px 11px;font-size:.82rem;font-weight:800}.app-button:disabled,.slot-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width:720px){.app-header,.app-main{padding-left:20px;padding-right:20px}.app-header,.service-item{flex-direction:column}.booking-step,.booking-section-heading,.booking-detail-line,.booking-detail-total,.booking-sticky-bar{grid-template-columns:1fr}.booking-section-heading,.booking-detail-line,.booking-detail-total{align-items:flex-start}.slot-group .slot-list{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-sticky-bar{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}}
