.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.metric-card{align-items:center;gap:16px;min-height:96px;padding:17px 18px;display:flex}.metric-icon{border-radius:14px;flex:none;place-items:center;width:48px;height:48px;display:grid}.metric-icon-sage{color:#237762;background:var(--sage-soft)}.metric-icon-sky{color:#3e69a5;background:var(--sky-soft)}.metric-icon-lilac{color:#6755a7;background:var(--lilac-soft)}.metric-value{margin:0;font-size:27px;font-weight:760;line-height:1}.metric-label{color:var(--muted);margin:5px 0 0;font-size:13px;font-weight:550}.metric-note{color:var(--muted);margin-left:auto;font-size:12px}.dashboard-insights{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px;margin-bottom:18px;display:grid}.dashboard-panel{padding:22px}.dashboard-panel-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.dashboard-panel-title{margin:0;font-size:18px;font-weight:720}.dashboard-big-number{font-size:30px;font-weight:760;line-height:1}.dashboard-small-label{color:var(--muted);margin-top:5px;font-size:12px}.week-chart{grid-template-columns:repeat(7,1fr);align-items:end;gap:10px;height:128px;display:grid}.week-chart-column{flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.week-chart-bar-area{justify-content:center;align-items:end;width:100%;height:96px;display:flex}.week-chart-bar{background:linear-gradient(#92bbed,#c7dbf5);border-radius:8px 8px 3px 3px;width:min(34px,72%);min-height:5px}.week-chart-day{color:var(--muted);font-size:11px}.status-summary{flex-direction:column;gap:12px;display:flex}.status-row{grid-template-columns:100px 1fr 34px;align-items:center;gap:10px;display:grid}.status-label{font-size:12px;font-weight:600}.status-track{background:#f2efeb;border-radius:999px;height:8px;overflow:hidden}.status-fill{border-radius:inherit;height:100%}.status-confirmed{background:var(--sage)}.status-pending{background:var(--butter)}.status-cancelled{background:var(--danger)}.status-completed{background:var(--sky)}.status-no-show{background:var(--lilac)}.status-count{color:var(--muted);text-align:right;font-size:12px}.dashboard-lower{grid-template-columns:minmax(0,1.55fr) minmax(240px,.8fr) minmax(230px,.72fr);align-items:start;gap:18px;display:grid}.today-list,.team-list,.popular-list{flex-direction:column;display:flex}.today-row{border-bottom:1px solid var(--line);grid-template-columns:68px 1fr auto;align-items:center;gap:14px;min-height:68px;display:grid}.today-row:last-child{border-bottom:0}.today-time{font-weight:700}.today-customer{font-weight:650}.today-detail{color:var(--muted);margin-top:3px;font-size:12px}.status-pill{border-radius:999px;padding:6px 10px;font-size:10px;font-weight:750}.status-pill-confirmed{color:#237762;background:var(--sage-soft)}.status-pill-pending{color:#8a6309;background:var(--butter-soft)}.status-pill-completed{color:#4c63aa;background:var(--sky-soft)}.status-pill-no-show{color:#654c9b;background:var(--lilac-soft)}.status-pill-cancelled{color:var(--danger);background:var(--danger-soft)}.team-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;min-height:58px;display:flex}.team-row:last-child{border-bottom:0}.team-avatar{background:var(--sky-soft);color:#42689d;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:750;display:grid}.team-name{font-size:13px;font-weight:650}.team-bookings{color:var(--muted);margin-left:auto;font-size:11px}.dashboard-right{flex-direction:column;gap:18px;display:flex}.quick-actions{flex-direction:column;gap:9px;display:flex}.quick-action{width:100%;min-height:48px;color:var(--ink);text-align:left;border:0;border-radius:12px;align-items:center;gap:11px;padding:0 13px;font-weight:650;display:flex}.quick-action svg:last-child{margin-left:auto}.quick-action-coral{background:var(--coral-soft)}.quick-action-lilac{background:var(--lilac-soft)}.quick-action-sage{background:var(--sage-soft)}.popular-row{grid-template-columns:28px 1fr auto;align-items:center;gap:9px;min-height:40px;display:grid}.popular-rank{background:var(--butter-soft);border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:750;display:grid}.popular-name{font-size:13px;font-weight:650}.popular-count{color:var(--muted);font-size:11px}.dashboard-empty{color:var(--muted);padding:20px 0;font-size:13px}@media (width<=1180px){.dashboard-lower{grid-template-columns:1fr 1fr}.dashboard-lower>:first-child{grid-column:1/-1}}@media (width<=800px){.dashboard-metrics,.dashboard-insights,.dashboard-lower{grid-template-columns:1fr}.dashboard-lower>:first-child{grid-column:auto}}.dashboard-lower .today-list,.dashboard-lower .team-list,.dashboard-lower .popular-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#becbbb transparent;max-height:290px;padding-right:6px;overflow:hidden auto}.dashboard-lower{align-items:start}.dashboard-lower .dashboard-panel{min-width:0}.dashboard-today-filter{max-width:300px;margin-bottom:12px}.today-row>div:nth-child(2){min-width:0}.today-customer,.today-detail,.team-name,.popular-name{overflow-wrap:anywhere}.team-avatar,.popular-rank{flex-shrink:0}.dashboard-page{flex-direction:column;gap:14px;display:flex}@media (width>=1000px){.dashboard-workspace .page-content{height:calc(100dvh - 72px);padding:18px 28px}.dashboard-page{height:100%;min-height:0;overflow:hidden}.dashboard-page>.page-header{flex:none;margin-bottom:0}.dashboard-page .dashboard-metrics{flex:none;margin:0}.dashboard-page .metric-card{min-height:76px;padding:12px 18px}.dashboard-page .dashboard-insights{flex:0 0 clamp(170px,25vh,230px);min-height:0;margin:0}.dashboard-page .dashboard-insights .dashboard-panel{padding:16px 20px;overflow:hidden}.dashboard-page .dashboard-insights .dashboard-panel:first-child{flex-direction:column;display:flex}.dashboard-page .dashboard-insights .dashboard-panel-header{margin-bottom:8px}.dashboard-page .week-chart{flex:1;height:auto;min-height:40px}.dashboard-page .week-chart-bar-area{flex:1;height:auto;min-height:0}.dashboard-page .status-summary{gap:10px}.dashboard-page .dashboard-lower{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1.6fr) minmax(210px,.85fr) minmax(210px,.85fr);align-items:stretch;min-height:0}.dashboard-page .dashboard-lower>.dashboard-panel{flex-direction:column;min-width:0;min-height:0;padding:18px;display:flex}.dashboard-page .dashboard-lower .dashboard-panel-header{flex:none;gap:10px;margin-bottom:10px}.dashboard-page .dashboard-lower .today-list,.dashboard-page .dashboard-lower .team-list,.dashboard-page .dashboard-lower .popular-list{flex:1;min-height:0;max-height:none;overflow-y:auto}.dashboard-page .today-row{flex-shrink:0;padding:13px 0}.dashboard-page .team-row,.dashboard-page .popular-row{flex-shrink:0}.dashboard-page .dashboard-today-filter{flex:1;width:auto;min-width:100px;max-width:230px;margin:0}.dashboard-page .dashboard-lower .button{white-space:nowrap;padding:10px 12px;font-size:12px}.dashboard-page .today-row>div:nth-child(2){min-width:0}.dashboard-page .today-detail{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}@media (width>=1000px) and (height<=730px){.dashboard-page{gap:10px}.dashboard-page .page-description{display:none}.dashboard-page .page-title{font-size:27px}.dashboard-page .dashboard-insights{flex-basis:160px}.dashboard-page .dashboard-lower>.dashboard-panel{padding:13px}.dashboard-page .metric-card{min-height:64px}.dashboard-page .dashboard-big-number{font-size:25px}}.date-time-control{width:100%;min-width:0;display:block;position:relative}.date-time-control input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-variant-numeric:tabular-nums;padding-right:38px;width:100%!important}.date-time-control input::-webkit-calendar-picker-indicator{display:none}.date-time-trigger{color:#557866;cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.date-time-trigger:hover{background:#e1ede4}.date-time-control:has(input:disabled) .date-time-trigger{pointer-events:none;opacity:.45}.date-time-popover{z-index:1000;color:#203b30;background:#fbf9f4;border:1px solid #dedfd2;border-radius:20px;width:min(320px,100vw - 24px);max-height:calc(100dvh - 24px);padding:16px;position:fixed;overflow-y:auto;box-shadow:0 18px 55px #293e3026}.date-time-popover button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:9px}.date-time-popover button:hover{background:#e4eee3}.date-time-popover button:focus-visible{outline-offset:2px;outline:2px solid #638e77}.date-time-popover button:disabled{opacity:.3;cursor:default}.date-picker-heading{text-transform:capitalize;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.date-picker-heading>div{display:flex}.date-picker-heading button{place-items:center;width:28px;height:28px;display:grid}.date-picker-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.date-picker-grid button{height:34px;font-size:13px}.date-picker-weekdays{text-align:center;color:#849083;margin-bottom:7px;font-size:11px}.date-picker-grid .outside-month{color:#a3aaa0}.date-picker-grid .is-today{box-shadow:inset 0 0 0 1px #729883}.date-time-popover button[aria-pressed=true]{color:#fff;background:#557e68}.date-picker-footer{border-top:1px solid #e2e5da;justify-content:flex-end;gap:8px;margin-top:12px;padding-top:10px;display:flex}.date-picker-footer button{padding:7px 12px;font-size:12px;font-weight:650}.time-picker-section{padding-top:10px}.time-picker-section strong{font-size:12px}.time-picker-hours{grid-template-columns:repeat(6,1fr);gap:4px;margin:8px 0;display:grid}.time-picker-hours button,.time-picker-minutes button{background:#f0f1e9;padding:7px;font-size:12px}.time-picker-minutes{grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:8px;display:grid}.time-picker-section small{color:#899386;font-size:10px}.calendar-page-header{margin-bottom:18px}.calendar-header-main{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.calendar-page-header .page-title{font-size:34px}.calendar-page-header .page-description{margin-top:3px}.calendar-page-header .page-eyebrow{margin-bottom:5px}.calendar-title-group{align-items:center;gap:14px;display:flex}.calendar-title-icon{background:var(--coral-soft);border-radius:14px;flex:none;place-items:center;width:46px;height:46px;display:grid}.calendar-toolbar{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px;margin-top:16px;display:grid}.calendar-navigation{align-items:center;gap:8px;display:flex}.calendar-filters{grid-template-columns:repeat(4,minmax(135px,1fr));gap:10px;width:100%;display:grid}.calendar-filter{width:100%;min-width:0}.calendar-shell{background:var(--page);border-radius:var(--radius-card);margin-top:0;overflow:auto hidden}.calendar-grid{background:var(--page);grid-template-columns:64px repeat(7,minmax(140px,1fr));min-width:1080px;display:grid}.calendar-time-header{background:0 0;border-bottom:none;height:72px}.calendar-day-header{background:#fff;border:1px solid #e1dad2b8;border-bottom:0;border-radius:11px 11px 0 0;flex-direction:column;justify-content:center;align-items:center;height:72px;margin-left:5px;display:flex}.calendar-day-name{color:#202027;letter-spacing:-.015em;font-size:13px;font-weight:700}.calendar-day-count{color:#77747d;margin-top:5px;font-size:10px;font-weight:500}.calendar-day-header.today{background:linear-gradient(#e1f4efcc,#fff)}.calendar-day-header.today .calendar-day-name{color:#237762}.calendar-time-column,.calendar-day-column{height:600px;position:relative}.calendar-time-column{background:0 0;border-right:none}.calendar-day-column{background:#fdfcfb;border-left:1px solid #e1dad2b8;border-right:1px solid #e1dad2b8;border-radius:0 0 10px 10px;margin-left:5px;position:relative}.calendar-day-column.today{background:#e1f4ef1f}.calendar-hour-line{pointer-events:none;border-top:1px solid #d9d2cab8;position:absolute;left:0;right:0}.calendar-hour-label{z-index:3;color:#55535d;background:var(--page);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.01em;border-radius:5px;padding:2px 5px;font-size:11px;font-weight:650;line-height:1;position:absolute;right:10px;transform:translateY(-50%)}.calendar-appointment{text-align:left;color:var(--ink);z-index:2;border:0;border-radius:10px;padding:7px 7px 6px 11px;transition:transform .12s,box-shadow .12s;position:absolute;overflow:hidden;box-shadow:0 2px 7px #1f1b180b}.calendar-appointment:hover{z-index:5;transform:translateY(-1px);box-shadow:0 7px 18px #1f1b181a}.calendar-appointment:before{content:"";background:var(--service-accent);width:4px;position:absolute;inset:0 auto 0 0}.calendar-appointment-time{white-space:nowrap;color:#222229;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";margin-bottom:4px;font-size:11px;font-weight:700;line-height:1.15;display:block;overflow:hidden}.calendar-appointment-primary{text-overflow:ellipsis;white-space:nowrap;color:#181820;font-size:12px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.calendar-appointment-secondary{text-overflow:ellipsis;white-space:nowrap;color:#625f68;font-size:10.5px;font-weight:500;line-height:1.25;display:block;overflow:hidden}.service-tone-sage{--service-accent:#2fa98b;background:#d3eee7}.service-tone-sky{--service-accent:#598fd8;background:#dae8f9}.service-tone-lilac{--service-accent:#806bc7;background:#e5def6}.service-tone-butter{--service-accent:#d5a32c;background:#f8e8b6}.service-tone-blush{--service-accent:#cd718b;background:#f4d9e2}.calendar-overlap-chip{z-index:8;color:#72564a;background:#fff5eef7;border:1px solid #ead8cb;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:24px;font-size:10px;font-weight:700;display:flex;position:absolute;left:18%;right:18%;box-shadow:0 3px 10px #1f1b1814}.calendar-overlap-chip:hover{background:#fff0e6}.calendar-empty-day{text-align:center;color:#aaa4ad;font-size:11px;position:absolute;top:45%;left:0;right:0}.appointment-drawer-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18182033;position:fixed;inset:0}.appointment-drawer{background:#fff;width:min(420px,94vw);height:100%;padding:28px;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-16px 0 50px #1f1b181f}.drawer-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px;display:flex}.drawer-close{background:var(--page);border:0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.drawer-time{margin:0 0 8px;font-size:22px;font-weight:750}.drawer-customer{margin:0 0 4px;font-size:18px;font-weight:700}.drawer-detail{color:var(--muted);margin:5px 0;font-size:13px}.drawer-section{border-top:1px solid var(--line);padding:18px 0}.drawer-actions{flex-wrap:wrap;gap:8px;display:flex}.calendar-modal-backdrop{z-index:120;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#18182042;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.calendar-modal{background:#fff;border-radius:20px;width:min(560px,100%);max-height:90vh;padding:26px;overflow-y:auto;box-shadow:0 24px 70px #1f1b182e}.overlap-list{flex-direction:column;gap:8px;margin-top:18px;display:flex}.overlap-list-item{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;justify-content:space-between;gap:14px;width:100%;padding:12px;display:flex}.overlap-list-item:hover{background:var(--page)}.overlap-list-main{font-weight:650}.overlap-list-detail{color:var(--muted);margin-top:3px;font-size:11px}@media (width<=1180px){.calendar-toolbar{grid-template-columns:1fr}.calendar-filters{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=800px){.calendar-header-main{flex-direction:column}.calendar-filters{grid-template-columns:1fr 1fr}}@media (width<=520px){.calendar-navigation{width:100%}.calendar-navigation .button{flex:1;padding-left:8px;padding-right:8px}.calendar-filters{grid-template-columns:1fr}}@media (width<=700px){.calendar-header-main{flex-direction:column}.calendar-filters{grid-template-columns:1fr 1fr;width:100%;display:grid}.calendar-filter{min-width:0}}.calendar-filters{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=800px){.calendar-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.calendar-filters{grid-template-columns:1fr}}.calendar-workspace .app-main{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.calendar-workspace .topbar{flex:0 0 62px;height:62px}.calendar-workspace .page-content{flex:1;min-height:0;padding:20px 28px 18px;overflow:hidden}.calendar-page{flex-direction:column;height:100%;min-height:0;display:flex}.calendar-page-header{flex:none;margin-bottom:14px}.calendar-toolbar{grid-template-columns:auto minmax(0,1fr);gap:clamp(12px,3vw,48px)}.calendar-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.calendar-shell{flex:1;min-height:0;overflow:hidden}.calendar-grid{grid-template-rows:64px minmax(0,1fr);grid-template-columns:48px repeat(7,minmax(0,1fr));min-width:0;height:100%}.calendar-time-header,.calendar-day-header{min-width:0;height:64px}.calendar-day-column,.calendar-time-column{min-height:0;overflow:hidden}.calendar-hour-label:last-child{transform:translateY(-100%)}.calendar-day-name{font-size:12px}.calendar-day-count{font-size:10px}.calendar-appointment{min-height:0;padding:5px 7px}@media (width<=1050px){.calendar-toolbar{gap:12px}.calendar-navigation{gap:5px}.calendar-navigation .button{padding:10px}.calendar-filter{padding-left:9px;padding-right:8px;font-size:12px}.calendar-workspace .page-content{padding:16px 16px 12px}}@media (width<=700px){.calendar-header-main{flex-direction:row;gap:10px}.calendar-page-header .page-title{font-size:25px}.calendar-title-icon{width:36px;height:36px}.calendar-toolbar{grid-template-columns:1fr;gap:8px;margin-top:10px}.calendar-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.calendar-header-main>.button{padding:10px;font-size:12px}.calendar-day-name{font-size:10px}.calendar-day-count{display:none}.calendar-grid{grid-template-columns:35px repeat(7,minmax(0,1fr))}.calendar-day-header,.calendar-day-column{margin-left:2px}.calendar-appointment{padding:3px}}@media (height<=700px){.calendar-workspace .topbar{flex-basis:48px;height:48px}.calendar-workspace .page-content{padding-top:12px;padding-bottom:10px}.calendar-toolbar{margin-top:10px}.calendar-page-header{margin-bottom:8px}}.calendar-workspace{height:100dvh;min-height:0;overflow:hidden}.calendar-filters .search-select{padding:0}.calendar-filters .search-select input{padding:11px 30px 11px 31px;font-size:12px}.calendar-filters .search-select>button{padding:11px 30px 11px 12px;font-size:12px}.calendar-filters .search-select-icon{width:14px;left:10px}.calendar-filters .search-select-chevron{right:9px}.refined-calendar .calendar-shell{background:#fffdf9;border:1px solid #e8e1d9;border-radius:20px;box-shadow:0 8px 30px #2a352708}.refined-calendar .calendar-grid{background:#fffdf9;gap:0;min-width:0;height:100%}.refined-calendar .calendar-time-header{color:#8c948b;border-bottom:1px solid #e8e1d9;justify-content:center;align-items:center;font-size:9px;display:flex}.refined-calendar .calendar-day-header{color:#273a35;cursor:pointer;background:#fffdf9;border-top:0;border-bottom:1px solid #e8e1d9;border-left:1px solid #e8e1d9;border-right:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:68px;margin:0;display:flex}.refined-calendar .calendar-day-header.is-today{color:#426c5c;background:#ecf3ed}.refined-calendar .calendar-day-header:hover{background:#f2eee7}.refined-calendar .calendar-day-name{font-size:13px;font-weight:650}.refined-calendar .calendar-day-count{color:#839087;font-size:10px}.refined-calendar .calendar-day-column,.refined-calendar .calendar-time-column{border-radius:0;min-width:0;height:100%;margin:0;overflow:hidden}.refined-calendar .calendar-day-column{background:#fffdf9;border:0;border-left:1px solid #ebe5dd}.refined-calendar .calendar-day-column.is-today{background:#f5f8f3}.refined-calendar .calendar-hour-line{opacity:.65;background:#e8e2d9;border:0;height:1px;left:0;right:0}.refined-calendar .calendar-hour-label{text-align:right;color:#8b9289;font-size:10px;font-weight:500;line-height:16px;left:0;right:8px;transform:translateY(-50%)}.refined-calendar .calendar-hour-label.first-tick{transform:translateY(-25%)}.refined-calendar .calendar-hour-label.last-tick{transform:translateY(-75%)}.refined-calendar .calendar-appointment{border:1px solid color-mix(in srgb, var(--booking-accent) 20%, #fff);border-left:3px solid var(--booking-accent);background:var(--booking-surface);color:#273a35;text-align:left;cursor:pointer;border-radius:11px;flex-direction:column;gap:4px;min-width:0;min-height:0;padding:10px 11px;font-family:inherit;transition:box-shadow .15s,border-color .15s;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px 7px #2a352709}.refined-calendar .calendar-appointment:hover{border-color:var(--booking-accent);z-index:3;box-shadow:0 5px 14px #2a352718}.refined-calendar .calendar-appointment:before{display:none}.refined-calendar .tone-sage{--booking-accent:#78a18d;--booking-surface:#eaf2eb}.refined-calendar .tone-sky{--booking-accent:#7c9eae;--booking-surface:#edf3f5}.refined-calendar .tone-lilac{--booking-accent:#a492b5;--booking-surface:#f0ecf4}.refined-calendar .tone-butter{--booking-accent:#b3a26a;--booking-surface:#f6f2e7}.refined-calendar .tone-blush{--booking-accent:#bd8f91;--booking-surface:#f7eded}.booking-card-top{color:#536c60;white-space:nowrap;justify-content:space-between;align-items:center;gap:4px;min-width:0;font-size:10px;font-weight:500;display:flex}.booking-card-top>span{text-overflow:ellipsis;overflow:hidden}.booking-card-customer{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:650;overflow:hidden}.booking-card-service{color:#68776b;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.refined-calendar .calendar-booking-group{color:#4b6754;cursor:pointer;background:repeating-linear-gradient(135deg,#edf2e9,#edf2e9 8px,#f3f6ef 8px 16px);border:1px solid #d6ded1;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;min-width:0;padding:6px;font-family:inherit;display:flex;position:absolute;left:5px;right:5px;overflow:hidden}.calendar-booking-group strong{font-size:11px}.calendar-booking-group small{color:#839087;font-size:9px}.refined-calendar .calendar-empty-day{color:#b3b7ac;font-size:10px}.calendar-view-bar{justify-content:space-between;align-items:center;gap:16px;margin-top:12px;display:flex}.calendar-title-icon{color:#66483b;background:#f8e9df;border-radius:16px;place-items:center;width:48px;height:48px;display:grid}.calendar-loading{z-index:5;color:#4b6754;background:#edf2e9;border-radius:20px;padding:6px 12px;font-size:11px;position:absolute;bottom:20px;right:30px}.calendar-agenda{overscroll-behavior:contain;background:#fffdf9;border:1px solid #e8e1d9;border-radius:20px;flex:1;min-height:0;padding:20px;overflow:hidden auto}.agenda-day{margin-bottom:22px}.agenda-day h3{color:#536c60;margin-bottom:12px;font-size:13px}.agenda-booking{text-align:left;color:#273a35;cursor:pointer;background:#faf7f0;border:1px solid #e8e1d9;border-radius:14px;align-items:center;gap:20px;width:100%;margin-bottom:8px;padding:14px;font-family:inherit;display:flex}.agenda-booking>span:first-child{white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.agenda-booking>div{flex:1;min-width:0}.agenda-booking small{color:#839087;margin-top:6px;font-size:11px;display:block}.agenda-booking:hover{background:#eef4ec}.refined-calendar .single-day .calendar-appointment{padding:10px 16px}.refined-calendar .single-day .booking-card-customer{font-size:14px}.refined-calendar .single-day .booking-card-service{font-size:12px}.grouped-bookings-dialog .overlap-list-item{background:#faf7f0;border-radius:14px}.overlap-list-item p{color:#536c60;margin:6px 0;font-size:13px}.overlap-list-item small{color:#839087}.overlap-list-item>span{align-items:center;gap:8px;font-size:12px;display:flex}@media (width<=750px){.calendar-view-bar>.field-note{display:none}.refined-calendar .calendar-day-name{font-size:10px}.refined-calendar .calendar-day-count{font-size:8px}.refined-calendar .calendar-appointment{padding:5px 4px}.booking-card-top{font-size:8px}.refined-calendar .booking-card-customer{font-size:10px}.agenda-booking{flex-wrap:wrap;gap:10px}.agenda-booking>div{min-width:150px}.refined-calendar .calendar-booking-group small{display:none}}.refined-calendar .calendar-time-column{border:0;background:0 0!important}.refined-calendar .calendar-hour-label{border:0;padding:0;background:0 0!important}.refined-calendar .calendar-time-header,.refined-calendar .calendar-day-header{border-bottom:0}.refined-calendar .calendar-day-column{border-left-color:#eee9e1}.refined-calendar .calendar-hour-line{opacity:.45;box-shadow:none;background:#eae6de}.refined-calendar .calendar-appointment{line-height:1.2}.refined-calendar .calendar-appointment .booking-card-top{line-height:1.1}.refined-calendar .calendar-appointment .booking-card-customer{flex-shrink:0;line-height:1.15}.refined-calendar .compact-booking{gap:1px;padding:4px 6px}.refined-calendar .compact-booking .booking-card-top{font-size:9px}.refined-calendar .compact-booking .booking-card-customer{font-size:11px}.calendar-modal{background:#fffdf9;border:1px solid #e4dcd3;width:min(680px,100%);max-height:calc(100dvh - 48px)}.booking-form .form-grid{align-items:start}.booking-form .form-field{align-content:start;min-width:0}.booking-form .textarea{background:#faf7f0}.booking-form .input{background:#fffdf9}:root{color:#181820;font-synthesis:none;text-rendering:optimizelegibility;--page:#faf8f5;--card:#fff;--sidebar:#2d2a2f;--sidebar-active:#635851;--ink:#181820;--muted:#6b6b76;--line:#e8e2db;--sage:#3fae91;--sage-soft:#e1f4ef;--sky:#6d9de2;--sky-soft:#eaf1fd;--lilac:#8b78ce;--lilac-soft:#eee9fa;--butter:#ddaf46;--butter-soft:#fff2cc;--blush:#d7839a;--blush-soft:#f8e4ec;--coral:#f27b61;--coral-soft:#fde4dc;--danger:#c84f5a;--danger-soft:#fbe2e5;--radius-control:12px;--radius-card:16px;--radius-large:22px;--shadow-card:0 8px 24px #1f1b180d;--sidebar-width:216px;--transition-fast:.15s ease;background:#faf8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--page);min-width:320px;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--sidebar);color:#fff;z-index:20;flex-direction:column;padding:22px 14px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{align-items:center;gap:10px;min-height:48px;margin-bottom:28px;padding:0 10px;display:flex}.sidebar-brand-mark{background:linear-gradient(145deg, var(--sage), #73c5b1);color:#fff;border-radius:12px;place-items:center;width:34px;height:34px;display:grid}.sidebar-brand-name{letter-spacing:.03em;font-size:20px;font-weight:750}.sidebar-nav{flex-direction:column;gap:5px;display:flex}.sidebar-link{color:#ffffffc2;height:46px;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);border-radius:14px;align-items:center;gap:12px;padding:0 14px;font-size:14px;font-weight:550;display:flex}.sidebar-link:hover{color:#fff;background:#ffffff12}.sidebar-link.active{background:var(--sidebar-active);color:#fff}.sidebar-link svg{flex:none}.sidebar-footer{border-top:1px solid #ffffff24;margin-top:auto;padding:16px 10px 4px}.sidebar-business{align-items:center;gap:10px;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.sidebar-timezone{color:#ffffff94;padding-left:30px;font-size:12px}.app-main{min-height:100vh;margin-left:var(--sidebar-width)}.topbar{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf8f5e0;border-bottom:1px solid #e8e2dbb3;justify-content:flex-end;align-items:center;height:72px;padding:0 34px;display:flex;position:sticky;top:0}.topbar-profile{align-items:center;gap:10px;display:flex}.profile-avatar{background:var(--coral-soft);width:38px;height:38px;color:var(--ink);border-radius:50%;place-items:center;font-weight:700;display:grid}.profile-name{font-size:14px;font-weight:650}.logout-button{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:8px}.logout-button:hover{color:var(--ink);background:#fff}.page-content{width:100%;max-width:1500px;margin:0 auto;padding:30px 36px 48px}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px;display:flex}.page-eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:650}.page-title{letter-spacing:-.035em;margin:0;font-size:34px;font-weight:750;line-height:1.15}.page-description{color:var(--muted);margin:7px 0 0;font-size:15px}.card{background:var(--card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);border:1px solid #e8e2dbb8}.button{border-radius:var(--radius-control);min-height:42px;transition:transform var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:650;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--coral);color:#fff}.button-primary:hover:not(:disabled){background:#e96d54}.button-secondary{color:var(--ink);border-color:var(--line);background:#fff}.button-secondary:hover:not(:disabled){border-color:#d7cec5}.button-danger{background:var(--danger-soft);color:var(--danger)}.input,.select,.textarea{border:1px solid var(--line);border-radius:var(--radius-control);width:100%;color:var(--ink);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;outline:none}.input,.select{min-height:42px;padding:0 12px}.textarea{resize:vertical;min-height:100px;padding:12px}.input:focus,.select:focus,.textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px #3fae911f}@media (width<=900px){:root{--sidebar-width:76px}.sidebar{padding-left:10px;padding-right:10px}.sidebar-brand-name,.sidebar-link span,.sidebar-business span,.sidebar-timezone{display:none}.sidebar-brand,.sidebar-link{justify-content:center}.sidebar-link{padding:0}.sidebar-footer{padding-left:0;padding-right:0}.sidebar-business{justify-content:center}.page-content{padding:24px 22px 40px}}@media (width<=640px){:root{--sidebar-width:0px}.sidebar{display:none}.app-main{margin-left:0}.topbar{height:62px;padding:0 18px}.page-content{padding:20px 16px 32px}.page-title{font-size:28px}.profile-name{display:none}}.topbar{padding-inline:max(36px,50% - 714px)}.dashboard-workspace .topbar{padding-inline:max(28px,50% - 722px)}.topbar-profile{background:#fffdf9;border:1px solid #e8e1d8;border-radius:28px;gap:12px;padding:5px 6px 5px 5px}.topbar-profile .profile-avatar{flex-shrink:0;width:34px;height:34px}.topbar-profile .profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.topbar-profile .logout-button{background:#f4efe8;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.topbar-profile .logout-button:hover{color:var(--ink);background:#e9e0d5}.sidebar-business>svg{flex-shrink:0}@media (width<=700px){.topbar,.dashboard-workspace .topbar{padding-inline:16px}}.customers-page{max-width:1450px;margin:0 auto}.customers-page .page-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.customer-search{background:#fffaf6;border:1px solid #e4dcd4;border-radius:14px;align-items:center;gap:10px;max-width:640px;padding:4px 14px;display:flex}.customer-search .input{box-shadow:none;background:0 0;border:0}.customer-directory{gap:24px;margin-top:20px;display:grid}.customer-directory.with-detail{grid-template-columns:minmax(240px,.8fr) minmax(0,1.4fr);align-items:start}.customer-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.with-detail .customer-cards{grid-template-columns:1fr}.customer-card{text-align:left;color:#172033;cursor:pointer;background:#fffaf6;border:1px solid #e4dcd4;border-radius:18px;align-items:center;gap:16px;min-width:0;padding:20px;display:flex}.customer-card:hover,.customer-card.selected{background:#eff6f1;border-color:#78aa99;box-shadow:0 5px 20px #253d3010}.customer-card>span:last-child{gap:8px;min-width:0;display:grid}.customer-card strong{font-size:17px}.customer-card small{color:#627084;overflow-wrap:anywhere;align-items:center;gap:7px;display:flex}.customer-form{background:linear-gradient(120deg,#f8e9df,#edf3ec);border:1px solid #e3d7cf;border-radius:20px;gap:18px;margin-bottom:24px;padding:24px;display:grid}.customer-detail{background:#fffaf6;border:1px solid #e4dcd4;border-radius:22px;min-width:0;overflow:hidden}.customer-detail-header{background:linear-gradient(125deg,#f6e6dd,#eeeaf5);padding:24px}.customer-detail-header h2{margin:16px 0}.customer-contact-links{flex-wrap:wrap;gap:14px;margin-bottom:20px;display:flex}.customer-contact-links a{color:#42665b;overflow-wrap:anywhere;align-items:center;gap:7px;display:flex}.customer-detail-content{gap:16px;padding:24px;display:grid}.customer-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.customer-stats>div{background:#edf3ec;border-radius:14px;gap:8px;padding:14px;display:grid}.customer-stats small{color:#627084}.customer-stats strong{font-size:18px}.customer-stats>div:first-child strong{font-size:14px}.customer-preference{color:#42665b;align-items:center;gap:7px;display:flex}.customer-history{gap:10px;display:grid}.customer-history article{border:1px solid #e8ded6;border-radius:14px;justify-content:space-between;align-items:start;gap:12px;padding:16px;display:flex}.customer-history p{color:#627084;margin:8px 0;font-size:13px}.customer-history small{color:#627084}.customer-history .appointment-status{white-space:nowrap;font-size:11px}.customer-context{background:#eef4ed;border:1px solid #d9e4d9;border-radius:16px;margin:16px 0;padding:18px}.customer-context a{color:#42665b;font-size:13px}.customer-context-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.customer-context-facts span{color:#627084;font-size:12px}.customer-context-facts strong{color:#253d30;margin-top:6px;font-size:13px;display:block}.customer-empty{color:#627084;background:#fffaf6;border-radius:14px;padding:25px}@media (width<=950px){.customer-directory.with-detail,.customer-context-facts{grid-template-columns:1fr}.customer-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.customers-page .page-header{flex-direction:column;align-items:start}.customer-history article{flex-direction:column}.customer-cards{grid-template-columns:1fr}}.customer-privacy-panel{margin-bottom:24px;padding:20px}.customer-privacy-panel h3{align-items:center;gap:8px;display:flex}.customer-privacy-panel .form-actions{flex-wrap:wrap}.privacy-settings{gap:24px;margin-top:24px;display:grid}.privacy-audit-list{scrollbar-gutter:stable;max-height:280px;overflow-y:auto}.privacy-audit-list article{border-bottom:1px solid #e8dfd4;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.privacy-audit-list small{color:#72808b;margin-top:5px;display:block}.search-select{background:#fcfaf6;border:1px solid #ded5cb;border-radius:13px;align-items:center;min-width:0;min-height:44px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;box-shadow:0 2px 5px #28202004}.search-select:focus-within,.search-select.is-open{border-color:var(--sage);box-shadow:0 0 0 3px #3fae9117}.search-select input,.search-select>button{width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;text-align:left;border-radius:inherit;background:0 0;border:0;outline:0;padding:11px 36px 11px 39px;font-size:13px}.search-select>button{cursor:pointer;padding-left:15px}.search-select>button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-select input:disabled,.search-select>button:disabled{cursor:not-allowed;opacity:.55}.search-select-icon{color:#82948a;pointer-events:none;position:absolute;left:13px}.search-select-chevron{color:#6c786f;pointer-events:none;transition:transform .15s;position:absolute;right:13px}.search-select.is-open .search-select-chevron{transform:rotate(180deg)}.select-popover{z-index:1400;background:#fbf8f2;border:1px solid #ded5cb;border-radius:14px;padding:6px;animation:.12s ease-out popover-in;position:fixed;overflow-y:auto;box-shadow:0 16px 40px #29212324,0 4px 10px #2921230a}.select-popover-hint{color:#8a8178;letter-spacing:.02em;border-bottom:1px solid #ebe2d8;margin-bottom:4px;padding:7px 10px 9px;font-size:10px}.select-option{width:100%;color:var(--ink);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 11px;display:flex}.select-option strong{overflow-wrap:anywhere;font-size:13px;font-weight:500;display:block}.select-option small{color:#7d8177;margin-top:3px;font-size:11px;display:block}.select-option.highlighted,.select-option:hover{background:#edf1e7}.select-option[aria-selected=true]{color:#246f58;background:#e4eee0}.select-option:disabled{opacity:.45;cursor:not-allowed}.select-empty{color:var(--muted);padding:15px 10px;font-size:13px}.multi-select{gap:10px;display:grid}.selected-tags{flex-wrap:wrap;gap:8px;display:flex}.selected-tag{color:#3a5948;background:#e4eddf;border-radius:20px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;display:inline-flex}.selected-tag button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:2px;display:grid}.styled-tooltip{z-index:1600;color:#fcfaf4;white-space:pre-line;overflow-wrap:anywhere;pointer-events:none;background:#3c4339;border:1px solid #5c6251;border-radius:11px;width:max-content;max-width:min(320px,100vw - 24px);padding:11px 14px;font-size:12px;line-height:1.6;position:fixed;transform:translate(-50%,-100%);box-shadow:0 8px 25px #24272026}.styled-tooltip:after{content:"";background:#3c4339;width:9px;height:9px;position:absolute;bottom:-5px;left:calc(50% - 5px);transform:rotate(45deg)}.styled-tooltip.below{transform:translate(-50%)}.styled-tooltip.below:after{top:-5px;bottom:auto}@keyframes popover-in{0%{opacity:0}to{opacity:1}}.staff-card{border-top:3px solid var(--sage);background:#f0f3ed}.staff-card h3{align-items:center;gap:10px;margin:0;display:flex}.staff-avatar{color:#4b6450;background:#dfe8d7;border-radius:12px;flex:none;place-items:center;width:35px;height:35px;font-size:14px;font-weight:700;display:inline-grid}.owner-schedule{gap:20px;scroll-margin-top:24px;display:grid}.schedule-picker{grid-template-columns:minmax(0,1fr) minmax(240px,360px);align-items:center;gap:16px;display:grid}#staff-schedule>.schedule-picker{grid-template-columns:minmax(260px,440px)}.regular-hours{background:#f6f3ec;padding:20px 24px}.regular-hours>summary{cursor:pointer;color:#44564b;font-size:14px;font-weight:600}.regular-hours[open]>summary{margin-bottom:20px}.rota-form{gap:20px;display:grid}.rota-days{background:#f8faf5;border:1px solid #d8e2d1;border-radius:14px;gap:0;overflow:hidden}.rota-day{border-bottom:1px solid #dfe6d9;grid-template-columns:160px minmax(0,1fr);gap:22px;padding:17px 19px;display:grid}.rota-day:last-child{border-bottom:0}.rota-day.day-off{background:#eff2ec}.rota-day-label{align-content:start;gap:6px;display:grid}.rota-day-label strong{font-size:13px}.rota-day-label small{color:var(--muted);font-size:11px}.rota-shifts{gap:12px;display:grid}.rota-shift{grid-template-columns:minmax(110px,190px) auto minmax(110px,190px) 40px;align-items:end;gap:10px;display:grid}.rota-shift>span{margin-bottom:13px}.icon-action{justify-content:center;padding-left:10px;padding-right:10px}.text-action{color:#2f8065;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:12px;text-decoration:none;display:inline-flex}.assignment-add-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.assigned-team{gap:12px;display:grid}.assigned-person{background:#f7f9f3;border:1px solid #dae2d3;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.assigned-person>div{flex:1;min-width:0}.assigned-person strong{font-size:13px;display:block}.assigned-person small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.free-agent-group{border-top:1px solid #d5dece;gap:12px;padding-top:16px;display:grid}.appointment-detail-panel{background:#f8f5ef;border-left:1px solid #e3d6c8;flex-direction:column;width:min(500px,96vw);padding:0;display:flex;box-shadow:-16px 0 48px #24202226}.appointment-detail-hero{background:linear-gradient(125deg,#f6e5d9,#ecefe2);border-bottom:1px solid #e1d7c9;padding:25px 28px 27px}.appointment-detail-hero .page-eyebrow{margin:0}.appointment-detail-hero .drawer-close{background:#fbf8f3a6;border:1px solid #dfd3c7}.appointment-status{color:#416749;background:#dcebd5;border-radius:20px;align-items:center;margin:13px 0 17px;padding:6px 10px;font-size:11px;font-weight:650;display:inline-flex}.appointment-status.status-pending{color:#896b28;background:#f3e6c3}.appointment-status.status-cancelled,.appointment-status.status-no_show{color:#945452;background:#f0dad7}.appointment-status.status-completed{color:#626982;background:#e0e3ec}.appointment-customer-heading{align-items:center;gap:14px;display:flex}.customer-detail-avatar{color:#7b7765;background:#faf6ef;border-radius:17px;flex:none;place-items:center;width:53px;height:53px;font-size:18px;font-weight:650;display:grid}.appointment-customer-heading h2{letter-spacing:-.025em;margin:0;font-size:24px}.appointment-customer-heading p{color:#776c62;margin:6px 0 0;font-size:13px}.appointment-detail-body{gap:23px;padding:24px 28px;display:grid}.appointment-time-card{color:#476049;background:#eef2e8;border:1px solid #dae0cf;border-radius:15px;gap:14px;padding:18px;display:flex}.appointment-time-card strong{font-size:14px}.appointment-time-card p{color:#303e31;margin:7px 0;font-size:20px;font-weight:600}.appointment-time-card small{color:#7a8372;font-size:11px}.appointment-assignment-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.appointment-assignment-tiles>div{background:#faf7f1;border:1px solid #e4d9cd;border-radius:13px;gap:8px;min-width:0;padding:15px;display:grid}.appointment-assignment-tiles svg{color:#9b8b7b}.appointment-assignment-tiles small{color:#93877a;font-size:11px}.appointment-assignment-tiles strong{overflow-wrap:anywhere;font-size:13px;font-weight:600}.appointment-info-section h3{color:#6e6257;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;display:flex}.appointment-contact-list{color:#7a756d;gap:11px;font-size:13px;display:grid}.appointment-contact-list>div{align-items:center;gap:10px;display:flex}.appointment-contact-list a{color:#44775d;overflow-wrap:anywhere;text-decoration:none}.appointment-note{color:#73685c;white-space:pre-wrap;background:#f2ede4;border:1px solid #e6ded2;border-radius:12px;margin:0;padding:14px;font-size:13px;line-height:1.7}.appointment-detail-actions{background:#f1ebe1;border-top:1px solid #e0d5c5;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding:20px 28px 25px;display:grid}.appointment-detail-actions>p{grid-column:1/-1}.appointment-detail-actions .button{justify-content:center;font-size:12px}@media (width<=740px){.schedule-picker{grid-template-columns:1fr}.rota-day{grid-template-columns:1fr;gap:12px}.rota-day-label{grid-template-columns:1fr auto auto;align-items:center}.rota-shift{grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr) 36px}.appointment-detail-hero,.appointment-detail-body{padding:20px}.appointment-detail-actions{padding:18px 20px}.assigned-person{flex-wrap:wrap}.assigned-person>button{margin-left:auto}}@media (prefers-reduced-motion:reduce){.select-popover{animation:none}}.styled-tooltip:first-line{font-weight:650}.resource-description{white-space:pre-line;overflow-wrap:anywhere}.select-option>span{flex:1;min-width:0}.select-option>svg,.selected-tag button{flex-shrink:0}.select-option small{overflow-wrap:anywhere}.selected-tag{min-width:0;max-width:100%}.selected-tag-label{overflow-wrap:anywhere;min-width:0}.select-option strong,.select-option small,.selected-tag-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.management-page{gap:22px;display:grid}.management-page .page-header{margin-bottom:0}.management-form,.management-panel{gap:20px;padding:24px;display:grid}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h3,.section-heading h2{margin:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-field{gap:8px;min-width:0;font-size:13px;font-weight:650;display:grid}.field-note{color:var(--muted);margin:0;font-size:12px;font-weight:400;line-height:1.6}.assignment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.assignment-panel{border:1px solid var(--line);border-radius:14px;align-content:start;gap:12px;min-width:0;padding:18px;display:grid}.assignment-panel legend{padding:0 6px;font-weight:700}.choice-list{gap:12px;max-height:210px;display:grid;overflow:auto}.check-row{align-items:center;gap:8px;font-size:13px;display:flex}.check-row input{accent-color:var(--sage);width:16px;height:16px}.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.form-error{color:var(--danger);background:var(--danger-soft);border-radius:12px;padding:12px 16px;font-size:13px;line-height:1.5}.service-grid{grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:20px;display:grid}.service-card{align-content:start;gap:16px;padding:22px;display:grid}.service-meta{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.service-meta span{margin-left:auto}.service-assignment{border-top:1px solid var(--line);padding-top:12px}.service-assignment>div{justify-content:space-between;align-items:center;font-size:13px;display:flex}.service-assignment p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.6}.requirement-pill{background:var(--page);color:var(--muted);border-radius:30px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.requirement-pill.sage{background:var(--sage-soft);color:#23735e}.empty-state{text-align:center;color:var(--muted);padding:32px}.owner-tabs{flex-wrap:wrap;gap:8px;display:flex}.owner-tabs button[aria-selected=true]{background:var(--sage-soft);color:#23735e;border-color:var(--sage)}.schedule-list{gap:12px;display:grid}.schedule-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.schedule-row:last-child{border-bottom:0}.schedule-row strong{font-size:14px;display:block}.schedule-row .form-actions{flex-shrink:0}.booking-form{gap:20px;display:grid}.booking-summary{background:var(--sage-soft);color:#23735e;border-radius:12px;padding:14px;font-size:13px;line-height:1.6}.booking-form h3{margin:0}@media (width<=900px){.assignment-grid{grid-template-columns:1fr}}@media (width<=640px){.form-grid{grid-template-columns:1fr}.schedule-row{flex-direction:column;align-items:flex-start}.management-form,.management-panel{padding:18px}}.tinted-panel{background:#f5eee7;border-color:#e6d9ce}.tinted-panel.sage-panel{background:#edf2ec;border-color:#d4e0d3}.tinted-panel .input,.tinted-panel .select,.tinted-panel .textarea{color:var(--ink);background:#fbf7f1;border-color:#dcd0c4}.tinted-panel.sage-panel .input,.tinted-panel.sage-panel .select{background:#f7f9f4;border-color:#cfdace}.service-editor .assignment-panel:first-child{background:#eaf0e6;border-color:#cddcc4}.service-editor .assignment-panel:nth-child(2){background:#f5e6dd;border-color:#e7ccbc}.service-editor .assignment-panel:nth-child(3){background:#ece9f1;border-color:#d7cee3}.service-editor .assignment-panel legend{color:#3e5044}.editor-fields,.settings-sections{border:0;gap:20px;min-width:0;margin:0;padding:0;display:grid}.settings-sections{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.settings-sections>:last-child{grid-column:1/-1}.settings-form{gap:20px;display:grid}.settings-form h2,.location-card h3,.resource-card h3{align-items:center;gap:10px;display:flex}.settings-form h2{margin:0;font-size:18px}.detail-line{color:var(--muted);overflow-wrap:anywhere;align-items:flex-start;gap:9px;margin:0;font-size:13px;line-height:1.6;display:flex}.detail-line svg{flex:none;margin-top:2px}.location-card{border-top:3px solid var(--sage);background:#f6f3ed}.resource-card{border-top:3px solid var(--coral);background:#f5f1ed}@media (width<=900px){.settings-sections{grid-template-columns:1fr}}.segmented-control{background:#f5f1e9;border:1px solid #e4dcd3;border-radius:12px;align-items:center;gap:3px;padding:4px;display:inline-flex}.segmented-control button{color:#839087;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;display:flex}.segmented-control button[aria-pressed=true]{color:#426c5c;background:#fffdf9;box-shadow:0 2px 5px #273a350c}.catalog-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.catalog-search{color:#839087;background:#fffdf9;border:1px solid #e4dcd3;border-radius:13px;flex:1;align-items:center;gap:10px;min-width:200px;padding:12px 15px;display:flex}.catalog-search input{width:100%;font:inherit;color:#273a35;outline:none;font-size:13px;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.catalog-count{color:#839087;margin:14px 0;font-size:12px}.catalog-browser.catalog-list .catalog-items>.service-grid{grid-template-columns:1fr;gap:10px}.catalog-list .service-card{box-shadow:none;background:#fffdf9;border-radius:16px;grid-template-columns:minmax(220px,1.2fr) minmax(180px,1fr) auto;align-items:center;gap:12px 22px;padding:18px 22px;display:grid}.catalog-list .service-card>.section-heading{min-width:0;margin:0}.catalog-list .service-card h3{overflow-wrap:anywhere;font-size:15px}.catalog-list .service-card>.field-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:2;margin:0;font-size:12px;display:-webkit-box;overflow:hidden}.catalog-list .service-card>.service-meta{grid-column:2;margin:0;font-size:12px}.catalog-list .service-card>.service-assignment{display:none}.catalog-list .service-card>.form-actions{flex-wrap:wrap;grid-area:1/3/span 4;justify-content:flex-end;max-width:300px}.catalog-list .service-card>.detail-line{overflow-wrap:anywhere;grid-column:2;margin:0;font-size:12px}.catalog-list .service-card .requirement-pill{font-size:10px}.catalog-list .service-card .button{min-height:36px;padding:9px 12px;font-size:12px}.catalog-pagination{justify-content:center;align-items:center;gap:18px;margin-top:20px;display:flex}.catalog-pagination>span{color:#839087;font-size:12px}.catalog-empty{color:#839087;text-align:center;background:#f5f7ef;border:1px dashed #d8dbcc;border-radius:16px;padding:24px}.catalog-cards .service-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.catalog-cards .service-card{box-shadow:none}.catalog-cards .service-card>.field-note{overflow-wrap:anywhere;max-height:60px;overflow:auto}input[type=checkbox]{appearance:none;vertical-align:middle;cursor:pointer;border-radius:6px;flex:0 0 19px;min-width:19px;margin:0;transition:background .15s,border-color .15s;display:inline-block;background:#fffdf9!important;border:1.5px solid #c9d4c4!important;width:19px!important;height:19px!important;padding:0!important}input[type=checkbox]:checked{background:#6d947d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19'%3E%3Cpath d='m4 9 3.5 3.5L15 5' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%!important;border-color:#6d947d!important}input[type=checkbox]:focus-visible{outline-offset:3px;outline:3px solid #aac5b4}input[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}.check-row{cursor:pointer;align-items:center;gap:10px;line-height:1.5;display:flex}.choice-list .check-row{border-radius:9px;padding:9px 12px}.choice-list .check-row:has(input:checked){color:#426c5c;background:#ecf3eb}.status-dot{vertical-align:middle;background:#a9b2a5;border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-right:7px;display:inline-block}.status-dot.status-pending{background:#c5a058}.status-dot.status-confirmed{background:#699780}.status-dot.status-cancelled{background:#c58183}.status-dot.status-completed{background:#7b98ad}.status-dot.status-no_show{background:#a38bab}.select-option strong:has(.status-dot){align-items:center;display:flex}.status-pending{--status-color:#a58239}.status-confirmed{--status-color:#507660}.status-cancelled{--status-color:#a35f65}.status-completed{--status-color:#587a95}.status-no_show{--status-color:#82668e}.select-option:has(.status-dot) strong{color:var(--status-color,#273a35)}.appointment-drawer.appointment-detail-panel{box-sizing:border-box;background:#fcf9f2;border-left:1px solid #e8e1d9;flex-direction:column;width:min(510px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:0;display:flex;overflow:hidden}.appointment-detail-panel .appointment-detail-hero{background:linear-gradient(125deg,#f7e8dc,#eff1e5);border-bottom:1px solid #e8e1d9;flex:none;padding:22px 26px}.appointment-detail-panel .appointment-detail-body{overscroll-behavior:contain;scrollbar-width:thin;flex:1 1 0;min-height:0;padding:22px 26px;overflow:hidden auto}.appointment-detail-panel .appointment-detail-actions{padding:18px 26px;padding-bottom:max(18px, env(safe-area-inset-bottom));background:#f5f0e7;border-top:1px solid #e4dcd3;flex:none;grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.appointment-detail-actions .button{min-height:43px;box-shadow:none;color:#4c6354;background:#fffdf9;border:1px solid #e4dcd3;border-radius:13px;gap:7px;padding:11px 13px;font-size:12px;font-weight:600}.appointment-detail-actions .button-primary{color:#fffdf9;background:#426c5c;border-color:#426c5c}.appointment-detail-actions .button-danger{color:#a56769;background:#fbefec;border-color:#edddd7}.appointment-detail-actions .button:hover{filter:brightness(.98);box-shadow:0 3px 9px #273a350b}.appointment-detail-actions>.field-note{grid-column:1/-1;margin:0;font-size:11px}.appointment-detail-panel .appointment-assignment-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-detail-panel .appointment-assignment-tiles>div{min-width:0}.appointment-detail-panel .appointment-assignment-tiles strong{overflow-wrap:anywhere}.appointment-detail-panel .appointment-note{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box;overscroll-behavior:contain;scrollbar-width:thin;background:#f5f0e7;border:1px solid #e8e1d9;border-radius:13px;max-width:100%;max-height:140px;padding:14px;line-height:1.7;overflow:hidden}.appointment-detail-panel .appointment-note:hover,.appointment-detail-panel .appointment-note:focus{overflow-y:auto}.appointment-note:focus-visible{outline-offset:2px;outline:2px solid #aac5b4}.appointment-detail-panel .appointment-contact-list a{overflow-wrap:anywhere;min-width:0}.management-form .editor-fields{border:0;gap:18px;min-width:0;margin:0;padding:0;display:grid}.staff-form{max-width:1000px;background:linear-gradient(125deg,#f6eadf,#eff3e8)!important}.staff-form>.section-heading{border-bottom:1px solid #e4dcd3;padding-bottom:12px}.staff-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-form .check-row{background:#fffdf980;border-radius:12px;padding:12px 15px}.staff-form .staff-placement{background:#eff3e8;border:1px solid #dce3d4;border-radius:15px;gap:12px;padding:16px;display:grid}.rota-days.editor-fields{border:0;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;min-width:0;margin:18px 0;padding:0;display:grid}.rota-days .rota-day{background:#fffdf9;border:1px solid #dce3d4;border-radius:14px;flex-direction:column;gap:14px;min-width:0;padding:14px;display:flex}.rota-days .rota-day.day-off{background:#f4f5ef;border-style:dashed}.rota-day-label{gap:8px;display:grid}.rota-day-label>strong{font-size:12px}.rota-day-label>small{color:#839087;font-size:10px}.rota-days .rota-shift{grid-template-columns:1fr;gap:5px;min-width:0;display:grid}.rota-days .rota-shift>.field-note{display:none}.rota-days .rota-shift .input{width:100%;min-width:0;padding:8px;font-size:11px}.rota-days .rota-shift .form-field{gap:5px;font-size:10px}.rota-days .rota-shift .icon-action{justify-self:end;min-height:28px;padding:5px}.rota-days .text-action{font-size:10px}.day-dot-button{cursor:pointer;font:inherit;color:#839087;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:11px;display:flex}.day-dot-button>span{background:#fffdf9;border:1.5px solid #c8d3c2;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;display:grid}.day-dot-button[aria-pressed=true]{color:#426c5c}.day-dot-button[aria-pressed=true]>span{color:#fff;background:#6d947d;border-color:#6d947d}.day-dot-button:focus-visible{outline-offset:4px;border-radius:7px;outline:2px solid #aac5b4}.recurring-week{margin-top:18px}.recurring-day-strip{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.recurring-day-strip .day-dot-button{flex-direction:column;gap:6px;font-size:11px}.recurring-day-strip .day-dot-button>span{width:36px;height:36px;font-weight:600}.recurring-day-rows{gap:10px;display:grid}.recurring-day-row{background:#fffdf9;border:1px solid #e4dcd3;border-radius:13px;grid-template-columns:110px 1fr;align-items:start;gap:16px;padding:14px 16px;display:grid}.recurring-day-row>strong{padding-top:12px;font-size:13px}.recurring-shifts{gap:8px;display:grid}.recurring-time-row{align-items:end;gap:10px;display:flex}.recurring-time-row .form-field{font-size:11px}.recurring-time-row .input{width:125px;font-size:12px}.recurring-time-row .button{min-height:40px;padding:10px}.recurring-presets{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.recurring-week .form-actions{margin-top:18px}.recurring-time-row .day-dot-button{margin-bottom:10px}@media (width<=1250px){.rota-days.editor-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-list .service-card{grid-template-columns:minmax(180px,1fr) minmax(150px,1fr)}.catalog-list .service-card>.form-actions{grid-area:auto/1/auto/-1;justify-content:flex-start;max-width:none}.catalog-list .service-card>.field-note{grid-column:2}}@media (width<=750px){.catalog-list .service-card{flex-direction:column;align-items:stretch;display:flex}.catalog-list .service-card>.form-actions{justify-content:flex-start}.catalog-toolbar{gap:8px}.catalog-search{flex-basis:100%}.staff-form .form-grid{grid-template-columns:1fr}.rota-days.editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.recurring-day-row{grid-template-columns:1fr;gap:6px}.recurring-time-row{flex-wrap:wrap}.appointment-detail-panel .appointment-detail-body,.appointment-detail-panel .appointment-detail-hero{padding:18px}.appointment-detail-panel .appointment-detail-actions{padding:14px 18px}}.catalog-items-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#becbbb transparent;max-height:min(440px,55dvh);padding:2px 8px 2px 0;overflow:hidden auto}.appointment-detail-panel .appointment-detail-actions .button-primary:hover:not(:disabled){color:#fff;filter:none;background:#345848;border-color:#345848}.appointment-detail-panel .appointment-detail-actions .button-danger{color:#fff;background:#c7444e;border-color:#c7444e}.appointment-detail-panel .appointment-detail-actions .button-danger:hover:not(:disabled){color:#fff;filter:none;background:#ab323d;border-color:#ab323d}.location-editor-dialog{width:min(760px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);background:#f5eee7;border:1px solid #ded7cb;border-radius:20px;padding:0;overflow:hidden auto;box-shadow:0 22px 80px #26372b30}.location-editor-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#23332b55}.location-editor-dialog .management-form{box-shadow:none;border:0;margin:0}.location-editor-dialog .form-actions{z-index:1;background:#f5eee7;padding:15px 0;position:sticky;bottom:-24px}.booking-availability{background:#eff4eb;border:1px solid #dce4d5;border-radius:14px;min-width:0;padding:14px}.booking-availability .field-note{margin:0;line-height:1.6}.booking-availability .form-field,.catalog-browser .service-card{min-width:0}.catalog-browser.catalog-list .service-card{box-sizing:border-box;grid-template-columns:minmax(200px,1fr) minmax(160px,1fr) minmax(200px,auto);width:100%}.catalog-browser.catalog-cards .service-card{flex-direction:column;min-width:0;display:flex}.catalog-browser.catalog-cards .service-card>.form-actions{flex-wrap:wrap;margin-top:auto}.catalog-browser .section-heading{flex-wrap:wrap;gap:12px}.catalog-browser .detail-line{overflow-wrap:anywhere;min-width:0}.rota-days.editor-fields{align-items:start}.rota-days .rota-day.day-off{min-height:100px}.catalog-browser .service-card .button{white-space:nowrap}@media (width<=1000px){.catalog-browser.catalog-list .service-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.catalog-browser.catalog-list .service-card>.form-actions{grid-area:auto/1/auto/-1;justify-content:flex-start;max-width:none}}@media (width<=750px){.catalog-browser.catalog-list .service-card{flex-direction:column;align-items:stretch;display:flex}.catalog-browser.catalog-cards .service-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}}.catalog-browser.catalog-list .service-card>.form-actions{grid-row:1/span 2}.catalog-browser.catalog-list .service-card:not(:has(>.field-note))>.form-actions{grid-row:1}.catalog-browser.catalog-list .staff-card>.form-actions{grid-row:1/span 3}.catalog-browser.catalog-list .service-card>.section-heading{grid-row:1}.catalog-browser .detail-line>svg{flex-shrink:0}@media (width<=1000px){:is(.catalog-browser.catalog-list .service-card>.form-actions,.catalog-browser.catalog-list .service-card:not(:has(>.field-note))>.form-actions,.catalog-browser.catalog-list .staff-card>.form-actions){grid-area:auto/1/auto/-1}}.catalog-grid-only .catalog-items{max-height:none;overflow:visible}.catalog-browser.catalog-cards.catalog-grid-only .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.catalog-browser.catalog-cards.catalog-grid-only .service-card{min-width:0;min-height:190px;padding:18px}.catalog-browser.catalog-cards.catalog-grid-only .service-card>.field-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:none;display:-webkit-box;overflow:hidden}.catalog-grid-only .catalog-pagination{margin-top:16px}.recurring-rota-days{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:10px;display:grid}.recurring-rota-days .rota-day{background:#fffdf8;border:1px solid #dbe2d3;border-radius:16px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.recurring-rota-days .rota-day.day-off{background:#f4f5ed;border-style:dashed}.recurring-rota-days .rota-day>strong{font-size:12px}.recurring-rota-days .day-dot-button{align-items:center;gap:7px;display:flex}.recurring-rota-shift{flex-direction:column;gap:8px;display:flex}.recurring-rota-shift .form-field{font-size:11px}.recurring-rota-shift .input{min-width:0;font-size:12px}.recurring-rota-shift .recurring-remove{align-self:flex-end;min-height:28px;padding:7px}.recurring-rota-days .text-action{font-size:11px}.recurring-presets>div{margin-right:auto}.recurring-presets h3{margin:0 0 6px}@media (width<=1399px){.catalog-browser.catalog-cards.catalog-grid-only .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1250px){.recurring-rota-days{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=849px){.catalog-browser.catalog-cards.catalog-grid-only .service-grid{grid-template-columns:1fr}.recurring-rota-days{grid-template-columns:repeat(2,minmax(0,1fr))}}.catalog-browser.catalog-cards.catalog-grid-only .service-card{gap:10px;padding:16px}.catalog-grid-only .service-assignment{padding-top:6px}.catalog-grid-only .service-assignment p{white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:12px;overflow:hidden}.catalog-grid-only .service-meta{margin:0;font-size:12px}.catalog-grid-only .service-card .button{min-height:34px;padding:8px 11px;font-size:12px}.catalog-grid-only .service-card h3{font-size:17px}.settings-page .settings-sections{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.settings-page .settings-sections>:last-child{grid-column:auto}.settings-page .settings-sections>.management-panel{flex-direction:column;gap:20px;min-width:0;padding:22px;display:flex}.settings-page .settings-sections .form-grid{grid-template-columns:minmax(0,1fr);gap:16px}.settings-page .settings-sections .section-heading{min-height:24px}.settings-page .settings-sections .field-note{border-top:1px solid #6d817029;margin:auto 0 0;padding-top:18px}@media (width<=1199px){.settings-page .settings-sections{grid-template-columns:minmax(0,1fr)}.settings-page .settings-sections .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.settings-page .settings-sections .form-grid{grid-template-columns:minmax(0,1fr)}}.management-page .form-field,.management-page .form-grid>*,.catalog-items>*,.assignment-panel{min-width:0}.catalog-items h3,.management-page .field-note,.management-page .form-error,.sidebar-business span,.customer-detail h2,.customer-detail p{overflow-wrap:anywhere}.management-page textarea{resize:vertical;overflow-wrap:anywhere;max-width:100%}.catalog-items .section-heading{align-items:flex-start}.catalog-items .section-heading>h3{flex:1;min-width:0}.catalog-items h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.catalog-items .requirement-pill{flex-shrink:0}
