h1,h2,p{margin-top:0}h1{color:var(--text);letter-spacing:-.045em;margin-bottom:14px;font-size:clamp(2rem,5vw,3.3rem);line-height:1.04}h2{color:var(--text)}.topbar{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 40px);min-height:84px;margin:0 auto;display:flex}.brand{align-items:center;gap:11px;display:inline-flex}.brand-mark{color:#fff;background:var(--brand);border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.brand>div{align-items:baseline;gap:6px;display:flex}.brand strong{color:var(--text);font-size:1.08rem}.brand span:last-child{color:var(--muted);font-size:.84rem}.language-switcher{color:var(--muted);align-items:center;gap:7px;font-size:.82rem;display:inline-flex}.language-option{color:var(--muted);background:0 0;border:0;padding:5px 0}.language-option.active{color:var(--text);font-weight:700}.topbar-actions{align-items:center;gap:20px;display:flex}.ghost-button{color:var(--muted);background:0 0;border:0;align-items:center;gap:7px;display:inline-flex}.ghost-button:hover{color:var(--text)}.auth-page,.onboarding-page,.ready-page{min-height:100vh}.auth-stage{place-items:center;min-height:calc(100vh - 84px);padding:50px 20px 90px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(460px,100%);box-shadow:var(--shadow);border-radius:22px;padding:42px}.auth-heading{margin-bottom:30px}.auth-heading h1{font-size:2.15rem}.auth-heading p{color:var(--muted);line-height:1.6}.form-stack{flex-direction:column;gap:20px;display:flex}.field{flex-direction:column;gap:8px;display:flex}.field>span,.choice-group legend{color:var(--text);font-size:.88rem;font-weight:650}.field input,.field textarea,.field select{border:1px solid var(--border-strong);width:100%;color:var(--text);background:#fff;border-radius:11px;outline:none;transition:border-color .12s,box-shadow .12s}.field input,.field select{min-height:48px;padding:0 14px}.field textarea{resize:vertical;min-height:90px;padding:13px 14px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #138c8021}.primary-button{color:#fff;background:var(--brand);border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:50px;padding:0 18px;font-weight:700;text-decoration:none;transition:background .12s,transform .12s;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--brand-dark)}.primary-button:active:not(:disabled){transform:translateY(1px)}.link-button{width:100%}.auth-footer{color:var(--muted);text-align:center;margin:26px 0 0;font-size:.9rem}.auth-footer a{font-weight:700}.form-error{color:var(--danger);background:var(--danger-bg);border:1px solid #f3c7c3;border-radius:10px;padding:11px 13px;font-size:.88rem}.full-page-loader{min-height:100vh;color:var(--muted);place-items:center;display:grid}.success-icon{width:54px;height:54px;color:var(--brand-dark);background:var(--brand-soft);border-radius:50%;place-items:center;margin-bottom:22px;display:grid}.onboarding-layout{grid-template-columns:minmax(0,.8fr) minmax(420px,1fr);align-items:start;gap:80px;width:min(1060px,100% - 40px);margin:0 auto;padding:70px 0 100px;display:grid}.onboarding-intro{padding-top:30px;position:sticky;top:70px}.eyebrow{color:var(--brand-dark);letter-spacing:.09em;text-transform:uppercase;margin-bottom:16px;font-size:.78rem;font-weight:800;display:inline-block}.onboarding-intro p,.ready-lead{color:var(--muted);font-size:1.02rem;line-height:1.7}.onboarding-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:34px}.choice-group{border:0;margin:2px 0 0;padding:0}.choice-group legend{margin-bottom:11px}.choice-card{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:12px;gap:12px;margin-bottom:10px;padding:15px;display:flex}.choice-card:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.choice-card input{accent-color:var(--brand);margin-top:3px}.choice-card span{flex-direction:column;gap:4px;display:flex}.choice-card strong{color:var(--text);font-size:.92rem}.choice-card small{color:var(--muted);line-height:1.45}.ready-container{width:min(760px,100% - 40px);margin:0 auto;padding:70px 0 100px}.ready-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:22px;padding:48px}.business-name{color:var(--text);background:var(--surface-soft);border-radius:11px;margin:30px 0;padding:14px 16px;font-weight:750}.status-panel{margin-top:34px}.status-panel h2{margin-bottom:14px;font-size:1.05rem}.status-panel dl{border:1px solid var(--border);border-radius:13px;margin:0;overflow:hidden}.status-panel dl>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:30px;min-height:50px;padding:12px 15px;display:flex}.status-panel dl>div:last-child{border-bottom:0}.status-panel dt{color:var(--muted)}.status-panel dd{color:var(--text);margin:0;font-weight:700}.ready-note{color:var(--muted);margin:28px 0 0;line-height:1.65}.dashboard-page{min-height:100vh}.dashboard-topbar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:0 28px;display:flex}.dashboard-shell{grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.dashboard-sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;justify-content:space-between;gap:40px;padding:28px 18px;display:flex}.dashboard-sidebar-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 12px 10px;font-size:.72rem;font-weight:800;display:block}.dashboard-sidebar nav{flex-direction:column;gap:5px;display:flex}.dashboard-nav-item{min-height:44px;color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-size:.9rem;font-weight:650;text-decoration:none;display:flex}.dashboard-nav-item:hover,.dashboard-nav-item.active{color:var(--brand-dark);background:var(--brand-soft)}.dashboard-business-summary{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;flex-direction:column;gap:5px;padding:14px;display:flex}.dashboard-business-summary span{color:var(--muted);font-size:.74rem}.dashboard-business-summary strong{color:var(--text);overflow-wrap:anywhere;font-size:.88rem}.dashboard-content{width:min(1180px,100%);margin:0 auto;padding:52px 44px 90px}.dashboard-heading{justify-content:space-between;gap:30px;margin-bottom:34px;display:flex}.dashboard-heading h1{margin-bottom:10px;font-size:clamp(2rem,4vw,2.8rem)}.dashboard-heading p{max-width:720px;color:var(--muted);margin:0;line-height:1.65}.dashboard-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.dashboard-status-card{border:1px solid var(--border);background:var(--surface);border-radius:15px;align-items:flex-start;gap:14px;min-height:112px;padding:20px;display:flex}.dashboard-card-icon{width:38px;height:38px;color:var(--brand-dark);background:var(--brand-soft);border-radius:10px;flex:none;place-items:center;display:grid}.dashboard-status-card>div{flex-direction:column;gap:7px;min-width:0;display:flex}.dashboard-status-card span{color:var(--muted);font-size:.8rem}.dashboard-status-card strong{color:var(--text);font-size:1rem}.dashboard-main-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);align-items:start;gap:20px;display:grid}.dashboard-panel{border:1px solid var(--border);background:var(--surface);border-radius:17px;padding:28px}.dashboard-panel h2{margin-bottom:8px;font-size:1.15rem}.dashboard-panel-heading p{color:var(--muted);margin-bottom:24px;font-size:.9rem;line-height:1.55}.dashboard-checklist{flex-direction:column;display:flex}.dashboard-checklist-item{border-bottom:1px solid var(--border);color:var(--muted);align-items:flex-start;gap:13px;padding:17px 0;display:flex}.dashboard-checklist-item:first-child{padding-top:6px}.dashboard-checklist-item:last-child{border-bottom:0;padding-bottom:0}.dashboard-checklist-item.complete{color:var(--brand)}.dashboard-checklist-item>div{flex-direction:column;gap:4px;display:flex}.dashboard-checklist-item strong{color:var(--text);font-size:.92rem}.dashboard-checklist-item span{color:var(--muted);font-size:.84rem;line-height:1.45}.dashboard-business-panel dl{margin:18px 0 0}.dashboard-business-panel dl>div{border-bottom:1px solid var(--border);padding:15px 0}.dashboard-business-panel dl>div:last-child{border-bottom:0}.dashboard-business-panel dt{color:var(--muted);margin-bottom:5px;font-size:.78rem}.dashboard-business-panel dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:650;line-height:1.5}.bookings-panel{padding:0;overflow:hidden}.bookings-table-wrap{width:100%;overflow-x:auto}.bookings-table{border-collapse:collapse;text-align:left;width:100%}.bookings-table th,.bookings-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 18px}.bookings-table th{color:var(--muted);background:var(--surface-soft);font-size:.76rem;font-weight:750}.bookings-table td{color:var(--text);font-size:.88rem}.bookings-table tbody tr:last-child td{border-bottom:0}.bookings-table tbody tr:hover{background:var(--surface-soft)}.booking-status{min-height:28px;color:var(--muted);background:var(--surface-soft);border-radius:999px;align-items:center;padding:0 10px;font-size:.76rem;font-weight:750;display:inline-flex}.booking-status-confirmed{color:var(--brand-dark);background:var(--brand-soft)}.booking-status-cancelled{color:var(--danger);background:var(--danger-bg)}.booking-detail-link{width:34px;height:34px;color:var(--brand-dark);border-radius:9px;place-items:center;text-decoration:none;display:grid}.booking-detail-link:hover{background:var(--brand-soft)}.bookings-state{min-height:180px;color:var(--muted);text-align:center;place-items:center;padding:30px;display:grid}.bookings-error{color:var(--danger)}.bookings-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:40px 24px;display:flex}.bookings-empty-icon{width:48px;height:48px;color:var(--brand-dark);background:var(--brand-soft);border-radius:13px;place-items:center;margin-bottom:17px;display:grid}.bookings-empty h2{margin-bottom:8px;font-size:1.1rem}.bookings-empty p{max-width:420px;color:var(--muted);margin:0;line-height:1.55}.booking-back-link{color:var(--muted);align-items:center;gap:7px;margin-bottom:28px;font-size:.88rem;font-weight:650;text-decoration:none;display:inline-flex}.booking-back-link:hover{color:var(--brand-dark)}.booking-detail-heading{margin-bottom:28px}.booking-detail-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start;gap:20px;display:grid}.booking-detail-list{margin:18px 0 0}.booking-detail-list>div{border-bottom:1px solid var(--border);padding:15px 0}.booking-detail-list>div:last-child{border-bottom:0}.booking-detail-list dt{color:var(--muted);margin-bottom:5px;font-size:.78rem}.booking-detail-list dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:.92rem;font-weight:650;line-height:1.5}.services-heading{align-items:flex-end}.services-add-button{flex:none;justify-content:center;align-items:center;gap:8px;display:inline-flex}.services-success{border:1px solid var(--brand);color:var(--brand-dark);background:var(--brand-soft);border-radius:12px;margin-bottom:20px;padding:14px 16px;font-size:.88rem;font-weight:650}.services-form-panel,.services-form-panel h2{margin-bottom:20px}.services-form{grid-template-columns:minmax(240px,1fr) minmax(150px,.4fr) minmax(150px,.4fr);align-items:end;gap:18px;display:grid}.services-description-field{grid-column:1/-1}.services-active-field{width:fit-content;color:var(--text);grid-column:1/-1;align-items:center;gap:10px;font-size:.88rem;font-weight:650;display:inline-flex}.services-active-field input{width:18px;height:18px;accent-color:var(--brand);margin:0}.services-form .form-error{grid-column:1/-1}.services-form-actions{grid-column:1/-1;align-items:center;gap:12px;display:flex}.services-cancel-button{border:1px solid var(--border);min-height:44px;color:var(--muted);background:var(--surface);font:inherit;border-radius:10px;padding:0 16px;font-size:.88rem;font-weight:700}.services-cancel-button:hover{color:var(--brand-dark);border-color:var(--brand);background:var(--brand-soft)}.services-cancel-button:disabled{cursor:not-allowed;opacity:.65}.services-panel{padding:0;overflow:hidden}.services-state{min-height:180px;color:var(--muted);text-align:center;place-items:center;padding:30px;display:grid}.services-error{color:var(--danger)}.services-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:40px 24px;display:flex}.services-empty-icon{width:48px;height:48px;color:var(--brand-dark);background:var(--brand-soft);border-radius:13px;place-items:center;margin-bottom:17px;display:grid}.services-empty h2{margin-bottom:8px;font-size:1.1rem}.services-empty p{max-width:440px;color:var(--muted);margin:0 0 22px;line-height:1.55}.services-table-wrap{width:100%;overflow-x:auto}.services-table{border-collapse:collapse;text-align:left;width:100%}.services-table th,.services-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 18px}.services-table th{color:var(--muted);background:var(--surface-soft);font-size:.76rem;font-weight:750}.services-table td{color:var(--text);font-size:.88rem}.services-table tbody tr:last-child td{border-bottom:0}.services-table tbody tr:hover{background:var(--surface-soft)}.service-name-cell{flex-direction:column;gap:6px;display:flex}.service-name-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.service-description{color:var(--muted);font-size:.8rem;line-height:1.45}.service-status{border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:750}.service-status.active{color:var(--brand-dark);background:var(--brand-soft)}.service-status.inactive{color:var(--muted);background:var(--surface-soft)}.services-table th:last-child,.services-table td:last-child{text-align:right}.service-edit-button{border:1px solid var(--border);min-height:36px;color:var(--brand-dark);background:var(--surface);font:inherit;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-size:.8rem;font-weight:700;display:inline-flex}.service-edit-button:hover{border-color:var(--brand);background:var(--brand-soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.calendar-heading{margin-bottom:26px}.calendar-toolbar{border:1px solid var(--border);background:var(--surface);border-radius:15px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:14px 16px;display:flex}.calendar-day-navigation{align-items:center;gap:14px;display:flex}.calendar-icon-button{border:1px solid var(--border);width:38px;height:38px;color:var(--muted);background:var(--surface);border-radius:10px;flex:none;place-items:center;display:grid}.calendar-icon-button:hover{color:var(--brand-dark);border-color:var(--brand);background:var(--brand-soft)}.calendar-selected-day{flex-direction:column;gap:3px;min-width:220px;display:flex}.calendar-selected-day strong{color:var(--text);font-size:.94rem}.calendar-selected-day span{color:var(--muted);font-size:.74rem}.calendar-date-actions{align-items:center;gap:10px;display:flex}.calendar-today-button{border:1px solid var(--border);min-height:38px;color:var(--brand-dark);background:var(--brand-soft);border-radius:9px;padding:0 13px;font-size:.82rem;font-weight:700}.calendar-date-field input{border:1px solid var(--border);min-height:38px;color:var(--text);background:var(--surface);font:inherit;border-radius:9px;outline:none;padding:0 10px;font-size:.82rem}.calendar-date-field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #138c8021}.calendar-panel{padding:0;overflow:hidden}.calendar-schedule{flex-direction:column;display:flex}.calendar-booking{border-bottom:1px solid var(--border);grid-template-columns:105px minmax(0,1fr) auto;align-items:center;gap:20px;min-height:106px;padding:19px 20px;display:grid}.calendar-booking:last-child{border-bottom:0}.calendar-booking:hover{background:var(--surface-soft)}.calendar-booking-time{color:var(--brand-dark);align-items:flex-start;gap:9px;display:flex}.calendar-booking-time>div{flex-direction:column;gap:3px;display:flex}.calendar-booking-time strong{color:var(--text);font-size:.94rem}.calendar-booking-time span{color:var(--muted);font-size:.78rem}.calendar-booking-main{flex-direction:column;gap:10px;min-width:0;display:flex}.calendar-booking-main>div:first-child{flex-direction:column;gap:4px;display:flex}.calendar-booking-customer{color:var(--text);font-size:.96rem}.calendar-booking-main>div:first-child span{color:var(--muted);font-size:.84rem}.calendar-booking-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px 16px;font-size:.78rem;display:flex}.calendar-booking-link{color:var(--brand-dark);white-space:nowrap;align-items:center;gap:6px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.settings-panel{max-width:720px;padding:28px}.settings-panel-heading{margin-bottom:24px}.settings-panel-heading h2{margin-bottom:8px}.settings-panel-heading p{color:var(--muted);margin-bottom:0;font-size:.9rem;line-height:1.6}.settings-form{flex-direction:column;align-items:flex-start;gap:20px;max-width:500px;display:flex}.settings-currency-field{width:100%}.settings-currency-field small{color:var(--muted);font-size:.8rem;line-height:1.55}.settings-success{border:1px solid var(--brand);width:100%;color:var(--brand-dark);background:var(--brand-soft);border-radius:12px;padding:14px 16px;font-size:.88rem;font-weight:650}.settings-save-button{align-self:flex-start}@media (width<=800px){.topbar{width:min(100% - 28px,1180px);min-height:72px}.brand>div,.brand span:last-child{display:block}.topbar-actions{gap:10px}.ghost-button{font-size:0}.ghost-button svg{width:19px;height:19px}.auth-stage{min-height:calc(100vh - 72px);padding-top:28px}.auth-card{padding:28px 22px}.onboarding-layout{grid-template-columns:1fr;gap:32px;width:min(100% - 28px,1060px);padding-top:40px}.onboarding-intro{padding:0;position:static}.onboarding-card{padding:24px 18px}.ready-container{width:min(100% - 28px,760px);padding-top:40px}.ready-card{padding:30px 22px}.dashboard-topbar{min-height:72px;padding:0 14px}.dashboard-shell{display:block}.dashboard-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:12px 14px}.dashboard-sidebar-label,.dashboard-business-summary{display:none}.dashboard-nav-item{width:fit-content}.dashboard-content{padding:36px 20px 70px}.dashboard-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-sidebar nav{flex-direction:row;overflow-x:auto}.dashboard-nav-item{flex:none}.booking-detail-grid{grid-template-columns:1fr}.services-heading{flex-direction:column;align-items:flex-start}.services-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.services-form .field:first-child{grid-column:1/-1}.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-day-navigation{justify-content:space-between}.calendar-selected-day{text-align:center;flex:1;min-width:0}.calendar-date-actions{justify-content:flex-end}.calendar-booking{grid-template-columns:82px minmax(0,1fr)}.calendar-booking-link{grid-column:2;width:fit-content}}@media (width<=520px){.language-switcher svg{display:none}.language-switcher{gap:5px}.services-form{grid-template-columns:1fr}.services-form .field:first-child{grid-column:auto}.services-form-actions{flex-direction:column;align-items:stretch}.services-form-actions button{width:100%}.calendar-date-actions{flex-direction:column;align-items:stretch}.calendar-today-button,.calendar-date-field input{width:100%}.calendar-booking{grid-template-columns:1fr;gap:12px}.calendar-booking-link{grid-column:1}}:root{color:#17201f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f5f8f7;--surface:#fff;--surface-soft:#f7faf9;--text:#17201f;--muted:#667472;--border:#dce5e3;--border-strong:#c9d6d3;--brand:#138c80;--brand-dark:#0d6e65;--brand-soft:#e9f6f4;--danger:#b42318;--danger-bg:#fff1f0;--shadow:0 18px 50px #182e2b17;background:#f5f8f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{background:radial-gradient(circle at top left, #138c8014, transparent 32rem), var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}a{color:var(--brand-dark)}#root{min-height:100vh}
