:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--foreground:#222;--body:#3f3f3f;--muted:#6a6a6a;--muted-soft:#929292;--panel:#fff;--surface-soft:#f7f7f7;--surface-strong:#f2f2f2;--accent:#ff385c;--accent-active:#e00b41;--accent-soft:#ffe8ed;--accent-muted:#ffd1da;--success-soft:#eefaf5;--success-text:#14734f;--border:#ddd;--border-soft:#ebebeb;--border-strong:#c1c1c1;--error:#c13515;--shadow:#00000005 0 0 0 1px, #0000000a 0 2px 6px, #0000001a 0 4px 8px;--shadow-soft:0 18px 44px #22222214;--hero-image:url(/salon-hero-background.png)}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--foreground);background:radial-gradient(circle at 100% 0,#ff385c14,#0000 34rem),linear-gradient(#fff 0%,#fbfbfb 48%,#f7f7f7 100%);font-family:Airbnb Cereal VF,Circular,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary,input,select,textarea{transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s,transform .2s}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--foreground);letter-spacing:0}h1{max-width:760px;margin-bottom:20px;font-size:clamp(40px,7vw,72px);line-height:.98}h2{margin-bottom:12px;font-size:clamp(28px,3vw,40px);line-height:1.12}h3{margin-bottom:12px;font-size:20px;line-height:1.2}button,.primary-link,.secondary-link,.secondary-button{border-radius:8px;min-height:48px;font-size:16px;font-weight:600}button,.primary-link{text-align:center;background:var(--accent);color:#fff;cursor:pointer;border:0;place-items:center;padding:12px 24px;display:inline-grid}button:hover,.primary-link:hover{background:var(--accent-active);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}.secondary-button,.secondary-link{border:1px solid var(--border);color:var(--foreground);background:#fff;place-items:center;padding:12px 20px;display:inline-grid}.secondary-button:hover,.secondary-link:hover{border-color:var(--foreground);background:var(--surface-soft);transform:translateY(-1px)}.compact-button{width:auto;min-height:40px;padding:8px 14px;font-size:14px}.shell{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:32px;width:min(1120px,100% - 40px);min-height:100vh;margin:0 auto;padding:48px 0;display:grid}.intro,.status{min-width:0}.eyebrow{background:var(--accent-soft);width:fit-content;color:var(--accent-active);letter-spacing:0;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;margin:0 0 16px;padding:6px 12px;font-size:12px;font-weight:700;line-height:1.33;display:inline-flex}.lead{max-width:680px;color:var(--body);margin-bottom:0;font-size:20px;line-height:1.55}.home-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.status,.auth-panel,.form-panel,.table-panel,.metric-grid article,.metric-card,.booking-form,.booking-success{border:1px solid var(--border);box-shadow:var(--shadow);background:#ffffffeb;border-radius:14px}.status{padding:28px}.status h2{margin-bottom:20px;font-size:24px}.status ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.status li{background:var(--surface-soft);color:var(--foreground);border-radius:999px;padding:12px 16px;font-weight:600}.auth-shell{background:linear-gradient(90deg, #ffffffeb 0%, #ffffffb3 48%, transparent 78%), var(--hero-image) center / cover no-repeat;place-items:center;min-height:100vh;padding:32px 20px;display:grid}.auth-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-self:start;width:min(100%,520px);margin-left:max(0px,50vw - 560px);padding:32px}.form-panel,.table-panel{width:min(100%,680px);padding:32px}.auth-panel h1,.admin-sidebar h1,.admin-content h2{margin-bottom:16px;font-size:36px;line-height:1.1}.collapsible-panel{padding:0;overflow:hidden}.collapsible-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:22px 32px;font-size:20px;font-weight:700;display:flex}.collapsible-summary:hover{background:var(--surface-soft)}.collapsible-summary::marker{color:var(--accent)}.collapsible-content{padding:0 32px 32px}.auth-copy,.muted{color:var(--muted);line-height:1.55}.form-stack,.form-grid{gap:16px;margin-top:24px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:var(--foreground);gap:8px;font-size:14px;font-weight:600;display:grid}input,select,textarea{border:1px solid var(--border);width:100%;min-height:56px;color:var(--foreground);background:#fff;border-radius:8px;padding:14px 12px}input:focus,select:focus,textarea:focus{border-color:var(--foreground);box-shadow:inset 0 0 0 1px var(--foreground);outline:none}textarea{resize:vertical}.form-message{color:var(--error);background:#fff2ef;border-radius:8px;grid-column:1/-1;margin:0;padding:12px 14px;font-weight:600}.form-message.success{background:var(--success-soft);color:var(--success-text)}.admin-shell{grid-template-columns:292px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{border-right:1px solid var(--border-soft);background:#fffffff0;flex-direction:column;gap:28px;height:100vh;padding:28px;display:flex;position:sticky;top:0;overflow-y:auto}.admin-sidebar h1{font-size:28px}.admin-sidebar nav{gap:6px;display:grid}.admin-sidebar a{color:var(--muted);border-radius:999px;padding:12px 14px;font-size:14px;font-weight:600}.admin-sidebar a:hover{background:var(--surface-soft);color:var(--foreground)}.admin-sidebar form{margin-top:auto}.admin-content{background:linear-gradient(180deg, #ffffffe6, #f7f7f7f0), var(--hero-image) top right / 860px auto no-repeat fixed;align-content:start;gap:28px;min-width:0;padding:28px;display:grid}.admin-header{border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex;box-shadow:0 0 0 1px #00000005}.admin-header-actions,.booking-heading-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:10px;display:flex}.admin-stack{gap:24px;display:grid}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-grid article,.metric-card{align-content:start;min-height:132px;padding:22px;display:grid}.metric-card{transition:border-color .2s,box-shadow .2s,transform .2s}.metric-card:hover,.catalog-row:hover,.table-row:hover,.calendar-day:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-1px)}.metric-grid span{color:var(--foreground);overflow-wrap:anywhere;margin-bottom:8px;font-size:clamp(24px,2.7vw,40px);font-weight:700;line-height:1.1;display:block}.metric-grid p{color:var(--muted);margin:0;font-weight:500}.role-badge,.status-badge{background:var(--accent-soft);max-width:100%;min-height:32px;color:var(--accent-active);overflow-wrap:anywhere;text-align:center;border-radius:999px;align-items:center;padding:6px 12px;font-size:13px;font-weight:700;line-height:1.25;display:inline-grid}.muted-badge{background:var(--surface-strong);color:var(--muted)}.table-list{gap:12px;margin-top:16px;display:grid}.table-row{border:1px solid var(--border);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.table-row p,.muted{margin:0}.user-management-row{grid-template-columns:minmax(220px,1fr) minmax(160px,190px) minmax(190px,220px) minmax(110px,140px) minmax(116px,auto);align-items:end;gap:14px;display:grid}.user-management-row label,.user-management-identity{min-width:0}.user-management-identity .muted{overflow-wrap:anywhere;margin-top:8px}.user-management-row .checkbox-line{align-content:center;min-height:48px}.user-management-row .compact-button{width:100%}.password-field-label{min-width:0}.password-input-wrap{display:block;position:relative}.password-input-wrap input{padding-right:56px}.password-toggle{border:1px solid var(--border);width:40px;height:40px;min-height:40px;color:var(--foreground);background:#fff;border-radius:999px;padding:0;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover{background:var(--surface-soft);transform:translateY(-50%)}.password-toggle span{border:2px solid;border-radius:999px/70%;width:18px;height:12px;position:relative}.password-toggle span:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.password-toggle span:after{content:"";background:currentColor;border-radius:999px;width:24px;height:2px;display:block;position:absolute;top:50%;left:-3px;transform:rotate(-35deg)}.visible-password span:after{display:none}.wide-panel{width:100%}.page-heading{background:linear-gradient(135deg,#ffffffeb,#ffffffb8);border-radius:20px;justify-content:space-between;align-items:start;gap:20px;padding:28px;display:flex}.page-heading h2{margin-bottom:10px}.full-span,.nested-section,.form-panel>button,.form-panel>.form-message{grid-column:1/-1}.checkbox-line{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.checkbox-fieldset{border:1px solid var(--border);border-radius:14px;gap:10px;margin:0;padding:16px;display:grid}.checkbox-fieldset legend{padding:0 6px;font-weight:700}.weekday-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;display:grid}.checkbox-line label,.compact-checkbox,.service-choice{align-items:center;gap:10px;display:flex}.checkbox-line input,.compact-checkbox input,.service-choice input,.booking-choice input{width:18px;min-height:18px;accent-color:var(--accent)}.catalog-list,.master-service-list{gap:14px;margin-top:18px;display:grid}.catalog-row{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px;display:grid}.catalog-row h3{margin:4px 0 8px}.row-actions{flex-wrap:wrap;place-content:start end;gap:10px;display:flex}.nested-section{gap:14px;margin-top:24px;display:grid}.master-service-card{border:1px solid var(--border);background:#fff;border-radius:14px;gap:14px;padding:16px;display:grid}.service-choice{justify-content:start;font-weight:700}.service-choice span{gap:4px;display:grid}.service-choice small{color:var(--muted);font-weight:400}.override-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.inline-filter{grid-template-columns:minmax(180px,240px) minmax(160px,220px) auto;align-items:end;gap:12px;margin-top:16px;display:grid}.slot-list{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.slot-list span,.calendar-chip{background:var(--accent-soft);color:var(--accent-active);border-radius:999px;padding:8px 12px;font-weight:700}.schedule-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.schedule-day{border:1px solid var(--border);border-radius:14px;gap:6px;min-height:104px;padding:12px;display:grid}.schedule-day strong,.schedule-day span,.schedule-day small{display:block}.schedule-day small{color:var(--muted);line-height:1.35}.calendar-grid{gap:14px;margin-top:18px;display:grid}.calendar-day{border:1px solid var(--border);background:#fff;border-radius:14px;gap:12px;padding:18px;display:grid}.calendar-day h4{margin:0;font-size:18px}.calendar-master-row{border-top:1px solid var(--border-soft);grid-template-columns:minmax(140px,180px) minmax(0,1fr);align-items:start;gap:12px;padding-top:12px;display:grid}.calendar-master-row>div{flex-wrap:wrap;gap:8px;display:flex}.summary-band{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px;flex-wrap:wrap;gap:14px 24px;padding:16px;display:flex}.summary-band p{margin:0}.active-day{background:var(--accent-soft);color:var(--accent-active)}.day-off{background:var(--surface-strong);color:var(--muted)}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin-top:16px;display:grid}.details-grid p{margin:0;line-height:1.45}.notes-block{white-space:pre-wrap;margin-top:18px}.booking-shell{gap:28px;width:100%;min-height:100vh;margin:0 auto;padding:0 0 48px;display:grid}.compact-booking-shell{grid-template-columns:minmax(0,1fr);place-items:center}.compact-booking-shell:before{z-index:-1;min-height:100vh;box-shadow:none;border-radius:0;position:fixed;inset:0}.booking-heading{background:linear-gradient(90deg, #00000085 0%, #0003 48%, #0000000a 100%), var(--hero-image) center right / cover no-repeat;color:#fff;align-items:end;gap:20px;min-height:min(520px,48vh);padding:34px max(24px,50vw - 580px) 30px;display:grid}.booking-heading .eyebrow{background:#ffffffeb;margin-bottom:14px}.booking-hero-copy{max-width:620px}.booking-heading h1,.booking-success h1{max-width:680px;margin-bottom:14px;font-size:44px;line-height:1.08}.booking-heading h1{color:#fff;text-shadow:0 2px 16px #00000047;margin-bottom:8px}.booking-hero-subtitle,.booking-hero-meta{color:#fff;text-shadow:0 2px 14px #0000003d;margin:0}.booking-hero-subtitle{font-size:24px;font-weight:700}.booking-hero-meta{margin-top:6px;font-size:16px;font-weight:600}.booking-form,.booking-success{gap:16px;width:min(640px,100% - 32px);margin:0 auto;padding:20px;display:grid}.booking-mode-tabs{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;display:grid}.booking-mode-tab{min-height:44px;color:var(--foreground);background:0 0;border:1px solid #0000;padding:10px}.booking-mode-tab:hover{border-color:var(--border);background:#fff;transform:none}.active-mode-tab,.active-mode-tab:hover{border-color:var(--accent);color:var(--accent-active);background:#fff}.booking-success{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;grid-column:auto;width:min(100%,620px)}.booking-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.booking-progress-step{border:1px solid var(--border);min-height:58px;color:var(--muted);background:#fff;gap:5px;padding:8px 6px;font-size:12px;display:grid}.booking-progress-step span{background:var(--surface-strong);width:24px;height:24px;color:var(--foreground);border-radius:999px;justify-self:center;place-items:center;font-size:12px;display:grid}.booking-progress-step:disabled{cursor:not-allowed;opacity:.45}.booking-progress-step:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft);color:var(--foreground)}.current-step,.current-step:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent-active)}.current-step span{background:var(--accent);color:#fff}.booking-step{border:1px solid var(--border);border-radius:14px;gap:14px;margin:0;padding:16px;display:none}.booking-modal-backdrop{z-index:20;background:#22222270;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.booking-step-modal{border:1px solid var(--border);width:min(100%,680px);max-height:min(760px,100vh - 40px);box-shadow:var(--shadow-soft);background:#fff;border-radius:18px;gap:16px;padding:20px;display:grid;overflow-y:auto}.booking-modal-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.booking-modal-header .eyebrow,.booking-modal-header h3{margin-bottom:6px}.active-booking-step{display:grid}.booking-step legend{padding:0 6px;font-weight:700}.booking-service-list,.booking-master-list,.booking-contact-list{gap:12px;display:grid}.privacy-consent{border:1px solid var(--border);background:var(--surface-soft);color:var(--foreground);border-radius:12px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:12px;font-size:14px;line-height:1.45;display:grid}.privacy-consent input{width:18px;height:18px;margin-top:2px}.privacy-policy{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:12px;padding:12px;font-size:14px;line-height:1.5}.privacy-policy summary{cursor:pointer;color:var(--foreground);font-weight:700}.privacy-policy p{margin:10px 0 0}.booking-choice{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:12px;min-height:76px;padding:12px;display:flex}.selected-choice{border-color:var(--accent);background:var(--accent-soft)}.booking-choice span{gap:5px;min-width:0;display:grid}.booking-choice small{color:var(--muted);font-weight:400;line-height:1.35}.booking-choice em{color:var(--accent-active);text-align:right;margin-left:auto;font-size:13px;font-style:normal;font-weight:700;line-height:1.4}.booking-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.booking-date-strip{grid-template-columns:repeat(7,minmax(88px,1fr));gap:8px;padding-bottom:2px;display:grid;overflow-x:auto}.booking-date-choice{border:1px solid var(--border);min-height:58px;color:var(--foreground);background:#fff;gap:2px;padding:8px;display:grid}.booking-date-choice span{color:var(--muted);font-size:12px}.booking-date-choice strong{font-size:14px;line-height:1.2}.booking-slot{border:1px solid var(--border);min-height:48px;color:var(--foreground);background:#fff}.selected-slot,.selected-slot:hover{border-color:var(--accent);background:var(--accent);color:#fff}.booking-summary{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px;flex-wrap:wrap;gap:12px 24px;padding:14px;display:flex}.booking-summary p{margin:0}.booking-mobile-actions{grid-template-columns:auto minmax(0,1fr);gap:10px;display:grid}.booking-mobile-actions button:only-child{grid-column:1/-1}.spam-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (max-width:1080px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-heading{min-height:360px;padding-left:24px;padding-right:24px}}@media (max-width:760px){.shell{grid-template-columns:1fr;align-items:start;padding:32px 0}h1{font-size:42px}.lead{font-size:18px}.auth-shell{place-items:end center;padding:18px 12px}.auth-panel{margin-left:0;padding:24px}.form-grid,.admin-shell,.metric-grid,.catalog-row,.user-management-row,.details-grid,.weekday-grid,.schedule-day-grid,.calendar-master-row,.override-grid,.inline-filter{grid-template-columns:1fr}.user-management-row .compact-button{width:auto}.page-heading{padding:20px;display:grid}.row-actions{justify-content:start}.admin-sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.admin-content{padding:16px}.admin-header,.booking-heading,.booking-heading-actions,.home-actions{display:grid}.booking-heading h1,.booking-success h1{font-size:36px}.booking-form,.booking-success,.form-panel,.table-panel{padding:16px}.booking-shell{padding-bottom:24px}.booking-heading{min-height:300px;padding:24px 16px}.booking-hero-subtitle{font-size:20px}.booking-hero-meta{font-size:14px}.booking-progress{z-index:2;background:#ffffffeb;padding-top:4px;position:sticky;top:0}.booking-choice{min-height:72px}.booking-mobile-actions{z-index:auto;border-top:1px solid var(--border);background:#fff;margin:0 -16px -16px;padding:12px 16px 16px;position:static!important}.booking-modal-backdrop{align-items:end;padding:0}.booking-step-modal{border-radius:18px 18px 0 0;width:100%;max-height:min(86vh,760px);padding:16px}.booking-modal-header{gap:10px}.booking-date-strip{grid-template-columns:repeat(7,92px)}}
