:root{--blue:#2563eb;--blue-dark:#1d4ed8;--blue-soft:#eff6ff;--blue-ring:#bfdbfe;--navy:#0f172a;--sidebar:#0b1220;--sidebar-hover:#ffffff0f;--sidebar-active:#2563eb2e;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--bg:#f3f6fb;--card:#fff;--green:#16a34a;--green-bg:#dcfce7;--amber:#d97706;--amber-bg:#fef3c7;--red:#dc2626;--red-bg:#fee2e2;--sky:#2563eb;--sky-bg:#dbeafe;--shadow:0 10px 30px #0f172a0f;--radius:18px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,Segoe UI,system-ui,sans-serif;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.btn{-webkit-tap-highlight-color:transparent;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn:focus,.btn:focus-visible,.btn:active{box-shadow:none;outline:none}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.btn-ghost:hover{color:var(--text);background:#f8fafc}.btn-danger{background:var(--red-bg);color:var(--red)}.btn-sm{border-radius:10px;padding:8px 12px;font-size:13px}.public-shell{flex-direction:column;min-height:100vh;display:flex}.public-header{z-index:20;border-bottom:1px solid var(--border);background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 40px;display:grid;position:sticky;top:0}.logo{color:var(--blue);letter-spacing:-.03em;align-items:center;gap:10px;font-size:22px;font-weight:800;display:flex}.logo-mark{background:var(--blue);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.public-nav{color:var(--muted);gap:28px;font-weight:500;display:flex}.public-nav a.active,.public-nav a:hover{color:var(--text)}.public-header .btn{border-radius:11px;justify-self:end;padding:10px 18px}.public-main{flex:1;padding:28px 40px 48px}.public-footer{color:var(--muted);justify-content:space-between;padding:20px 40px 28px;font-size:13px;display:flex}.booking-hero{color:#fff;background:linear-gradient(90deg,#071023b8 8%,#0710232e 55%,#07102314 100%),url(/images/thumbs/hero.jpg) 50%/cover;border-radius:22px;flex-direction:column;justify-content:center;height:210px;margin-bottom:22px;padding:0 48px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.booking-hero h1{letter-spacing:-.04em;white-space:nowrap;max-width:100%;margin:0;font-size:clamp(18px,7.2cqi,42px);font-weight:800;line-height:1.15}.booking-hero p{opacity:.92;margin:8px 0 0;font-size:16px}.panel{background:var(--card);box-shadow:var(--shadow);border:1px solid #edf1f7;border-radius:22px;padding:28px 32px 24px}.stepper{justify-content:center;align-items:center;gap:0;max-width:720px;margin-bottom:28px;margin-left:auto;margin-right:auto;display:flex}.stepper-item{min-width:92px;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.stepper-item.active{color:var(--blue)}.stepper-item.done{color:var(--text)}.step-dot{color:#64748b;background:#e2e8f0;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.stepper-item.active .step-dot,.stepper-item.done .step-dot{background:var(--blue);color:#fff}.stepper-line{background:#e2e8f0;border-radius:99px;flex:1;height:3px;margin:0 8px 22px}.stepper-line.done{background:var(--blue)}.step-head h2{letter-spacing:-.03em;background:0 0;border-radius:10px;margin:0;font-size:22px;transition:background-color .5s,box-shadow .5s;box-shadow:0 0 #0000}.step-head h2.is-highlight{background:#dbeafe;width:fit-content;transition-duration:.3s;box-shadow:0 0 0 8px #dbeafe}.step-head p{color:var(--muted);margin:6px 0 22px}.service-groups{flex-direction:column;gap:4px;display:flex}.service-group-title{letter-spacing:-.02em;margin:18px 0 12px;font-size:18px;font-weight:800}.service-groups>.service-group:first-child .service-group-title{margin-top:0}.service-group-title.is-nested{color:#334155;margin-top:14px;font-size:14px;font-weight:700}.service-group-body{flex-direction:column;gap:4px;display:flex}.service-group .service-group{margin-left:12px}.service-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-card{border:1.5px solid var(--border);text-align:left;background:#fff;border-radius:16px;align-items:center;gap:14px;min-height:84px;padding:12px 14px;display:flex}.service-card:hover{border-color:#cbd5e1}.service-card.selected{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue-ring);background:#f8fbff}.service-card img,.thumb{object-fit:cover;background:#e2e8f0;border-radius:12px;flex-shrink:0;width:58px;height:58px}.service-card strong{font-size:15px;display:block}.service-card span{color:var(--muted);font-size:13px}.check{color:#fff;background:#fff;border:1.5px solid #cbd5e1;border-radius:6px;flex-shrink:0;place-items:center;width:22px;height:22px;margin-left:auto;display:grid}.service-card.selected .check{background:var(--blue);border-color:var(--blue);color:#fff}.booking-footer{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);background:#fffffff5;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px 72px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0f172a14}.booking-footer .btn{min-height:44px}.public-shell:has(.booking-has-dock){padding-bottom:96px}.summary-price{letter-spacing:-.03em;font-size:22px;font-weight:800}.summary-label{color:var(--muted);margin-bottom:2px;font-size:13px}.datetime-grid{grid-template-columns:1.15fr 1fr;gap:32px;display:grid}.calendar-card,.times-card{min-height:360px}.calendar-head,.times-head{justify-content:space-between;align-items:center;margin-bottom:16px;font-weight:700;display:flex}.icon-btn{border:1px solid var(--border);width:34px;height:34px;color:var(--text);background:#fff;border-radius:10px;place-items:center;display:grid}.dow,.day-grid{grid-template-columns:repeat(7,1fr);display:grid}.dow{color:var(--muted);text-align:center;margin-bottom:8px;font-size:12px;font-weight:600}.day-grid button{height:42px;color:var(--text);background:0 0;border:0;border-radius:50%;width:42px;margin:2px auto}.day-grid button:hover:not(:disabled){background:var(--blue-soft)}.day-grid button.selected,.day-grid button.selected:hover,.day-grid button.selected:focus,.day-grid button.selected:active{background:var(--blue-soft);color:var(--blue);box-shadow:inset 0 0 0 1.5px var(--blue);font-weight:700}.day-grid button.today:not(.selected){box-shadow:inset 0 0 0 1.5px var(--blue);color:var(--blue)}.day-grid button:disabled{color:#cbd5e1;cursor:default}.time-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.time-grid button{border:1.5px solid var(--border);color:var(--text);background:#fff;border-radius:12px;padding:11px 8px;font-weight:600}.time-grid button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.time-grid button.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.time-grid button:disabled{color:#cbd5e1;background:#f8fafc}.staff-mode{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;display:grid}.staff-mode button{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:14px;padding:14px 16px}.staff-mode button strong{color:var(--text);margin-bottom:4px;display:block}.staff-mode button span{color:var(--muted);font-size:13px}.staff-mode button.selected{border-color:var(--blue);background:#eff6ff}.service-staff{border:1px solid var(--border);border-radius:16px;margin-bottom:14px;padding:14px}.service-staff header{justify-content:space-between;gap:12px;margin-bottom:12px;display:flex}.service-staff header span{color:var(--muted)}.bd-staff-choice{margin-bottom:14px}.bd-staff-note{margin:0 0 8px;font-size:12px}.bd-split-staff{gap:10px;display:grid}.booking-sheet .staff-mode button:disabled{opacity:.7;cursor:default}.employee-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.employee-card{border:1.5px solid var(--border);text-align:center;background:#fff;border-radius:18px;padding:22px 16px 18px}.employee-card:hover{border-color:#cbd5e1}.employee-card.selected{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue-ring);background:#f8fbff}.employee-card h3{margin:12px 0 2px;font-size:16px}.employee-card p{color:var(--muted);margin:0;font-size:13px}.rating{color:var(--text);align-items:center;gap:4px;margin-top:10px;font-size:13px;font-weight:700;display:inline-flex}.rating span{color:var(--muted);font-weight:500}.any-avatar,.avatar,.avatar-fallback{object-fit:cover;border-radius:50%;flex-shrink:0;width:72px;height:72px}.employee-card .any-avatar,.employee-card .avatar,.employee-card .avatar-fallback{margin:0 auto}.any-avatar{color:var(--blue);background:#eef2ff;place-items:center;display:grid}.avatar-fallback{color:var(--blue);background:#dbeafe;place-items:center;font-weight:800;display:grid}.confirm-grid{grid-template-columns:1fr 1fr;gap:36px;display:grid}.confirm-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 0;display:flex}.confirm-row>.any-avatar,.confirm-row>.avatar,.confirm-row>.avatar-fallback{border-radius:50%;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;overflow:hidden}.confirm-row>div:not(.any-avatar):not(.avatar-fallback){flex:1}.confirm-row:last-of-type{border-bottom:0}.confirm-row strong{display:block}.confirm-row em{color:var(--muted);font-size:13px;font-style:normal}.confirm-total{justify-content:space-between;margin-top:8px;font-size:20px;font-weight:800;display:flex}.form-grid{gap:14px;display:grid}.field{gap:6px;display:grid}.field label{color:#334155;font-size:13px;font-weight:600}.field input,.field textarea,.field select{border:1.5px solid var(--border);background:#fff;border-radius:12px;outline:none;width:100%;padding:11px 12px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.field textarea{resize:vertical;min-height:90px}.settings-stack{gap:16px;max-width:640px;display:grid}.check-row{color:#334155;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.check-row input{width:auto;accent-color:var(--blue)}.smtp-row{grid-template-columns:140px 1fr;align-items:end;gap:14px;display:grid}.smtp-secure{padding-bottom:10px}.smtp-test{align-items:end;gap:12px;display:flex}.smtp-test .btn{margin-bottom:1px}.confirm-cta{width:100%;margin-top:18px;padding:14px;font-size:15px}.success{text-align:center;padding:36px 20px 12px}.success-icon{background:var(--green-bg);width:72px;height:72px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.success h2{margin:0;font-size:28px}.success p{color:var(--muted)}.success-card{text-align:left;border:1px solid var(--border);border-radius:16px;max-width:460px;margin:24px auto 0;padding:8px 18px}.page-hero-simple{padding:12px 0 8px}.page-hero-simple h1{letter-spacing:-.04em;margin:0 0 8px;font-size:32px}.page-hero-simple p{color:var(--muted);margin:0 0 24px}.admin-shell{background:var(--bg);grid-template-columns:250px 1fr;height:100dvh;display:grid;overflow:hidden}.sidebar{background:var(--sidebar);color:#cbd5e1;flex-direction:column;justify-content:flex-start;align-self:stretch;min-height:0;padding:22px 16px;display:flex;overflow-y:auto}.sidebar .logo{color:#fff;padding:4px 10px 22px}.sidebar .logo-mark{background:var(--blue)}.burger,.sidebar-close,.sidebar-backdrop,.mobile-brand,.mobile-bottom-nav,.side-logout{display:none}.bell{position:relative}.bell-dot{display:none}.bell.has-unread .bell-dot{background:#ef4444;border:1.5px solid #fff;border-radius:50%;width:8px;height:8px;display:block;position:absolute;top:8px;right:9px}.notify{position:relative}.notify-panel{z-index:80;background:#fff;border:1px solid #e8eef6;border-radius:16px;flex-direction:column;width:min(360px,100vw - 16px);max-height:min(440px,100dvh - 96px);display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 40px #0f172a29}.notify-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 10px;display:flex}.notify-head strong{color:var(--navy);font-size:15px}.notify-head span{color:#64748b;font-size:12px;font-weight:650}.notify-list{padding:8px;overflow:auto}.notify-list section{gap:6px;display:grid}.notify-list section+section{margin-top:10px}.notify-list p{color:#94a3b8;letter-spacing:.04em;text-transform:uppercase;margin:2px 6px 0;font-size:11px;font-weight:750}.notify-item{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:12px;gap:3px;padding:10px 10px 10px 12px;display:grid}.notify-item strong{color:#334155;font-size:14px;font-weight:650}.notify-item em{color:#64748b;font-size:13px;font-style:normal;line-height:1.35}.notify-item.is-unread{background:#eff6ff}.notify-item.is-unread strong{color:var(--navy);font-weight:750}.notify-empty{color:#94a3b8;text-align:center;margin:0;padding:22px 14px 24px}.appt-status-pills{display:none}.sched-staff-avatar{flex-shrink:0;display:inline-flex;position:relative}.staff-status-dot{display:none}.side-nav{gap:4px;display:grid}.side-nav a,.side-link{color:#94a3b8;border-radius:12px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;font-weight:600;display:flex}.side-nav a:hover{background:var(--sidebar-hover);color:#fff}.side-nav a.active{background:var(--sidebar-active);color:#fff}.admin-body{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.admin-top{border-bottom:1px solid var(--border);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;display:flex}.top-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.bell,.admin-chip{border:1px solid var(--border);color:#475569;background:#fff;border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.admin-chip{width:auto;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:6px 10px 6px 6px;font-weight:700;display:flex}.admin-chip:hover{background:#f8fafc}.admin-photo{display:inline-flex;position:relative}.admin-photo-badge{background:var(--navy);color:#fff;border:2px solid #fff;border-radius:999px;place-items:center;width:16px;height:16px;display:grid;position:absolute;bottom:-3px;right:-3px}.admin-main{flex:1;min-height:0;padding:24px 28px 40px;overflow-y:auto}.page-title{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-title h1{letter-spacing:-.04em;margin:0;font-size:28px}.page-title p{color:var(--muted);margin:6px 0 0}.page-title-actions{flex-shrink:0;gap:8px;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px;display:grid}.stat-card{box-shadow:var(--shadow);background:#fff;border:1px solid #edf1f7;border-radius:18px;padding:18px}.stat-top{justify-content:space-between;align-items:flex-start;display:flex}.stat-icon{border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.stat-card h3{letter-spacing:-.04em;margin:14px 0 0;font-size:30px}.stat-card label{color:var(--muted);font-size:13px;font-weight:600}.delta{margin-top:6px;font-size:12px;font-weight:700}.delta.up{color:var(--green)}.delta.down{color:#f43f5e}.dash-grid{grid-template-columns:1.1fr 1.2fr;gap:16px;display:grid}.card{box-shadow:var(--shadow);background:#fff;border:1px solid #edf1f7;border-radius:18px;padding:18px 18px 8px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head h2{letter-spacing:-.02em;margin:0;font-size:16px}.dash-page .card.dash-card{padding:18px 20px 16px}.dash-head{align-items:center;margin-bottom:16px}.dash-period{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:0;display:flex}.dash-period-mobile{display:none}.dash-presets{gap:6px;display:flex}.dash-presets .btn{background:#fff;border-radius:999px;padding:8px 14px}.dash-presets .btn.is-on{background:var(--blue);color:#fff;border-color:var(--blue)}.dash-page.is-loading{opacity:.72}.dash-empty{color:var(--muted);text-align:center;padding:28px 12px}.dash-kpis{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;display:grid}.dash-kpi{box-shadow:var(--shadow);border-radius:20px;min-width:0;padding:16px 18px 14px}.dash-kpi.is-appointments{background:linear-gradient(#fff1f4 0%,#fff 58%)}.dash-kpi.is-customers{background:linear-gradient(#ecfdf5 0%,#fff 58%)}.dash-kpi.is-earnings{background:linear-gradient(#f5f3ff 0%,#fff 58%)}.dash-kpi.is-rating{background:linear-gradient(#fff7ed 0%,#fff 58%)}.dash-kpi-top{align-items:center;gap:8px;margin-bottom:8px;display:flex}.dash-kpi-top label{color:#64748b;font-size:13px;font-weight:600}.dash-kpi-icon{background:#fff;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.dash-kpi.is-appointments .dash-kpi-icon{color:#f43f5e}.dash-kpi.is-customers .dash-kpi-icon{color:#10b981}.dash-kpi.is-earnings .dash-kpi-icon{color:#8b5cf6}.dash-kpi.is-rating .dash-kpi-icon{color:#f59e0b}.dash-kpi-body{justify-content:space-between;align-items:flex-end;gap:8px;display:flex}.dash-kpi h3{letter-spacing:-.05em;margin:0;font-size:32px}.dash-kpi .delta{white-space:nowrap;align-items:center;gap:4px;margin-top:6px;font-size:12px;display:inline-flex}.dash-kpi-reviews{color:#94a3b8;align-items:center;gap:6px;margin-top:6px;font-size:12px;font-weight:600;display:flex}.dash-stars{gap:1px;display:inline-flex}.dash-spark{flex-shrink:0;width:118px;height:44px}.dash-mid,.dash-lists,.dash-trio{gap:16px;margin-bottom:16px;display:grid}.dash-mid{grid-template-columns:1.25fr .95fr}.dash-lists{grid-template-columns:1.2fr 1fr}.dash-trio{grid-template-columns:1.05fr 1.05fr .9fr}.dash-tabs{background:#f8fafc;border-radius:999px;gap:4px;padding:3px;display:flex}.dash-tabs button{color:#64748b;background:0 0;border:0;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.dash-tabs button.is-on{color:var(--blue);background:#fff;box-shadow:0 1px 2px #0f172a14}.dash-mini-select{color:#475569;background:#fff;border:1px solid #edf1f7;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.dash-link{color:var(--blue);align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.dash-ov{grid-template-columns:52px 1fr;gap:8px;height:240px;display:grid}.dash-ov-axis{color:#94a3b8;text-align:right;flex-direction:column;justify-content:space-between;padding:4px 0 22px;font-size:11px;font-weight:600;display:flex}.dash-ov-plot{min-width:0;position:relative}.dash-ov-grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:4px 0 22px}.dash-ov-grid i{border-top:1px dashed #eef2f7;display:block}.dash-ov-bars{align-items:end;gap:8px;display:grid;position:absolute;inset:4px 0 0}.dash-ov-col{background:0 0;border:0;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;min-width:0;height:100%;padding:0;display:flex;position:relative}.dash-ov-bar{background:linear-gradient(#93c5fd 0%,#dbeafe 100%);border-radius:10px 10px 6px 6px;width:min(36px,70%);min-height:8px}.dash-ov-bar.is-hot{background:linear-gradient(#2563eb 0%,#60a5fa 100%)}.dash-ov-col em{color:#94a3b8;white-space:nowrap;font-size:11px;font-style:normal;font-weight:600}.dash-ov-tip{box-shadow:var(--shadow);white-space:nowrap;z-index:2;background:#fff;border:1px solid #edf1f7;border-radius:10px;padding:6px 8px;display:grid;position:absolute;bottom:calc(100% - 28px);left:50%;transform:translate(-50%,-8px)}.dash-ov-tip small{color:#94a3b8;font-size:10px}.dash-ov-tip strong{font-size:12px}.dash-donut-row,.dash-mix{align-items:center;gap:18px;display:flex}.dash-donut-value{fill:#0f172a;font-size:28px;font-weight:800}.dash-donut-label{fill:#94a3b8;font-size:12px;font-weight:600}.dash-legend{flex:1;gap:10px;margin:0;padding:0;list-style:none;display:grid}.dash-legend li{grid-template-columns:8px 1fr auto auto;align-items:center;gap:8px;font-size:13px;display:grid}.dash-legend i{border-radius:50%;width:8px;height:8px}.dash-legend em{color:#94a3b8;font-style:normal;font-weight:600}.dash-legend strong{font-variant-numeric:tabular-nums}.dash-legend.compact li{grid-template-columns:8px 1fr auto}.dash-today{margin:0;padding:0;list-style:none;display:grid}.dash-today li{border-bottom:1px solid #f1f5f9;grid-template-columns:64px 40px minmax(108px,1.2fr) minmax(90px,1fr) minmax(90px,.9fr) auto 16px;align-items:center;gap:10px;padding:12px 0;display:grid}.dash-today li:last-child{border-bottom:0}.dash-today-time{border-left:3px solid #60a5fa;padding-left:10px;display:grid}.dash-today-time strong{font-size:14px}.dash-today-time small{color:#94a3b8;font-size:12px}.dash-today-avatar{border-radius:50%;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.dash-today-who{min-width:0}.dash-today-who strong,.dash-today-service,.dash-today-emp{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;display:block;overflow:hidden}.dash-today-who small{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.dash-today-emp{align-items:center;gap:8px;font-weight:600;display:flex}.dash-today-go{color:#94a3b8;display:grid}.dash-recent-scroll{max-height:176px;overflow-y:auto}.dash-recent-scroll thead th{z-index:1;box-shadow:0 1px 0 var(--border);background:#fff;position:sticky;top:0}.dash-recent-table th,.dash-recent-table td{white-space:nowrap;padding-top:10px;padding-bottom:10px}.dash-recent-table td:last-child{font-weight:700}.dash-emp-list,.dash-top-services{gap:14px;margin:0;padding:0;list-style:none;display:grid}.dash-emp-list li{grid-template-columns:40px minmax(0,1.1fr) 58px minmax(72px,1fr) 72px;align-items:center;gap:10px;display:grid}.dash-emp-who{min-width:0}.dash-emp-list .dash-emp-who strong,.dash-emp-list .dash-emp-pay{white-space:nowrap;text-overflow:ellipsis;font-size:14px;display:block;overflow:hidden}.dash-emp-list small{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.dash-emp-stats{display:contents}.dash-emp-pay{font-variant-numeric:tabular-nums;font-size:14px}.dash-emp-bar,.dash-svc-bar,.dash-top-services b.dash-svc-bar{background:#f1f5f9;border-radius:99px;height:6px;display:block;overflow:hidden}.dash-emp-bar b,.dash-svc-bar em{border-radius:inherit;height:100%;display:block}.dash-emp-count,.dash-svc-count{color:#94a3b8;text-align:right;font-size:12px;font-style:normal;font-weight:600}.dash-emp-count b,.dash-svc-count b{font-weight:inherit}.dash-svc-stats{display:contents}.dash-svc-name{min-width:0}.dash-svc-pay{font-variant-numeric:tabular-nums}.dash-svc-go{color:#94a3b8;place-items:center;display:grid}.dash-top-services li{grid-template-columns:8px minmax(0,1.2fr) 72px 56px minmax(48px,.8fr) 16px;align-items:center;gap:8px;font-size:13px;display:grid}.dash-top-services i{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-top-services .dash-svc-count{color:#94a3b8}.dash-insight{color:#1d4ed8;background:#eff6ff;border-radius:12px;align-items:flex-start;gap:8px;margin:16px 0 0;padding:10px 12px;font-size:12px;font-weight:600;line-height:1.45;display:flex}.dash-insight svg{flex-shrink:0;margin-top:1px}@media (width<=1500px){.dash-today li{grid-template-columns:64px 40px minmax(0,1fr) auto 16px}.dash-today-service,.dash-today-emp{display:none}}@media (width<=1280px){.dash-kpis{grid-template-columns:1fr 1fr}.dash-mid,.dash-lists,.dash-trio{grid-template-columns:1fr}}@media (width<=1100px){.stats{grid-template-columns:1fr 1fr}.dash-grid{grid-template-columns:1fr}.dash-head{flex-direction:column;align-items:flex-start}.dash-period{justify-content:flex-start}}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--muted);letter-spacing:.02em;border-bottom:1px solid var(--border);padding:10px 12px;font-size:12px;font-weight:700}.table td{vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:14px 12px;font-size:14px}.table tr:last-child td{border-bottom:0}.person{align-items:center;gap:10px;font-weight:600;display:flex}.person small{color:var(--muted);font-weight:500;display:block}.table-actions{white-space:nowrap}.table-actions .btn{margin-right:4px}.staff-page .page-title{align-items:center;margin-bottom:18px}.staff-page .page-title h1{letter-spacing:-.045em;font-size:32px;font-weight:800}.staff-page .page-title .btn{border-radius:12px;min-height:42px;padding:10px 16px}.staff-card{border-radius:20px;padding:14px 8px 8px}.staff-search{color:#94a3b8;background:#fff;border:1.5px solid #e6ebf2;border-radius:12px;align-items:center;gap:8px;min-height:44px;margin:2px 12px 6px;padding:0 14px;display:flex}.staff-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.staff-search input{width:100%;color:var(--text);background:0 0;border:0;outline:none;font-size:14px}.staff-table-wrap{overflow-x:auto}.staff-table th{color:#94a3b8;letter-spacing:0;border-bottom:1px solid #f1f5f9;padding:14px 16px 12px;font-size:13px;font-weight:600}.staff-table td{border-bottom:1px solid #f4f7fb;padding:16px}.staff-person{align-items:center;gap:12px;min-width:160px;display:flex}.staff-person strong{color:var(--navy);font-size:14px;font-weight:750;display:block}.staff-person small{color:#94a3b8;margin-top:1px;font-size:12px;font-weight:500;display:block}.staff-email{color:#64748b}.staff-page .badge{padding:5px 12px;font-weight:650}.staff-status{color:#16a34a;background:#ecfdf3;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:700;display:inline-flex}.staff-status i{background:#22c55e;border-radius:50%;width:8px;height:8px}.staff-status.is-off{color:#64748b;background:#f1f5f9}.staff-status.is-off i{background:#94a3b8}.staff-actions{align-items:center;gap:8px;display:flex}.staff-edit{color:#334155;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:64px;font-weight:650}.staff-edit:hover{color:var(--navy);background:#f8fafc}.staff-delete{color:#ef4444;background:#fff1f2;border-radius:10px;min-width:72px;font-weight:700}.staff-delete:hover{background:#ffe4e6}.staff-foot{color:#94a3b8;margin:0;padding:14px 16px 10px;font-size:13px}.staff-mobile,.staff-login-photo,.staff-field-icon,.staff-status-mark{display:none}.table tr.cat-row td{background:#f8fafc}.drag-handle{color:#94a3b8;cursor:grab;flex-shrink:0;display:inline-flex}.catalog-table tr[draggable=true]{cursor:grab}.catalog-table.is-dragging tr[draggable=true]{cursor:grabbing}.catalog-table.is-dragging.is-invalid,.catalog-table.is-dragging.is-invalid tr[draggable=true]{cursor:not-allowed}.catalog-table .is-dragging-row td{opacity:.45}.catalog-table .drop-before td{box-shadow:inset 0 2px 0 var(--blue)}.catalog-table .drop-after td{box-shadow:inset 0 -2px 0 var(--blue)}.catalog-table .drop-into td{box-shadow:inset 0 0 0 2px var(--blue);background:#eff6ff}.catalog-table .catalog-add-col{white-space:nowrap;width:1%}.catalog-table .table-actions{white-space:nowrap}.services-mobile{display:none}.roster-toolbar{z-index:20;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:-8px 0 16px;display:flex;position:relative}.roster-this-week{margin-left:8px}.roster-cal-pop{z-index:40;border:1px solid var(--border);background:#fff;border-radius:16px;width:320px;padding:12px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 16px 36px #0f172a24}.roster-cal-pop .dash-cal-grid button.is-selected{color:#1d4ed8;background:#dbeafe}.roster-cal-pop .dash-cal-grid button.is-out.is-selected{color:#60a5fa}.roster-cal-pop .dash-cal-grid button.is-today.is-selected{box-shadow:inset 0 0 0 1.5px var(--blue)}.admin-main:has(>.roster-page){flex-direction:column;display:flex;overflow:hidden}.roster-page{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.roster-card{flex-direction:column;flex:auto;min-height:0;padding:0;display:flex;overflow:hidden}.roster-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:auto}.roster-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:860px}.roster-grid th,.roster-grid td{border-bottom:1px solid var(--border);text-align:center;border-right:1px solid #f1f5f9;padding:10px;font-size:13px}.roster-grid thead th{z-index:3;color:var(--muted);background:#f8fafc;font-weight:700;position:sticky;top:0}.roster-grid thead th span{color:var(--navy);display:block}.roster-grid thead th small{margin-top:2px;font-weight:600;display:block}.roster-grid thead th.roster-staff-head,.roster-grid tbody th{text-align:left;background:#fff;position:sticky;left:0}.roster-grid thead th.roster-staff-head{z-index:5;background:#f8fafc;min-width:220px}.roster-grid tbody th{z-index:2;border-right:1px solid var(--border);min-width:220px}.roster-grid .is-today{background:var(--blue-soft)}.roster-cell{border:0;border-radius:999px;width:100%;min-width:88px;padding:8px 10px;font-size:12px;font-weight:700}.roster-cell.is-on{background:var(--green-bg);color:var(--green)}.roster-cell.is-off{background:var(--red-bg);color:var(--red)}.roster-cell:hover{filter:brightness(.97)}.roster-cell-dot{display:none}.roster-viewbar{justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;display:flex}.roster-view-actions{align-items:center;gap:8px;min-width:0;display:flex}.roster-edit-btn,.roster-save-btn{border-radius:12px;flex-shrink:0;height:38px;padding:0 14px;font-weight:700}.roster-edit-btn{background:#fff}.roster-edit-btn:disabled,.roster-edit-btn:disabled:hover{opacity:.45;color:#94a3b8;cursor:not-allowed;background:#fff}.roster-view-toggle{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:2px;padding:3px;display:flex}.roster-view-toggle button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:11px;padding:8px 14px;font-size:13px;font-weight:700}.roster-view-toggle button.is-on{background:var(--blue);color:#fff}.roster-legend{color:var(--muted);white-space:nowrap;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.roster-legend span{align-items:center;gap:6px;display:inline-flex}.roster-legend-dot{border-radius:50%;width:8px;height:8px;display:block}.roster-legend-dot.is-on{background:#22c55e}.roster-legend-dot.is-off{background:#ef4444}.roster-page.is-month .roster-grid{width:max-content;min-width:100%}.roster-page.is-month .roster-grid thead th:not(.roster-staff-head),.roster-page.is-month .roster-grid td{width:48px;min-width:48px;max-width:52px;padding:8px 2px}.roster-page.is-month .roster-grid thead th:not(.roster-staff-head){white-space:nowrap;font-size:12px}.roster-page.is-month .roster-cell{border-radius:10px;place-items:center;width:34px;min-width:0;height:34px;margin:0 auto;padding:0;display:grid}.roster-page.is-month .roster-cell-label{display:none}.roster-page.is-month .roster-cell-dot{background:currentColor;border-radius:50%;width:8px;height:8px;display:block}.cat-name{color:var(--navy);align-items:center;gap:8px;font-weight:700;display:flex}.cat-name small{color:var(--muted);font-size:12px;font-weight:500;display:block}.cat-thumb{border-radius:8px;width:32px;height:32px}.photo-picker{align-items:center;gap:12px;display:flex}.photo-picker img,.photo-picker .thumb{border-radius:14px;width:72px;height:72px}.photo-picker-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.photo-picker-actions small{width:100%}.cat-toggle{color:#64748b;background:0 0;border:0;border-radius:6px;place-items:center;width:22px;height:22px;padding:0;display:grid}.cat-toggle:hover:not(:disabled){color:var(--navy);background:#eef2f7}.cat-toggle:disabled{opacity:.35;cursor:default}.cat-toggle-spacer{width:16px;height:16px;display:block}.badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge.upcoming,.badge.confirmed,.badge.completed{background:var(--green-bg);color:var(--green)}.badge.awaiting_payment{color:#a16207;background:#fef9c3}.badge.in_progress{background:var(--sky-bg);color:var(--sky)}.badge.cancelled{color:#be185d;background:#fce7f3}.badge.paid{background:var(--green-bg);color:var(--green)}.badge.unpaid{color:#be185d;background:#fce7f3}.badge.active{background:var(--green-bg);color:var(--green)}.badge.inactive{color:#64748b;background:#f1f5f9}.badge.admin{background:var(--sky-bg);color:var(--sky)}.badge.manager{color:#b45309;background:#fef3c7}.badge.staff{color:#475569;background:#f1f5f9}.badge.receptionist{color:#047857;background:#ecfdf5}.badge.custom-role{color:#6d28d9;background:#ede9fe}.filters{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.filters select,.filters input,.search-inline{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:160px;padding:10px 12px}.search-inline{color:var(--muted);align-items:center;gap:8px;min-width:240px;display:flex}.search-inline input{border:0;outline:none;width:100%}.modal-backdrop{z-index:50;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;flex-direction:column;width:min(560px,100%);max-height:calc(100dvh - 32px);padding:20px;display:flex;overflow:hidden;box-shadow:0 20px 50px #0f172a33}.modal.wide{width:min(720px,100%)}.modal.booking-sheet{background:#f4f7fb;width:min(1080px,100%);height:min(900px,100dvh - 32px);padding:18px 22px 14px}.modal.block-sheet{width:min(560px,100%)}.modal.booking-sheet .modal-body,.modal.block-sheet .modal-body,.modal.customer-notes-sheet .modal-body{flex-direction:column;flex:1;min-height:0;padding-right:0;display:flex;overflow:hidden}.modal-head-main{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.customer-notes-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.customer-notes-head strong{font-size:16px;display:block}.customer-notes-head p{color:#64748b;flex-wrap:wrap;gap:12px 16px;margin:4px 0 0;font-size:13px;font-weight:500;display:flex}.customer-notes-head span{align-items:center;gap:6px;display:inline-flex}.customer-notes-head svg{color:#94a3b8}.customer-book-btn{width:100%;height:44px;margin:4px 0 14px}.customer-popup-stats,.bd-note-x{display:none}.modal-head{flex:none;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-head h3{margin:0}.modal-body{overscroll-behavior:contain;min-height:0;padding-right:4px;overflow-y:auto}.modal-actions{border-top:1px solid var(--border);z-index:1;background:#fff;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:12px;display:flex;position:sticky;bottom:0}.chip-list{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.chip.on{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}.muted{color:var(--muted)}.error{color:var(--red);margin-top:8px;font-size:13px}.empty{text-align:center;color:var(--muted);padding:32px}.page-loading{min-height:240px;color:var(--blue);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;font-size:15px;font-weight:700;display:flex}.is-page-loading>:not(.page-title):not(.employees-head):not(.page-loading),.is-page-loading .page-title>:not(:first-child),.is-page-loading .employees-head>:not(.employees-title),.is-page-loading .page-title p,.is-page-loading .employees-title-icon,.is-page-loading .employees-title p{display:none!important}.save-overlay{z-index:400;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.save-overlay .page-loading{background:0 0;min-height:0;padding:0}.page-loading-spin{border:3px solid #dbeafe;border-top-color:var(--blue);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite page-loading-spin}@keyframes page-loading-spin{to{transform:rotate(360deg)}}.team-grid,.public-service-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.public-service-grid{grid-template-columns:repeat(3,1fr)}.about-card{grid-template-columns:1.2fr .8fr;align-items:center;gap:28px;display:grid}.about-card img{object-fit:cover;border-radius:18px;width:100%;height:280px}.select-status{background:0 0;border:0;padding:0;font-weight:700}.appointments-page .page-title{margin-bottom:14px}.appt-date-mobile{display:none}.appt-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar-left,.toolbar-right,.table-tools,.board-date,.legend{align-items:center;gap:8px;display:flex}.date-chip,.filter-chip{border:1px solid var(--border);color:#475569;background:#fff;border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;display:flex;position:relative}.date-chip input[type=date]{opacity:0;cursor:pointer;position:absolute;inset:0}.date-chip-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:600;display:flex}.appointments-page .appt-toolbar,.appointments-page .page-title{z-index:30;position:relative}.appointments-page .appt-cal-pop{z-index:40;border:1px solid var(--border);background:#fff;border-radius:16px;width:320px;padding:12px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 16px 36px #0f172a24}.dash-cal{gap:10px;display:grid}.dash-cal-head{justify-content:space-between;align-items:center;display:flex}.dash-cal-head strong{font-size:15px}.dash-cal-nav{border:1px solid var(--border);width:36px;height:36px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;place-items:center;display:grid}.dash-cal-week,.dash-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.dash-cal-week span{text-align:center;color:var(--muted);padding:2px 0;font-size:11px;font-weight:700}.dash-cal-grid button{height:38px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:13px;font-weight:600}.dash-cal-grid button.is-today{box-shadow:inset 0 0 0 1.5px var(--blue)}.dash-cal-grid button.is-out{color:#cbd5e1}.dash-cal-grid button.is-selected{background:var(--blue);color:#fff;border-radius:10px}.filter-chip select{color:var(--text);background:0 0;border:0;outline:none;font-weight:600}.today-btn{background:#fff;min-width:72px}.schedule-card{box-shadow:var(--shadow);background:#fff;border:1px solid #edf1f7;border-radius:18px;margin-bottom:18px;overflow:visible}.schedule-card-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.board-date strong{font-size:16px}.shop-time{color:var(--muted);margin-left:8px;font-size:13px;font-weight:500}.legend,.legend-groups,.legend-group{flex-wrap:wrap;align-items:center;display:flex}.legend-groups{gap:16px 20px}.legend-group{color:#64748b;gap:12px;font-size:12px;font-weight:600}.legend-divider{background:#d0d7e2;flex-shrink:0;align-self:center;width:1px;height:16px}.legend-group>strong{color:#64748b;font-weight:700}.legend{color:#64748b;gap:14px;font-size:12px;font-weight:600}.legend span,.legend-group span{align-items:center;gap:6px;display:flex}.status-dot{background:#cbd5e1;border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.confirmed{background:#22c55e}.status-dot.awaiting_payment{background:#eab308}.status-dot.in_progress{background:#3b82f6}.status-dot.cancelled{background:#ec4899}.status-dot.free{background:#cbd5e1}.status-dot.blocked{background:#94a3b8}.status-dot.available{background:#22c55e}.status-dot.partial{background:#f59e0b}.status-dot.off{background:#ec4899}.status-ring{box-sizing:border-box;background:#fff;border:2px solid #cbd5e1;border-radius:50%;width:10px;height:10px;display:inline-block}.status-ring.confirmed{border-color:#22c55e}.status-ring.in_progress{border-color:#3b82f6}.status-ring.awaiting_payment{border-color:#eab308}.status-ring.cancelled{border-color:#ec4899}.schedule-scroll{padding-bottom:18px;position:relative;overflow:auto}.schedule-grid{width:max(100%, var(--sched-min-width,100%));min-width:var(--sched-min-width,100%);display:grid;position:relative}.schedule-grid.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.schedule-grid.is-dragging .sched-free{pointer-events:none}.sched-corner,.sched-staff,.sched-time,.sched-free{border:1px solid #f3f4f6;border-top:0;border-left:0}.sched-corner{color:var(--muted);z-index:7;background:#fff;align-items:flex-end;padding:0 10px 12px;font-size:12px;font-weight:700;display:flex;position:sticky;left:0;box-shadow:8px 0 10px -8px #0f172a29}.sched-staff{border-top:3px solid var(--staff-accent,#94a3b8);min-width:var(--col-min,200px);background:#fff;align-items:center;gap:10px;padding:10px 12px 12px;display:flex;box-shadow:inset 0 -1px #f1f5f9}.sched-staff .staff-status{background:#22c55e;border-radius:50%;flex:0 0 10px;align-self:flex-start;width:10px;min-width:10px;height:10px;min-height:10px;margin-top:6px;margin-left:auto;padding:0}.staff-status.available{background:#22c55e}.staff-status.partial{background:#f59e0b}.staff-status.off{background:#ec4899}.staff-status.leave{background:#ef4444}.staff-page .staff-status{white-space:nowrap;background:#ecfdf3;border-radius:999px;flex:none;align-self:center;width:auto;min-width:0;height:auto;min-height:0;margin:0;padding:5px 10px}.staff-page .staff-status.is-off{background:#f1f5f9}.sched-staff .sched-staff-photo,.sched-staff .avatar.sched-staff-photo,.sched-staff .avatar-fallback.sched-staff-photo{object-fit:cover;background:var(--staff-bg,#f1f5f9);width:40px;height:40px;color:var(--staff-text,#334155);letter-spacing:.04em;border-radius:10px;flex-shrink:0;font-size:12px;font-weight:800}.sched-staff-meta{flex:1;min-width:0}.sched-staff strong{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;display:block;overflow:hidden}.sched-staff.is-off{opacity:1}.sched-staff em{color:var(--staff-text,#64748b);background:var(--staff-bg,#f8fafc);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:100%;margin-top:3px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:700;line-height:1.2;display:inline-block;overflow:hidden}.sched-time{color:#64748b;z-index:5;background:#fff;padding:8px 10px 0 12px;font-size:12px;font-weight:600;position:sticky;left:0;box-shadow:8px 0 10px -8px #0f172a29}.sched-time-close{border-bottom:0;align-self:start;padding-top:4px;padding-bottom:8px}.sched-day-end{background:#fff}.sched-free{z-index:1;color:#94a3b8;text-align:left;background:#fff;padding:8px 12px;font-size:12px;position:relative}.sched-free:hover{color:var(--blue);background:#f8fafc}.sched-free.is-off,.sched-free.is-off:hover{color:#0000;pointer-events:none;background:0 0}.sched-block{z-index:2;cursor:pointer;box-sizing:border-box;color:#334155;background:repeating-linear-gradient(-45deg,#f8fafc,#f8fafc 6px,#eef2f6 6px 12px);border-left:4px solid #64748b;border-radius:8px;flex-direction:column;min-height:0;margin:0;padding:6px 8px 8px 10px;display:flex;position:absolute;overflow:hidden}.sched-block strong{margin-top:2px;font-size:13px;display:block}.sched-block em{opacity:.75;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;font-style:normal;display:block;overflow:hidden}.sched-block .sched-appt-top{color:#475569}.sched-block:hover{box-shadow:inset 0 0 0 1px #94a3b8}.sched-block.is-off-day{pointer-events:none;z-index:2;background:repeating-linear-gradient(-45deg,#fdf4f8,#fdf4f8 6px,#fce7f3 6px 12px);border-left-color:#ec4899}.sched-block.is-off-day:hover{box-shadow:none}.sched-block.is-leave{pointer-events:none;z-index:2;background:repeating-linear-gradient(-45deg,#fff1f2,#fff1f2 6px,#ffe4e6 6px 12px);border-left-color:#ef4444}.grid-pick{z-index:60;border:1px solid var(--border);background:#fff;border-radius:12px;min-width:188px;padding:6px;position:fixed;box-shadow:0 16px 36px #0f172a29}.grid-pick button{width:100%;color:var(--navy);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:13px;font-weight:650;display:flex}.grid-pick button:hover{background:#f8fafc}.grid-pick svg{color:var(--blue)}.sched-appt{z-index:3;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;box-sizing:border-box;border-left:4px solid;border-radius:8px;flex-direction:column;min-height:0;margin:0;padding:6px 8px 12px 10px;display:flex;position:absolute;overflow:hidden}.sched-appt.open{z-index:8;overflow:visible}.sched-appt{transition:transform .18s ease-out,box-shadow .18s ease-out,opacity .18s ease-out}.sched-appt.holding{transform:scale(.98);box-shadow:0 2px 6px #0f172a1a}.sched-appt.held{opacity:.9;cursor:grabbing;z-index:20;transform:scale(1.02);box-shadow:0 14px 30px #0f172a2e}.sched-appt.held,.sched-appt.dragging{transition:top .16s ease-out,left .16s ease-out,transform .18s ease-out,box-shadow .18s ease-out,opacity .18s ease-out}.sched-appt.returning,.sched-appt.dropped{transition:top .2s ease-out,left .2s ease-out,transform .18s ease-out,box-shadow .18s ease-out,opacity .18s ease-out}.sched-drop-slot{z-index:2;pointer-events:none;box-sizing:border-box;background:#22c55e1a;border:2px dashed #22c55ea6;border-radius:8px;transition:top .16s ease-out,left .16s ease-out;position:absolute}.sched-drop-slot.invalid{background:#ef44441a;border-color:#ef4444b3}.sched-origin-slot{z-index:1;pointer-events:none;box-sizing:border-box;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;position:absolute}.schedule-grid{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.schedule-grid ::selection{color:inherit;background:0 0}.sched-appt *,.sched-free,.sched-time,.sched-staff{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.sched-appt.past{cursor:pointer;touch-action:auto}.sched-appt.dragging{cursor:grabbing;z-index:20;opacity:.9;transform:scale(1.02);box-shadow:0 16px 36px #0f172a2e}.sched-appt.resizing{cursor:ns-resize}.sched-resize{height:12px;color:inherit;cursor:ns-resize;z-index:4;touch-action:none;background:0 0;border:0;padding:0;position:absolute;bottom:0;left:4px;right:4px}.sched-resize:after{content:"";opacity:.28;background:currentColor;border-radius:99px;width:28px;height:3px;margin-left:-14px;position:absolute;bottom:3px;left:50%}.sched-appt:hover .sched-resize:after,.sched-appt.resizing .sched-resize:after{opacity:.7}.sched-appt.conflict{box-shadow:0 0 0 2px #ef4444,0 16px 36px #0f172a2e}.sched-appt.leave-conflict{box-shadow:inset 0 0 0 2px #ef4444}.sched-leave-flag{color:#dc2626;margin-top:2px;font-size:10px;font-style:normal;font-weight:800;display:block}.appt-move-error{margin:0 0 12px}.save-toast{z-index:80;color:#166534;background:#fff;border:1px solid #bbf7d0;border-radius:12px;align-items:center;gap:8px;padding:12px 16px;font-weight:750;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a29}.sched-appt strong,.sched-appt em{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sched-appt.confirmed{color:#166534;background:#f0fdf4}.sched-appt.awaiting_payment{color:#854d0e;background:#fffbeb}.sched-appt.in_progress{color:#1d4ed8;background:#eff6ff}.sched-appt.cancelled{color:#9d174d;background:#fdf2f8}.sched-appt-top{opacity:.85;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:6px;font-size:11px;font-weight:700;display:flex}.sched-appt-who{flex-shrink:0;align-items:center;gap:6px;min-width:0;margin-top:3px;display:flex}.sched-guest-mark{width:18px;height:18px;color:inherit;letter-spacing:.02em;background:#0f172a14;border-radius:4px;flex-shrink:0;place-items:center;font-size:8px;font-weight:800;display:grid}.sched-appt strong{text-overflow:ellipsis;min-width:0;font-size:13px;display:block;overflow:hidden}.sched-appt em{opacity:.8;flex-shrink:0;margin-top:1px;font-size:12px;font-style:normal;display:block}.sched-appt-notes{opacity:.78;white-space:normal;word-break:break-word;text-overflow:ellipsis;-webkit-line-clamp:var(--note-lines,2);line-clamp:var(--note-lines,2);-webkit-box-orient:vertical;flex:auto;min-height:14px;margin:4px 0 0;font-size:11px;font-weight:550;line-height:1.35;display:-webkit-box;overflow:hidden}.sched-appt.compact .sched-guest-mark,.sched-appt.compact em{display:none}.sched-appt.compact .sched-appt-who{margin-top:0}.sched-appt.compact .sched-appt-notes{margin-top:2px}.more-btn{color:inherit;opacity:.7;background:0 0;border:0;place-items:center;padding:0;display:grid}.appt-menu{color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);z-index:8;background:#fff;border-radius:12px;min-width:160px;position:absolute;top:28px;right:8px;overflow:hidden}.appt-menu button{text-align:left;background:#fff;border:0;width:100%;padding:8px 12px;font-size:13px;display:block}.appt-menu button:hover{background:#f8fafc}.appt-menu .danger{color:var(--red)}.now-line{z-index:6;pointer-events:none;border-top:2px dashed #fb7185;height:0;position:absolute;left:0;right:0}.now-pill,.now-clock{font-size:11px;font-weight:800;position:absolute;top:-11px}.now-pill{color:#fff;background:#fb7185;border-radius:999px;padding:2px 8px;left:10px}.now-clock{color:#fb7185;left:54px}.day-table{padding-top:16px}.day-table .card-head{padding:0 6px 8px}.actions-cell{position:relative}.appt-row{cursor:pointer}.appt-row:hover td{background:#f8fafc}.customer-row{cursor:pointer}.customer-row:hover td{background:#f8fafc}.customers-page{gap:14px;display:grid}.customers-head{align-items:center;margin-bottom:0}.customers-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.customers-search{background:#fff;flex:240px;min-width:0}.customers-filter{border:1px solid var(--border);color:#64748b;background:#fff;border-radius:12px;flex:none;align-items:center;gap:6px;min-height:42px;padding:0 12px;display:inline-flex;position:relative}.customers-filter-label{display:none}.customers-filter select{appearance:none;color:var(--text);cursor:pointer;background:0 0;border:0;outline:none;padding-right:2px;font-size:13px;font-weight:700}.customers-filter>svg:last-child{color:#94a3b8;pointer-events:none}.customers-card{padding:4px 8px 8px;overflow:hidden}.customers-table th{color:#94a3b8;letter-spacing:.01em;border-bottom-color:#eef2f7;padding:12px 10px;font-size:12px;font-weight:700}.customers-table td{vertical-align:middle;border-bottom-color:#eef2f7;padding:14px 10px}.customers-who{gap:2px;min-width:0;display:grid}.customers-who strong{color:var(--navy);font-size:14px;font-weight:750}.customers-who small{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;display:block;overflow:hidden}.customers-note{color:#64748b;white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:13px;overflow:hidden}.customers-appts{text-align:center;color:var(--navy);font-variant-numeric:tabular-nums;font-weight:750}.customers-value{text-align:right;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:750}.customers-table th:nth-child(3),.customers-table th:nth-child(4){text-align:center}.customers-table th:nth-child(4){text-align:right}.customers-empty{text-align:center;color:var(--muted);padding:36px 16px!important}.customers-optional{color:#94a3b8;font-style:normal;font-weight:500}.customers-add-form .field input.is-invalid{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}.booking-detail-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.booking-detail-note{margin:0 0 14px}.booking-sheet .modal-head{justify-content:flex-start;align-items:center;gap:12px;margin-bottom:12px}.booking-sheet .modal-head-main{flex-direction:row;align-items:center;gap:12px}.booking-sheet .bd-when{white-space:nowrap}.booking-sheet .modal-head h3{letter-spacing:-.02em;font-size:22px;font-weight:800}.booking-sheet .modal-head .icon-btn{color:#94a3b8;border:0;width:32px;height:32px;font-size:22px}.booking-sheet .modal-head .icon-btn:hover{color:var(--text);background:#f8fafc}.bd-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.bd-pill{border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:650;display:inline-flex}.bd-pill.awaiting_payment{color:#a16207;background:#fef9c3}.bd-pill.confirmed,.bd-pill.paid{background:var(--green-bg);color:var(--green)}.bd-pill.in_progress{background:var(--sky-bg);color:var(--sky)}.bd-pill.cancelled,.bd-pill.unpaid{color:#be185d;background:#fce7f3}.bd-when{color:#64748b;align-items:center;gap:8px;margin-left:auto;font-size:13px;font-weight:500;display:inline-flex}.bd-when svg{color:#3b82f6;flex-shrink:0}.bd-section{border:1px solid var(--border);border-radius:16px;margin-bottom:8px;padding:12px 14px}.booking-sheet .bd-section{background:#fff;border-color:#e6edf5}.bd-section h4{flex-shrink:0;align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:750;display:flex}.bd-section h4>svg{color:#64748b;flex-shrink:0}.booking-sheet .bd-section h4>svg,.booking-sheet .bd-card-head h4>svg{color:#3b82f6}.bd-count{color:var(--blue);background:#eef4ff;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:4px 8px 4px 12px;font-size:12px;font-weight:700;display:inline-flex}.booking-sheet .field{color:#334155;font-size:13px;font-weight:600}.bd-row-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.bd-row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.bd-control{border:1.5px solid var(--border);min-height:40px;color:var(--text);background:#fff;border-radius:12px;align-items:center;gap:8px;padding:0 12px;font-weight:500;display:flex}.bd-control svg{color:#94a3b8;flex-shrink:0}.bd-control:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.booking-sheet .bd-control input,.booking-sheet .bd-control select,.booking-sheet .bd-control textarea,.block-sheet .bd-control input,.block-sheet .bd-control select,.customer-notes-sheet .bd-control textarea{width:100%;box-shadow:none;color:var(--text);background:0 0;border:0;border-radius:0;padding:10px 0;font-weight:500}.booking-sheet .bd-control input:focus,.booking-sheet .bd-control select:focus,.booking-sheet .bd-control textarea:focus,.block-sheet .bd-control input:focus,.block-sheet .bd-control select:focus,.customer-notes-sheet .bd-control textarea:focus{box-shadow:none;border:0}:is(.booking-sheet .bd-control:has(:disabled),.block-sheet .bd-control:has(:disabled)){background:#f8fafc}.bd-control-person{padding-left:8px}.booking-sheet .bd-control-person select{appearance:none;background:0 0;outline:none;flex:auto;width:auto;min-width:0}.booking-sheet .bd-control-person select:focus{box-shadow:none;outline:none}.booking-sheet .bd-control-person:after{content:"";pointer-events:none;border-bottom:1.5px solid #64748b;border-right:1.5px solid #64748b;flex:none;width:7px;height:7px;margin-right:2px;transform:rotate(45deg)translateY(-2px)}.bd-combo-avatar{border-radius:50%;width:28px!important;height:28px!important}.bd-dot{border-radius:50%;flex:none;width:8px;height:8px}.bd-dot.confirmed,.bd-dot.paid{background:#22c55e}.bd-dot.awaiting_payment{background:#eab308}.bd-dot.in_progress{background:#3b82f6}.bd-dot.cancelled,.bd-dot.unpaid{background:#ec4899}.bd-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.bd-service-grid,.bd-service,.bd-service-cat,.bd-service img,.bd-service-cat img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.bd-service-cat{color:#334155;align-items:center;gap:8px;min-height:34px;font-size:13px;font-weight:700;display:flex}.bd-service-cat small{color:#94a3b8;margin-left:6px;font-size:12px;font-weight:600}.bd-service-cat-photo{object-fit:cover;border-radius:6px;width:22px;height:22px}.bd-service{border:1.5px solid var(--border);text-align:left;min-height:46px;color:inherit;background:#fff;border-radius:14px;grid-template-columns:36px minmax(0,1fr) auto auto 18px;align-items:center;gap:8px;padding:6px 10px;display:grid}.bd-service:hover:not(:disabled){border-color:#93c5fd}.bd-service.on{box-shadow:none;background:#eef6ff;border-color:#bfdbfe}.bd-service:disabled{cursor:default;opacity:1}.bd-service-photo{object-fit:cover;color:#9d174d;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.bd-service-name{color:#334155;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.bd-service-meta{color:#64748b;white-space:nowrap;font-size:13px;font-weight:600}.bd-service-check{color:#fff;background:#fff;border:1.5px solid #cbd5e1;border-radius:4px;place-items:center;width:16px;height:16px;display:grid}.bd-service.on .bd-service-check{background:var(--blue);border-color:var(--blue)}.bd-summary{background:var(--blue-soft);color:var(--blue);border-radius:12px;align-items:center;gap:8px;margin-top:10px;padding:9px 14px;font-size:14px;font-weight:700;display:flex}.bd-notes{align-items:flex-start;min-height:64px;padding-top:8px}.bd-notes svg{margin-top:2px}.booking-sheet .bd-notes textarea,.customer-notes-sheet .bd-notes textarea{resize:vertical;min-height:48px;padding:0}.bd-notes-panel{background:#fcfdff}.bd-notes-panel h4{width:100%;color:var(--navy);align-items:center;gap:10px;margin:0 0 12px;display:flex}.bd-note-head-add{color:var(--blue);cursor:pointer;background:#fff;border:1.5px solid #bfdbfe;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:5px 12px;font-size:13px;font-weight:700;display:inline-flex}.bd-note-head-add:hover{background:#eff6ff}.bd-note-glyph{color:#3b82f6;background:#eef4ff;border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.bd-notes-panel h4 .bd-note-glyph{width:30px;height:30px}.bd-suggest-wrap{position:relative}.bd-name-input{min-width:0;height:100%;display:flex;position:relative}.bd-name-input>.bd-control{flex:1;height:100%}.bd-suggest{z-index:40;border:1.5px solid var(--border);background:#fff;border-radius:12px;max-height:240px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 16px 36px #0f172a24}.bd-suggest li{margin:0}.bd-suggest button{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:8px;gap:2px;padding:8px 10px;display:grid}.bd-suggest button:hover{background:#f1f5f9}.bd-suggest strong{font-size:13px;font-weight:700}.bd-suggest span{color:#64748b;font-size:12px;font-weight:500}.bd-note-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.bd-note-item{background:#fff;border:1px solid #e8eef5;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.bd-note-copy{flex:1;min-width:0}.bd-note-item p{color:var(--navy);white-space:pre-wrap;margin:0;font-size:13.5px;font-weight:700;line-height:1.35}.bd-note-item time{color:#94a3b8;margin-top:2px;font-size:11.5px;font-weight:500;display:block}.bd-note-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.bd-note-item .icon-btn{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:36px;height:36px}.bd-note-item .icon-btn:hover{color:var(--navy);background:#f8fafc}.bd-note-save{background:var(--blue);color:#fff;border:0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.bd-note-save:hover{background:var(--blue-dark)}.bd-note-save:disabled{opacity:.45;cursor:not-allowed}.bd-note-item.is-editing{background:#eef4ff;border-color:#0000;padding:8px}.bd-note-field{border:2px solid var(--blue);background:#fff;border-radius:12px;flex:1;align-items:center;gap:10px;min-width:0;min-height:44px;padding:6px 12px;display:flex}.bd-note-field textarea{resize:none;width:100%;min-height:22px;max-height:88px;color:var(--navy);background:0 0;border:0;margin:0;padding:0;font-size:13.5px;font-weight:600;line-height:1.35}.booking-sheet .bd-note-field textarea,.customer-notes-sheet .bd-note-field textarea{resize:none;min-height:22px;padding:0}.bd-note-field textarea:focus{box-shadow:none;outline:none}.bd-note-delete{color:#94a3b8}.bd-note-delete:hover{color:#be123c;background:#fff1f2}.bd-note-empty{margin:0 0 10px;font-size:13px}.bd-note-add{background:#fbfcfe;border:1.5px dashed #d4dce8;border-radius:14px;align-items:center;gap:10px;min-height:48px;padding:6px 8px 6px 12px;display:flex}.bd-note-add-plus{color:#3b82f6;background:#eef4ff;border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.bd-note-add input{min-width:0;box-shadow:none;color:var(--navy);background:0 0;border:0;flex:1;padding:8px 0;font-size:13.5px;font-weight:500}.bd-note-add input:focus{box-shadow:none;border:0;outline:none}.bd-note-add input::placeholder{color:#94a3b8;font-weight:500}.bd-note-add-btn{min-height:34px;color:var(--blue);background:#eef4ff;border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.bd-note-add-btn:hover{background:#dbeafe}.bd-note-add-btn:disabled{opacity:.45;cursor:not-allowed}.bd-scroll{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:0;padding-bottom:4px;display:flex;overflow:hidden}.bd-layout{flex:1;grid-template-rows:236px minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-height:0;display:grid}.bd-layout>.bd-section{flex-direction:column;min-height:0;margin:0;display:flex;overflow:hidden}.booking-sheet .bd-customer{z-index:5;padding-top:10px;padding-bottom:8px;overflow:visible}.booking-sheet .bd-customer .bd-suggest-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.bd-card-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.bd-card-head h4{margin:0}.bd-head-status{color:#334155;white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:650;display:flex}.bd-head-status .bd-control{min-width:168px;min-height:36px}.bd-customer-fields{flex:1;grid-template-rows:repeat(4,minmax(0,1fr));gap:6px;min-height:0;display:grid}.booking-sheet .bd-customer .bd-control{height:100%;min-height:0}.booking-sheet .bd-customer .bd-control input,.booking-sheet .bd-customer .bd-control select{min-width:0;padding:2px 0}.booking-sheet .bd-card-head{margin-bottom:8px}.booking-sheet .bd-inline-field{grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:0}.booking-sheet .bd-inline-field .bd-control{min-width:0;max-width:100%}.booking-sheet .bd-control.is-invalid{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}.booking-sheet .bd-inline-field>span:first-child{color:#334155;font-size:13px;font-weight:650}.booking-sheet .bd-status{flex:none;margin:0}.booking-sheet .booking-detail-note{flex-shrink:0;margin:0}.booking-sheet .bd-notes-panel,.booking-sheet .bd-services,.booking-sheet .bd-appointment{flex-direction:column;min-height:0;display:flex;overflow:hidden}.booking-sheet .bd-notes-panel>h4,.booking-sheet .bd-notes-panel>.bd-note-add,.booking-sheet .bd-notes-panel>.bd-note-empty,.booking-sheet .bd-notes-panel>.error,.booking-sheet .bd-services>h4,.booking-sheet .bd-services>.bd-summary,.booking-sheet .bd-appointment>h4{flex-shrink:0}.booking-sheet .bd-staff-choice{flex-direction:column;flex:1;min-height:0;margin:0;display:flex}.booking-sheet .staff-mode{border-bottom:1px solid var(--border);flex-shrink:0;margin-bottom:0;padding-bottom:12px}.booking-sheet .staff-mode button{align-items:center;gap:10px;padding:12px 14px;display:flex}.booking-sheet .staff-mode button>svg{color:#64748b;flex-shrink:0}.booking-sheet .staff-mode button strong{margin:0}.booking-sheet .staff-mode button.selected>svg{color:var(--blue)}.bd-mode-copy{min-width:0;display:block}.bd-mode-copy strong{display:block}.bd-staff-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#94a3b8 #f1f5f9;flex:auto;min-height:0;padding-right:4px;overflow-y:auto}.bd-appt-when{border-top:1px solid var(--border);flex-shrink:0;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;padding-top:10px;display:grid}.bd-appt-when .bd-inline-field{grid-template-columns:auto minmax(0,1fr)}.bd-appt-when .bd-time-field{grid-template-columns:minmax(0,1fr)}.bd-time-parts{gap:4px;padding-right:6px}.booking-sheet .bd-time-parts select{flex:1 1 0;width:auto;min-width:0;padding:6px 2px}.booking-sheet .bd-staff-scroll{padding-top:12px}.bd-staff-row .bd-control{min-width:0}.bd-staff-row{background:#fff;border:1.5px solid #e6edf5;border-radius:14px;grid-template-columns:36px minmax(0,.9fr) auto minmax(160px,1.35fr);align-items:center;gap:10px;min-height:52px;margin-bottom:8px;padding:6px 8px 6px 10px;display:grid}.bd-staff-service{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.bd-staff-label{color:#64748b;font-size:12px;font-weight:650}.booking-sheet .bd-note-add{margin-top:auto}.booking-sheet .bd-note-list,.booking-sheet .bd-service-grid,.booking-sheet .bd-staff-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#94a3b8 #f1f5f9;flex:auto;min-height:0;padding-right:4px;overflow-y:auto}.booking-sheet .bd-service-grid{flex-direction:column;gap:8px;max-height:none;display:flex}.booking-sheet .bd-note-list::-webkit-scrollbar{width:8px}.booking-sheet .bd-service-grid::-webkit-scrollbar{width:8px}.booking-sheet .bd-staff-scroll::-webkit-scrollbar{width:8px}.booking-sheet .bd-note-list::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:8px}.booking-sheet .bd-service-grid::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:8px}.booking-sheet .bd-staff-scroll::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:8px}.booking-sheet .bd-note-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:8px}.booking-sheet .bd-service-grid::-webkit-scrollbar-track{background:#f1f5f9;border-radius:8px}.booking-sheet .bd-staff-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:8px}.bd-footer{background:0 0;border-top:0;flex:none;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding:12px 2px 2px;display:flex}.booking-sheet .bd-note-add{background:#fff;border-style:solid;border-color:#e2e8f0}.booking-sheet .bd-note-add-plus{display:none}.booking-sheet .bd-note-add-btn{background:var(--blue);color:#fff;border-radius:10px;min-height:36px}.booking-sheet .bd-note-add-btn:hover{background:#1d4ed8}.booking-sheet .bd-note-item .icon-btn{color:var(--blue);border-color:#dbeafe}.booking-sheet .bd-note-delete,.booking-sheet .bd-note-delete:hover{color:#ef4444;background:#fff;border-color:#fecaca}.bd-note-avatar{border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:grid}.bd-delete{color:#ef4444;background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;font-weight:650;display:inline-flex}.bd-delete:hover{color:#dc2626}.bd-delete:disabled{opacity:.5;cursor:not-allowed}.bd-footer-actions{align-items:center;gap:10px;display:flex}.bd-total{color:#334155;white-space:nowrap;margin-right:6px;font-size:14px;font-weight:750}@media (width<=900px){.modal.booking-sheet{height:auto;max-height:calc(100dvh - 32px)}.booking-sheet .bd-scroll{overflow-y:auto}.bd-layout{grid-template-rows:none;grid-template-columns:1fr}.bd-layout>.bd-section{min-height:240px}.booking-sheet .bd-note-list,.booking-sheet .bd-service-grid,.booking-sheet .bd-staff-scroll{max-height:220px}.bd-appt-when,.bd-staff-row{grid-template-columns:1fr}.bd-when{margin-left:0}.bd-footer{flex-wrap:wrap}}.chip:disabled{cursor:default;opacity:.85}.field input:disabled,.field select:disabled,.field textarea:disabled{color:var(--text);cursor:default;background:#f8fafc}.table-tools .search-inline{min-width:200px}.login-shell{background:radial-gradient(circle at top right, #2563eb29, transparent 28%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:min(420px,100%);box-shadow:var(--shadow);background:#fff;border:1px solid #edf1f7;border-radius:22px;padding:32px 28px}.login-logo{margin-bottom:18px}.login-card h1{letter-spacing:-.04em;margin:0;font-size:26px}.login-card>p{color:var(--muted);margin:8px 0 20px}.login-card .btn-primary{width:100%}.password-line{align-items:stretch;gap:8px;display:flex}.password-line input{flex:1;width:auto;min-width:0}.password-toggle{flex:none;justify-content:center;align-items:center;width:44px;min-height:44px;padding:0;display:inline-flex}.password-toggle i{font-size:16px;line-height:1}.remember-row{color:#1e293b;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;min-height:44px;margin:0;font-size:14px;font-weight:600;display:flex}.remember-row input{width:18px;height:18px;accent-color:var(--blue);cursor:pointer;flex:none;margin:0}.field-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.login-forgot{color:var(--blue);font-size:13px;font-weight:600}.login-forgot:hover{color:var(--blue-dark)}.login-success{color:var(--green);margin:0;font-size:13px;font-weight:600}.login-hint{color:var(--muted);text-align:center;margin:16px 0 0;font-size:12px}.login-hint a{color:var(--blue);font-weight:600}.auth-loading{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-weight:600;display:flex}.auth-loading p{margin:0}.perm-table td.yes{color:var(--green);font-weight:700}.perm-table td.view-only{color:var(--blue);font-weight:700}.perm-table td.no{color:#cbd5e1}.perm-table td.locked,.table td.locked{background:#f8fafc}.perm-flags{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.roster-cell:disabled{cursor:default;filter:none}.roster-page.is-editing .roster-cell{cursor:pointer;touch-action:manipulation}.roster-page.is-editing .roster-grid .is-past .roster-cell{opacity:1}.roster-grid .is-past{color:#94a3b8}.roster-grid .is-past .roster-cell{opacity:.55}.roster-conflict-sheet{width:min(560px,100%)}.roster-conflict-lead{color:#475569;margin:0 0 14px;font-size:14px}.roster-conflict-list{flex-direction:column;gap:16px;display:flex}.roster-conflict-person strong{justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;display:flex}.roster-conflict-person strong span{color:var(--muted);font-size:12px;font-weight:600}.roster-conflict-booking{background:#f8fafc;border:1px solid #eef2f7;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:10px 12px;font-size:13px;display:flex}.roster-conflict-booking div{min-width:0}.roster-conflict-booking b{display:block}.roster-conflict-booking em{color:var(--muted);margin-top:2px;font-size:12px;font-style:normal;display:block}.roster-conflict-booking span{color:#334155;white-space:nowrap;flex-shrink:0;font-weight:650}.perm-check{color:var(--text);cursor:pointer;align-items:center;gap:8px;font-weight:600;display:inline-flex}.perm-check input{width:16px;height:16px;accent-color:var(--blue)}.perm-check input:disabled{cursor:not-allowed}.company-page{gap:18px;display:grid}.company-page .page-title{margin-bottom:0}.company-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.company-col{gap:18px;min-width:0;display:grid}@media (width<=1100px){.company-grid{grid-template-columns:1fr}}.company-card{padding:22px 22px 18px}.company-card-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.company-card-head .btn{white-space:nowrap;flex-shrink:0}.company-card-head h2{letter-spacing:-.03em;margin:0;font-size:18px}.company-card-head p{color:var(--muted);max-width:640px;margin:6px 0 0;font-size:13.5px}.company-save-status{color:var(--green);padding-top:4px;font-size:13px;font-weight:700}.company-card-copy-short,.hours-add-short,.hours-mobile-trash,.hours-add-row-single,.hours-add-row-closed,.holiday-cards,.company-mobile-save{display:none}.country-search{position:relative}.country-search svg{color:#94a3b8;pointer-events:none;display:none;position:absolute;top:50%;left:12px}.company-details{border:0;margin:0;padding:0}.salon-details-card{padding:24px 26px 20px}.salon-details-head{margin-bottom:22px}.salon-details-head h2{letter-spacing:-.04em;color:var(--navy);align-items:center;gap:10px;margin:0;font-size:22px;font-weight:800;display:flex}.salon-details-head h2:before{content:"";background:var(--blue);border-radius:999px;width:5px;height:22px}.salon-details-head p{color:var(--muted);margin:6px 0 0 15px;font-size:13.5px}.salon-details-list{border:0;gap:16px;margin:0;padding:0;display:grid}.salon-row{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;display:grid}.salon-row-icon{width:44px;height:44px;color:var(--blue);background:#eef4ff;border-radius:12px;flex-shrink:0;place-items:center;margin-top:24px;display:grid}.salon-row-split{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px;display:grid}.salon-optional{color:var(--muted);font-weight:500}.salon-details-actions{border-top:1px solid #eef2f7;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:18px;display:flex}.flag-img,.flag-fallback{object-fit:cover;border-radius:3px;flex-shrink:0;width:22px;height:16px;box-shadow:0 0 0 1px #0f172a14}.flag-fallback{place-items:center;font-size:16px;line-height:1;display:grid;overflow:hidden}.phone-intl{border:1.5px solid var(--border);background:#fff;border-radius:12px;align-items:stretch;gap:0;display:flex;overflow:hidden}.phone-intl:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.phone-code{border-right:1px solid var(--border);background:#fff;align-items:center;gap:6px;padding-left:12px;display:flex}.phone-intl select,.phone-code select{min-width:96px;color:var(--navy);appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;flex:none;padding:11px 36px 11px 0;font-weight:700;width:auto!important;box-shadow:none!important;border:0!important;border-radius:0!important}.phone-intl select:disabled,.country-flag-select select:disabled,.salon-details-card .field select:disabled{color:var(--navy);opacity:1;background-color:#fff}.country-flag-select{position:relative}.country-flag-select .flag-img,.country-flag-select .flag-fallback{pointer-events:none;z-index:1;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.country-flag-select select{padding-left:42px}.salon-details-card .field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.company-col .country-enable-list{grid-template-columns:1fr}.country-enable-list{background:#fbfcfe;border:1px solid #eef2f7;border-radius:14px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 12px;max-height:320px;margin-top:10px;padding:6px;display:grid;overflow:auto}.country-enable-item{cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:7px 8px;font-size:13.5px;display:flex}.country-enable-item:hover{background:#fff}.country-enable-item.is-locked{cursor:default}.country-enable-item input{width:16px;height:16px;accent-color:var(--blue)}.country-enable-flag{text-align:center;width:1.4em}.country-enable-name{flex:1;min-width:0;font-weight:600}.country-enable-code{color:var(--muted);font-variant-numeric:tabular-nums}.phone-intl input{min-width:0;padding-left:8px;box-shadow:none!important;border:0!important;border-radius:0!important}.phone-intl input::placeholder{color:var(--muted);font-weight:400}@media (width<=640px){.salon-row-split{grid-template-columns:1fr}.salon-row{grid-template-columns:40px minmax(0,1fr);gap:10px}}.hours-list{gap:10px;display:grid}.hours-day{background:#fbfcfe;border:1px solid #eef2f7;border-radius:16px;padding:6px 10px}.hours-day-row{flex-wrap:nowrap;align-items:center;gap:8px;min-height:58px;padding:4px 6px;display:flex}.hours-day-name{width:88px;color:var(--navy);flex-shrink:0;font-size:15px;font-weight:700}.hours-row-spacer{flex-shrink:0;width:128px}.hours-switch{align-items:center;width:44px;height:24px;display:inline-flex;position:relative}.hours-switch input{opacity:.01;cursor:pointer;margin:0;position:absolute;inset:0}.hours-switch-ui{pointer-events:none;background:#cbd5e1;border-radius:999px;width:44px;height:24px;transition:all .15s;position:relative}.hours-switch-ui:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0f172a2e}.hours-switch input:checked+.hours-switch-ui{background:var(--blue)}.hours-switch input:checked+.hours-switch-ui:after{transform:translate(20px)}.hours-switch input:disabled{cursor:default}.hours-pill{border-radius:999px;justify-content:center;align-items:center;min-width:64px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.hours-pill.open{color:#16a34a;background:#dcfce7}.hours-pill.closed{color:#ef4444;background:#fee2e2}.hours-range{flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.hours-dash{color:#94a3b8;font-weight:600}.hours-time{border:1.5px solid var(--border);color:#94a3b8;background:#fff;border-radius:12px;align-items:center;gap:6px;min-width:118px;min-height:42px;padding:0 12px;display:flex}.hours-time input{width:100%;color:var(--text);background:0 0;border:0;outline:none;font-weight:600}.hours-time:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.hours-range.is-disabled .hours-time{color:#cbd5e1;background:#f8fafc}.hours-range.is-disabled .hours-time input{color:#94a3b8}.hours-icon-btn{color:#94a3b8;background:0 0;border:0;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.hours-icon-btn.is-add{color:var(--blue);background:#eff6ff}.hours-icon-btn.is-danger{color:#ef4444}.hours-icon-btn:hover:not(:disabled){background:#f1f5f9}.hours-icon-btn.is-add:hover:not(:disabled){background:#dbeafe}.hours-icon-btn.is-danger:hover:not(:disabled){background:#fef2f2}.hours-icon-btn:disabled{opacity:.4;cursor:default}.hours-add-row{justify-content:flex-end;padding:0 6px 8px;display:flex}.hours-add-time{color:var(--blue);background:#eff6ff;border:0;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.hours-add-row.hours-add-row-single,.hours-add-row.hours-add-row-closed{display:none}.hours-add-time:hover{background:#dbeafe}.holiday-table-wrap{margin:0 -6px;overflow:auto}.holiday-table{min-width:680px}.holiday-table thead th{color:#94a3b8;text-transform:none;background:#f8fafc;padding:12px 14px;font-size:12px;font-weight:700}.holiday-table td{padding:14px}.holiday-table .table-actions{gap:4px;display:flex}.hours-switch-row{color:#334155;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;display:flex}.hours-switch-cluster{align-items:center;gap:10px;display:flex}.holiday-hours{justify-content:flex-start}.holiday-sheet{width:min(460px,100%)}.sched-closed{z-index:2;pointer-events:none;background:repeating-linear-gradient(-45deg,#f1f5f9e0,#f1f5f9e0 6px,#e2e8f0f2 6px 12px);position:absolute}.sched-closed span{color:#64748b;background:#fff;border-radius:999px;margin:8px 12px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.sched-free.is-closed,.sched-free.is-closed:hover{color:#0000;pointer-events:none;background:0 0}.sched-free.is-closed.can-book,.sched-free.is-closed.can-book:hover{pointer-events:auto;cursor:pointer}.sched-free.is-past,.sched-free.is-closed.can-book.is-past,.sched-free.is-past:hover,.sched-free.is-closed.can-book.is-past:hover{color:#cbd5e1;cursor:default;pointer-events:none;background:#fff}.shop-closed-note{color:var(--red);font-size:13px;font-weight:700}.day-grid button.closed:disabled{color:#94a3b8;text-decoration:line-through}@media (width<=720px){.hours-day-row{flex-wrap:wrap}.hours-range{flex-wrap:wrap;justify-content:flex-start;width:100%;margin-left:0}}.perm-scroll{overflow-x:auto}.role-cell{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.modal.employee-sheet{width:min(840px,100%);padding:22px 24px 16px}.modal.employee-sheet:has(.leave-panel){width:min(1100px,100%)}.employee-sheet .modal-head{margin-bottom:18px}.employee-sheet .modal-head h3{letter-spacing:-.03em;font-size:22px;font-weight:800}.employee-sheet .modal-actions{border-top:0;margin-top:8px;padding-top:8px}.emp-tabs{border-bottom:1px solid #e8eef6;gap:6px;margin:-4px 0 18px;display:flex}.emp-tab{color:#64748b;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 14px 12px;font-size:14px;font-weight:700;display:inline-flex}.emp-tab.is-on{color:var(--blue);border-bottom-color:var(--blue);background:#eff6ff;border-radius:12px 12px 0 0}.emp-leave{color:#94a3b8;margin:8px 0 12px;font-size:14px}.leave-panel{gap:22px;display:grid}.leave-top{grid-template-columns:220px minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.leave-profile{text-align:center;background:#f4f7fb;border-radius:18px;flex-direction:column;align-items:center;gap:12px;padding:16px 14px 20px;display:flex}.leave-photo{aspect-ratio:1;background:#fff;border-radius:16px;width:100%;overflow:hidden}.leave-photo img,.leave-photo .leave-photo-fallback{object-fit:cover;border-radius:16px;width:100%!important;height:100%!important}.leave-profile-copy strong{color:var(--navy);letter-spacing:-.02em;font-size:18px;font-weight:800;display:block}.leave-profile-copy span{color:#64748b;margin-top:2px;font-size:13px;font-weight:500;display:block}.leave-request{background:#f8fafc;border:1px solid #e8eef6;border-radius:18px;align-content:start;gap:12px;padding:16px 16px 14px;display:grid}.leave-request-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.leave-request-head>strong{color:var(--navy);font-size:16px;font-weight:800}.leave-kinds{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.leave-kind{color:#334155;cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:650;display:inline-flex;position:relative}.leave-kind input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.leave-kind i{background:#fff;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;display:grid}.leave-kind i:after{content:"";background:0 0;border-radius:50%;width:8px;height:8px}.leave-kind.is-on{color:#1e293b}.leave-kind.is-on i{border-color:#3b82f6}.leave-kind.is-on i:after{background:#3b82f6}.leave-dates{grid-template-columns:1fr 1fr;gap:12px;display:grid}.leave-dates.is-permanent{grid-template-columns:1fr 1fr}.leave-dates.is-permanent .field{grid-column:1}.leave-request .req{color:#ef4444}.leave-optional{color:#94a3b8;font-weight:500}.leave-date{color:#94a3b8;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex;position:relative}.leave-date.has-value{color:#0f172a}.leave-date span{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;flex:1;min-width:0;font-size:14px;overflow:hidden}.leave-date svg{pointer-events:none;flex-shrink:0}.leave-date input{opacity:0;cursor:pointer;width:100%;height:100%;box-shadow:none;border:0;margin:0;padding:0;position:absolute;inset:0}.leave-date:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.leave-request select,.leave-request textarea{background:#fff;border-color:#e5e7eb}.leave-request select{min-height:44px}.leave-request select.is-empty{color:#94a3b8}.leave-request select option{color:#0f172a}.leave-request textarea{min-height:78px}.leave-form-actions{justify-content:flex-end;gap:10px;display:flex}.leave-form-actions .btn{border-radius:10px;min-height:40px;padding:8px 16px;font-weight:700}.leave-form-actions .btn-ghost{color:#334155;background:#fff;border:1.5px solid #e5e7eb}.leave-form-actions .btn-primary{background:#3b82f6}.leave-form-actions .btn-primary:hover{background:#2563eb}.leave-history-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.leave-history h4{color:var(--navy);margin:0;font-size:16px;font-weight:800}.leave-filters{flex-wrap:wrap;gap:8px;display:flex}.leave-filter{color:#64748b;background:#f1f5f9;border:0;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700}.leave-filter.is-on{color:#fff;background:#3b82f6}.leave-list{gap:10px;display:grid}.leave-empty{color:#94a3b8;margin:8px 0 0;font-size:14px}.leave-item{background:#fff;border:1px solid #e8eef6;border-radius:14px;padding:12px 14px}.leave-item.is-editing{border-color:#93c5fd}.leave-item-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.leave-item-copy{min-width:0}.leave-item-copy strong{color:var(--navy);font-size:14px;font-weight:800;display:block}.leave-item-copy small{color:#64748b;margin-top:2px;font-size:13px;display:block}.leave-item-meta{flex-shrink:0;align-items:center;gap:10px;display:flex}.leave-item-meta em{color:#64748b;text-align:right;min-width:52px;font-size:13px;font-style:normal;font-weight:650}.leave-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.leave-pill.upcoming{color:#3b82f6;background:#e8f1ff}.leave-pill.pending{color:#d97706;background:#fef3c7}.leave-pill.approved{color:#16a34a;background:#e7f8ee}.leave-pill.past{color:#64748b;background:#f1f5f9}.leave-pill.cancelled{color:#e11d48;background:#fff1f2}.leave-pill.rejected{color:#e11d48;background:#ffe4e6}.leave-filter{align-items:center;display:inline-flex}.leave-count{color:#fff;background:#ef4444;border-radius:999px;place-items:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;font-size:10px;font-weight:800;display:inline-grid}.leave-table-wrap{overflow-x:auto}.leave-table{border-collapse:collapse;width:100%}.leave-table th{text-align:left;color:#94a3b8;padding:8px 10px 10px;font-size:12px;font-weight:700}.leave-table td{vertical-align:middle;color:#334155;border-top:1px solid #f1f5f9;padding:12px 10px;font-size:13px}.leave-date-cell{color:var(--navy);font-weight:800;line-height:1.35}.leave-date-cell span{color:#64748b;font-weight:650;display:block}.leave-reason{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.leave-actions{align-items:center;gap:6px;display:inline-flex}.leave-approve,.leave-reject{border:0;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.leave-approve{color:#16a34a;background:#dcfce7}.leave-approve:hover{background:#bbf7d0}.leave-reject{color:#e11d48;background:#ffe4e6}.leave-reject:hover{background:#fecdd3}.leave-approve:disabled,.leave-reject:disabled{opacity:.5;cursor:default}.leave-none{color:#cbd5e1}.leave-manager-cards{display:none}.leave-form-actions .btn-primary{white-space:nowrap}.leave-row-actions{align-items:center;gap:6px;display:inline-flex}.leave-icon{border:0;border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.leave-icon.edit{color:#3b82f6;background:#eff6ff}.leave-icon.cancel{color:#f43f5e;background:#fff1f2}.leave-icon.edit:hover{background:#dbeafe}.leave-icon.cancel:hover{background:#ffe4e6}.leave-go{display:none}.leave-note{color:#64748b;background:#f8fafc;border-radius:10px;gap:8px;margin:10px 0 0;padding:10px 12px;font-size:12.5px;line-height:1.45;display:flex}.leave-note svg{color:#64748b;flex-shrink:0;margin-top:1px}.leave-saved-notes{color:#64748b;margin:8px 0 0;font-size:13px}.leave-extra{display:none}.leave-locked{color:#94a3b8;margin:0;font-size:13px}.leave-cancel-btn{color:#e11d48;background:#fff1f2;border:0}.emp-editor{grid-template-columns:210px minmax(0,1fr);align-items:stretch;gap:24px;display:grid}.emp-photo-pane{text-align:center;background:#dce7fa;border-radius:20px;height:100%;padding:18px 16px 20px}.emp-photo-frame{aspect-ratio:1;background:#fff;border-radius:18px;width:100%;position:relative;overflow:hidden}.emp-photo-frame img,.emp-photo-fallback{object-fit:cover;border-radius:18px;width:100%!important;height:100%!important}.emp-camera{color:#fff;background:#0f172a;border:2px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;bottom:10px;right:10px;box-shadow:0 4px 10px #0f172a33}.emp-camera:hover{background:#1e293b}.emp-change-photo{width:100%;color:var(--blue);background:#eff6ff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;font-size:14px;font-weight:700;display:inline-flex}.emp-change-photo:hover{background:#dbeafe}.emp-photo-hint{color:#94a3b8;margin:10px 8px 0;font-size:12px;line-height:1.4}.emp-fields{gap:16px;display:grid}.emp-fields .req{color:#ef4444}.emp-optional{color:var(--muted);font-weight:500}.emp-help{color:var(--muted);margin:4px 0 0;font-size:13px;font-weight:500}.emp-specialty-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.emp-specialty-all{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.emp-specialty-all:hover{color:var(--blue-dark)}.emp-chip-list{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.emp-chip{color:#64748b;background:#fff;border:1.5px solid #e2e8f0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:650}.emp-chip.on{border-color:var(--blue);color:var(--blue);background:#fff}.emp-chip.on:hover{border-color:var(--blue);color:var(--blue)}.emp-chip:not(.on),.emp-chip:not(.on):hover,.emp-chip:not(.on):focus,.emp-chip:not(.on):active{color:#64748b;background:#fff;border-color:#e2e8f0}.emp-status-control,.emp-url-control{border:1.5px solid var(--border);background:#fff;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.emp-status-control:focus-within,.emp-url-control:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.emp-fields .emp-status-control select,.emp-fields .emp-url-control input{width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;padding:10px 0;font-weight:500}.emp-status-control select:focus,.emp-url-control input:focus{box-shadow:none;border:0}.emp-url-control svg{color:#94a3b8;flex-shrink:0}.emp-status-dot{border-radius:50%;flex:none;width:8px;height:8px}.emp-status-dot.active{background:#22c55e}.emp-status-dot.inactive{background:#94a3b8}.emp-other-role{margin-top:8px}@media (width<=760px){.emp-editor{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:12px}.emp-photo-pane{background:0 0;border-radius:0;grid-area:1/1;align-self:start;max-width:none;height:auto;padding:0}.emp-photo-frame{border-radius:16px;width:72px}.emp-photo-frame img,.emp-photo-fallback{border-radius:16px}.emp-change-photo,.emp-photo-hint{display:none}.emp-camera{width:24px;height:24px;bottom:-2px;right:-2px}.emp-fields{display:contents}.emp-fields>:first-child{grid-column:2}.emp-fields>:nth-child(n+2){grid-column:1/-1}.employee-sheet .modal-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.employee-sheet .modal-actions .btn{justify-content:center;min-height:46px;font-weight:700}.employee-sheet .modal-actions .btn-ghost{color:#334155;background:#fff;border:1.5px solid #e5e7eb}.leave-top{grid-template-columns:1fr;gap:14px}.leave-profile{text-align:left;background:0 0;flex-direction:row;align-items:center;gap:12px;padding:0}.leave-photo{aspect-ratio:auto;border-radius:14px;flex-shrink:0;width:68px;height:68px}.leave-photo img,.leave-photo .leave-photo-fallback{border-radius:14px}.leave-profile-copy strong{font-size:16px}.leave-request{gap:8px;padding:12px}.leave-request textarea{height:56px;min-height:0}.leave-request-head{flex-direction:column;align-items:flex-start;gap:8px}.leave-kinds{gap:16px}.leave-form-actions{grid-template-columns:1fr 1.15fr;display:grid}.leave-form-actions .btn{min-height:44px}.leave-panel{gap:12px}.leave-history-head{flex-direction:row;align-items:center;gap:8px;margin-bottom:4px}.leave-history h4{flex-shrink:0;font-size:15px}.leave-filters{scrollbar-width:none;flex-wrap:nowrap;flex:auto;justify-content:flex-end;gap:4px;min-width:0;padding-bottom:2px;overflow-x:auto}.leave-filters::-webkit-scrollbar{display:none}.leave-filter{flex-shrink:0}.leave-list{gap:0}.leave-item{background:0 0;border:0;border-bottom:1px solid #f1f5f9;border-radius:0;padding:12px 0}.leave-decide .leave-item{border-bottom:0;padding-right:2px}.leave-item-row{align-items:flex-start}.leave-item-meta{grid-template-columns:auto auto;grid-template-areas:"pill go""days go";align-items:center;gap:2px 4px;display:grid}.leave-pill{grid-area:pill;justify-self:end}.leave-item-meta em{grid-area:days;justify-self:end;min-width:0}.leave-row-actions{display:none}.leave-go{color:#94a3b8;background:0 0;border:0;grid-area:go;place-items:center;width:28px;height:28px;padding:0;display:grid}.leave-saved-notes{display:none}.leave-item.is-open .leave-extra{gap:8px;margin-top:10px;display:grid}.leave-item.is-open .leave-saved-notes{display:block}.leave-extra-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.leave-extra-actions .btn{border-radius:10px;min-height:40px;font-weight:700}.leave-table-wrap{display:none}.leave-manager-cards{width:100%;min-width:0;display:grid}.leave-history,.leave-list,.leave-decide,.leave-decide-face,.leave-item{min-width:0;max-width:100%}.leave-item-copy{flex:auto}.leave-item-copy strong{font-size:13px;line-height:1.35}.leave-filters{gap:4px}.leave-filter{padding:4px 7px;font-size:11px}.leave-count{min-width:14px;height:14px;margin-left:4px;font-size:9px}.leave-decide{border-radius:14px;position:relative;overflow:hidden}.leave-decide-actions{grid-template-columns:1fr 1fr;gap:6px;display:grid;position:absolute;top:0;bottom:0;right:0}.leave-decide-approve,.leave-decide-reject{color:#fff;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:800;display:flex}.leave-decide-approve{background:#22c55e}.leave-decide-reject{background:#ef4444}.leave-decide-face{z-index:1;background:#fff;position:relative}}.employees-page{gap:16px;display:grid}.employees-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.employees-title{align-items:flex-start;gap:12px;display:flex}.employees-title-icon{width:42px;height:42px;color:var(--blue);background:#e8f0ff;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.employees-title h1{letter-spacing:-.04em;margin:0;font-size:28px}.employees-title p{color:var(--muted);margin:4px 0 0}.employees-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.employees-search{background:#fff;min-width:220px}.employees-status-filter{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:140px;padding:10px 12px}.employees-card{padding:6px 8px 4px;overflow-x:auto}.employees-mobile{display:none}.employees-table{min-width:1080px}.employees-table th:first-child,.employees-table td:first-child{min-width:220px}.employees-table th:nth-child(2),.employees-table td:nth-child(2){min-width:170px}.employees-table th:nth-child(3),.employees-table td:nth-child(3){min-width:140px}.employees-table th:nth-child(4),.employees-table td:nth-child(4){min-width:240px}.employees-table th:nth-child(5),.employees-table td:nth-child(5){min-width:130px}.employees-table th:nth-child(6),.employees-table td:nth-child(6){min-width:108px}.employees-table th{color:#64748b;border-bottom:1px solid #eef2f7;padding:14px 16px 12px;font-size:13px;font-weight:600}.employees-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:14px 16px}.employees-table tbody tr:last-child td{border-bottom:0}.emp-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:600;display:inline-flex}.emp-sort svg{color:#94a3b8}.emp-person{align-items:center;gap:12px;display:flex}.emp-person strong{letter-spacing:-.02em;font-size:15px;display:block}.emp-person small{color:#64748b;white-space:nowrap;align-items:center;gap:6px;margin-top:3px;font-size:12.5px;font-weight:600;display:flex}.emp-person small span{color:#94a3b8;font-weight:500}.emp-role{white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.emp-role.rose{color:#e11d48;background:#ffe4e6}.emp-role.blue{color:#2563eb;background:#dbeafe}.emp-role.purple{color:#7c3aed;background:#ede9fe}.emp-role.green{color:#16a34a;background:#dcfce7}.emp-role.slate{color:#475569;background:#f1f5f9}.emp-spec-list{flex-wrap:wrap;gap:6px;max-width:460px;display:flex}.emp-spec{color:#2563eb;background:#eff6ff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.emp-row-status{color:#16a34a;background:#dcfce7;border-radius:999px;align-items:center;gap:6px;padding:5px 8px 5px 10px;font-size:13px;font-weight:700;display:inline-flex}.emp-row-status.inactive{color:#64748b;background:#f1f5f9}.emp-row-status select,.emp-row-status span{width:auto;color:inherit;font:inherit;background:0 0;border:0;min-width:0;padding:0 2px 0 0;font-weight:700}.emp-row-status select:focus{box-shadow:none;outline:none}.emp-actions-cell{white-space:nowrap;width:1%;position:relative}.emp-row-actions{align-items:center;gap:4px;display:inline-flex;position:relative}.emp-icon-btn{width:34px;height:34px;color:var(--blue);background:0 0;border:0;border-radius:10px;place-items:center;display:inline-grid}.emp-icon-btn:hover{background:#eff6ff}.emp-icon-btn.is-danger{color:#ef4444;background:#fee2e2}.emp-icon-btn.is-danger:hover{background:#fecaca}.emp-earnings{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.emp-empty{text-align:center;color:var(--muted);padding:36px 16px!important}@media (width<=900px){.employees-head{flex-direction:column}.employees-tools{width:100%}.employees-search{flex:1;min-width:0}}@media (width<=760px){.admin-shell{grid-template-columns:1fr}.sidebar{z-index:60;width:min(280px,84vw);transition:transform .25s;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:16px 0 40px #0f172a3d}.sidebar.open{transform:translate(0)}.sidebar-close{color:#fff;background:#ffffff14;border:0;border-radius:12px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:18px;right:14px}.sidebar-backdrop{z-index:55;background:#0f172a73;border:0;display:block;position:fixed;inset:0}.burger{border:1px solid var(--border);width:40px;height:40px;color:var(--text);background:#fff;border-radius:12px;flex:none;place-items:center;display:grid}.admin-top{flex-wrap:nowrap;gap:8px;padding:12px 14px}.top-actions{flex-shrink:0;gap:8px;margin-left:0}.admin-chip{justify-content:center;width:40px;padding:6px}.admin-chip-name,.logout-label{display:none}.logout-btn{justify-content:center;width:40px;height:40px;padding:0}.admin-main{padding:16px 14px 28px}.page-title{flex-wrap:wrap}.page-title h1{font-size:24px}.dash-head{flex-flow:row;align-items:center;gap:10px;margin-bottom:12px;position:relative}.dash-hint,.dash-lists{display:none}.customers-page{gap:12px;width:100%;min-width:0;max-width:100%}.admin-main:has(.customers-page){overflow-x:hidden}.customers-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;width:100%;min-width:0;max-width:100%;margin-bottom:0;display:grid}.customers-head>div{display:contents}.customers-head h1{grid-area:1/1}.customers-head p{grid-area:2/1/auto/-1;margin-top:0}.customers-add-btn{grid-area:1/2}.customers-head h1{letter-spacing:-.04em;text-overflow:ellipsis;min-width:0;font-size:28px;line-height:1.05;overflow:hidden}.customers-head p{color:#94a3b8;margin-top:2px;font-size:13px;line-height:1.3}.customers-add-btn{white-space:nowrap;border-radius:12px;flex:none;height:40px;padding:0 14px;font-size:14px;box-shadow:0 8px 16px #2563eb2e}.customers-tools{flex-wrap:nowrap;gap:8px;width:100%;min-width:0;max-width:100%}.customers-search{border:1px solid #e8eef6;border-radius:14px;flex:auto;min-width:0;height:46px;min-height:46px;padding:0 12px;box-shadow:0 1px 2px #0f172a08}.customers-search input{min-width:0;font-size:13px}.customers-search input::placeholder{color:#94a3b8;font-size:12px}.customers-filter{border-color:#e8eef6;border-radius:14px;gap:5px;height:46px;min-height:46px;padding:0 12px;box-shadow:0 1px 2px #0f172a08}.customers-filter-label{color:#334155;white-space:nowrap;font-size:13px;font-weight:700;display:inline}.customers-filter select{opacity:0;width:100%;max-width:none;height:100%;font-size:16px;position:absolute;inset:0}.customers-card{box-shadow:none;background:0 0;border:0;border-radius:0;min-width:0;max-width:100%;padding:0;overflow:hidden}.customers-table{table-layout:fixed;border-collapse:separate;border-spacing:0 10px;width:100%;max-width:100%;margin-top:-6px}.customers-table th{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.03em;background:0 0;border:0;padding:0 2px 2px;font-size:10px;font-weight:600;overflow:hidden}.customers-table td{vertical-align:middle;background:#fff;border-top:1px solid #eef2f7;border-bottom:1px solid #eef2f7;padding:14px 4px}.customers-table tbody td:first-child{border-left:1px solid #eef2f7;border-radius:16px 0 0 16px}.customers-table tbody td:last-child{border-right:1px solid #eef2f7;border-radius:0 16px 16px 0}.customers-table tbody tr{filter:drop-shadow(0 6px 8px #0f172a0a)}.customers-table th:first-child,.customers-table td:first-child{width:43%}.customers-table td:first-child,.customers-table th:first-child{padding-left:12px}.customers-table th:nth-child(2),.customers-table td:nth-child(2){width:17%}.customers-table th:nth-child(3),.customers-table td:nth-child(3),.customers-table th:nth-child(4),.customers-table td:nth-child(4){width:20%}.customers-table td:nth-child(4){padding-right:12px}.customers-table th:nth-child(4){text-align:right;padding-right:4px}.customers-who{gap:1px}.customers-who strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:750;overflow:hidden}.customers-who small{color:#94a3b8;font-size:11px;line-height:1.25}.customers-note{color:#64748b;white-space:normal;max-width:none;font-size:12px;line-height:1.3;overflow:hidden}.customers-note span{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.customers-appts,.customers-value{font-size:14px;font-weight:800}.customers-table tr:has(.customers-empty){filter:none}.customers-table tr:has(.customers-empty) td{box-shadow:none;background:0 0;border:0;border-radius:0}.dash-emp-card{padding:16px 14px 8px}.dash-emp-card .card-head{gap:10px;margin-bottom:4px}.dash-emp-card .card-head h2{letter-spacing:-.02em;font-size:15px}.dash-emp-card .dash-mini-select{padding:5px 10px;font-size:12px}.dash-emp-list{gap:0}.dash-emp-list li{border-bottom:1px solid #eef2f7;grid-template-columns:40px minmax(0,1fr) 76px 40px;gap:10px;padding:14px 0}.dash-emp-list li:last-child{border-bottom:0}.dash-emp-who strong{color:var(--navy);font-size:14px;font-weight:750}.dash-emp-who small{color:#94a3b8;font-size:12px}.dash-emp-stats{align-content:center;justify-items:stretch;gap:7px;min-width:0;display:grid}.dash-emp-pay{color:var(--navy);text-align:left;font-size:14px;font-weight:750}.dash-emp-bar{height:7px}.dash-emp-count{background:color-mix(in srgb, var(--emp-tone) 18%, #fff);width:40px;height:40px;color:var(--navy);text-align:center;border-radius:12px;place-items:center;line-height:1;display:grid}.dash-emp-count b{font-size:15px;font-weight:800}.dash-emp-count span{display:none}.dash-svc-card{padding:16px 14px 8px}.dash-svc-card .card-head{gap:10px;margin-bottom:4px}.dash-svc-card .card-head h2{letter-spacing:-.02em;font-size:15px}.dash-svc-card .dash-mini-select{padding:5px 10px;font-size:12px}.dash-top-services{gap:0}.dash-top-services li{border-bottom:1px solid #eef2f7;grid-template-columns:8px minmax(0,1fr) auto minmax(52px,68px) 40px 14px;gap:8px;padding:13px 0;font-size:13px}.dash-top-services li:last-child{border-bottom:0}.dash-top-services i{order:0}.dash-svc-name{color:var(--navy);white-space:normal;text-overflow:unset;order:1;font-weight:600;line-height:1.25;overflow:visible}.dash-svc-pay{color:var(--navy);white-space:nowrap;order:2;font-size:14px;font-weight:750}.dash-svc-bar{order:3;min-width:52px;height:7px}.dash-svc-count{background:color-mix(in srgb, var(--svc-tone) 18%, #fff);width:40px;height:40px;color:var(--navy);text-align:center;border-radius:12px;order:4;place-items:center;line-height:1;display:grid}.dash-svc-count b{font-size:15px;font-weight:800}.dash-svc-count span{display:none}.dash-svc-go{color:#cbd5e1;order:5}.dash-period{flex-wrap:nowrap;flex:auto;justify-content:flex-end;width:auto;min-width:0;position:static}.dash-period>.dash-presets,.dash-period>.date-chip,.dash-period>.muted{display:none}.dash-period-mobile{align-items:center;gap:8px;width:100%;display:flex}.dash-period-frame{border:1px solid var(--border);min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:12px;flex:auto;padding:10px;font-size:13px;font-weight:600;overflow:hidden}.dash-calendar-btn{border:1px solid var(--border);width:40px;height:40px;color:var(--text);background:#fff;border-radius:12px;flex:none;place-items:center;display:grid}.dash-period-pop{z-index:30;border:1px solid var(--border);background:#fff;border-radius:16px;gap:12px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 36px #0f172a24}.dash-period-quick{flex-wrap:wrap;gap:6px;display:flex}.dash-period-quick .btn{background:#fff;border-radius:999px;padding:8px 12px}.dash-period-quick .btn.is-on{background:var(--blue);color:#fff;border-color:var(--blue)}.dash-cal{gap:10px;display:grid}.dash-cal-period{border:1px solid var(--border);text-align:center;color:var(--text);background:#f8fafc;border-radius:10px;padding:9px 10px;font-size:13px;font-weight:700}.dash-cal-head{justify-content:space-between;align-items:center;display:flex}.dash-cal-head strong{font-size:15px}.dash-cal-nav{border:1px solid var(--border);width:36px;height:36px;color:var(--text);background:#fff;border-radius:10px;place-items:center;display:grid}.dash-cal-week,.dash-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.dash-cal-week span{text-align:center;color:var(--muted);padding:2px 0;font-size:11px;font-weight:700}.dash-cal-grid button{height:38px;color:var(--text);background:0 0;border:0;border-radius:10px;font-size:13px;font-weight:600}.dash-cal-grid button.is-in{background:#dbeafe;border-radius:0}.dash-cal-grid button.is-start{background:var(--blue);color:#fff;border-radius:10px 0 0 10px}.dash-cal-grid button.is-end{background:var(--blue);color:#fff;border-radius:0 10px 10px 0}.dash-cal-grid button.is-start.is-end{border-radius:10px}.dash-cal-grid button.is-today{box-shadow:inset 0 0 0 1.5px var(--blue)}.dash-cal-grid button.is-out{color:#cbd5e1}.dash-cal-grid button.is-selected{background:var(--blue);color:#fff;border-radius:10px}.appointments-page .page-title{z-index:30;flex-wrap:nowrap;align-items:center;gap:8px;position:relative}.appointments-page .page-title h1{font-size:20px}.appt-hint{display:none}.appt-date-mobile{flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.appt-date-pill{min-width:0;height:40px;color:var(--navy);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:13px;flex:0 auto;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:12.5px;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #0f172a0d}.appt-date-pill svg{color:var(--navy);flex:none}.appt-date-pill span{text-overflow:ellipsis;overflow:hidden}.appt-day-arrow{width:36px;height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:13px;flex:none;place-items:center;padding:0;display:grid;box-shadow:0 1px 3px #0f172a0d}.appointments-page .appt-cal-pop{z-index:40;border:1px solid var(--border);background:#fff;border-radius:16px;width:auto;padding:12px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 36px #0f172a24}.appt-toolbar,.appointments-page .day-table,.burger{display:none}.mobile-brand{color:var(--navy);letter-spacing:-.02em;flex:none;align-items:center;gap:8px;font-size:19px;font-weight:800;display:flex}.admin-top{flex-wrap:wrap}.bell{border:1px solid var(--border);width:40px;height:40px;color:var(--text);background:#fff;border-radius:12px;place-items:center;padding:0;display:grid}.notify-panel{width:auto;max-height:min(440px,100dvh - 150px);left:10px;right:10px!important}.logout-btn{display:none}.admin-chip{border-radius:999px;width:40px;height:40px}.admin-photo-badge{display:none}.side-logout{color:#94a3b8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;margin-top:18px;padding:11px 12px;font-size:14px;font-weight:600;display:flex}.admin-main{padding-bottom:104px}.admin-shell{--mobile-nav-offset:calc(64px + env(safe-area-inset-bottom,0px))}:is(.admin-main:has(.customers-page),.admin-main:has(.services-page),.admin-main:has(.roster-page),.admin-main:has(.company-page),.admin-main:has(.employees-page),.admin-main:has(.dash-page),.admin-main:has(.staff-page),.admin-main:has(.permissions-page),.admin-main:has(.smtp-page)){padding-bottom:calc(var(--mobile-nav-offset) + 5px)}.admin-main:has(.page-stage){flex-direction:column;display:flex;overflow:hidden}.page-stage{background:var(--bg);flex:auto;min-width:0;min-height:0;position:relative;overflow:hidden}.page-pane{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-anchor:none;background:var(--bg);position:absolute;inset:0;overflow:hidden auto}.page-pane:has(.appointments-page){overflow:hidden}.page-pane.to-left{animation:.28s cubic-bezier(.22,1,.36,1) both page-slide-out-left}.page-pane.to-right{animation:.28s cubic-bezier(.22,1,.36,1) both page-slide-out-right}.page-pane.from-left{animation:.28s cubic-bezier(.22,1,.36,1) both page-slide-in-left}.page-pane.from-right{animation:.28s cubic-bezier(.22,1,.36,1) both page-slide-in-right}.page-stage.is-sliding .page-pane{pointer-events:none}.mobile-bottom-nav{z-index:50;border-top:1px solid var(--border);padding:8px 6px calc(10px + env(safe-area-inset-bottom));background:#fff;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0f172a0f}.mobile-bottom-nav.is-locked{pointer-events:none}.mobile-nav-items{z-index:1;grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:relative}.mobile-bottom-nav a,.mobile-more-btn,.mobile-nav-clone{color:#64748b;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;padding:2px 0;font-size:11px;font-weight:600;display:flex}.mobile-nav-clone{cursor:default}.mobile-more-btn.is-open{color:var(--blue)}.mobile-nav-indicator{z-index:2;top:8px;left:6px;right:6px;bottom:calc(10px + env(safe-area-inset-bottom));pointer-events:none;position:absolute}.mobile-nav-window{width:calc(100% / var(--nav-count));height:100%;transform:translate3d(calc(var(--nav-index) * 100%), 0, 0);overflow:hidden}.mobile-nav-indicator-row{height:100%;width:calc(100% * var(--nav-count));color:var(--blue);transform:translate3d(calc(var(--nav-index) / var(--nav-count) * -100%), 0, 0);grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.mobile-nav-indicator-row .mobile-nav-clone{color:var(--blue)}.mobile-bottom-nav.is-ready .mobile-nav-window,.mobile-bottom-nav.is-ready .mobile-nav-indicator-row{transition:transform .28s cubic-bezier(.22,1,.36,1)}.appt-status-pills{gap:8px;margin-bottom:12px;display:flex}.appt-status-pills button{border:1px solid var(--border);min-width:0;color:var(--text);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;flex:1 1 0;justify-content:center;align-items:center;gap:5px;padding:9px 4px;font-size:12px;font-weight:700;display:inline-flex}.appt-status-pills button.is-on{background:var(--blue);border-color:var(--blue);color:#fff}.appt-pill-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.appt-pill-dot.confirmed{background:#22c55e}.appt-pill-dot.cancelled{background:#ec4899}.appt-status-pills button.is-on .appt-pill-dot{box-shadow:0 0 0 1.5px #ffffffa6}.appointments-page .page-title{flex-wrap:nowrap;align-items:center;row-gap:0}.appointments-page .page-title h1{letter-spacing:-.02em;flex:none;font-size:21px}.appt-date-mobile{flex:auto;justify-content:flex-end}.sched-appt.holding{transform:scale(.98);box-shadow:0 2px 6px #0f172a1a}.sched-appt.held{opacity:.9;transform:scale(1.02);box-shadow:0 14px 30px #0f172a2e}.sched-appt.dragging{opacity:.9;transform:scale(1.02);box-shadow:0 16px 34px #0f172a33}.schedule-card{border-radius:16px}.schedule-card-head{display:none}.schedule-scroll{max-height:calc(100dvh - 255px - env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:240px;padding-bottom:10px;overflow:auto}.admin-main:has(.appointments-page){padding-bottom:calc(69px + env(safe-area-inset-bottom));overflow:hidden}.appointments-page{flex-direction:column;height:100%;min-height:0;display:flex}.appointments-page .page-title,.appointments-page .appt-status-pills,.appointments-page .appt-move-error{flex:none}.appointments-page .schedule-card{flex-direction:column;flex:auto;min-height:0;margin-bottom:0;display:flex}.appointments-page .schedule-scroll{flex:auto;min-height:0;max-height:none}.schedule-grid{width:max(100%, var(--sched-min-width,100%));min-width:var(--sched-min-width,100%)}.sched-corner{z-index:9;justify-content:center;align-items:flex-end;padding:0 4px 8px;font-size:10px;top:0}.sched-staff{min-width:var(--col-min,0);text-align:center;z-index:7;flex-direction:column;justify-content:flex-start;align-items:center;gap:3px;padding:7px 2px 6px;position:sticky;top:0}.sched-time{z-index:6}.sched-staff .staff-status{display:none}.sched-staff .sched-staff-photo,.sched-staff .avatar.sched-staff-photo,.sched-staff .avatar-fallback.sched-staff-photo{border-radius:50%;width:32px;height:32px;font-size:11px}.sched-staff strong,.sched-staff em{line-height:1.15}.staff-status-dot{background:#22c55e;border:2px solid #fff;border-radius:50%;width:10px;height:10px;display:block;position:absolute;bottom:-1px;right:-1px}.staff-status-dot.partial{background:#f59e0b}.staff-status-dot.off{background:#ec4899}.staff-status-dot.leave{background:#ef4444}.sched-staff-meta{flex:none;width:100%}.sched-staff strong{font-size:11px}.sched-staff em{color:#94a3b8;background:0 0;border-radius:0;margin-top:1px;padding:0;font-size:7.8px;font-weight:600}.sched-time{text-align:center;padding:7px 2px 0;font-size:11px;line-height:1.25}.sched-time-clock,.sched-time-meridiem{display:block}.sched-time-meridiem{color:#94a3b8;font-size:9px}.sched-time-close{border-bottom:0;padding:3px 2px 8px}.sched-free{color:#cbd5e1;padding:7px 5px;font-size:10px}.sched-appt{border-left-width:3px;border-radius:7px;padding:5px 5px 5px 7px}.sched-appt-top,.sched-appt strong{color:#0f172a}.sched-appt em{color:#64748b}.sched-appt-top{letter-spacing:-.03em;gap:2px;font-size:6.5px}.sched-appt{padding-left:6px;padding-right:3px}.sched-appt-top span{white-space:nowrap;text-overflow:ellipsis;line-height:1.25;overflow:hidden}.sched-appt .more-btn{display:none}.sched-appt-who{gap:3px;margin-top:2px}.sched-appt strong{font-size:11px}.sched-appt em{font-size:9.5px}.sched-appt-notes,.sched-guest-mark{display:none}.sched-block{border-radius:7px;padding:5px 5px 5px 7px}.sched-block strong{font-size:11px}.sched-block em{font-size:9.5px}.modal-backdrop{z-index:90;padding:12px 10px}.modal-backdrop:has(.employee-sheet){z-index:45;padding:132px 12px calc(var(--mobile-nav-offset,64px) + 10px);background:#0f172a75;place-items:center}.modal.employee-sheet{border-radius:22px;width:100%;max-width:440px;min-height:0;max-height:100%;padding:16px 14px 12px;box-shadow:0 24px 60px #0f172a47}.employee-sheet .modal-head{align-items:flex-start;margin-bottom:6px;padding-right:36px;position:relative}.employee-sheet .modal-head h3{font-size:20px;line-height:1.2}.employee-sheet .modal-head .icon-btn{color:#64748b;background:#f1f5f9;border:0;border-radius:50%;width:32px;height:32px;font-size:18px;position:absolute;top:-2px;right:0}.employee-sheet .modal-body{padding-right:0}.employee-sheet .emp-tabs{z-index:4;background:#fff;margin:0;padding-bottom:12px;position:sticky;top:0}.modal.booking-sheet{border-radius:24px;width:100%;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:16px 14px 12px}.booking-sheet .modal-head{flex-direction:column;align-items:flex-start;gap:5px;margin-bottom:12px;padding-right:42px;position:relative}.booking-sheet .modal-head-main{flex-wrap:wrap;gap:8px}.booking-sheet .modal-head h3{font-size:20px}.booking-sheet .bd-pill{padding:4px 9px;font-size:12px}.booking-sheet .bd-when{white-space:normal;margin-left:0;font-size:11px;line-height:1.4}.booking-sheet .bd-layout{flex:none}.booking-sheet .bd-customer .bd-card-head h4{font-size:13.5px}.booking-sheet .modal-head .icon-btn{color:#64748b;background:#eef2f7;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:0;right:0}.booking-sheet .bd-scroll{gap:10px;padding-right:2px;overflow-y:auto}.booking-sheet .bd-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:10px}.booking-sheet .bd-layout>.bd-section{border-radius:14px;min-height:0;padding:12px;overflow:visible}.booking-sheet .bd-customer{overflow:visible}.booking-sheet .bd-note-list,.booking-sheet .bd-staff-scroll{flex:none;max-height:none;padding-right:0;overflow:visible}.booking-sheet .bd-service-grid{flex:none;max-height:272px;padding-right:4px;overflow:hidden auto}.booking-sheet .bd-staff-choice{flex:none}.booking-sheet .bd-section h4{margin-bottom:10px;font-size:15px}.booking-sheet .bd-appointment h4{font-size:0}.booking-sheet .bd-appointment h4:after{content:"Appointment";font-size:15px}.booking-sheet .staff-mode button:disabled{opacity:.45}.booking-sheet .bd-customer .bd-card-head h4>svg,.booking-sheet .bd-notes-panel h4 .bd-note-glyph{display:none}.booking-sheet .bd-card-head{gap:8px;margin-bottom:10px}.bd-head-status{flex-shrink:0;gap:5px;font-size:11px}.bd-head-status .bd-control{border-radius:999px;gap:5px;width:116px;min-width:0;min-height:34px;padding:0 8px}.bd-head-status .bd-control select{appearance:none;outline:none;padding:6px 0;font-size:10.5px}.bd-head-status .bd-control{position:relative}.bd-head-status .bd-control:after{content:"";pointer-events:none;border-bottom:1.5px solid #64748b;border-right:1.5px solid #64748b;flex:none;width:6px;height:6px;transform:rotate(45deg)translateY(-2px)}.booking-sheet .bd-customer-fields{gap:8px}.booking-sheet .bd-inline-field{grid-template-columns:74px minmax(0,1fr);gap:8px}.booking-sheet .bd-inline-field>span:first-child{font-size:12.5px}.booking-sheet .bd-customer .bd-control{height:auto;min-height:38px;padding:0 10px}.booking-sheet .bd-customer .bd-control>svg{display:none}.booking-sheet .bd-control input,.booking-sheet .bd-control select{min-width:0;font-size:13px}.bd-note-empty{font-size:12px}.bd-note-head-add{padding:5px 10px;font-size:12px}.booking-sheet .bd-note-add{border-style:solid;border-radius:12px;gap:8px;min-height:42px;padding:4px 4px 4px 12px}.booking-sheet .bd-note-add-btn{background:#8fb4f7;border-radius:9px;min-height:34px;padding:6px 16px}.booking-sheet .bd-service{border-radius:12px;grid-template-columns:34px minmax(0,1fr) auto auto 18px;gap:7px;min-height:48px;padding:6px 8px}.booking-sheet .bd-service-photo{width:34px;height:34px}.booking-sheet .bd-service-name{font-size:12.5px}.booking-sheet .bd-service-meta{font-size:11.5px}.booking-sheet .staff-mode{gap:8px;padding-bottom:10px}.booking-sheet .staff-mode button{justify-content:center;padding:10px 8px;font-size:13px}.booking-sheet .bd-staff-scroll{padding-top:10px}.booking-sheet .bd-staff-row{grid-template-columns:34px minmax(0,1fr);padding:8px}.booking-sheet .bd-staff-row .bd-staff-label{display:none}.booking-sheet .bd-staff-row .bd-control{grid-column:1/-1}.booking-sheet .bd-appt-when .bd-control{gap:6px;padding:0 7px}.booking-sheet .bd-appt-when .bd-control input{font-size:12px}.booking-sheet .bd-appt-when{grid-template-columns:minmax(0,calc(47.5% - 19.75px)) minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding-top:10px}.booking-sheet .bd-appt-when .bd-inline-field{grid-template-columns:minmax(0,1fr);gap:0}.booking-sheet .bd-appt-when .bd-inline-field:not(.bd-time-field)>span:first-child{display:none}.booking-sheet .bd-appt-when .bd-time-field{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px}.booking-sheet .bd-time-field:before{content:"Time";color:#334155;font-size:12.5px;font-weight:600}.booking-sheet .bd-time-parts{background:0 0;border:0;justify-content:center;gap:6px;min-height:0;padding:0}.booking-sheet .bd-time-parts>svg{display:none}.booking-sheet .bd-time-parts select{border:1.5px solid var(--border);text-align:center;text-align-last:center;background:#fff;border-radius:10px;justify-content:center;padding:9px 2px;font-size:12.5px}.booking-detail-sheet .bd-footer-actions .btn-ghost{display:none}.booking-sheet .bd-footer{flex-wrap:nowrap;gap:6px;padding-top:10px}.booking-sheet .bd-delete{white-space:nowrap;gap:3px;padding:8px 0;font-size:9.5px}.booking-sheet .bd-delete svg{width:13px;height:13px}.booking-sheet .bd-footer-actions{gap:4px;margin-left:auto}.booking-sheet .bd-total{letter-spacing:-.02em;margin-right:0;font-size:9.5px}.booking-sheet .bd-footer .btn{white-space:nowrap;border-radius:10px;padding:6px 7px;font-size:10.5px}.dash-kpis{grid-template-columns:1fr 1fr;gap:10px}.dash-kpi{border-radius:16px;padding:12px}.dash-kpi-top{margin-bottom:6px}.dash-kpi-top label{font-size:12px}.dash-kpi-body{flex-direction:column;align-items:stretch;gap:6px}.dash-kpi h3{font-size:24px}.dash-kpi .delta,.dash-kpi-reviews{display:none}.dash-spark{width:100%;height:36px}.dash-overview-card .card-head{justify-content:stretch}.dash-overview-card .card-head h2{display:none}.dash-overview-card .dash-tabs{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.dash-overview-card .dash-tabs button{white-space:nowrap;padding:7px 4px}.public-header{flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px 12px;display:flex}.public-header .logo{font-size:18px}.public-nav{flex:1 0 100%;order:3;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 -2px;display:grid}.public-nav a{text-align:center;border-radius:10px;padding:8px 2px;font-size:13px;line-height:1.2}.public-nav a.active{background:var(--blue-soft);color:var(--blue)}.public-header .btn{margin-left:auto;padding:9px 14px}.public-main{padding:14px 16px 32px}.public-footer{flex-direction:column;align-items:flex-start;gap:8px;padding:18px 16px 24px}.booking-hero{background:linear-gradient(#0710239e 0%,#07102361 100%),url(/images/thumbs/hero.jpg) 50% 30%/cover;border-radius:18px;height:auto;min-height:156px;margin-bottom:14px;padding:22px 18px}.booking-hero h1{line-height:1.12}.booking-hero p{max-width:34ch;font-size:14px;line-height:1.45}.panel{border-radius:18px;padding:16px 14px 14px}.stepper{width:100%;margin-bottom:18px}.stepper-item{text-align:center;flex:none;gap:6px;min-width:0;font-size:12px;line-height:1.15}.step-label{white-space:nowrap}.step-dot{width:30px;height:30px;font-size:13px}.stepper-line{flex:1;min-width:10px;margin:0 6px 16px}.step-head h2{font-size:20px}.step-head p{margin-bottom:14px}.service-grid{grid-template-columns:1fr;gap:10px}.service-card{min-height:76px;padding:12px}.datetime-grid,.confirm-grid{grid-template-columns:1fr;gap:22px}.employee-grid{grid-template-columns:1fr 1fr;gap:10px}.employee-card{padding:16px 10px 14px}.calendar-card,.times-card{min-height:0}.day-grid button{width:36px;height:36px}.time-grid{grid-template-columns:1fr 1fr}.booking-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.public-shell:has(.booking-has-dock){padding-bottom:84px}.confirm-grid .form-grid{margin-top:4px}.page-hero-simple h1{font-size:28px}.team-grid,.public-service-grid,.about-card{grid-template-columns:1fr}.about-card img{height:200px}}@media (width<=420px){.employee-grid{grid-template-columns:1fr}.stepper-item{font-size:10px}}@media (width<=760px){.services-page .page-title{flex-wrap:nowrap;align-items:center;gap:8px;margin-bottom:12px}.services-page .page-title h1{letter-spacing:-.03em;flex:none;font-size:22px}.services-page .page-title p{display:none}.services-page .page-title-actions{gap:6px}.services-page .page-title-actions .btn{white-space:nowrap;border-radius:12px;gap:4px;padding:8px 10px;font-size:12px}.services-page .catalog-card{display:none}.services-mobile{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;gap:6px;padding-bottom:12px;display:grid;position:relative}.services-mobile.is-sorting{touch-action:none;cursor:grabbing}.services-mobile *{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.services-mobile ::selection{background:0 0}.svc-row{margin-left:calc(var(--depth) * 14px);position:relative}.svc-row[data-depth]:not([data-depth="0"]):before{content:"";pointer-events:none;border-bottom:1.5px solid #d7dee8;border-left:1.5px solid #d7dee8;border-bottom-left-radius:8px;width:12px;height:calc(50% + 8px);position:absolute;top:-8px;left:-12px}.services-mobile.is-sorting .svc-row{will-change:transform;transition:transform .2s ease-out}.svc-row.is-drag-source{visibility:hidden;pointer-events:none}.svc-row.is-settled .svc-swipe-face:after{content:"";pointer-events:none;background:#2563eb1a;border-radius:14px;animation:.42s ease-out forwards svc-settle;position:absolute;inset:0}.svc-insert{z-index:4;pointer-events:none;opacity:0;align-items:center;height:8px;transition:opacity .16s ease-out,top .2s ease-out,left .2s ease-out;display:flex;position:absolute;right:0}.svc-insert.is-on{opacity:1}.svc-insert-dot{background:var(--blue);border-radius:50%;flex:none;width:8px;height:8px;margin-left:-4px;transition:transform .18s ease-out;transform:scale(.5)}.svc-insert.is-on .svc-insert-dot{transform:scale(1)}.svc-insert-bar{background:var(--blue);transform-origin:0;border-radius:99px;flex:auto;height:2px;transition:transform .18s ease-out;transform:scaleX(.35)}.svc-insert.is-on .svc-insert-bar{transform:scaleX(1)}.svc-float{z-index:40;pointer-events:none;cursor:grabbing;margin:0;position:fixed}.svc-float-card{opacity:1;transform:translate3d(var(--indent,0px), 0, 0) scale(1);border-radius:14px;transition:transform .18s ease-out,box-shadow .18s ease-out,opacity .18s ease-out;box-shadow:0 0 #0f172a00}.svc-float.is-lifted .svc-float-card{opacity:.95;transform:translate3d(var(--indent,0px), 0, 0) scale(1.02);box-shadow:0 14px 32px #0f172a29,0 0 0 1px #2563eb80,0 0 0 5px #2563eb24}.svc-float.is-invalid{cursor:not-allowed}.svc-float.is-invalid.is-lifted .svc-float-card{box-shadow:0 14px 32px #0f172a24,0 0 0 1px #94a3b8cc}.svc-float .svc-swipe-face{border-radius:14px}.svc-float.is-category .svc-swipe-face{background:#f4f7fb;min-height:46px}.svc-swipe-clip{border-radius:14px;position:relative;overflow:hidden}.svc-swipe-actions{width:92px;display:flex;position:absolute;top:0;bottom:0;right:0}.svc-swipe-edit,.svc-swipe-delete{color:#fff;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:0;font-size:11px;font-weight:700;display:flex}.svc-swipe-edit{background:#3b82f6}.svc-swipe-delete{background:#f43f5e}.svc-swipe-face{z-index:1;touch-action:pan-y;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:#fff;align-items:center;gap:8px;min-height:52px;padding:8px 10px 8px 6px;display:flex;position:relative}.svc-row.is-category .svc-swipe-face{background:#f4f7fb;min-height:46px}.svc-row.is-category.is-nest .svc-swipe-face,.svc-row.is-nest .svc-swipe-face{box-shadow:inset 0 0 0 1.5px var(--blue);background:#eff6ff}.svc-grip{color:#cbd5e1;touch-action:none;cursor:grab;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:none;flex:none;place-items:center;width:22px;height:28px;padding:0;display:grid}.services-mobile.is-sorting .svc-grip{cursor:grabbing}.svc-grip:focus,.svc-grip:focus-visible,.svc-grip:active,.svc-chevron:focus,.svc-chevron:focus-visible,.svc-chevron:active{box-shadow:none;background:0 0;outline:none}.svc-chevron,.svc-chevron-spacer{flex:none;width:18px;height:18px}.svc-chevron{color:#64748b;background:0 0;border:0;place-items:center;padding:0;display:grid}.svc-folder{color:#94a3b8;flex:none;place-items:center;display:grid}.svc-mobile-thumb{object-fit:cover;pointer-events:none;-webkit-user-drag:none;background:#e8eef5;border-radius:10px;flex:none;width:36px;height:36px}.svc-mobile-copy{flex:auto;gap:1px;min-width:0;display:grid}.svc-mobile-copy strong{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:750;overflow:hidden}.svc-mobile-copy small{color:#94a3b8;font-size:12px;font-weight:500}.svc-row .badge{flex:none;padding:4px 10px;font-size:12px}}@keyframes svc-settle{0%{opacity:1}65%{opacity:.85}to{opacity:0}}@media (width<=760px){.employees-title-icon{display:none}.employees-title{gap:0}.employees-title h1{letter-spacing:-.04em;font-size:28px}.employees-title p{margin-top:2px;font-size:13.5px}.employees-head{gap:12px}.employees-tools{grid-template-columns:minmax(0,1fr) 118px;gap:8px;width:100%;display:grid}.employees-search{box-sizing:border-box;width:100%;min-width:0;height:44px;padding:0 12px}.employees-status-filter{width:100%;min-width:0;height:44px;padding:0 10px}.employees-tools .btn-primary{border-radius:12px;grid-column:1/-1;justify-content:center;width:100%;height:46px}.employees-card{display:none}.employees-mobile{gap:10px;display:grid}.emp-mobile-card{text-align:left;width:100%;color:inherit;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #e8eef6;border-radius:16px;gap:8px;margin:0;padding:12px 10px;display:grid;box-shadow:0 8px 22px #0f172a0a}.emp-mobile-card:focus,.emp-mobile-card:focus-visible,.emp-mobile-card:active{outline:none;box-shadow:0 8px 22px #0f172a0a}.emp-mobile-top{align-items:center;gap:4px;min-width:0;display:flex}.emp-mobile-who{flex:none;min-width:0}.emp-mobile-who strong{letter-spacing:-.02em;white-space:nowrap;font-size:14.5px;display:block}.emp-mobile-who small{color:#64748b;white-space:nowrap;align-items:center;gap:3px;margin-top:1px;font-size:11px;font-weight:700;display:flex}.emp-mobile-who small span{color:#94a3b8;font-weight:500}.emp-mobile-card .emp-role{max-width:none;text-overflow:unset;flex:none;padding:2px 6px;font-size:10px;line-height:1.25;overflow:visible}.emp-mobile-gap{flex:8px;min-width:4px}.emp-mobile-status{white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:12.5px;font-weight:700;display:inline-flex}.emp-mobile-status.active{color:#16a34a}.emp-mobile-status.inactive{color:#64748b}.emp-mobile-go{color:#94a3b8;flex:none}.emp-mobile-services{align-items:center;gap:10px;min-width:0;padding-left:44px;display:flex;overflow:hidden}.emp-mobile-services span{color:#2563eb;white-space:nowrap;font-size:12px;font-weight:650}.emp-mobile-services .emp-mobile-more{color:#94a3b8;font-weight:700}.emp-mobile-empty{text-align:center;color:var(--muted);background:#fff;border-radius:16px;margin:0;padding:28px 12px}.modal-backdrop:has(.customer-notes-sheet){padding-left:14px;padding-right:14px;overflow-x:hidden}.modal.customer-notes-sheet{border-radius:24px;width:100%;min-width:0;max-width:100%;padding:18px 16px 16px;overflow-x:hidden;box-shadow:0 24px 60px #0f172a47}.customer-notes-sheet .modal-head{align-items:flex-start;margin-bottom:8px}.customer-notes-sheet .modal-head h3{letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1.15}.customer-notes-sheet .modal-head .icon-btn{color:#64748b;background:#f1f5f9;border:0;border-radius:50%;flex-shrink:0;width:32px;height:32px;font-size:18px}.modal.customer-notes-sheet .modal-body{min-width:0;overflow:hidden auto}.customer-notes-sheet .bd-scroll{gap:12px;min-width:0;max-width:100%;overflow-x:hidden}.customer-notes-sheet .modal-head h3,.customer-notes-sheet .customer-notes-head span,.customer-notes-sheet .bd-note-item p{overflow-wrap:anywhere;min-width:0}.customer-notes-sheet .customer-notes-head{margin:0;display:block}.customer-notes-sheet .customer-notes-head .avatar,.customer-notes-sheet .customer-notes-head .avatar-fallback,.customer-notes-sheet .customer-notes-head strong{display:none}.customer-notes-sheet .customer-notes-head p{color:#64748b;flex-direction:column;align-items:flex-start;gap:8px;margin:0;font-size:14px;font-weight:500}.customer-notes-sheet .customer-book-btn{border-radius:12px;height:48px;margin:2px 0 4px;font-size:16px;font-weight:700}.customer-notes-sheet .bd-notes-panel{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.customer-notes-sheet .bd-notes-panel h4{margin-bottom:10px;font-size:16px;font-weight:800}.customer-notes-sheet .bd-note-head-add{color:#2563eb;background:#eff6ff;border:0;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:700}.customer-notes-sheet .bd-note-list{gap:8px;margin-bottom:0}.customer-notes-sheet .bd-note-item{background:#f8fafc;border-color:#0000;border-radius:12px;gap:8px;padding:14px 12px}.customer-notes-sheet .bd-note-avatar,.customer-notes-sheet .bd-note-item time,.customer-notes-sheet .bd-note-edit,.customer-notes-sheet .bd-note-trash{display:none}.customer-notes-sheet .bd-note-x{display:block}.customer-notes-sheet .bd-note-item p{color:#0f172a;font-size:14px;font-weight:650}.customer-notes-sheet .bd-note-item .icon-btn{color:#94a3b8;background:0 0;border:0;width:28px;height:28px}.customer-notes-sheet .bd-note-add{display:none}.customer-notes-sheet .bd-note-add.is-open{background:#fff;border-style:solid;border-color:#e2e8f0;margin-top:8px;display:flex}.customer-popup-stats{grid-template-columns:1fr 1fr;margin-top:6px;padding-top:8px;display:grid}.customer-popup-stats>div{flex-direction:column;align-items:center;gap:2px;padding:6px 4px 2px;display:flex}.customer-popup-stats>div+div{border-left:1px solid #e8eef5}.customer-popup-stats span{color:#94a3b8;font-size:13px;font-weight:600}.customer-popup-stats strong{letter-spacing:-.03em;color:#0f172a;font-size:28px;font-weight:800;line-height:1.1}}@keyframes page-slide-out-left{0%{transform:translate(0,0)}to{transform:translate(-100%)}}@keyframes page-slide-out-right{0%{transform:translate(0,0)}to{transform:translate(100%)}}@keyframes page-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0,0)}}@keyframes page-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0,0)}}@media (width<=760px){.roster-page .page-title{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:12px}.roster-page .page-title h1{letter-spacing:-.04em;font-size:28px}.roster-page .page-title p{display:none}.roster-page .page-title-actions{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;width:100%;display:grid}.roster-page .page-title-actions .btn{color:#334155;white-space:normal;text-align:center;background:#fff;border-color:#e6edf5;border-radius:16px;flex-direction:column;gap:6px;min-height:68px;padding:10px 6px;font-size:12px;font-weight:600;line-height:1.2}.roster-page .roster-toolbar{flex-wrap:nowrap;margin:0 0 12px}.roster-page .toolbar-left{flex-wrap:nowrap;gap:6px;width:100%;min-width:0}.roster-page .roster-date-chip{flex:auto;min-width:0;padding:7px 8px}.roster-page .date-chip-btn{gap:6px;width:100%;min-width:0}.roster-page .date-chip-btn span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.roster-page .roster-this-week{white-space:nowrap;min-width:0;margin-left:0;padding:8px 10px}.roster-page .roster-viewbar{justify-content:space-between;align-items:center;gap:8px;margin:0 0 12px;display:flex}.roster-view-actions{gap:6px}.roster-edit-btn,.roster-save-btn{height:34px;padding:0 10px;font-size:13px}.roster-view-toggle{background:#fff;border:1px solid #e6edf5;border-radius:14px;align-items:center;gap:2px;padding:3px;display:flex}.roster-view-toggle button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:11px;padding:8px 14px;font-size:13px;font-weight:700}.roster-view-toggle button.is-on{background:var(--blue);color:#fff}.roster-legend{color:#64748b;white-space:nowrap;align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.roster-legend span{align-items:center;gap:4px;display:inline-flex}.roster-legend-dot{border-radius:50%;width:8px;height:8px;display:block}.roster-legend-dot.is-on{background:#22c55e}.roster-legend-dot.is-off{background:#ef4444}.page-pane:has(.roster-page){flex-direction:column;display:flex;overflow:hidden}.roster-page .roster-card{border-radius:18px}.roster-page .roster-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow:auto}.roster-page .roster-grid{table-layout:fixed;width:100%;min-width:0}.roster-page.is-month .roster-grid{table-layout:auto;width:max-content;min-width:100%}.roster-page .roster-grid th,.roster-page .roster-grid td{border-right-color:#0000;padding:6px 1px}.roster-page .roster-grid thead th{z-index:3;vertical-align:bottom;background:#fff;font-size:11px;position:sticky;top:0}.roster-page .roster-grid thead th span{font-size:11px}.roster-page .roster-grid thead th small{color:#94a3b8;white-space:nowrap;margin-top:1px;font-size:9px;font-weight:600}.roster-page .roster-grid thead th.roster-staff-head,.roster-page .roster-grid tbody th{text-align:left;z-index:2;background:#fff;width:122px;min-width:122px;max-width:122px;padding:8px 4px 8px 8px;position:sticky;left:0}.roster-page .roster-grid thead th.roster-staff-head{z-index:5;background:#fff;top:0}.roster-page.is-month .roster-grid thead th:not(.roster-staff-head),.roster-page.is-month .roster-grid td{width:44px;min-width:44px}.roster-page .roster-grid td:nth-child(2n),.roster-page .roster-grid thead th:nth-child(2n){background:#f8fafc}.roster-page .roster-grid .is-today{background:#f8fbff}.roster-page .roster-grid .is-past{color:inherit}.roster-page .roster-grid .is-past .roster-cell{opacity:1}.roster-page .person{align-items:center;gap:6px}.roster-page .person>span{color:#0f172a;min-width:0;font-size:12px;font-weight:700;line-height:1.15}.roster-page .roster-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.roster-page .person small{-webkit-line-clamp:2;color:#94a3b8;-webkit-box-orient:vertical;margin-top:2px;font-size:10px;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden}.roster-page .roster-cell{border-radius:9px;place-items:center;width:28px;min-width:0;height:28px;margin:0 auto;padding:0;display:grid}.roster-page .roster-cell.is-on{color:#22c55e;background:#e7f8ee}.roster-page .roster-cell.is-off{color:#ef4444;background:#fde8ea}.roster-page .roster-cell-label{display:none}.roster-page .roster-cell-dot{background:currentColor;border-radius:50%;width:8px;height:8px;display:block}.company-page{flex-direction:column;gap:14px;display:flex}.company-page .page-title{order:0}.company-page .page-title h1{letter-spacing:-.04em;font-size:28px}.company-page .page-title p,.company-page .error{order:0}.company-page .page-title p{display:none}.company-grid,.company-col{display:contents}.salon-details-card{order:1}.hours-card{order:2}.holidays-card{order:3}.countries-card{order:4}.company-mobile-save{order:5}.company-card{border-radius:22px;padding:16px 14px 14px;box-shadow:0 8px 24px #0f172a0a}.company-card-head{align-items:center;gap:8px;margin-bottom:12px}.company-card-head h2,.salon-details-head h2{letter-spacing:-.03em;font-size:17px}.company-card-head h2{align-items:center;gap:8px;display:flex}.company-card-head h2:before{content:"";background:var(--blue);border-radius:999px;flex-shrink:0;width:4px;height:18px}.salon-details-head{margin-bottom:14px}.salon-details-head p,.company-card-copy,.salon-details-actions{display:none}.company-card-copy-short{color:#64748b;margin:4px 0 0;font-size:13px;display:block}.salon-details-list{gap:12px}.salon-row{grid-template-columns:1fr;gap:0;position:relative}.salon-row-icon{color:#94a3b8;z-index:1;pointer-events:none;background:0 0;width:18px;height:18px;margin:0;position:absolute;bottom:13px;left:12px}.salon-row-icon svg{width:18px;height:18px}.salon-row-phone .salon-row-icon,.salon-row-country .salon-row-icon{display:none}.salon-details-card .field label{color:#64748b;font-size:12px;font-weight:600}.salon-details-card .field>input,.salon-row-split .field:first-child select{border-radius:14px;min-height:46px;padding-left:38px}.salon-row-split{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:10px}.salon-row-split .field:last-child input{border-radius:14px;min-height:46px;padding-left:12px}.phone-intl,.country-flag-select select{border-radius:14px;min-height:46px}.phone-code select{min-width:78px;padding-right:28px;font-size:14px}.country-flag-select select{padding-left:40px}.hours-day{background:#fff;border-color:#e8eef6;padding:6px 8px 2px}.hours-day-row{flex-wrap:nowrap;gap:6px;min-height:42px;padding:2px 0}.hours-day-name{width:68px;font-size:13px}.hours-row-spacer{width:44px}.hours-pill,.hours-icon-btn.is-add,.hours-time svg{display:none}.hours-mobile-trash,.hours-mobile-trash:disabled{opacity:1;color:#ef4444;display:grid}.hours-day.is-closed .hours-mobile-trash,.hours-day.is-closed .hours-mobile-trash:disabled,.hours-day.is-closed .hours-icon-btn.is-danger{color:#cbd5e1}.hours-range{flex-shrink:1;gap:4px;min-width:0;margin-left:0}.hours-time{border-radius:10px;flex:1 1 0;width:auto;min-width:0;min-height:34px;padding:0 4px}.hours-time input{min-width:0;font-size:11px;font-weight:650}.hours-time input::-webkit-calendar-picker-indicator{display:none}.hours-icon-btn{width:28px;height:28px}.hours-add-row,.hours-add-row.hours-add-row-single,.hours-add-row.hours-add-row-closed{justify-content:flex-start;padding:0 0 6px 118px;display:flex}.hours-add-time{background:0 0;padding:2px 0;font-size:14px}.hours-add-time:hover{background:0 0}.hours-add-full{display:none}.hours-add-short{display:inline}.holidays-card .company-card-head h2{white-space:nowrap;font-size:15px}.holiday-add-btn{color:var(--blue);box-shadow:none;background:0 0;flex-shrink:0;min-height:0;padding:0;font-size:13px}.holiday-add-btn:hover{background:0 0}.holiday-table-wrap{display:none}.holiday-cards{gap:10px;display:grid}.holiday-card{background:#fff;border:1px solid #e8eef6;border-radius:16px;gap:8px;padding:12px;display:grid}.holiday-card-top{align-items:center;gap:8px;display:flex}.holiday-card-date,.holiday-card-name{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.holiday-card-date{flex:1;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:750;display:flex}.holiday-card-date svg{color:#64748b;flex-shrink:0}.holiday-card-date strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.holiday-card-name{color:#64748b;padding-left:24px;font-size:13px;font-weight:500}.holiday-card-times{flex-wrap:nowrap;justify-content:flex-start;width:calc(100% - 24px);min-width:0;margin-left:24px}.holiday-card-times .hours-time{flex:1 1 0;width:auto;min-width:0}.holiday-card-times .hours-time input{width:100%;min-width:0}.holiday-card.is-closed .holiday-card-date,.holiday-card.is-closed .holiday-card-name{color:#94a3b8}.country-search svg{display:block;transform:translateY(-50%)}.country-search input{border-radius:14px;min-height:44px;padding-left:36px}.countries-card .company-card-head p{margin-top:4px;font-size:13px}.country-enable-list{background:0 0;border:0;flex-direction:column;gap:0;max-height:280px;margin-top:8px;padding:0;display:flex}.country-enable-item.is-locked{order:-1}.country-enable-item{border-bottom:1px solid #f1f5f9;border-radius:0;padding:11px 2px;font-size:14px}.country-enable-item:hover{background:0 0}.country-enable-flag{width:22px;display:flex}.country-enable-item.is-locked input{opacity:1}.company-mobile-save{display:block}.company-mobile-save .btn{border-radius:14px;justify-content:center;width:100%;min-height:48px;font-size:16px}.staff-page .page-title{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:12px}.staff-page .page-title h1{font-size:28px}.staff-page .page-title p{font-size:13.5px}.staff-page .page-title .btn{border-radius:12px;width:auto;min-height:42px;padding:10px 16px;font-size:15px}.staff-card{box-shadow:none;background:0 0;border:0;padding:0}.staff-search{background:#fff;border-radius:14px;min-height:46px;margin:0 0 12px}.staff-table-wrap,.staff-login-sheet .staff-photo-slot{display:none}.staff-login-sheet{border-radius:22px;padding:18px 16px 16px}.staff-login-sheet .modal-head{margin-bottom:14px}.staff-login-sheet .modal-head h3{letter-spacing:-.03em;color:var(--navy);font-size:22px;font-weight:800}.staff-login-sheet .modal-head .icon-btn{color:#94a3b8;background:0 0;border:0;width:32px;height:32px;font-size:22px}.staff-login-sheet .modal-body{padding-right:0}.staff-login-sheet .form-grid{gap:12px}.staff-login-sheet .field label{color:#334155;font-size:13px;font-weight:650}.staff-login-sheet .staff-field-control{position:relative}.staff-login-sheet .staff-field-icon{color:#94a3b8;pointer-events:none;display:block;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.staff-login-sheet .staff-field-control input,.staff-login-sheet .staff-field-control select{border-color:#e5e7eb;border-radius:12px;min-height:46px;padding-left:40px;font-size:15px}.staff-login-sheet .staff-field-status select{padding-left:62px}.staff-login-sheet .staff-status-mark{pointer-events:none;background:#22c55e;border-radius:50%;width:8px;height:8px;margin-top:-4px;display:block;position:absolute;top:50%;left:40px}.staff-login-sheet .staff-field-status.is-inactive .staff-status-mark{background:#94a3b8}.staff-login-sheet .modal-actions{border-top:0;grid-template-columns:1.15fr .85fr;gap:10px;margin-top:6px;padding-top:4px;display:grid}.staff-login-sheet .modal-actions .btn{border-radius:12px;min-height:46px;font-size:16px;font-weight:700}.staff-login-sheet .modal-actions .btn-ghost{color:#334155;background:#fff;border:1.5px solid #e5e7eb}.staff-login-sheet .modal-actions .btn-primary{background:#3b82f6}.staff-mobile{gap:10px;display:grid}.staff-swipe{background:#fff;border:1px solid #e8eef6;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 8px 20px #0f172a0a}.staff-swipe-actions{display:flex;position:absolute;top:0;bottom:0;right:0}.staff-swipe-edit,.staff-swipe-delete{color:#fff;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.staff-swipe-edit{background:#3b82f6}.staff-swipe-delete{background:#ef4444}.staff-swipe.is-open .staff-mobile-go,.staff-swipe.is-open .staff-swipe-face>:first-child{display:none}.staff-swipe.is-open .staff-swipe-face{grid-template-columns:minmax(0,1fr)}.staff-swipe-face{z-index:1;touch-action:pan-y;background:#fff;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:4px 12px;min-height:92px;padding:12px;display:grid;position:relative}.staff-mobile-copy{gap:1px;min-width:0;display:grid}.staff-mobile-copy strong{color:var(--navy);font-size:15px;font-weight:750}.staff-mobile-copy small{color:#94a3b8;font-size:12px;font-weight:500}.staff-mobile-copy em{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-style:normal;overflow:hidden}.staff-mobile-pills{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.staff-mobile-go{color:#cbd5e1}.staff-foot{padding:12px 4px 0}}.sync-status{flex:0 auto;min-width:0;position:relative}.sync-status-btn{border:1px solid var(--border);max-width:280px;min-height:40px;color:var(--navy);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:4px 12px;font-size:13px;font-weight:600;line-height:1.15;display:inline-flex}.sync-status-btn:hover{background:#f8fafc}.sync-status-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.sync-label-long,.sync-label-short{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.sync-label-short{display:none}.sync-detail{color:var(--muted);font-size:11px;font-weight:500}.sync-status.is-offline .sync-status-btn{background:var(--amber-bg);border-color:#fde68a}.sync-status.is-attention .sync-status-btn,.sync-status.is-failed .sync-status-btn{background:var(--red-bg);color:var(--red);border-color:#fecaca}.sync-status.is-waiting .sync-status-btn,.sync-status.is-syncing .sync-status-btn{background:var(--blue-soft);border-color:var(--blue-ring);color:var(--blue)}.sync-live{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sync-panel{z-index:80;border:1px solid var(--border);background:#fff;border-radius:16px;width:min(320px,100vw - 16px);padding:14px;position:fixed;box-shadow:0 18px 40px #0f172a29}.sync-panel strong{color:var(--navy);font-size:14px;display:block}.sync-panel p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.45}.sync-panel-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sync-spin{animation:.8s linear infinite sync-spin}@keyframes sync-spin{to{transform:rotate(360deg)}}.sync-mark{background:var(--amber-bg);color:#92400e;letter-spacing:0;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;width:fit-content;padding:1px 6px;font-size:10px;font-weight:700;line-height:1.4;display:inline-flex}.sync-mark.is-attention{background:var(--red-bg);color:var(--red)}.sched-appt-top .sync-mark{text-overflow:clip;flex:none;margin-left:auto;overflow:visible}.table td .sync-mark{vertical-align:middle;margin-left:6px}.sync-review{width:min(640px,100%)}.sync-review-list{gap:12px;display:grid}.sync-review-card{border:1px solid var(--border);background:#fff;border-radius:14px;padding:12px}.sync-review-card h4{color:var(--navy);margin:0 0 6px;font-size:15px}.sync-review-card p{color:var(--text);margin:0;font-size:14px;line-height:1.45}.sync-version{background:var(--blue-soft);border-radius:12px;gap:4px;margin-top:10px;padding:10px;font-size:13px;display:grid}.sync-version b{color:var(--navy)}.sync-review-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sync-review-empty{color:var(--muted);margin:0}.dash-local-note{color:#92400e;background:var(--amber-bg);border-radius:10px;max-width:520px;margin:8px 0 0;padding:6px 10px;font-size:13px;font-weight:600}@media (width<=760px){.sync-label-long,.sync-detail{display:none}.sync-label-short{display:inline}.sync-status-btn{max-width:118px;min-height:40px;padding:0 10px}.sched-appt .sync-mark{padding:0 4px;font-size:9px}.dash-local-note{font-size:12px}}
