:root{--theme-primary:#80e5a5;--theme-accent:#13955d;--theme-active-bg:#e9f8ef;--theme-active-text:#0d6942;--theme-ink:#17211c;--theme-muted:#64746d;--theme-line:#dbe7e0;--theme-panel:#fff;--theme-rail:#102219;--theme-wash:#f5f8f6;--mint:var(--theme-primary);--mint-dark:var(--theme-accent);--ink:var(--theme-ink);--muted:var(--theme-muted);--line:var(--theme-line);--panel:var(--theme-panel);--wash:var(--theme-wash);--rail:var(--theme-rail);--active-bg:var(--theme-active-bg);--active-text:var(--theme-active-text);--theme-soft-bg:var(--theme-active-bg);--theme-soft-border:color-mix(in srgb, var(--theme-accent) 28%, var(--line));--theme-soft-shadow:color-mix(in srgb, var(--theme-accent) 80%, transparent);--shadow:0 18px 45px #16281e1a;--app-base-font-size:16px;--app-font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--app-page-padding:18px;--app-page-gap:16px;--app-panel-padding:16px;--app-control-height:42px;--app-control-radius:8px;--app-panel-radius:8px;--app-label-size:12px;--app-label-weight:800;--app-focus-ring:0 0 0 3px color-mix(in srgb, var(--theme-accent) 22%, transparent);--app-control-bg:#fff;--app-subtle-bg:#fbfdfc;--app-switch-on:#13d93e;--app-switch-on-border:#10bd37;--theme-new-client:#d79c00}*{box-sizing:border-box}html{max-width:100%}body{background:var(--wash);color:var(--ink);font-family:var(--app-font-family);font-size:var(--app-base-font-size);margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}input,select,textarea{min-width:0;max-width:100%}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=color]),select,textarea{background:var(--app-control-bg);border:1px solid var(--line);border-radius:var(--app-control-radius);color:var(--ink);min-height:var(--app-control-height);padding:9px 11px}input[type=date],input[type=month],input[type=number],input[type=time],.numeric-input{font-variant-numeric:tabular-nums}input[type=number],.numeric-input{text-align:right}textarea{resize:vertical;line-height:1.4}button,a,input,select,textarea{transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,opacity .16s,transform .16s}button:active:not(:disabled),a:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--theme-accent);box-shadow:var(--app-focus-ring);outline-offset:2px;outline:2px solid #0000}button{cursor:pointer}.app-shell{min-height:100dvh;display:block}.side-rail{background:var(--rail);color:#fff;flex-direction:column;align-items:center;gap:14px;padding:14px 10px;display:flex}.rail-button{color:#fff;background:#ffffff1a;border:0;border-radius:8px;width:42px;height:42px}.rail-link{place-items:center;text-decoration:none;display:grid}.rail-button.active{background:#80e5a547}.brand-mark{background:var(--theme-accent);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.workspace{width:100%;min-width:0}.topbar{background:var(--panel);border-bottom:1px solid var(--line);z-index:80;align-items:center;gap:18px;min-height:64px;padding:10px 18px;display:flex;position:sticky;top:0;overflow:visible}.topnav{gap:6px;min-width:0;display:flex}.topnav>button,.topnav>a,.topnav>span{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:10px 12px;text-decoration:none;display:inline-flex}.topnav>button.active,.topnav>a.active,.topnav>span.active{background:var(--active-bg);color:var(--active-text);box-shadow:inset 0 -2px 0 var(--theme-accent);font-weight:800}.topnav>button:disabled,.topnav>span.disabled{opacity:.45;cursor:not-allowed}.app-topbar{background:color-mix(in srgb, var(--theme-primary) 16%, var(--panel));border-bottom-color:color-mix(in srgb, var(--theme-accent) 32%, var(--line));box-shadow:0 8px 28px #12251b0f}.app-menu-wrap{z-index:3;position:relative}.hamburger-button{border:1px solid color-mix(in srgb, var(--theme-accent) 44%, var(--line));background:var(--theme-accent);color:#fff;border-radius:8px;place-items:center;width:42px;height:42px;padding:0;display:grid}.hamburger-button:hover{background:color-mix(in srgb, var(--theme-accent) 84%, #000)}.hamburger-scrim{z-index:85;cursor:default;background:#07120c1f;border:0;position:fixed;inset:0}.hamburger-panel{z-index:90;border:1px solid var(--line);background:var(--panel);border-radius:10px;width:min(340px,100vw - 24px);max-height:calc(100dvh - 92px);padding:12px;position:absolute;top:calc(100% + 10px);left:0;overflow-y:auto;box-shadow:0 22px 60px #142a1e2e}.hamburger-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:6px 6px 12px;display:flex}.hamburger-panel-header div{gap:3px;display:grid}.hamburger-panel-header span{color:var(--muted);font-size:12px}.hamburger-close{border:1px solid var(--line);width:30px;height:30px;color:var(--ink);background:#f8fbf9;border-radius:8px;font-weight:850}.hamburger-section-label{color:var(--active-text);letter-spacing:0;text-transform:uppercase;padding:0 6px 8px;font-size:11px;font-weight:850}.hamburger-list{gap:4px;display:grid}.hamburger-item-group{gap:3px;display:grid}.hamburger-item{color:var(--ink);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:9px 10px;text-decoration:none;display:flex}.hamburger-item.expandable{cursor:pointer;font:inherit;background:0 0;width:100%}.hamburger-item-chevron{color:var(--muted);margin-left:auto;font-size:20px;line-height:1;transition:transform .15s;transform:rotate(0)}.hamburger-item-chevron.open{transform:rotate(90deg)}.hamburger-item:hover,.hamburger-item.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.hamburger-item.disabled{color:var(--muted);opacity:.55}.hamburger-item.disabled:hover{color:var(--muted);background:0 0;border-color:#0000}.hamburger-sublist{gap:3px;padding:0 0 4px 38px;display:grid}.hamburger-subitem{color:var(--muted);border:1px solid #0000;border-radius:7px;padding:7px 9px;font-size:13px;font-weight:750;text-decoration:none}.hamburger-subitem:hover,.hamburger-subitem.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.hamburger-subitem.disabled{color:var(--muted);opacity:.55}.hamburger-session{border-top:1px solid var(--line);margin-top:10px;padding-top:12px}.hamburger-logout-form{margin:0}.hamburger-item.logout{cursor:pointer;font:inherit;background:#fff;width:100%}.hamburger-item.logout:hover{color:#8b2d17;background:#fff5f2;border-color:#f0d8d1}.topbar-brand{flex:none}.app-primary-nav{flex:auto;min-width:0;padding-bottom:2px;overflow-x:auto}.app-nav-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none;width:18px;height:18px}.app-nav-pound{flex:none;place-items:center;width:18px;height:18px;font-size:19px;font-weight:650;line-height:1;display:inline-grid}.topbar-right{align-items:center;gap:18px;min-width:0;margin-left:auto;display:flex}.topbar-time{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;gap:2px;min-width:max-content;font-size:14px;font-weight:750;line-height:1.1;display:grid}.topbar-time strong,.topbar-time small{white-space:nowrap;display:block}.topbar-time small{color:var(--muted);font-size:11px;font-weight:700}.clearable-search{width:100%;display:block;position:relative}.clearable-search input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:11px 38px 11px 12px}.clearable-search-button{border:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 40%, #fff);width:26px;height:26px;color:var(--active-text);border-radius:50%;place-items:center;padding:0;font-size:13px;font-weight:850;line-height:1;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.clearable-search-button:hover{border-color:var(--theme-soft-border);color:var(--active-text)}.user-summary{gap:2px;min-width:0;max-width:250px;margin-left:auto;font-size:13px;display:grid}.user-summary strong,.user-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-summary span{color:var(--muted)}.stylist-mobile-title{display:none}html[data-shell-mode=dark] .app-topbar,html[data-shell-mode=dark] .hamburger-panel{--active-bg:color-mix(in srgb, var(--theme-primary) 22%, transparent);--active-text:color-mix(in srgb, var(--theme-primary) 72%, #fff);--ink:#f4fbf7;--line:var(--theme-dark-line);--muted:var(--theme-dark-muted);--panel:var(--theme-dark-panel);--rail:color-mix(in srgb, var(--theme-accent) 34%, #050b08);background:var(--panel);color:var(--ink)}html[data-shell-mode=dark] .hamburger-close,html[data-shell-mode=dark] .hamburger-item.logout{color:var(--ink);background:#ffffff14}@media (max-width:760px){html[data-shell-mode=mobile-dark] .app-topbar,html[data-shell-mode=mobile-dark] .hamburger-panel{--active-bg:color-mix(in srgb, var(--theme-primary) 22%, transparent);--active-text:color-mix(in srgb, var(--theme-primary) 72%, #fff);--ink:#f4fbf7;--line:var(--theme-dark-line);--muted:var(--theme-dark-muted);--panel:var(--theme-dark-panel);--rail:color-mix(in srgb, var(--theme-accent) 34%, #050b08);background:var(--panel);color:var(--ink)}html[data-shell-mode=mobile-dark] .hamburger-close,html[data-shell-mode=mobile-dark] .hamburger-item.logout{color:var(--ink);background:#ffffff14}}.diary-toolbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:10px;min-width:0;min-height:64px;padding:10px 18px;display:flex;overflow-x:auto}.diary-toolbar button,.date-strip button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;line-height:1.1}.diary-toolbar .primary-button,.date-strip button.active{background:var(--active-bg);border-color:var(--theme-accent);color:var(--active-text);font-weight:720}.diary-live-badge,.diary-action-status{border:1px solid var(--theme-soft-border);background:var(--active-bg);color:var(--active-text);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700}.diary-live-badge.sample{color:#7b5600;background:#fff7dd;border-color:#f5d08a}.diary-status-group{flex:none;align-items:center;gap:8px;display:flex}.diary-date-nav{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.calendar-toggle{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:36px;height:36px;padding:0;display:grid}.calendar-toggle.active{border-color:var(--theme-accent);background:var(--active-bg)}.calendar-toggle-icon{border:2px solid #174732;border-radius:4px;width:17px;height:17px;position:relative}.calendar-toggle-icon:before{content:"";border-top:2px solid #174732;position:absolute;top:3px;left:-2px;right:-2px}.calendar-toggle-icon:after{content:"";border-left:2px solid #174732;border-right:2px solid #174732;height:4px;position:absolute;top:-5px;left:4px;right:4px}.diary-action-status{text-overflow:ellipsis;max-width:260px;overflow:hidden}.diary-action-row{border-left:4px solid var(--theme-accent);color:var(--ink);background:#f4fbf8;margin:-4px 18px 10px;padding:8px 11px;font-size:13px;font-weight:700}.primary-button{border:1px solid var(--theme-accent);background:var(--theme-accent);color:#fff;border-radius:8px;padding:10px 13px;font-weight:850}.primary-button:hover:not(:disabled){background:color-mix(in srgb, var(--theme-accent) 88%, #000)}.primary-button:disabled{cursor:not-allowed;opacity:.58}.primary-button.paid-button:disabled{background:var(--active-bg);border-color:var(--theme-soft-border);color:var(--active-text);opacity:1}.maintenance-save-button,.client-field-grid+.primary-button{margin-top:14px}.maintenance-save-button{place-self:start;width:auto;min-width:112px}[data-track-field][data-changed=true]{box-shadow:inset 0 0 0 1px #d1a0003d;background:#fffbea!important;border-color:#d1a000!important}[data-track-field][data-changed=true] input,[data-track-field][data-changed=true] select,[data-track-field][data-changed=true] textarea{background:#fffdf0!important;border-color:#d1a000!important}[data-track-field][data-changed=true]>span:first-child:after{content:" changed";color:#805b00;font-size:11px;font-weight:850}.save-confirmation{white-space:nowrap;background:#fffbea;border:1px solid #e5c76b;border-radius:8px;align-items:center;gap:8px;width:fit-content;margin-top:18px;padding:8px 10px;font-weight:850;display:inline-flex}.save-confirmation button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-width:34px;padding:7px 9px;font-weight:850}.save-confirmation .confirm-yes{background:var(--theme-accent);border-color:var(--theme-accent);color:#fff}.tracked-save-inline-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tracked-save-inline-actions>.primary-button{flex:none;width:auto;min-width:112px}.tracked-save-inline-actions .save-confirmation{flex:none;margin-top:0}.promotion-services-save-row .save-confirmation,.till-builder-actions .save-confirmation,.till-save-form .save-confirmation{margin-top:0}.save-form-message{color:var(--muted);margin:16px 0 0}.save-form-message.warning{border-radius:var(--app-control-radius);color:#6f4910;background:#fff7df;border:1px solid #e2a52f;border-left-width:4px;align-items:flex-start;gap:8px;padding:10px 12px;font-weight:750;line-height:1.45;display:flex}.save-form-message.warning svg{flex:none;margin-top:1px}.danger-button{color:#9f2f2f;background:#fff3f3;border:1px solid #f1b5b5;border-radius:8px;padding:10px 13px;font-weight:800}.date-strip{scrollbar-width:thin;flex:auto;align-items:center;gap:6px;min-width:0;margin-left:2px;padding-bottom:2px;display:flex;overflow-x:auto}.date-strip button{flex:none;font-size:12px;font-weight:650}.date-strip .date-nav-button{min-width:30px;color:var(--active-text);padding-left:8px;padding-right:8px;font-weight:700}.date-strip .team-week-exit-button{min-width:72px}.diary-layout{grid-template-columns:minmax(0,1fr);min-width:0;height:calc(100dvh - 128px);display:grid}.diary-layout.has-panel{grid-template-columns:minmax(0,1fr) 360px}.diary-layout.has-calendar{grid-template-columns:286px minmax(0,1fr)}.diary-layout.has-calendar.has-panel{grid-template-columns:286px minmax(0,1fr) 360px}.diary-calendar-panel{border-right:1px solid var(--line);background:#fff;padding:12px 14px;overflow-y:auto}.calendar-panel-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.calendar-panel-header button,.calendar-panel-controls button,.calendar-quick-jumps button{border:1px solid var(--line);color:#174732;background:#fff;border-radius:8px;font-weight:800}.calendar-panel-header button{width:30px;height:30px}.calendar-panel-controls{grid-template-columns:32px minmax(0,1fr) 82px 32px;gap:4px;margin-bottom:12px;display:grid}.calendar-panel-controls select{border:1px solid var(--line);min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:8px;font-weight:750}.calendar-month-stack{gap:20px;display:grid}.mini-calendar{gap:8px;display:grid}.mini-calendar h2{text-align:center;margin:6px 0 0;font-size:16px}.mini-calendar-weekdays,.mini-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.mini-calendar-weekdays span{color:#174732;text-align:center;font-size:12px;font-weight:850}.mini-calendar-grid button,.mini-calendar-grid span{min-height:28px}.mini-calendar-grid button{color:#315441;font:inherit;background:#fff;border:1px solid #0000;border-radius:6px;font-size:13px}.mini-calendar-grid button:hover{border-color:var(--theme-soft-border);background:var(--active-bg)}.mini-calendar-grid button.today{border-color:#e5ce6e}.mini-calendar-grid button.selected{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text);font-weight:850}.calendar-quick-jumps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:18px;display:grid}.calendar-quick-jumps button{background:var(--theme-accent);border-color:var(--theme-accent);color:#fff;padding:8px 9px;font-size:12px}.diary-column-toggle{flex:none;align-items:center;gap:6px;min-width:0;display:flex}.diary-column-toggle button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-size:13px;font-weight:600;line-height:1.1}.diary-column-toggle button.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text);font-weight:720}.diary-column-toggle span{color:var(--muted);font-size:12px;font-weight:650}.scheduler-grid{background:#eef3f0;align-content:start;min-width:0;display:grid;position:relative;overflow:auto}.corner-cell,.stylist-header{z-index:7;border-bottom:1px solid var(--line);background:#fbfdfc;position:sticky;top:0}.corner-cell{z-index:8;grid-area:1/1;left:0}.stylist-header{border-left:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.stylist-header-button{border-top:0;border-right:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:#fbfdfc}.stylist-header-button:hover,.stylist-header-button.active{background:#eefaf3}.day-note-flag{color:#e03131;margin-left:auto;font-size:18px;font-weight:950;line-height:1}.stylist-header span:last-child{min-width:0;display:grid}.stylist-header strong,.stylist-header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stylist-header small{color:var(--muted);font-size:12px}.avatar{background:linear-gradient(135deg,#ffcc8f,#b7f3ff);border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;font-weight:850;display:grid}.stylist-diary-avatar{object-fit:cover;display:block}.time-cell{z-index:5;border-right:1px solid var(--line);color:#357052;text-align:right;background:#fbfdfc;border-bottom:1px solid #eef3f0;padding:2px 8px 0 0;font-size:12px;position:sticky;left:0}.slot-cell{border-left:1px solid var(--line);cursor:crosshair;background:#fff;border-bottom:1px solid #e8efeb}.slot-cell.non-working{cursor:crosshair;background:#edf1ee repeating-linear-gradient(-45deg,#1732240d 0 5px,#0000 5px 10px)}.time-cell.hour-line,.slot-cell.hour-line{box-shadow:inset 0 1px #aebdb6}.current-time-line{z-index:9;pointer-events:none;background:#e03131;height:2px;position:absolute;left:0;right:0}.current-time-line span{color:#c92a2a;background:#fff;border:1px solid #ffc9c9;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:850;display:inline-block;position:sticky;left:7px;transform:translateY(-50%)}.appointment-card,.draft-booking,.bookout-card{z-index:6;color:#102018;border:1px solid #141e181a;border-radius:5px;align-content:start;gap:1px;min-width:0;margin:1px 2px;padding:4px 5px;line-height:1.08;display:grid;overflow:hidden;box-shadow:0 1px #00000014}.appointment-card,.bookout-card{cursor:grab;-webkit-user-select:none;user-select:none;position:relative}.appointment-card{padding-bottom:22px}.appointment-card:active,.bookout-card:active{cursor:grabbing}.appointment-card.online{outline:2px solid #11708138}.appointment-card.completed{background:#15c7df;border-color:#11708147;padding-left:9px}.appointment-card.completed:before{background:var(--appointment-service-colour,#15c7df);content:"";pointer-events:none;z-index:0;width:5px;position:absolute;inset:0 auto 0 0}.appointment-card.arrived{outline:2px solid #1c7ed633}.appointment-card.no-show{color:#7b2525;background:#f5eeee;border-color:#efb8b8}.appointment-card.hover-group{z-index:13;border-color:#128255;box-shadow:inset 0 0 0 2px #12825559,0 8px 18px #0b201629}.appointment-card span,.appointment-card small{text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.04;overflow:hidden}.appointment-card strong,.bookout-card strong,.bookout-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appointment-card>strong{font-size:12px;font-weight:650;line-height:1.04}.appointment-card.short-slot{border-radius:3px;gap:0;margin:1px;padding:2px 4px;line-height:1}.appointment-card.short-slot>strong{font-size:10.5px;line-height:1}.appointment-card.short-slot span{font-size:9.5px;line-height:1}.appointment-card.short-slot .card-flags{display:none}.appointment-card.compact-slot{min-height:0;padding:2px 4px;display:block}.appointment-card.compact-slot .appointment-compact-label{text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:750;line-height:1.25;display:block;overflow:hidden}.appointment-card.compact-slot .card-flags{display:none}.appointment-card.compact-slot.has-markers{padding-right:39px}.new-client-crown{color:var(--theme-new-client);filter:drop-shadow(0 1px #52380040);opacity:.92;pointer-events:none;z-index:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.appointment-card.new-client>strong,.appointment-card.new-client>span{z-index:1;position:relative}.appointment-card.new-client>.appointment-markers,.appointment-card.new-client>.card-flags{z-index:1}.appointment-card.compact-slot.has-client-alert{padding-right:21px}.appointment-card.compact-slot.has-markers.has-client-alert{padding-right:39px}.client-alert-compact-flag{z-index:3;color:#c92a2a;pointer-events:none;place-items:center;width:13px;height:13px;display:inline-grid;position:absolute;top:3px;right:4px}.card-flags{pointer-events:none;flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:3px;margin:0;display:flex;position:absolute;bottom:4px;left:6px;right:6px;overflow:hidden}.card-flags span,.payment-marker{color:#0e6b43;background:#ffffffb8;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:850;line-height:1}.appointment-card.has-markers .card-flags{justify-content:flex-end;right:50px}.appointment-markers{z-index:3;pointer-events:none;justify-content:flex-end;align-items:center;gap:3px;display:flex;position:absolute;bottom:4px;right:5px}.appointment-marker{background:#ffffffc7;border:1px solid #04352738;border-radius:50%;place-items:center;width:17px;height:17px;display:inline-grid;position:relative;box-shadow:0 1px 2px #091c1329}.appointment-marker.online-booking{color:#095c8a}.appointment-marker.reminder-confirmed{color:#fff;background:#21c45d;border-color:#0f8f3e}.wifi-marker,.wifi-marker:before,.wifi-marker:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-bottom:0;border-radius:999px 999px 0 0;position:absolute}.wifi-marker{width:12px;height:6px;top:4px}.wifi-marker:before{width:8px;height:4px;margin:auto;top:3px;left:0;right:0}.wifi-marker:after{border:2px solid;border-radius:50%;width:0;height:0;top:8px;left:4px}.sms-check-marker{border:1.5px solid;border-radius:3px;width:12px;height:9px;position:relative}.sms-check-marker:before{content:"";border-bottom:1.5px solid;border-left:1.5px solid;border-bottom-left-radius:2px;width:4px;height:4px;position:absolute;bottom:-4px;left:1px}.sms-check-marker:after{content:"";border-bottom:2px solid;border-left:2px solid;width:8px;height:4px;position:absolute;bottom:1px;right:-3px;transform:rotate(-45deg)}.appointment-card.short-slot .appointment-markers{bottom:2px;right:3px}.appointment-card.short-slot .appointment-marker{width:14px;height:14px}.appointment-card.short-slot .wifi-marker,.appointment-card.short-slot .sms-check-marker{transform:scale(.78)}.resize-handle{cursor:ns-resize;opacity:0;pointer-events:none;z-index:2;background:#0e593a47;border:0;border-radius:999px;height:8px;transition:opacity .12s;position:absolute;left:8px;right:8px}.appointment-card:hover .resize-handle,.appointment-card:focus-within .resize-handle,.appointment-card:active .resize-handle,.bookout-card:hover .resize-handle,.bookout-card:focus-within .resize-handle,.bookout-card:active .resize-handle{opacity:1;pointer-events:auto}.resize-handle.top{top:2px}.resize-handle.bottom{bottom:2px}.draft-booking{color:#0f6b43;background:#e8fff0;border-style:dashed;font-weight:850}.draft-booking span{font-size:12px}.slot-choice-popover{z-index:20;background:#fff;border:1px solid #bcdcd0;border-radius:8px;gap:8px;width:min(280px,100vw - 32px);padding:14px;display:grid;position:absolute;box-shadow:0 12px 28px #0b20162e}.slot-choice-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:2px;display:flex}.slot-choice-heading span{color:#102018}.slot-choice-heading button{color:#102018;cursor:pointer;background:0 0;border:0;padding:4px;font-size:16px;line-height:1}.team-menu-popover{z-index:26;color:#102018;background:#fff;border:1px solid #bcdcd0;border-radius:8px;gap:7px;width:min(310px,100vw - 32px);padding:12px;display:grid;position:absolute;box-shadow:0 14px 30px #0b201633}.team-menu-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;display:grid}.team-menu-heading small,.team-menu-note,.team-menu-secondary button{color:#49675a;font-size:12px}.team-menu-heading button{color:#102018;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:16px;line-height:1}.team-menu-popover>button,.team-day-note-actions button{border:1px solid var(--theme-accent);background:var(--theme-accent);color:#fff;cursor:pointer;text-align:left;border-radius:7px;padding:9px 11px;font-weight:850}.team-menu-popover>button:hover,.team-day-note-actions button:hover{background:color-mix(in srgb, var(--theme-accent) 88%, #000)}.team-day-note-editor{border-top:1px solid #e0eee7;gap:8px;margin-top:4px;padding-top:8px;display:grid}.team-day-note-editor label{color:#315441;gap:5px;font-size:12px;font-weight:800;display:grid}.team-day-note-editor textarea{resize:vertical;border:1px solid var(--line);min-height:96px;color:var(--ink);font:inherit;border-radius:7px;padding:9px}.team-day-note-actions{justify-content:space-between;gap:8px;display:flex}.team-day-note-actions button:disabled{cursor:not-allowed;opacity:.45}.team-menu-secondary{gap:4px;margin-top:2px;display:grid}.team-menu-secondary button{cursor:pointer;text-align:left;background:0 0;border:0;padding:5px 8px}.team-menu-secondary button:hover{color:var(--active-text)}.day-note-marker{z-index:5;color:#d71920;cursor:ns-resize;text-align:center;text-shadow:0 1px #fff;-webkit-user-select:none;user-select:none;place-self:center stretch;max-height:30px;margin:0 10px;font-size:13px;font-weight:850;line-height:1.1;overflow:hidden}.day-note-marker:hover{outline-offset:3px;outline:1px dashed #d7192073}.appointment-hover-card{z-index:40;color:#102018;pointer-events:none;background:#fff;border:1px solid #c5d8d0;border-radius:7px;gap:4px;width:300px;max-width:calc(100vw - 32px);max-height:min(440px,100dvh - 24px);padding:10px 12px;display:grid;position:fixed;overflow-y:auto;box-shadow:0 12px 28px #0b201633}.appointment-hover-card>strong:first-child{font-size:15px}.appointment-hover-card span{color:#455f53;font-size:11px}.hover-card-divider{background:#e4eee9;height:1px;margin:4px 0}.hover-card-services{gap:8px;display:grid}.hover-service-line{border-bottom:1px solid #eef4f1;gap:2px;padding-bottom:8px;display:grid}.hover-service-line:last-child{border-bottom:0;padding-bottom:0}.hover-card-service{font-size:13px}.hover-card-flags{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.hover-card-flags span{background:var(--active-bg);color:var(--active-text);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:850}.hover-client-alert,.panel-client-alert{color:#8f1d18;background:#fff1f0;border:1px solid #b42318;gap:8px;padding:8px 9px;display:grid}.hover-client-alert{border-radius:7px;margin:3px 0}.hover-client-alert>div,.panel-client-alert>div{gap:2px;min-width:0;display:grid}.hover-client-alert>.client-alert-list-heading,.panel-client-alert>.client-alert-list-heading{align-items:center;gap:6px;display:flex}.client-alert-list-heading span{margin-left:auto;font-size:10px;font-weight:700}.client-alert-list-item{border-top:1px solid #b4231838;gap:2px;margin-top:7px;padding-top:7px;display:grid}.client-alert-list-heading+.client-alert-list-item{border-top:0;margin-top:4px;padding-top:0}.hover-client-alert strong,.panel-client-alert strong{font-size:12px}.hover-client-alert p,.panel-client-alert p{overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.35}.hover-client-alert span,.panel-client-alert small{color:#7e342e;font-size:10px}.bookout-card{color:#111609;text-align:center;background:#85804a;place-content:center;gap:0;font-weight:850;display:grid}.bookout-card.tone-holiday{color:#33200c;background:#f4c98f}.bookout-card.tone-sick{color:#2d1d12;background:#c8aa8c}.bookout-card.tone-off,.bookout-card.tone-default{color:#111609;background:#85804a}.bookout-card strong{font-size:11px;line-height:1}.bookout-card small{font-size:10px;font-weight:600;line-height:1}.bookout-card.short-slot{border-radius:3px;margin:1px;padding:1px 3px;line-height:1}.bookout-card.short-slot strong{font-size:9.5px;line-height:1}.bookout-card.short-slot small{display:none}.scheduler-grid.single-column .stylist-header{padding:10px 12px}.stylist-diary-module .scheduler-grid.single-column .stylist-header{gap:8px;padding:5px 10px}.stylist-diary-module .scheduler-grid.single-column .avatar{width:28px;height:28px}.scheduler-grid.single-column .appointment-card,.scheduler-grid.single-column .bookout-card,.scheduler-grid.single-column .draft-booking{gap:2px;margin:2px 4px;padding:6px 8px}.scheduler-grid.single-column .appointment-card>strong{font-size:13px}.scheduler-grid.single-column .appointment-card span,.scheduler-grid.single-column .appointment-card small{font-size:11px;line-height:1.1}.scheduler-grid.single-column .bookout-card strong{font-size:12px}.scheduler-grid.single-column .bookout-card small{font-size:11px}.scheduler-grid.single-column .appointment-card.short-slot,.scheduler-grid.single-column .bookout-card.short-slot{gap:0;margin:1px 3px;padding:2px 6px}.scheduler-grid.single-column .appointment-card.short-slot>strong{font-size:11px}.scheduler-grid.single-column .appointment-card.short-slot span{font-size:10px}.scheduler-grid.single-column .bookout-card.short-slot strong{font-size:10.5px}.scheduler-grid.single-column .resize-handle{height:10px;left:12px;right:12px}.appointment-panel{background:var(--panel);border-left:1px solid var(--line);overflow-y:auto}.panel-heading{border-bottom:1px solid var(--line);background:#e7f9ed;gap:5px;padding:18px 52px 18px 18px;display:grid;position:relative}.panel-close-button{border:1px solid var(--line);color:#27483b;cursor:pointer;background:#fff;border-radius:999px;width:32px;height:32px;font-size:16px;font-weight:850;line-height:1;position:absolute;top:14px;right:14px}.panel-close-button:hover{background:#f3fff8;border-color:#8be6b2}.panel-heading span,.panel-heading small,.muted{color:var(--muted)}.panel-heading strong{font-size:24px}.appointment-client-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.appointment-client-actions{gap:6px;display:flex}.appointment-client-heading button{border:1px solid var(--line);color:#174732;white-space:nowrap;background:#fff;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:850}.appointment-client-heading button:disabled{cursor:not-allowed;opacity:.52}.panel-icon-button{justify-content:center;align-items:center;min-width:36px;display:inline-flex;padding:7px!important}.panel-icon-button.client-alert-action{color:#a11c16}.panel-client-alert{border-width:0 0 1px;padding:10px 18px}.client-alert-composer{background:snow}.client-alert-composer .section-heading h2,.bill-note-heading h2{align-items:center;gap:6px;display:flex}.bill-note-heading .panel-icon-button{flex:none}.bill-note-actions{gap:6px;display:flex}.bill-breakdown-popover{background:var(--wash);border:1px solid #b8cfc2;border-radius:8px;gap:8px;margin-top:10px;padding:10px;display:grid;box-shadow:0 10px 24px #0b201624}.bill-payment-summary{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding-top:8px;font-size:13px;display:flex}.bill-payment-summary strong{color:var(--ink);font-variant-numeric:tabular-nums}.client-product-history-popover{background:#fbfdfc}.client-product-history-popover .section-heading h2{align-items:center;gap:6px;display:flex}.text-button{color:#174732;cursor:pointer;background:0 0;border:0;padding:4px;font-weight:800}.appointment-workflow-panel{background:#fbfdfc}.appointment-workflow-grid{gap:10px;display:grid}.workflow-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;padding:11px 12px;display:grid}.workflow-card>span{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:850}.workflow-card p{color:#17251e;margin:0;font-size:13px;line-height:1.4}.workflow-card-actions{flex-wrap:wrap;gap:8px;display:flex}.workflow-card-actions a,.workflow-card-actions button{border:1px solid var(--line);color:#174732;cursor:pointer;background:#fff;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:850;text-decoration:none}.workflow-card-actions a:first-child,.workflow-card-actions button:first-child{border-color:var(--theme-accent);background:var(--theme-accent);color:#fff}.client-memory-grid{gap:8px;display:grid}.client-memory-signal{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:10px 11px;display:grid}.client-memory-signal.success{background:#f0fff5;border-color:#b8e8c7}.client-memory-signal.warning{background:#fff8e8;border-color:#f1d49f}.client-memory-signal span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.client-memory-signal strong{color:#17251e;font-size:13px;line-height:1.3}.panel-section{border-bottom:1px solid var(--line);padding:18px}.panel-section h2{margin:0 0 12px;font-size:16px}.bookout-preset-actions{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.bookout-preset-actions button{border:1px solid color-mix(in srgb, currentColor 22%, transparent);cursor:pointer;border-radius:999px;padding:8px 12px;font-weight:850}.bookout-preset-actions button.tone-holiday{color:#69400f;background:#f9dfba}.bookout-preset-actions button.tone-sick{color:#5a3824;background:#dfc8b2}.bookout-preset-actions button.tone-off{color:#171b0c;background:#a29d62}.bookout-preset-actions button:hover,.bookout-preset-actions button.selected{box-shadow:inset 0 0 0 2px}.bookout-preset-actions button.selected:before{content:"✓";margin-right:5px}.bookout-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.bookout-time-grid .panel-input{font-variant-numeric:tabular-nums;text-align:right;margin-bottom:0}.keyboard-time-field{align-content:start}.time-entry-error{color:#a01818;margin-top:4px;font-size:11px;line-height:1.25;display:block}.panel-actions{flex-wrap:wrap;gap:10px;display:flex}.panel-actions button:not(.primary-button):not(.danger-button){border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 13px}.client-context-grid{gap:10px;display:grid}.client-context-card{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:5px;padding:11px 12px;display:grid}.client-context-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:850}.client-context-card strong{font-size:15px}.client-context-card small,.client-context-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.35}.choice-actions{gap:10px;display:grid}.choice-actions button:not(.primary-button){border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 13px}.panel-input{border:1px solid var(--line);border-radius:8px;width:100%;margin-bottom:12px;padding:11px 12px}.panel-field{color:var(--muted);gap:6px;font-weight:700;display:grid}.panel-field .panel-input{color:#102018;font-weight:500}.panel-search .panel-input{margin-bottom:0}.draft-service-stack{gap:10px;margin:14px 0;display:grid}.draft-service-stack.is-collapsed{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;padding:10px}.section-heading.compact{justify-content:space-between;align-items:center;gap:10px;display:flex}.service-heading-actions{text-align:right;align-items:center;gap:10px;display:flex}.draft-service-collapsed-summary{border-top:1px solid var(--line);color:var(--muted);gap:3px;padding-top:8px;display:grid}.draft-service-collapsed-summary strong{color:#102018}.draft-service-line{border:1px solid var(--line);border-radius:8px;grid-template-columns:28px minmax(0,1fr) 78px 34px;align-items:end;gap:8px;padding:10px;display:grid}.draft-service-line .panel-input{margin-bottom:0}.draft-service-line .panel-field.duration{min-width:0}.draft-service-line button:not(.primary-button){border:1px solid var(--line);background:#fff;border-radius:8px;height:42px;font-weight:850}.draft-service-line button:disabled{cursor:not-allowed;opacity:.45}.draft-service-line small{color:var(--muted);grid-column:2/-1}.draft-service-number{background:var(--active-bg);width:26px;height:26px;color:var(--active-text);border-radius:999px;align-self:center;place-items:center;font-weight:850;display:grid}.add-service-row{grid-template-columns:minmax(0,1fr) 52px;align-items:start;gap:8px;display:grid}.add-service-row .panel-input{margin-bottom:0}.add-service-button{min-height:42px;padding:0;font-size:24px;line-height:1}.selected-diary-client-card{border:1px solid var(--theme-soft-border);background:var(--active-bg);border-radius:8px;gap:12px;margin:12px 0;padding:12px;display:grid}.selected-diary-client-card>div:first-child{gap:3px;display:grid}.selected-diary-client-card strong{font-size:18px}.selected-diary-client-card span,.selected-diary-client-card small{color:var(--muted);font-size:12px}.selected-diary-client-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.selected-diary-client-card dl>div{background:#ffffffad;border:1px solid #cfe4d8;border-radius:8px;padding:8px}.selected-diary-client-card dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.selected-diary-client-card dd{margin:2px 0 0;font-weight:750}.rebook-history-panel{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:10px;margin:-2px 0 14px;padding:12px;display:grid}.rebook-history-list{gap:8px;max-height:330px;display:grid;overflow-y:auto}.rebook-history-card{border:1px solid var(--line);color:#102018;cursor:pointer;text-align:left;background:#fff;border-radius:8px;gap:5px;padding:10px;display:grid}.rebook-history-card:hover,.rebook-history-card.active{border-color:var(--theme-soft-border);background:var(--active-bg)}.rebook-history-main{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.rebook-history-main strong{font-size:15px}.rebook-history-main small,.rebook-history-meta{color:var(--muted);font-size:12px}.rebook-history-services{font-size:13px;font-weight:750;line-height:1.35}.quick-client-create{margin:8px 0 10px}.quick-client-open{padding:0}.quick-client-create form{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:8px;padding:10px;display:grid}.quick-client-create .panel-input{margin-bottom:0}.quick-client-actions{flex-wrap:wrap;gap:8px;display:flex}.quick-client-actions button:not(.primary-button){border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 13px}.diary-client-results{gap:8px;max-height:260px;margin:12px 0;display:grid;overflow-y:auto}.diary-client-results button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;gap:3px;padding:10px;display:grid}.diary-client-results button.active{border-color:var(--theme-soft-border);background:var(--active-bg)}.diary-client-results span{color:var(--muted);font-size:12px}.till-module{background:#f7faf8;min-height:calc(100dvh - 64px)}.till-toolbar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:10px 16px;display:flex}.till-toolbar>div{min-width:0}.till-toolbar h1,.till-section-heading h2{margin:0}.till-toolbar h1{font-size:22px}.eyebrow{color:var(--theme-accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:850;display:block}.till-status-row,.till-payment-explain{flex-wrap:wrap;gap:8px;display:flex}.till-pill{border-radius:999px;align-items:center;min-height:26px;padding:4px 9px;font-size:12px;font-weight:850;display:inline-flex}.till-pill.good{background:var(--active-bg);color:var(--active-text)}.till-pill.warning{color:#86520a;background:#fff0d6}.till-pill.neutral{color:#4d5d56;background:#eef3f0}.till-notice{border:1px solid #dbe7e0;border-left:4px solid var(--theme-accent);color:#345047;background:#fff;border-radius:8px;margin:16px 22px 0;padding:13px 14px}.till-stage-tabs{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;margin:12px 22px 0;padding:5px;display:inline-flex}.till-stage-tabs button{color:#35574b;background:0 0;border:0;border-radius:6px;padding:9px 13px;font-weight:850}.till-stage-tabs button.active{background:var(--active-bg);color:var(--active-text)}.till-layout{grid-template-columns:minmax(0,1fr) 360px;gap:18px;min-width:0;padding:18px 22px 28px;display:grid}.till-main,.till-summary{align-content:start;gap:16px;min-width:0;display:grid}.till-appointment-strip,.till-section,.till-summary-card,.till-paid-edit-panel,.till-account-form{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0}.till-appointment-strip{grid-template-columns:1fr 1fr 1fr .75fr;display:grid}.till-appointment-strip>div{border-right:1px solid var(--line);gap:4px;padding:16px;display:grid}.till-appointment-strip>div:last-child{border-right:0}.till-appointment-strip span,.till-appointment-strip small,.till-line span,.till-line-vat span,.till-save-form span,.till-payment-explain span{color:var(--muted)}.till-account-strip-cell strong{color:#073f29}.till-account-inline-lines{gap:3px;display:grid}.till-account-inline-lines small{justify-content:space-between;align-items:center;gap:8px;display:flex}.till-account-inline-lines b{color:var(--ink);white-space:nowrap;font-weight:850}.till-client-strip-cell{align-content:start}.till-client-title-row{align-items:center;gap:8px;min-width:0;display:flex}.till-client-title-row strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.till-client-edit-link{border:1px solid var(--line);color:var(--active-text);background:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:27px;height:27px;text-decoration:none;display:inline-flex}.till-client-edit-link:hover,.till-client-edit-link:focus-visible{border-color:var(--theme-soft-border);background:var(--active-bg)}.till-sale-mode{gap:5px;margin:2px 0 4px;display:inline-flex}.till-sale-mode button,.till-strip-client-picker>button{border:1px solid var(--line);color:#174732;background:#fff;border-radius:999px;padding:5px 9px;font-weight:850}.till-sale-mode button.active{border-color:var(--theme-soft-border);background:var(--active-bg)}.till-strip-client-picker{gap:7px;margin-top:6px;display:grid}.till-strip-client-picker input{border:1px solid var(--line);width:100%;color:var(--ink);border-radius:8px;padding:8px 9px}.till-section{padding:16px}.till-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.till-lines{gap:10px;display:grid}.till-line{border:1px solid #e4eee8;border-radius:8px;grid-template-columns:minmax(230px,1fr) 88px 140px minmax(170px,.7fr) 110px auto;align-items:end;gap:12px;padding:12px;display:grid}.till-line-item{align-self:center;gap:3px;display:grid}.till-line-quantity,.till-line-total{align-self:center;gap:4px;display:grid}.till-line-quantity span,.till-line-total span,.till-line-total small{color:var(--muted);font-size:12px}.till-line label,.till-payment-grid label,.till-payment-row label,.till-notes,.till-account-form label{color:var(--muted);gap:6px;font-size:13px;font-weight:750;display:grid}.till-line input,.till-payment-grid input,.till-payment-grid select,.till-payment-row input,.till-payment-row select,.till-notes textarea,.till-deposit-builder input,.till-deposit-builder textarea,.till-account-form input,.till-account-form select,.till-account-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:10px 11px}.till-line input:disabled,.till-payment-row input:disabled,.till-payment-row select:disabled,.till-notes textarea:disabled,.till-deposit-builder input:disabled,.till-deposit-builder textarea:disabled,.till-retail-picker input:disabled{color:#557466;cursor:not-allowed;background:#f5faf7}.till-readonly-amount{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;align-items:center;min-height:41px;padding:10px 11px;display:flex}.till-line.promotion-line{background:#fcf8ff;border-color:#d9c7f0}.till-line.deposit-line{background:#f8fffb;border-color:#c8e7d3;grid-template-columns:minmax(230px,1fr) 88px 140px minmax(170px,.7fr) auto}.till-line-vat{align-self:center;gap:3px;display:grid}.till-empty-state{color:#3e5a4f;background:#fbfefc;border:1px dashed #c9ddd2;border-radius:8px;gap:4px;padding:16px;display:grid}.till-empty-state span{color:var(--muted)}.till-remove-line{color:#9f2f2f;background:#fff3f3;border:1px solid #f1b5b5;border-radius:8px;padding:10px 12px;font-weight:800}.till-vat-toggle{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;min-height:48px;padding:9px 10px}.till-vat-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--theme-accent)}.till-vat-toggle span{color:var(--ink);gap:2px;display:grid}.till-vat-toggle small{color:var(--muted);font-weight:650}.till-secondary-button{border:1px solid var(--line);color:#174732;background:#fff;border-radius:8px;padding:9px 12px;font-weight:800}.till-secondary-button:disabled{cursor:not-allowed;opacity:.55}.till-secondary-button.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.till-section-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.till-deposit-use-button{border:1px solid var(--theme-soft-border);color:#075d51;background:#f3fbf8;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-width:170px;min-height:40px;padding:7px 10px;display:inline-flex}.till-deposit-use-button span{text-transform:uppercase;font-size:.78rem;font-weight:800}.till-deposit-use-button b{color:var(--ink);font-size:.96rem}.till-deposit-use-button:disabled{cursor:not-allowed;opacity:.55;background:#f7faf8}.till-payment-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.till-payment-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.till-payment-rows{gap:9px;display:grid}.till-payment-row{grid-template-columns:minmax(160px,.75fr) minmax(240px,1.25fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.till-payment-row.requires-stylist{grid-template-columns:minmax(130px,.65fr) minmax(220px,1fr) minmax(220px,1fr) auto}.till-remove-payment{color:#9f2f2f;background:#fff3f3;border:1px solid #f1b5b5;border-radius:8px;min-height:40px;padding:9px 12px;font-weight:800}.till-payment-info-wrap{position:relative}.till-info-button{border:1px solid var(--line);color:#174732;background:#fff;border-radius:999px;width:40px;height:40px;font-weight:900}.till-info-button:hover,.till-info-button:focus-visible{border-color:var(--theme-soft-border);background:var(--active-bg)}.till-payment-info-popover{z-index:20;border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;gap:10px;width:min(360px,100vw - 44px);padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 28px #0f2a1e29}.till-payment-info-popover ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.till-payment-info-popover li{border-top:1px solid #edf3ef;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding-top:9px;display:grid}.till-payment-info-popover span{gap:3px;display:grid}.till-payment-info-popover small{color:var(--muted);line-height:1.35}.till-payment-methods{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.till-payment-methods button{border:1px solid var(--line);min-height:76px;color:var(--ink);text-align:left;background:#fff;border-radius:8px;justify-items:start;gap:4px;padding:13px;display:grid}.till-payment-methods button.selected{border-color:var(--theme-soft-border);background:var(--active-bg);box-shadow:inset 0 0 0 1px var(--theme-soft-border)}.till-payment-methods span{color:var(--muted);font-size:12px}.till-link-button{color:var(--active-text);background:0 0;border:0;justify-self:start;padding:4px 0;font-weight:850}.till-link-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.65}.till-payment-explain{margin-top:12px}.till-payment-explain>div{border:1px solid #e5eee9;border-radius:8px;flex:260px;gap:7px;padding:12px;display:grid}.till-payment-explain .till-pill{justify-self:start}.till-notes{margin-top:12px}.till-notes textarea{resize:vertical;min-height:88px}.till-client-account-card{background:#fbfffc;border-color:#b9e5c9}.till-retail-picker{background:#fbfefc;border:1px dashed #b6dfc6;border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.till-retail-picker label{color:var(--muted);gap:6px;font-size:13px;font-weight:800;display:grid}.till-retail-picker input{border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;padding:10px 11px}.till-retail-picker>div{grid-template-columns:1fr;gap:8px;max-height:260px;display:grid;overflow:auto}.till-retail-picker button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.till-retail-picker button:hover,.till-retail-picker button:focus-visible{border-color:var(--theme-soft-border);background:var(--active-bg)}.till-retail-picker button span,.till-retail-picker>div>span{color:var(--muted);font-size:12px}.till-promotion-builder{background:#fffaff;border:1px dashed #d9c7f0;border-radius:8px;grid-template-columns:minmax(160px,.8fr) minmax(220px,1.15fr) minmax(140px,.7fr) auto;align-items:end;gap:10px;margin-top:12px;padding:12px;display:grid}.till-promotion-builder label{color:var(--muted);gap:6px;min-width:0;font-size:13px;font-weight:800;display:grid}.till-promotion-builder select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;border-radius:8px;padding:10px 11px}.till-promotion-preview{border:1px solid var(--line);background:#fff;border-radius:8px;gap:2px;min-width:0;min-height:62px;padding:9px 11px;display:grid}.till-promotion-preview span,.till-promotion-preview small{color:var(--muted)}.till-promotion-actions{justify-content:flex-end;gap:8px;min-width:0;display:flex}.till-promotion-actions .primary-button,.till-promotion-actions .till-secondary-button{min-width:72px}.till-deposit-grid{grid-template-columns:minmax(260px,1fr) minmax(140px,.45fr) minmax(140px,.45fr);align-items:start;gap:12px;display:grid}.till-deposit-grid label{color:var(--muted);gap:6px;font-size:13px;font-weight:750;display:grid}.till-deposit-note{grid-column:1/-1}.till-deposit-note textarea{resize:vertical;min-height:78px}.till-deposit-client-picker{gap:8px;display:grid}.till-selected-client{border:1px solid var(--line);color:var(--ink);background:#f8fcfa;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:9px 11px;display:flex}.till-selected-client span{gap:2px;display:grid}.till-selected-client small{color:var(--muted)}.till-selected-client button{color:#06633e;background:0 0;border:0;font-weight:850}.till-client-search-results{border:1px solid var(--line);background:#fff;border-radius:8px;gap:7px;max-height:260px;padding:8px;display:grid;overflow:auto}.till-client-search-results.compact{max-height:180px;padding:6px}.till-client-search-results button{text-align:left;background:#fff;border:1px solid #e4eee8;border-radius:8px;gap:3px;padding:10px 11px;display:grid}.till-client-search-results button:hover,.till-client-search-results button:focus-visible{border-color:var(--theme-soft-border);background:var(--active-bg)}.till-client-search-results span{color:var(--muted);font-size:12px}.till-client-account-card .till-secondary-button:disabled{cursor:not-allowed;opacity:.55}.till-account-content{grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:14px;display:grid}.till-account-content>div:first-child{align-content:start;gap:5px;display:grid}.till-account-content span,.till-account-history small,.till-account-history p,.till-account-form span{color:var(--muted)}.till-account-history{gap:8px;display:grid}.till-account-history>div{border:1px solid #e4eee8;border-radius:8px;grid-template-columns:80px minmax(0,1fr);gap:4px 10px;padding:10px;display:grid}.till-account-history span{color:var(--active-text);font-weight:850}.till-account-history small{grid-column:2}.till-summary-card{padding:18px}.till-summary-card>strong{margin-top:6px;font-size:32px;display:block}.till-summary-card dl{gap:10px;margin:18px 0 0;display:grid}.till-summary-card dl>div{border-top:1px solid #edf3ef;gap:8px;padding-top:10px;display:grid}.till-summary-card dl>.till-summary-section{gap:8px;display:grid}.till-summary-total-row{grid-template-columns:minmax(0,1fr) 92px;align-items:baseline;gap:12px;width:100%;display:grid}.till-summary-line-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.till-summary-line-list li{color:#39564b;grid-template-columns:minmax(0,1fr) 92px;align-items:start;gap:12px;font-size:13px;display:grid}.till-summary-line-list span{gap:2px;min-width:0;display:grid}.till-summary-line-list small{color:var(--muted);font-size:12px}.till-summary-line-list b{color:var(--ink);text-align:right;white-space:nowrap;font-weight:800}.till-summary-card dt{color:var(--muted)}.till-summary-card dd{text-align:right;min-width:82px;margin:0;font-weight:850}.till-summary-card .balanced dd{color:var(--active-text)}.till-summary-card .outstanding dd{color:#a64018}.till-paid-edit-panel{gap:10px;padding:16px;display:grid}.till-paid-edit-panel.active{background:#fff9ed;border-color:#f2d3a0}.till-paid-edit-panel>div:first-child{gap:3px;display:grid}.till-paid-edit-panel span,.till-paid-edit-panel p{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.till-paid-edit-panel label{color:var(--muted);gap:6px;font-weight:750;display:grid}.till-paid-edit-panel textarea{resize:vertical;min-height:84px}.till-paid-edit-actions{gap:8px;display:flex}.till-builder-actions{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:16px;display:grid}.till-builder-actions .primary-button,.till-builder-actions .till-secondary-button{width:100%}.till-lock-note{color:var(--muted);font-size:13px;line-height:1.35}.till-account-form{gap:10px;padding:16px;display:grid}.till-account-form summary{cursor:pointer;font-weight:850}.till-account-form-body{gap:10px;margin-top:12px;display:grid}.till-account-form>div:first-child{gap:4px;display:grid}.till-account-form textarea{resize:vertical;min-height:70px}.till-account-form .primary-button:disabled{cursor:not-allowed;opacity:.55}.till-save-form{gap:10px;display:grid}.till-save-form .primary-button{width:100%}.till-save-form .primary-button:disabled{cursor:not-allowed;opacity:.55}.till-action-message{border-radius:8px;margin:0;padding:10px 12px}.till-action-message.good{background:var(--active-bg);color:var(--active-text)}.till-action-message.warning{color:#86520a;background:#fff0d6}.till-deposit-override,.till-stock-override{color:#6f4306;background:#fff8ea;border:1px solid #f0d29a;border-radius:8px;gap:6px;padding:10px 12px;display:grid}.till-deposit-override p,.till-deposit-override small,.till-stock-override p{margin:0}.till-deposit-override small{color:#86520a;font-weight:750}.bill-lines{gap:9px;display:grid}.bill-line,.bill-total{grid-template-columns:1fr auto;align-items:start;gap:12px;display:grid}.bill-line{border-bottom:1px solid var(--line);padding-bottom:9px}.bill-line span:first-child{gap:2px;display:grid}.bill-line small{color:var(--muted)}.bill-total{padding-top:4px;font-weight:850}.quick-actions{z-index:30;pointer-events:none;justify-items:end;gap:10px;display:grid;position:fixed;bottom:24px;right:24px}.quick-actions-button,.quick-actions-menu,.quick-actions-message{pointer-events:auto}.client-module:has(.save-confirmation) .quick-actions{opacity:0;pointer-events:none;visibility:hidden}.quick-actions-button{border:1px solid var(--theme-accent);background:var(--theme-accent);color:#fff;width:58px;height:58px;box-shadow:var(--shadow);border-radius:50%;font-size:32px;font-weight:750;line-height:1}.quick-actions-menu,.quick-actions-message{border:1px solid var(--line);width:min(360px,100vw - 32px);box-shadow:var(--shadow);background:#fff;border-radius:8px}.quick-actions-menu{gap:6px;padding:10px;display:grid}.quick-actions-heading{justify-content:space-between;align-items:center;gap:12px;padding:4px 4px 8px;display:flex}.quick-actions-heading button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;padding:7px 9px;font-size:12px;font-weight:800}.quick-action-item{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fbfdfc;border-radius:8px;gap:4px;padding:11px 12px;display:grid}.quick-action-item:hover{border-color:var(--theme-soft-border)}.quick-action-item span{font-weight:850}.quick-action-item small,.quick-actions-message{color:var(--muted)}.quick-actions-message{padding:10px 12px;font-size:13px}.client-module{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 64px);display:grid;overflow:hidden}.client-toolbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:18px;min-height:70px;padding:10px 16px;display:flex}.client-toolbar h1,.client-detail-heading h2,.section-heading h3{margin:0}.client-toolbar h1{font-size:22px}.client-toolbar-actions{gap:10px;min-width:min(680px,58vw);margin-left:auto;display:flex}.client-search,.client-select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:11px 12px}.client-search{flex:1;min-width:240px}.client-select{min-width:220px}.client-layout{grid-template-columns:360px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.maintenance-back-button{display:none}.client-list{background:var(--panel);border-right:1px solid var(--line);min-height:0;overflow-y:auto}.list-control-panel{border-bottom:1px solid var(--line);z-index:4;background:#fbfdfc;gap:10px;padding:14px 18px;display:grid;position:sticky;top:0}.list-control-panel .client-search,.list-control-panel .client-select{width:100%;min-width:0}.list-control-panel .clearable-search{min-width:0}.list-search-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.stylist-list .list-search-row{grid-template-columns:minmax(0,1fr)}.stylist-list .filter-checkbox.compact{justify-self:start}.client-search.compact,.list-control-panel .client-search.compact{padding-top:9px;padding-bottom:9px}.filter-checkbox{min-height:38px;color:var(--active-text);align-items:center;gap:9px;font-size:14px;display:flex}.filter-checkbox.compact{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:8px;min-width:146px;padding:0 10px}.filter-checkbox input{width:16px;height:16px;accent-color:var(--theme-accent)}.client-list-summary{border-bottom:1px solid var(--line);gap:3px;padding:16px 18px;display:grid}.client-list-summary span,.client-row small,.section-heading span,.client-detail-heading p,.client-note,.client-empty-state p,.client-deposit-row span,.client-field span{color:var(--muted)}.client-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;min-height:72px;padding:13px 18px;display:grid}.client-row.active{background:var(--active-bg);box-shadow:inset 4px 0 0 var(--theme-accent)}.client-row span:first-child{gap:4px;min-width:0;display:grid}.client-row strong,.client-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.data-pill{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:850}.data-pill.good{background:var(--active-bg);color:var(--active-text)}.data-pill.warning{color:#805b00;background:#fff2c7}.client-detail{align-content:start;gap:16px;min-height:0;padding:18px;display:grid;overflow-y:auto}.client-detail-heading,.client-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0}.client-detail-heading{z-index:8;box-shadow:0 1px 0 var(--line), 0 10px 18px #0822190d;justify-content:space-between;gap:18px;padding:16px;display:flex;position:sticky;top:0}.client-detail-heading h2{font-size:24px}.client-detail-heading>div,.service-detail-heading>div,.stylist-detail-heading>div,.section-heading{min-width:0}.client-status-stack{flex-wrap:wrap;place-content:start flex-end;gap:8px;display:flex}.client-section{padding:18px}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.section-heading span{overflow-wrap:anywhere;min-width:0}.client-field-grid,.client-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.client-field{gap:5px;min-width:0;display:grid}.client-derived-identity{color:var(--muted);background:#f2f8f5;border:1px solid #d7e6dd;border-radius:4px;grid-column:1/-1;align-items:center;gap:5px;min-height:32px;margin:0;padding:6px 10px;font-size:12px;display:flex}.client-derived-identity strong{color:var(--ink)}.client-field.client-textarea-field{grid-template-rows:auto minmax(112px,1fr)}.client-field.client-textarea-field textarea{align-self:stretch;height:100%;min-height:112px}.client-requested-team-member-field{align-content:start;align-self:start}.client-field.span-2{grid-column:span 2}.client-field strong{overflow-wrap:anywhere}.client-merge-form{gap:12px;display:grid}.client-merge-summary{color:#6d4324;background:#fff9f2;border:1px solid #f1d0b4;border-radius:8px;gap:4px;padding:12px;display:grid}.client-merge-summary strong,.client-merge-summary span{overflow-wrap:anywhere}.client-merge-confirm{color:var(--muted);align-items:flex-start;gap:10px;font-size:13px;line-height:1.35;display:flex}.client-merge-confirm input{flex:none;margin-top:2px}.client-merge-form .danger-button{justify-self:start}.privacy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.access-toggle{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:56px;padding:10px;display:grid}.access-toggle input[type=checkbox],.inline-checkbox input[type=checkbox],.client-consent-switch input[type=checkbox],.opening-day-toggle input[type=checkbox],.planner-inline-check input[type=checkbox],.preference-filter-toggle input[type=checkbox],.preference-toggle input[type=checkbox],.self-employed-record-toggles input[type=checkbox],.staff-login-check input[type=checkbox],.team-category-active input[type=checkbox],.till-vat-toggle input[type=checkbox],.toggle-switch{appearance:none;background:#b8c0bc;border:1px solid #aab4af;border-radius:999px;flex:none;width:40px;height:22px;margin:0;transition:background .18s,border-color .18s,box-shadow .18s;display:inline-block;position:relative}.access-toggle input[type=checkbox]:before,.inline-checkbox input[type=checkbox]:before,.client-consent-switch input[type=checkbox]:before,.opening-day-toggle input[type=checkbox]:before,.planner-inline-check input[type=checkbox]:before,.preference-filter-toggle input[type=checkbox]:before,.preference-toggle input[type=checkbox]:before,.self-employed-record-toggles input[type=checkbox]:before,.staff-login-check input[type=checkbox]:before,.team-category-active input[type=checkbox]:before,.till-vat-toggle input[type=checkbox]:before,.toggle-switch:before{content:"";background:#fff;border-radius:999px;width:18px;height:18px;transition:transform .18s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #0f261b38}.access-toggle input[type=checkbox]:checked,.inline-checkbox input[type=checkbox]:checked,.client-consent-switch input[type=checkbox]:checked,.opening-day-toggle input[type=checkbox]:checked,.planner-inline-check input[type=checkbox]:checked,.preference-filter-toggle input[type=checkbox]:checked,.preference-toggle input[type=checkbox]:checked,.self-employed-record-toggles input[type=checkbox]:checked,.staff-login-check input[type=checkbox]:checked,.team-category-active input[type=checkbox]:checked,.till-vat-toggle input[type=checkbox]:checked,.toggle-switch.is-on{background:var(--app-switch-on);border-color:var(--app-switch-on-border)}.access-toggle input[type=checkbox]:checked:before,.inline-checkbox input[type=checkbox]:checked:before,.client-consent-switch input[type=checkbox]:checked:before,.opening-day-toggle input[type=checkbox]:checked:before,.planner-inline-check input[type=checkbox]:checked:before,.preference-filter-toggle input[type=checkbox]:checked:before,.preference-toggle input[type=checkbox]:checked:before,.self-employed-record-toggles input[type=checkbox]:checked:before,.staff-login-check input[type=checkbox]:checked:before,.team-category-active input[type=checkbox]:checked:before,.till-vat-toggle input[type=checkbox]:checked:before,.toggle-switch.is-on:before{transform:translate(18px)}.access-toggle input[type=checkbox]:focus-visible,.inline-checkbox input[type=checkbox]:focus-visible,.client-consent-switch input[type=checkbox]:focus-visible,.opening-day-toggle input[type=checkbox]:focus-visible,.planner-inline-check input[type=checkbox]:focus-visible,.preference-filter-toggle input[type=checkbox]:focus-visible,.preference-toggle input[type=checkbox]:focus-visible,.self-employed-record-toggles input[type=checkbox]:focus-visible,.staff-login-check input[type=checkbox]:focus-visible,.team-category-active input[type=checkbox]:focus-visible,.till-vat-toggle input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #0d8f31;box-shadow:0 0 0 3px #13d93e38}.access-toggle input[type=checkbox]:disabled,.inline-checkbox input[type=checkbox]:disabled,.client-consent-switch input[type=checkbox]:disabled,.opening-day-toggle input[type=checkbox]:disabled,.planner-inline-check input[type=checkbox]:disabled,.preference-filter-toggle input[type=checkbox]:disabled,.preference-toggle input[type=checkbox]:disabled,.self-employed-record-toggles input[type=checkbox]:disabled,.staff-login-check input[type=checkbox]:disabled,.team-category-active input[type=checkbox]:disabled,.till-vat-toggle input[type=checkbox]:disabled{cursor:not-allowed;opacity:.48}.access-toggle span:not(.toggle-switch){overflow-wrap:anywhere;grid-column:2;gap:3px;min-width:0;display:grid}.access-toggle small{color:var(--muted);line-height:1.35}.access-toggle b{color:var(--active-text);white-space:nowrap;grid-column:2;justify-self:start;font-size:12px}.client-consent-panel{gap:12px;display:grid}.client-consent-panel .tracked-save-inline-actions{gap:8px}.client-consent-panel .tracked-save-inline-actions>.maintenance-save-button{z-index:auto;width:auto;min-height:0;box-shadow:none;flex:none;margin-top:0;position:static;bottom:auto}.client-consent-panel .tracked-save-inline-actions .save-confirmation{white-space:nowrap;gap:6px;padding-inline:8px}.client-consent-panel .tracked-save-inline-actions .save-confirmation button{min-width:32px;padding-inline:8px}.client-consent-panel .save-form-message{margin-top:0}.client-consent-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.client-consent-summary.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.client-consent-summary>div,.client-consent-card{border:1px solid var(--line);background:#fbfdfc;border-radius:8px}.client-consent-summary>div{gap:4px;padding:12px;display:grid}.client-consent-summary span,.client-consent-card span,.client-consent-note{color:var(--muted)}.client-consent-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.client-consent-table{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;overflow-x:auto}.client-consent-table-row{grid-template-columns:minmax(120px,1fr) repeat(3,minmax(78px,104px));min-width:440px;display:grid}.client-consent-table-row+.client-consent-table-row{border-top:1px solid var(--line)}.client-consent-table-row>div{align-items:center;min-height:48px;padding:10px 12px;display:flex}.client-consent-table-row>div+div{border-left:1px solid var(--line);justify-content:center}.client-consent-table-row.heading{background:var(--active-bg);color:var(--active-text);text-transform:uppercase;font-size:12px;font-weight:850}.client-consent-table-purpose{font-weight:850}.client-consent-switch{cursor:pointer;border:1px solid #0000;border-radius:999px;place-items:center;padding:3px;display:inline-grid}.client-consent-switch input[type=checkbox]{appearance:none;background:#b8c0bc;border:1px solid #aab4af;border-radius:999px;width:40px;height:22px;margin:0;transition:background .18s,border-color .18s,box-shadow .18s;display:inline-block;position:relative}.client-consent-switch input[type=checkbox]:before{content:"";background:#fff;border-radius:999px;width:18px;height:18px;transition:transform .18s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #0f261b38}.client-consent-switch input[type=checkbox]:checked{background:var(--app-switch-on);border-color:var(--app-switch-on-border)}.client-consent-switch input[type=checkbox]:checked:before{transform:translate(18px)}.client-consent-switch input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #0d8f31;box-shadow:0 0 0 3px #13d93e38}.client-consent-card{align-content:start;gap:10px;padding:12px;display:grid}.client-consent-card.muted{opacity:.78}.client-consent-card header,.client-consent-row,.client-consent-edit-row{justify-content:space-between;gap:10px;display:flex}.client-consent-card header{align-items:flex-start}.client-consent-card header>div,.client-consent-purpose{gap:3px;min-width:0;display:grid}.client-consent-row,.client-consent-edit-row{border-top:1px solid var(--line);align-items:center;padding-top:10px}.client-consent-edit-row:first-of-type{border-top:0;padding-top:0}.client-consent-edit-row>span{gap:3px;min-width:0;display:grid}.client-consent-edit-row .client-select{min-width:140px}.client-consent-purpose small,.client-consent-edit-row small{color:var(--muted);line-height:1.35}.consent-status{white-space:nowrap;border-radius:999px;padding:6px 8px;font-size:11px;font-weight:850;line-height:1}.consent-status.opted-in{background:var(--active-bg);color:var(--active-text)}.consent-status.opted-out{color:#a72a2a;background:#ffe7e7}.consent-status.not-asked,.consent-status.unknown{color:#805b00;background:#fff2c7}.client-consent-note{margin:0;line-height:1.45}.security-module{padding:18px}.security-shell{grid-template-columns:260px minmax(0,1fr);gap:16px;max-width:1500px;margin-inline:auto;display:grid}.security-menu{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:start;gap:6px;padding:14px;display:grid;position:sticky;top:74px}.security-menu h1{margin:0 0 10px;font-size:24px;line-height:1}.security-menu-list{gap:2px;display:grid}.security-menu a,.security-menu-list button,.security-menu>span:not(.eyebrow){width:100%;min-height:34px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;padding:8px 10px;text-decoration:none}.security-menu a.active,.security-menu-list button.active{background:var(--active-bg);color:var(--active-text);box-shadow:inset 3px 0 0 var(--theme-accent);font-weight:900}.security-menu>span:not(.eyebrow){color:var(--muted);opacity:.62;font-size:14px}.security-content{gap:16px;display:grid}.security-content h2{margin:0;font-size:24px;line-height:1.1}.security-access-grid{margin:16px 0}.security-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.security-rule-card{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:5px;padding:14px;display:grid}.security-rule-card span{color:var(--muted);line-height:1.4}.security-action-panel{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;margin-top:12px;padding:14px;display:grid}.security-action-panel strong{margin-bottom:8px;display:block}.security-workflow-list{color:var(--muted);gap:6px;margin:0;padding-left:20px;line-height:1.4;display:grid}.security-action-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.security-login-form,.stylist-login-form{gap:12px;display:grid}.stylist-login-form .stylist-field-grid{grid-template-columns:minmax(110px,.75fr) minmax(170px,1.25fr) minmax(120px,.85fr);gap:10px;width:100%}.stylist-login-form .stylist-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.stylist-login-form .stylist-field,.stylist-login-form .access-toggle{min-width:0}.stylist-login-form .client-search,.stylist-login-form .client-select{width:100%;min-width:0}.stylist-login-form .access-toggle{align-items:center;min-height:64px}.stylist-login-form .access-toggle span{line-height:1.25}.stylist-login-form .access-toggle strong{white-space:normal}.stylist-login-requirement{color:var(--theme-muted);margin:-4px 0 0;font-size:12px}.security-code-grid{grid-template-columns:minmax(180px,.45fr) minmax(220px,.55fr);gap:12px;display:grid}.security-policy-grid{margin-top:2px}.client-note{margin:12px 0 0}.client-deposit-list{gap:9px;display:grid}.client-deposit-row{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(140px,.45fr) minmax(160px,.55fr) minmax(0,1fr);gap:12px;padding:12px;display:grid}.client-deposit-row>div{gap:3px;min-width:0;display:grid}.client-deposit-row strong{overflow-wrap:anywhere}.client-deposit-statement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.client-deposit-statement{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;min-width:0;overflow:hidden}.client-deposit-statement>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.client-deposit-statement>header span{color:var(--theme-accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:850}.client-deposit-statement>header strong{white-space:nowrap}.client-deposit-statement-rows{max-height:275px;display:grid;overflow-y:auto}.client-deposit-statement-row{border-bottom:1px solid #edf3ef;grid-template-columns:minmax(92px,.7fr) minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.client-deposit-statement-row:last-child{border-bottom:0}.client-deposit-statement-row>div{gap:2px;min-width:0;display:grid}.client-deposit-statement-row span,.client-deposit-statement-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-deposit-statement-row b{white-space:nowrap}.client-deposit-statement-row.debit b{color:#9f1d1d}.client-deposit-statement-row.credit b{color:var(--active-text)}.client-deposit-empty{color:var(--muted);padding:14px 12px}.client-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.client-empty-state{background:#fbfdfc;border:1px dashed #b8c8bf;border-radius:8px;padding:16px}.client-empty-state p{margin:6px 0 0}.diary-service-empty-state{margin-top:4px}.client-sensitive-form{gap:12px;margin-bottom:12px;display:grid}.client-sensitive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.client-sensitive-list{gap:8px;display:grid}.client-sensitive-record{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:8px;padding:12px;display:grid}.client-sensitive-record div{justify-content:space-between;align-items:center;gap:10px;display:flex}.client-sensitive-record p,.client-sensitive-record small{white-space:pre-wrap;margin:0}.client-sensitive-record span,.client-sensitive-record small{color:var(--muted)}.text-link-button{color:var(--active-text);cursor:pointer;background:0 0;border:0;font-weight:850;text-decoration:none}.text-link-button:hover{text-decoration:underline}.primary-button.small-button{justify-content:center;align-items:center;padding:8px 11px;text-decoration:none;display:inline-flex}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;font-weight:850;text-decoration:none}.secondary-button.small-button{justify-content:center;align-items:center;padding:8px 11px;display:inline-flex}.client-history-list{gap:10px;display:grid}.client-appointment-history-list{scrollbar-gutter:stable;max-block-size:370px;padding-right:4px;overflow-y:auto}.client-appointment-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.client-appointment-tab{border:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:#fbfdfc;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:800;display:flex}.client-appointment-tab.active{border-color:var(--theme-accent);background:var(--active-bg);color:var(--active-text)}.client-appointment-tab strong{color:var(--active-text);text-align:center;background:#fff;border-radius:999px;min-width:28px;padding:2px 8px}.client-upcoming-card{border:1px solid var(--line);color:inherit;background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(130px,.8fr) minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.client-upcoming-card:hover{border-color:var(--theme-accent);box-shadow:0 8px 18px #04352714}.client-upcoming-card>span,.client-upcoming-meta{gap:3px;min-width:0;display:grid}.client-upcoming-card small,.client-upcoming-meta small{color:var(--muted)}.client-upcoming-meta{justify-items:end}.client-history-card{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:10px;padding:12px;display:grid}.client-history-card summary{cursor:pointer;grid-template-columns:minmax(130px,.8fr) minmax(0,1fr) auto;align-items:center;gap:12px;list-style:none;display:grid}.client-history-card summary::-webkit-details-marker{display:none}.client-history-card summary>span{gap:3px;min-width:0;display:grid}.client-history-card summary small,.client-history-summary-line{color:var(--muted)}.client-history-summary-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-history-card[open] summary{border-bottom:1px solid var(--line);padding-bottom:8px}.client-history-card header,.client-history-card footer,.client-history-line{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.client-history-card header>div,.client-history-line span{gap:3px;min-width:0;display:grid}.client-history-card header span,.client-history-card footer,.client-history-line small{color:var(--muted)}.client-history-line{border-top:1px solid var(--line);padding-top:8px}.client-history-line strong,.client-history-line small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-history-line b{white-space:nowrap}.bill-finder-module{gap:16px;padding:18px;display:grid}.bill-finder-header{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.bill-finder-header h1{margin:2px 0 4px;font-size:26px}.bill-finder-header p,.bill-finder-note,.bill-row-meta,.bill-row-lines,.bill-row header span,.bill-muted-action{color:var(--muted)}.bill-finder-search{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:12px;display:grid}.bill-list{gap:12px;display:grid}.bill-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,280px);display:grid;overflow:hidden}.bill-row-main{gap:12px;min-width:0;padding:16px;display:grid}.bill-row header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bill-row header .data-pill{color:var(--active-text);flex:none;align-self:flex-start;width:auto;min-height:26px;display:inline-flex}.bill-row header>div{gap:3px;min-width:0;display:grid}.bill-row-meta{flex-wrap:wrap;gap:8px 16px;display:flex}.bill-row-lines{gap:5px;display:grid}.bill-row-lines span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bill-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bill-row-totals{border-left:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 16%, #fff);align-content:center;gap:8px;padding:16px;display:grid}.bill-row-totals div{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.logs-module{gap:16px;padding:18px;display:grid}.help-module{gap:14px;padding:18px;display:grid}.help-hero,.help-search-panel,.help-topic-card{border:1px solid var(--line);background:var(--panel);border-radius:8px}.help-hero{justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.help-hero h1{margin:3px 0 8px;font-size:26px;line-height:1.1}.help-hero p,.help-topic-card p,.help-result-summary span{color:var(--muted);margin:0}.help-search-panel{grid-template-columns:minmax(260px,1fr) auto;gap:10px;padding:12px;display:grid}.help-category-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.help-category-row button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;min-height:38px;padding:8px 11px;font-weight:850}.help-category-row button.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.help-result-summary{align-items:center;gap:10px;display:flex}.help-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.help-topic-card{align-content:start;gap:12px;min-width:0;padding:14px;display:grid}.help-topic-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.help-topic-heading h2{margin:3px 0 0;font-size:19px}.help-topic-card ul{gap:8px;margin:0;padding-left:18px;display:grid}.help-topic-card li{color:var(--ink);line-height:1.35}.logs-header{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.logs-header .data-pill{white-space:nowrap;flex:none}.logs-header h1{margin:2px 0 4px;font-size:26px}.logs-header p,.logs-note,.logs-muted,.logs-table small{color:var(--muted)}.logs-filter-bar{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(220px,1.2fr) minmax(145px,.7fr) minmax(145px,.7fr) minmax(240px,1fr) auto auto;align-items:end;gap:10px;padding:12px;display:grid}.logs-filter-bar label{color:var(--muted);gap:5px;min-width:0;font-size:13px;font-weight:750;display:grid}.devices-hub-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.devices-hub-list{gap:10px;display:grid}.devices-hub-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(240px,1.4fr) minmax(190px,.8fr) minmax(150px,auto) minmax(150px,auto);align-items:center;gap:12px;padding:12px;display:grid}.devices-hub-row>div:first-of-type,.devices-hub-status{gap:4px;min-width:0;display:grid}.devices-hub-row label{color:var(--muted);gap:5px;min-width:0;font-size:13px;font-weight:750;display:grid}.devices-hub-row span,.devices-hub-row small{color:var(--muted)}.devices-hub-status{justify-items:start}.access-toggle.compact{min-height:54px}.logs-table-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;overflow-x:auto}.logs-table{border-collapse:collapse;width:100%;min-width:980px}.logs-table th,.logs-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.logs-table th{color:var(--active-text);text-transform:uppercase;font-size:12px;font-weight:850}.logs-table td{min-width:0}.logs-table td:nth-child(4){min-width:260px}.logs-table td:nth-child(6){min-width:190px}.logs-table td>span,.logs-table td>strong,.logs-table td>small{display:block}.logs-table tr:last-child td{border-bottom:0}.logs-empty-state{border:0;border-top:1px solid var(--line);border-radius:0}.money-good{color:var(--active-text)}.money-warning{color:#9f2f2f}.service-module{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 64px);display:grid;overflow:hidden}.service-toolbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:18px;min-height:70px;padding:10px 16px;display:flex}.service-toolbar h1,.service-detail-heading h2{margin:0}.service-toolbar h1{font-size:22px}.service-toolbar-actions{gap:10px;min-width:min(860px,66vw);margin-left:auto;display:flex}.service-summary-grid{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 18%, #fff);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 18px;display:grid}.service-summary-grid article{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:4px;padding:14px;display:grid}.service-summary-grid span,.service-list-summary span,.service-row small,.service-detail-heading p,.service-field span,.service-note,.service-import-notes p{color:var(--muted)}.service-summary-grid strong{font-size:24px}.service-layout{grid-template-columns:390px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.service-list{background:var(--panel);border-right:1px solid var(--line);min-height:0;overflow-y:auto}.service-list-summary{border-bottom:1px solid var(--line);gap:3px;padding:16px 18px;display:grid}.service-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:78px;padding:13px 18px;display:grid}.service-row.active{background:var(--active-bg);box-shadow:inset 4px 0 0 var(--theme-accent)}.service-row.inactive{background:#fbf7ea}.service-row span:nth-child(2){gap:4px;min-width:0;display:grid}.service-row strong,.service-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.service-colour{border:1px solid #1022192e;border-radius:999px;width:14px;height:42px}.service-pill{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:850}.service-pill.good{background:var(--active-bg);color:var(--active-text)}.service-pill.warning{color:#805b00;background:#fff2c7}.service-pill.neutral{background:color-mix(in srgb, var(--active-bg) 46%, #fff);color:var(--active-text)}.service-empty-state{margin:16px 18px}.service-detail{align-content:start;gap:16px;min-height:0;padding:18px;display:grid;overflow-y:auto}.service-detail-heading,.service-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0}.service-detail-heading{z-index:8;box-shadow:0 1px 0 var(--line), 0 10px 18px #0822190d;justify-content:space-between;gap:18px;padding:16px;display:flex;position:sticky;top:0}.service-detail-heading h2{font-size:24px}.service-status-stack{flex-wrap:wrap;place-content:start flex-end;gap:8px;display:flex}.service-section{padding:18px}.service-field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.service-field-grid+.primary-button{margin-top:14px}.service-field{gap:5px;min-width:0;display:grid}.service-field strong{overflow-wrap:anywhere}.service-colour-value{align-items:center;gap:8px;display:flex}.service-colour-value span{border:1px solid #1022192e;border-radius:6px;width:22px;height:22px}.service-rule-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.service-note{margin:12px 0 0}.service-note.warning{color:#8a5a00;font-weight:750}.service-overrides-form,.stylist-working-form{gap:12px;display:grid}.service-overrides-form{grid-template-columns:auto auto minmax(0,1fr);justify-content:start;align-items:center}.service-overrides-form .service-table-wrap{grid-column:1/-1;width:100%}.service-overrides-save{grid-column:1;justify-self:start;min-width:128px;padding-inline:28px}.service-overrides-form .save-confirmation{grid-column:2;margin-top:0}.service-overrides-form .save-form-message{grid-column:1/-1}.team-price-add-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 22%, #fff);border-radius:8px;gap:10px;margin:14px 0;padding:12px;display:grid}.team-price-add-panel .section-heading{margin-bottom:0}.team-price-add-panel .section-heading button{border:1px solid var(--line);color:var(--active-text);background:#fff;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:850}.team-price-add-form{grid-template-columns:minmax(190px,1fr) minmax(150px,.7fr) minmax(150px,.7fr) auto auto;align-items:end;gap:10px;display:grid}.team-price-online-toggle{align-self:end;min-height:42px}.team-price-online-toggle input:disabled+span{color:var(--muted)}.team-price-add-note{color:var(--muted);grid-column:1/-1;margin:-2px 0 0;font-size:12px}.team-price-empty-state{margin:0}.service-table-wrap{border:1px solid var(--line);border-radius:8px;overflow-x:auto}.service-table{border-collapse:collapse;width:100%;min-width:760px}.service-table th,.service-table td{border-bottom:1px solid var(--line);text-align:left;padding:11px 12px}.service-table th{background:color-mix(in srgb, var(--active-bg) 32%, #fff);color:var(--active-text);text-transform:uppercase;font-size:12px}.service-table tr:last-child td{border-bottom:0}.service-table-note{color:var(--muted);margin-top:3px;font-size:12px;display:block}.service-table-note.good{color:var(--active-text)}.service-table-note.warning{color:#8a5a00}.icon-action-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.icon-action-button:hover{border-color:var(--theme-soft-border)}.icon-action-button.danger:hover{background:#fff4f4;border-color:#e5b8b8}.icon-action-button.danger{color:#c82020;border-color:#f0b4b4}.icon-action-button.danger:disabled{cursor:wait;opacity:.55}.trash-icon{border:2px solid;border-top:0;border-radius:0 0 3px 3px;width:13px;height:14px;display:inline-block;position:relative}.trash-icon:before{content:"";background:currentColor;width:19px;height:2px;position:absolute;top:-5px;left:-4px}.trash-icon:after{content:"";border:2px solid;border-bottom:0;border-radius:3px 3px 0 0;width:4px;height:4px;position:absolute;top:-8px;left:2px}.form-status-message{border:1px solid var(--line);border-radius:7px;margin:0 0 12px;padding:10px 12px}.form-status-message.error{color:#a01818;background:#fff5f5;border-color:#f0b4b4}.inline-checkbox{color:var(--active-text);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}.maintenance-sheet-layout.client-layout,.maintenance-sheet-layout.service-layout,.maintenance-sheet-layout.stylist-layout{grid-template-columns:clamp(220px,20vw,260px) minmax(0,1fr)}.maintenance-sheet-layout .list-control-panel{gap:8px;padding:10px 12px}.maintenance-sheet-layout .client-list-summary,.maintenance-sheet-layout .service-list-summary,.maintenance-sheet-layout .stylist-list-summary{padding:10px 12px}.maintenance-table-header,.maintenance-table-row{align-items:center;gap:10px;display:grid}.maintenance-table-header{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 32%, #fff);color:var(--active-text);letter-spacing:0;text-transform:uppercase;padding:7px 12px;font-size:11px;font-weight:900}.maintenance-table-row.client-row,.maintenance-table-row.service-row,.maintenance-table-row.stylist-row{gap:10px;min-height:46px;padding:7px 12px}.maintenance-table-row{min-width:0}.maintenance-table-row small{color:var(--muted);font-size:11px;line-height:1.2;display:block}.maintenance-table-row .avatar{width:32px;height:32px;font-size:11px}.maintenance-cell,.maintenance-primary-cell,.maintenance-photo-cell,.maintenance-status-cell{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.maintenance-primary-cell{gap:2px;display:grid}.maintenance-photo-cell{align-items:center;display:flex}.maintenance-status-cell{color:var(--muted);justify-self:end;font-size:12px;font-weight:800}.client-table-header,.client-table-row,.service-table-header,.service-table-row,.stylist-table-header,.stylist-table-row{grid-template-columns:minmax(0,1fr)}.service-table-row .service-colour{width:12px;height:28px}.service-table-row>.service-pill,.client-table-row>.data-pill,.stylist-table-row .stylist-row-pills,.stylist-table-row .maintenance-status-cell{justify-self:end}.maintenance-sheet-layout .client-detail,.maintenance-sheet-layout .service-detail,.maintenance-sheet-layout .stylist-detail{gap:12px;padding:12px}.maintenance-sheet-layout .client-detail-heading,.maintenance-sheet-layout .service-detail-heading,.maintenance-sheet-layout .stylist-detail-heading,.maintenance-sheet-layout .client-section,.maintenance-sheet-layout .service-section,.maintenance-sheet-layout .stylist-section{border-radius:6px;padding:12px}.maintenance-sheet-layout .section-heading{margin-bottom:10px}.maintenance-sheet-layout .section-heading h3{font-size:17px}.maintenance-sheet-layout .client-detail-heading h2,.maintenance-sheet-layout .service-detail-heading h2,.maintenance-sheet-layout .stylist-detail-heading h2{font-size:21px}.maintenance-field-grid.client-field-grid,.maintenance-field-grid.service-field-grid,.maintenance-field-grid.stylist-field-grid,.stylist-login-form .maintenance-field-grid.stylist-field-grid{gap:8px}.maintenance-field-grid.client-field-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.maintenance-field-grid.client-field-grid .client-field.span-2{grid-column:span 2}.maintenance-sheet-layout .client-consent-summary,.maintenance-sheet-layout .client-consent-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.maintenance-sheet-layout .client-consent-card header,.maintenance-sheet-layout .client-consent-row,.maintenance-sheet-layout .client-consent-edit-row{flex-wrap:wrap}.maintenance-sheet-layout .client-consent-card header>div,.maintenance-sheet-layout .client-consent-purpose,.maintenance-sheet-layout .client-consent-edit-row>span{flex:120px}.maintenance-sheet-layout .client-field,.maintenance-sheet-layout .service-field,.maintenance-sheet-layout .stylist-field{gap:3px}.maintenance-sheet-layout .client-field span,.maintenance-sheet-layout .service-field span,.maintenance-sheet-layout .stylist-field span{font-size:12px;font-weight:750}.maintenance-sheet-layout .client-search,.maintenance-sheet-layout .client-select{border-radius:4px;width:100%;min-width:0;min-height:38px;padding:8px 10px}.maintenance-field-grid.service-field-grid>.access-toggle{border-radius:4px;align-items:center;height:40px;min-height:40px;padding:8px 10px}.maintenance-field-grid.service-field-grid>.service-default-toggle{align-self:end;height:38px;min-height:38px}.maintenance-field-grid.service-field-grid>.access-toggle input{align-self:center}.maintenance-field-grid.service-field-grid>.access-toggle span,.maintenance-field-grid.service-field-grid>.access-toggle strong{white-space:nowrap;align-content:center;line-height:1.15}.maintenance-field-grid.service-field-grid>.access-toggle span{text-overflow:ellipsis;display:block;overflow:hidden}.service-booking-rules-form{grid-template-columns:auto auto minmax(0,1fr);justify-content:start;gap:12px;display:grid}.service-booking-rules-form .service-rule-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-top:0}.service-booking-rules-form .deposit-rule-fields{grid-column:1/-1;grid-template-columns:repeat(2,minmax(180px,260px));gap:12px;width:100%;display:grid}.service-booking-rules-form .maintenance-save-button{grid-column:1;justify-self:start}.service-booking-rules-form .save-confirmation{grid-column:2;margin-top:0}.service-booking-rules-form .save-form-message{grid-column:1/-1}.maintenance-toggle-grid.stylist-rule-grid,.stylist-login-form .maintenance-toggle-grid.stylist-rule-grid,.maintenance-toggle-grid.service-rule-grid{gap:8px;margin-top:10px}.maintenance-toggle-grid .access-toggle{border:1px solid var(--line);background:#fff;border-radius:6px;min-height:42px;padding:8px 10px}.maintenance-toggle-grid .access-toggle span{align-content:center;line-height:1.15}.maintenance-toggle-grid .access-toggle strong,.maintenance-toggle-grid .access-toggle b{align-self:center}.maintenance-sheet-layout .maintenance-save-button,.maintenance-sheet-layout .stylist-working-save,.maintenance-sheet-layout .service-overrides-save{min-width:112px;min-height:38px;padding:8px 20px}.maintenance-sheet-layout .stylist-photo-grid{grid-template-columns:minmax(220px,.75fr) minmax(260px,1fr)}.maintenance-sheet-layout .stylist-photo-card,.maintenance-sheet-layout .stylist-photo-form{border-radius:6px;padding:10px}.maintenance-sheet-layout .stylist-photo-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.maintenance-sheet-layout .stylist-photo-form .stylist-field,.maintenance-sheet-layout .stylist-photo-form .stylist-photo-message{grid-column:1/-1}.maintenance-sheet-layout .stylist-photo-form .primary-button{justify-self:start}.maintenance-sheet-layout .stylist-photo-preview{flex-basis:68px;width:68px;height:68px}.service-import-notes{gap:10px;display:grid}.service-import-notes p{margin:0}.promotion-module{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 64px);display:grid;overflow:hidden}.promotion-toolbar{background:var(--panel);border-bottom:1px solid var(--line);justify-content:flex-end;align-items:center;gap:18px;min-height:54px;padding:8px 16px;display:flex}.promotion-toolbar h1,.promotion-detail-heading h2{margin:0}.promotion-toolbar h1{font-size:22px}.promotion-layout{grid-template-columns:390px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.promotion-list{background:var(--panel);border-right:1px solid var(--line);min-height:0;overflow-y:auto}.promotion-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:78px;padding:13px 18px;display:grid}.promotion-row.active{background:var(--active-bg);box-shadow:inset 4px 0 0 var(--theme-accent)}.promotion-row.inactive{background:#fbf7ea}.promotion-row span:first-child{gap:4px;min-width:0;display:grid}.promotion-row strong,.promotion-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.promotion-row small,.promotion-detail-heading p,.promotion-field span,.promotion-service-row small,.promotion-services-save-row span{color:var(--muted)}.promotion-detail{align-content:start;gap:16px;min-height:0;padding:18px;display:grid;overflow-y:auto}.promotion-detail-heading{background:var(--panel);border:1px solid var(--line);z-index:8;box-shadow:0 1px 0 var(--line), 0 10px 18px #0822190d;border-radius:8px;justify-content:space-between;gap:18px;padding:16px;display:flex;position:sticky;top:0}.promotion-detail-heading h2{font-size:24px}.promotion-editor-layout{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:16px;display:grid}.promotion-tabs{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:6px;padding:8px;display:grid;position:sticky;top:126px}.promotion-tabs button{color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:6px;padding:10px 12px;font-weight:750}.promotion-tabs button.active,.promotion-tabs button:hover{background:var(--active-bg);color:var(--active-text)}.promotion-panel{min-width:0}.promotion-field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.promotion-field{gap:5px;min-width:0;display:grid}.promotion-wide-field{margin-top:12px}.promotion-wide-field textarea{min-height:92px}.promotion-days-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:14px 0;display:grid}.promotion-days-grid .inline-checkbox{white-space:nowrap;min-width:0}.promotion-service-controls{border:1px solid var(--line);z-index:4;background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid;position:sticky;top:126px}.promotion-service-list{border:1px solid var(--line);border-radius:8px;margin-top:12px;overflow:hidden}.promotion-service-row{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:66px;padding:10px 12px;display:grid}.promotion-service-row:last-child{border-bottom:0}.promotion-service-row.selected{background:var(--active-bg)}.promotion-service-row.changed{outline-offset:-2px;outline:2px solid #f1d35d}.promotion-service-row>span:nth-child(2),.promotion-team-member-main{gap:3px;min-width:0;display:grid}.promotion-service-row strong,.promotion-service-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.promotion-service-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--theme-accent)}.promotion-service-category{border-bottom:1px solid var(--line)}.promotion-service-category-row{background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.promotion-service-category-row.selected{background:var(--active-bg)}.promotion-service-category-row.changed{outline-offset:-2px;outline:2px solid #f1d35d}.promotion-service-category-row button{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;gap:3px;padding:0;display:grid}.promotion-service-category-row small{color:var(--muted)}.promotion-service-category-items .promotion-service-row{padding-left:34px}.promotion-slider-switch{width:46px;height:24px;display:inline-flex;position:relative}.promotion-slider-switch input{cursor:pointer;opacity:0;z-index:2;width:100%;height:100%;position:absolute;inset:0}.promotion-slider-switch>span{cursor:pointer;pointer-events:none;background:#b8c2bd;border-radius:999px;transition:background .15s;position:absolute;inset:0}.promotion-slider-switch>span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px}.promotion-service-state{color:var(--active-text);text-align:right;min-width:28px;font-weight:850}.promotion-services-save-row{align-items:center;gap:12px;margin-top:12px;display:flex}.stylist-module{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 64px);display:grid;overflow:hidden}.stylist-toolbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:18px;min-height:70px;padding:10px 16px;display:flex}.stylist-toolbar h1,.stylist-detail-heading h2{margin:0}.stylist-toolbar h1{font-size:22px}.stylist-toolbar-actions{flex-wrap:wrap;flex:1;gap:10px;min-width:0;margin-left:auto;display:flex}.stylist-toolbar-actions .client-search{flex:2 260px}.stylist-toolbar-actions .client-select{flex:160px;min-width:160px}.stylist-summary-grid{border-bottom:1px solid var(--line);background:#fbfdfc;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 18px;display:grid}.stylist-summary-grid article{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:4px;padding:14px;display:grid}.stylist-summary-grid span,.stylist-list-summary span,.stylist-row small,.stylist-detail-heading p,.stylist-field span,.stylist-note,.stylist-import-notes p,.stylist-device-list span,.stylist-day span,.stylist-exception span{color:var(--muted)}.stylist-summary-grid strong{font-size:24px}.stylist-layout{grid-template-columns:410px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.stylist-list{background:var(--panel);border-right:1px solid var(--line);min-height:0;overflow-y:auto}.stylist-list-summary{border-bottom:1px solid var(--line);gap:3px;padding:16px 18px;display:grid}.stylist-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:82px;padding:13px 18px;display:grid}.stylist-row.active{background:var(--active-bg);box-shadow:inset 4px 0 0 var(--theme-accent)}.stylist-row span:nth-child(2){gap:4px;min-width:0;display:grid}.stylist-row strong,.stylist-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stylist-row-pills{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.maintenance-sheet-layout .stylist-table-header,.maintenance-sheet-layout .stylist-table-row{grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;display:grid}.maintenance-sheet-layout .stylist-table-row{min-height:46px;padding:7px 12px}.maintenance-sheet-layout .stylist-table-row .stylist-row-pills,.maintenance-sheet-layout .stylist-table-row .maintenance-status-cell{justify-self:end}.stylist-detail{align-content:start;gap:16px;min-height:0;padding:18px;display:grid;overflow-y:auto;container-type:inline-size}.stylist-detail-heading,.stylist-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;container-type:inline-size}.stylist-detail-heading{z-index:8;box-shadow:0 1px 0 var(--line), 0 10px 18px #0822190d;justify-content:space-between;gap:18px;padding:16px;display:flex;position:sticky;top:0}.stylist-detail-heading h2{font-size:24px}.stylist-section{padding:18px}.team-services-section{gap:12px;display:grid}.section-helper{color:var(--muted);margin:-6px 0 0;font-size:13px}.team-service-categories{gap:8px;display:grid}.team-service-save-form{gap:12px;display:grid}.team-service-category{border:1px solid var(--line);border-radius:8px;overflow:hidden}.team-service-category>summary{cursor:pointer;background:#f2f8f5;justify-content:space-between;align-items:center;min-height:44px;padding:9px 12px;list-style:none;display:flex}.team-service-category>summary::-webkit-details-marker{display:none}.team-service-category>summary:before{content:"+";flex:0 0 20px;font-size:18px;font-weight:700;line-height:1}.team-service-category[open]>summary:before{content:"−"}.team-service-category>summary strong{flex:1}.team-service-category>summary span{color:var(--muted);font-size:12px}.team-service-column-headings,.team-service-row{grid-template-columns:minmax(220px,1fr) 110px 130px 140px 110px;gap:10px;display:grid}.team-service-column-headings{border-top:1px solid var(--line);color:var(--muted);text-transform:uppercase;background:#fafcfb;padding:7px 12px;font-size:11px;font-weight:700}.team-service-row{align-items:center;padding:10px 12px}.team-service-row+.team-service-row{border-top:1px solid var(--line)}.team-service-row small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.team-service-value{gap:3px;display:grid}.team-service-value>span:first-child{display:none}.team-service-input-prefix,.team-service-input-suffix{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:flex}.team-service-value input{width:88px;min-width:0}.compact-toggle{min-height:42px;padding:8px 10px}.compact-toggle small{display:none}.switch-only-toggle{background:0 0;border-color:#0000;justify-content:center;min-height:36px;padding:6px;display:flex}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@container (max-width:720px){.team-service-column-headings{display:none}.team-service-row{grid-template-columns:1fr 1fr}.team-service-name{grid-column:1/-1}.team-service-value>span:first-child{display:block}}.stylist-field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stylist-derived-identity{color:var(--muted);background:#f2f8f5;border:1px solid #d7e6dd;border-radius:4px;grid-column:1/-1;align-items:center;gap:5px;min-height:32px;margin:0;padding:6px 10px;font-size:12px;display:flex}.stylist-derived-identity strong{color:var(--ink)}.stylist-field{gap:5px;min-width:0;display:grid}.self-employed-receipt-fields{background:var(--wash);border:1px solid var(--line);border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:8px;padding:10px;display:grid}.self-employed-receipt-fields>.stylist-field{align-content:start;align-self:start}.self-employed-receipt-heading{flex-direction:column;grid-column:1/-1;display:flex}.self-employed-receipt-heading span{color:var(--muted);font-size:12px}.self-employed-address-field{grid-column:span 2}.self-employed-address-field textarea{resize:vertical;min-height:76px}.stylist-field strong{overflow-wrap:anywhere}.stylist-detail .client-search,.stylist-detail .client-select{width:100%;min-width:0}.stylist-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.stylist-rule-grid+.primary-button{margin-top:14px}.stylist-rule-grid .access-toggle{align-items:start;min-height:68px}.stylist-rule-grid .access-toggle input[type=checkbox]{margin-top:2px}.stylist-setup-form,.stylist-working-form{grid-template-columns:auto auto minmax(0,1fr);justify-content:start;align-items:center;gap:12px;display:grid}.stylist-setup-form .stylist-field-grid,.stylist-setup-form .stylist-rule-grid,.stylist-working-form .stylist-days-grid{grid-column:1/-1;width:100%}.stylist-setup-form>.stylist-editable-fieldset,.stylist-setup-form>.tracked-save-inline-actions{grid-column:1/-1;justify-self:start;width:100%}.stylist-setup-form>.primary-button,.stylist-working-save{grid-column:1;justify-self:start;min-width:128px;padding-inline:28px}.stylist-setup-form>.primary-button{margin-top:0}.stylist-setup-form .save-confirmation,.stylist-working-form .save-confirmation{grid-column:2;margin-top:0}.stylist-setup-form .save-form-message,.stylist-working-form .save-form-message{grid-column:1/-1}.stylist-photo-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;display:grid}.stylist-photo-card,.stylist-photo-form{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;padding:12px}.stylist-photo-card{align-items:center;gap:14px;min-width:0;display:flex}.stylist-photo-card div{gap:5px;min-width:0;display:grid}.stylist-photo-card span{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.stylist-photo-preview{color:#102219;object-fit:cover;background:linear-gradient(135deg,#ffcc8f,#b7f3ff);border:1px solid #cae4d4;border-radius:50%;flex:0 0 88px;place-items:center;width:88px;height:88px;font-size:20px;font-weight:900;display:grid}.stylist-photo-form{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;display:grid}.stylist-photo-form .primary-button{justify-self:start;min-height:42px}.stylist-photo-form input[type=file]{width:100%;min-width:0}.stylist-photo-form .primary-button:disabled{cursor:not-allowed;opacity:.58}.stylist-photo-message{color:#805b00;grid-column:1/-1;margin:0;font-size:13px;line-height:1.35}.stylist-photo-empty{margin:0}.stylist-days-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.stylist-days-grid.editable{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.stylist-day{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;align-content:start;gap:8px;min-width:0;min-height:0;padding:10px 11px;display:grid}.stylist-day label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.stylist-day .client-search{box-sizing:border-box;width:100%;min-width:0;padding:8px 9px}.stylist-day-toggle{color:#102018;grid-template-columns:auto 1fr;align-items:center}.stylist-day-toggle input{width:16px;height:16px}.stylist-day.working{background:var(--active-bg);border-color:var(--theme-soft-border)}.stylist-working-save{margin-top:14px}.stylist-working-form .stylist-working-save{margin-top:0}.stylist-login-form>.primary-button{width:fit-content}.stylist-login-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.stylist-login-actions span{color:var(--muted);font-size:13px;line-height:1.4}.stylist-section-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;display:grid}.stylist-exception-list,.stylist-import-notes{gap:10px;display:grid}.stylist-exception{border:1px solid var(--line);border-radius:8px;gap:4px;padding:12px;display:grid}.stylist-roster-form{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin-bottom:14px;display:grid}.stylist-roster-form .primary-button{align-self:end;width:fit-content}.stylist-roster-form .roster-label-field{grid-column:1/-1}.compact-toggle{align-content:center}.roster-exception{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center}.roster-exception>div{gap:3px;display:grid}.inline-danger-button{color:#9f2f2f;cursor:pointer;background:#fff7f7;border:1px solid #f1b5b5;border-radius:8px;padding:9px 12px;font-weight:850}.stylist-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stylist-component-permission-form{gap:12px;display:grid}.stylist-editable-fieldset{border:0;gap:12px;min-inline-size:0;margin:0;padding:0;display:grid}.stylist-editable-fieldset:disabled{opacity:.68}.stylist-protected-record-notice{margin:0 0 12px}.role-module-default-form,.role-module-default-list,.role-module-default-card{gap:12px;display:grid}.role-module-default-card{border:1px solid var(--line);border-radius:10px;padding:14px}.role-module-default-card h4,.role-module-default-card p{margin:0}.role-module-default-card p{color:var(--muted);margin-top:3px;font-size:.82rem}.stylist-device-list{border:1px solid var(--line);border-radius:8px;gap:4px;margin-top:12px;padding:12px;display:grid}.stylist-note{margin:12px 0 0}.preferences-module{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 64px);display:grid;overflow:hidden}.preferences-toolbar{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:14px 18px;display:flex}.preferences-toolbar h1,.preferences-hero h2{margin:0}.preferences-toolbar h1{font-size:22px}.preferences-layout{grid-template-columns:280px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.preferences-menu{background:var(--panel);border-right:1px solid var(--line);align-content:start;gap:8px;min-height:0;padding:16px;display:grid;overflow-y:auto}.preferences-menu a,.preferences-menu button{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#fbfdfc;border-radius:8px;padding:10px 13px;text-decoration:none;display:block;overflow:hidden}.preferences-menu a.active,.preferences-menu button.active{border-color:var(--theme-accent);background:var(--active-bg);color:var(--active-text);box-shadow:inset 4px 0 0 var(--theme-accent)}.preferences-menu button:hover{border-color:color-mix(in srgb, var(--theme-accent) 45%, var(--line))}.preferences-menu small,.preferences-hero p,.preferences-contact-grid,.preference-planning-grid p,.payment-type-context,.empty-copy{color:var(--muted)}.preferences-detail{align-content:start;gap:16px;min-height:0;padding:18px;display:grid;overflow-y:auto}.preferences-detail.focused{gap:14px}.preferences-focus-strip{z-index:10;border:1px solid var(--theme-accent);background:var(--active-bg);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex;position:sticky;top:0;box-shadow:0 10px 18px #0822190f}.preferences-focus-strip button{border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;font:inherit;border-radius:8px;padding:8px 11px;font-weight:800}.preferences-hero,.preferences-section{background:var(--panel);border:1px solid var(--line);border-radius:8px}.preferences-hero{z-index:8;box-shadow:0 1px 0 var(--line), 0 10px 18px #0822190d;grid-template-columns:minmax(0,1fr) minmax(320px,.65fr);gap:20px;padding:20px;display:grid;position:sticky;top:0}.preferences-hero h2{font-size:24px}.preferences-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px;display:grid}.preferences-contact-grid span{border:1px solid var(--line);border-radius:8px;gap:5px;padding:11px;display:grid}.preferences-contact-grid strong{color:var(--ink);overflow-wrap:anywhere}.preferences-section{padding:18px}.preference-form{gap:14px;display:grid}.budget-access-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.budget-access-row{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:62px;padding:10px 12px;display:flex}.budget-access-row>div{min-width:0;display:grid}.budget-access-row>div span{color:var(--muted);font-size:12px}.budget-access-row.inactive,.budget-access-row.disabled{opacity:.72}.budget-access-row.owner{background:var(--wash)}@media (max-width:760px){.budget-access-list{grid-template-columns:1fr}}.preferences-module .tracked-save-inline-actions>.primary-button{flex:none;min-width:112px;padding-inline:18px}.preferences-module .tracked-save-inline-actions .save-confirmation{margin-top:0}.preference-field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.preference-field{color:var(--muted);gap:5px;font-size:12px;font-weight:750;display:grid}.preference-field.span-2,.preference-toggle.span-2{grid-column:span 2}.preference-field input,.preference-field select,.preference-field textarea{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:9px 10px}.preference-field select{min-height:40px}.preference-field textarea{resize:vertical}.message-template-form{gap:14px;display:grid}.message-template-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;display:grid}.message-template-card{border:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 18%, #fff);border-radius:8px;gap:12px;padding:12px;display:grid}.message-template-card header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.message-template-card header div{gap:3px;display:grid}.message-template-card header span{color:var(--muted);font-size:12px;font-weight:850}.message-template-card header>span{background:var(--active-bg);color:var(--active-text);white-space:nowrap;border-radius:999px;padding:6px 8px}.preference-field.colour-field input{min-height:42px;padding:4px}.preference-toggle{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:8px 10px;font-size:13px;font-weight:850;display:flex}.preference-toggle input{width:16px;height:16px;accent-color:var(--theme-accent)}.preference-check{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:flex-start;gap:9px;min-height:46px;padding:10px 11px;font-size:13px;font-weight:750;line-height:1.4;display:flex}.preference-check input{accent-color:var(--theme-accent);flex:none;width:16px;height:16px;margin-top:1px}.form-callout.warning{color:#6f4910;background:#fff9eb;border:1px solid #f3c261;border-radius:8px;margin:0;padding:10px 11px;font-size:13px;font-weight:700;line-height:1.45}.sms-reminder-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.sms-reminder-summary-grid article{border:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 18%, #fff);border-radius:8px;gap:5px;min-height:116px;padding:12px;display:grid}.sms-reminder-summary-grid span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:850}.sms-reminder-summary-grid strong{color:var(--ink);font-size:18px}.sms-reminder-summary-grid small{color:var(--muted);line-height:1.35}.sms-stylist-reminder-list{gap:10px;display:grid}.sms-stylist-row{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(150px,auto) minmax(220px,1fr) minmax(86px,auto) minmax(86px,auto);align-items:center;gap:12px;padding:12px;display:grid}.sms-stylist-row.inactive{background:#f7f2f2}.sms-stylist-row>span{gap:3px;display:grid}.sms-stylist-row small,.sms-stylist-count small{color:var(--muted)}.sms-stylist-count{text-align:right;justify-items:end}.sms-stylist-count strong{font-size:18px}.preference-filter-toggle{border:1px solid var(--line);width:fit-content;color:var(--ink);background:#fbfdfc;border-radius:8px;align-items:center;gap:8px;padding:9px 11px;font-size:13px;font-weight:850;display:flex}.preference-filter-toggle input{width:16px;height:16px;accent-color:var(--theme-accent)}.opening-hours-form{gap:14px;display:grid}.opening-hours-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.opening-day-card{border:1px solid color-mix(in srgb, var(--theme-accent) 22%, var(--line));background:var(--active-bg);border-radius:8px;gap:8px;padding:10px 11px;display:grid}.opening-day-card.closed{background:#fbfdfc}.opening-day-card label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.opening-day-card input[type=time]{border:1px solid var(--line);border-radius:8px;width:100%;padding:8px 9px}.opening-day-card input:disabled{color:#8a9a92;background:#f0f3f1}.opening-day-toggle{grid-template-columns:auto 1fr auto;align-items:center;color:#102018!important}.opening-day-toggle input{width:16px;height:16px}.preference-planning-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.preference-planning-grid article{border:1px solid var(--line);border-radius:8px;gap:6px;padding:13px;display:grid}.preference-planning-grid p{margin:0}.vat-payment-list{gap:10px;display:grid}.vat-payment-row{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(180px,.75fr) minmax(220px,1fr) repeat(3,minmax(120px,auto));align-items:end;gap:10px;padding:12px;display:grid}.vat-payment-row.inactive{background:#f7f2f2}.payment-type-context{gap:3px;font-size:12px;line-height:1.35;display:grid}.payment-type-context strong{color:var(--theme-accent);text-transform:uppercase}.in-salon-module{background:var(--wash);grid-template-rows:auto minmax(0,1fr);min-height:calc(100dvh - 56px);display:grid;overflow:hidden}.in-salon-header{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 18px;display:flex}.in-salon-header h1{margin:4px 0 6px;font-size:24px}.in-salon-header p{color:var(--muted);margin:0}.in-salon-search{min-width:min(360px,100%);color:var(--muted);gap:6px;font-size:12px;font-weight:850;display:grid}.in-salon-search input{border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;min-height:42px;padding:9px 11px}.in-salon-layout{grid-template-columns:minmax(620px,1fr) minmax(330px,.42fr);gap:14px;min-height:0;padding:14px;display:grid;overflow:hidden}.in-salon-table,.in-salon-receipt{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0}.in-salon-table{overflow:hidden}.in-salon-list-header,.in-salon-row{grid-template-columns:minmax(190px,.9fr) minmax(210px,1fr) minmax(160px,.7fr) minmax(90px,.4fr) minmax(250px,auto);align-items:center;gap:10px;display:grid}.in-salon-list-header{border-bottom:1px solid var(--line);color:var(--theme-accent);text-transform:uppercase;background:#fbfdfc;padding:11px 12px;font-size:12px;font-weight:900}.in-salon-list{max-height:calc(100dvh - 190px);overflow-y:auto}.in-salon-row{border-bottom:1px solid var(--line);padding:0 12px}.in-salon-row.selected{background:var(--active-bg);box-shadow:inset 4px 0 0 var(--theme-accent)}.in-salon-row-main{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;grid-column:1/5;grid-template-columns:minmax(190px,.9fr) minmax(210px,1fr) minmax(160px,.7fr) minmax(90px,.4fr);gap:10px;min-height:54px;padding:9px 0;display:grid}.in-salon-row-main span,.in-salon-row-main strong{text-overflow:ellipsis;white-space:nowrap;align-self:center;min-width:0;overflow:hidden}.in-salon-row-main span{color:var(--muted)}.in-salon-options{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.in-salon-status{white-space:nowrap;border-radius:999px;padding:7px 9px;font-size:12px;font-weight:850}.in-salon-status.arrived{color:#805b00;background:#fff2c7}.in-salon-status.working{background:var(--active-bg);color:var(--active-text)}.in-salon-empty{gap:5px;padding:18px;display:grid}.bill-finder-header .data-pill{flex:none;align-self:flex-start;width:auto;min-height:26px;display:inline-flex}.in-salon-empty p{color:var(--muted);margin:0}.in-salon-receipt{grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:14px;display:grid}.in-salon-receipt pre{border:1px solid var(--line);color:#101a16;white-space:pre-wrap;background:#fff;border-radius:8px;min-height:0;margin:0;padding:14px;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;overflow:auto}.in-salon-receipt-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.theme-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:920px;display:grid}.brand-preview{border:2px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 12px;max-width:520px;padding:14px;display:grid}.brand-preview span{color:#06351d;border-radius:999px;place-items:center;width:42px;height:42px;font-weight:950;display:inline-grid}.brand-preview small{color:var(--muted);grid-column:2}.shell-theme-preview{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;align-content:center;gap:8px;padding:14px;display:grid}.shell-theme-preview div{align-items:center;gap:10px;display:flex}.shell-theme-preview div span{border:1px solid var(--line);border-radius:999px;width:28px;height:28px;display:inline-block}.shell-theme-preview p,.shell-theme-preview small{color:var(--muted);margin:0}.team-category-form{gap:14px;display:grid}.team-category-list{gap:10px;display:grid}.team-category-row{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:12px;padding:12px;display:grid}.team-category-row.inactive{background:#f7f2f2}.team-category-row label,.team-category-new{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.team-category-row input[type=text],.team-category-new input{border:1px solid var(--line);border-radius:8px;padding:9px 10px}.team-category-active{flex-direction:row;align-items:center;min-height:40px;color:#102018!important;display:flex!important}.team-category-active input{width:16px;height:16px;accent-color:var(--theme-accent)}.team-category-count{color:var(--muted);text-align:right;min-width:130px;font-size:13px}.team-category-new{max-width:420px}.service-group-form{gap:14px;display:grid}.service-group-panels{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.service-group-panel{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:12px;padding:14px;display:grid}.service-group-panel h4,.service-group-panel p{margin:0}.service-group-panel p{color:var(--muted)}.service-group-list,.service-category-list{gap:10px;display:grid}.service-group-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.service-group-row,.service-category-row{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:end;gap:10px;padding:12px;display:grid}.service-group-row{grid-template-columns:minmax(0,1fr) auto minmax(0,max-content)}.service-group-row .team-category-count{white-space:nowrap;min-width:0}.service-category-row{grid-template-columns:minmax(190px,1.2fr) minmax(160px,1fr) 76px auto minmax(150px,auto) auto}.service-category-row>*{min-width:0}.service-group-row.inactive,.service-category-row.inactive{background:#f7f2f2}.service-group-row label,.service-category-row label,.service-category-new label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.service-group-row input[type=text],.service-category-row input[type=text],.service-category-row select,.service-category-new input[type=text],.service-category-new select{border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;padding:9px 10px}.service-category-row input[type=color],.service-category-new input[type=color]{border:1px solid var(--line);border-radius:8px;min-width:54px;height:40px;padding:4px}.service-category-new{border:1px dashed #10a36d73;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(160px,.75fr) 80px minmax(150px,auto);align-items:end;gap:10px;padding:12px;display:grid}.service-category-override{white-space:nowrap;align-self:end;align-items:center;min-height:40px;color:var(--ink)!important;gap:7px!important;display:flex!important}.service-category-override input{width:18px;height:18px;accent-color:var(--theme-accent)}.appointment-order-form{gap:14px;display:grid}.appointment-order-layout{grid-template-columns:minmax(260px,.55fr) minmax(520px,1.45fr);align-items:start;gap:14px;display:grid}.appointment-order-panel{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:12px;padding:14px;display:grid}.appointment-order-panel h4{margin:0}.appointment-order-panel-heading,.appointment-order-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.appointment-order-toolbar{justify-content:flex-start}.appointment-order-filter{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;background:#fff;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:850}.appointment-order-filter.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.appointment-category-order-list,.appointment-service-order-list,.appointment-service-order-group{gap:8px;display:grid}.appointment-service-order-group{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.appointment-service-order-group header{color:var(--theme-accent);justify-content:space-between;align-items:center;gap:10px;padding-bottom:6px;display:flex}.appointment-service-order-group header span{background:var(--active-bg);color:var(--active-text);border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900}.appointment-category-order-row,.appointment-service-order-row{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:10px;display:grid}.appointment-category-order-row[hidden],.appointment-service-order-group[hidden],.appointment-service-order-row[hidden]{display:none!important}.appointment-category-order-row,.appointment-service-order-row{grid-template-columns:86px minmax(0,1fr)}.appointment-category-order-row.inactive,.appointment-service-order-row.inactive{background:#f7f2f2}.appointment-category-order-row.selected{border-color:var(--theme-soft-border);box-shadow:inset 4px 0 0 var(--theme-accent)}.appointment-category-order-row label,.appointment-service-order-row label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.appointment-category-order-row input[type=number],.appointment-service-order-row input[type=number]{border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;width:100%;min-width:0;padding:8px 9px}.appointment-category-order-row span,.appointment-service-order-row span{gap:2px;min-width:0;display:grid}.appointment-category-filter-button{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;gap:2px;min-width:0;padding:0;display:grid}.appointment-category-order-row strong,.appointment-service-order-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appointment-category-order-row small,.appointment-category-filter-button small,.appointment-service-order-row small{color:var(--muted)}.stylist-import-notes{margin-bottom:14px}.stylist-import-notes p{margin:0}.staff-login-page{background:linear-gradient(90deg,#80e5a524,#0000 42%),#f7fbf8;grid-template-columns:minmax(260px,.8fr) minmax(320px,460px);align-items:center;gap:48px;min-height:100dvh;padding:48px clamp(20px,6vw,96px);display:grid}.staff-login-page--purley{--theme-accent:#8f7b5f;--theme-soft-border:#ded0bd;--active-bg:#f2eadf;--active-text:#4e3f2f;--line:#ded5c8;--muted:#6b6257;--shadow:0 28px 80px #4e3f2f29;color:#231f1a;background:linear-gradient(90deg,#e4d6c3c7,#fcf9f4c7 46%,#0000),#fbf6ee}.staff-login-page--purley .eyebrow,.staff-login-page--purley .staff-login-code-card label,.staff-login-page--purley .staff-login-form label,.staff-login-page--purley .staff-pin-form label,.staff-login-page--purley .staff-reset-form label{color:#5f4d39}.staff-login-page--purley .staff-login-panel{background:#fffdf9;border-color:#ded5c8}.staff-login-page--purley .primary-button{color:#fffaf2;background:#8f7b5f}.staff-login-page--purley .primary-button:hover:not(:disabled){background:#79674f}.staff-login-page--purley .staff-login-message.neutral{color:#5f4d39;background:#f2eadf}.staff-login-intro{gap:12px;max-width:560px;display:grid}.staff-login-intro h1{margin:0;font-size:clamp(38px,6vw,72px);line-height:.95}.staff-login-intro p{color:var(--muted);margin:0;font-size:18px;line-height:1.45}.staff-login-signed-out{border:1px solid var(--theme-soft-border);background:var(--active-bg);border-radius:8px;width:fit-content;padding:10px 12px;color:var(--active-text)!important;font-size:15px!important}.staff-login-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:14px;padding:18px;display:grid}.staff-login-code-card,.staff-login-form,.staff-pin-form,.staff-reset-form{gap:11px;display:grid}.staff-login-code-card label,.staff-login-form label,.staff-pin-form label,.staff-reset-form label{color:#355345;gap:5px;font-size:13px;font-weight:800;display:grid}.staff-login-code-card input,.staff-login-form input,.staff-pin-form input,.staff-reset-form input{border:1px solid var(--line);border-radius:8px;min-height:44px;padding:10px 12px}.staff-login-form-heading{gap:3px;display:grid}.staff-login-form-heading strong,.staff-reset-form>strong{font-size:17px}.staff-login-form-heading span{color:var(--muted);font-size:13px;line-height:1.35}.staff-login-check{grid-template-columns:auto minmax(0,1fr);align-items:center}.staff-login-check input{width:18px;height:18px;min-height:0;accent-color:var(--theme-accent)}.staff-pin-form,.staff-reset-form{border-top:1px solid var(--line);padding-top:14px}.staff-reset-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.staff-login-message{border-radius:8px;margin:0;padding:9px 10px}.staff-login-message.good{background:var(--active-bg);color:var(--active-text)}.staff-login-message.warning{color:#805b00;background:#fff2c7}.staff-login-message.neutral{color:#405d4f;background:#eef6f2}.staff-login-return-link{justify-content:center;text-decoration:none;display:inline-flex}.access-limited-panel{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:760px;margin:24px;padding:28px}.access-limited-panel h1{margin:0 0 12px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.05}.access-limited-panel p{color:var(--muted);margin:0;font-size:1.05rem;line-height:1.45}.stylist-empty-state{margin:16px}.dashboard-shell{padding:22px}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.dashboard-heading h1{letter-spacing:0;margin:4px 0 6px;font-size:24px}.dashboard-heading p{color:var(--muted);margin:0}.dashboard-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.dashboard-week-form{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:end;gap:8px;padding:8px;display:flex}.dashboard-week-form label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.dashboard-week-form input,.dashboard-week-form select{border:1px solid var(--line);color:#102018;background:#fff;border-radius:8px;min-width:148px;padding:8px 10px}.dashboard-week-form select{min-width:116px}.dashboard-mode-secondary{opacity:.62}.dashboard-week-form button{background:var(--theme-accent);color:#fff;border:0;border-radius:8px;padding:9px 12px;font-weight:850}.dashboard-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.dashboard-summary-grid>div{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px 16px}.dashboard-summary-grid span{color:var(--muted);margin-bottom:8px;display:block}.dashboard-summary-grid strong{font-size:24px;display:block}.self-employed-shell{gap:16px;padding:20px;display:grid}.self-employed-tabs{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.self-employed-tabs a{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;align-items:center;min-height:38px;padding:8px 14px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.self-employed-tabs a.active,.self-employed-tabs a:hover{background:var(--ink);border-color:var(--ink);color:#fff}.self-employed-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:16px;display:grid}.self-employed-panel .section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.self-employed-table-form{gap:12px;display:grid}.self-employed-chair-days-form{justify-items:start;gap:10px;display:grid}.self-employed-muted{color:var(--muted);font-size:13px}.self-employed-defaults,.self-employed-bulk-actions,.self-employed-record-toggles{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.self-employed-defaults label,.self-employed-record-toggles label{color:var(--muted);text-transform:uppercase;gap:4px;font-size:12px;font-weight:800;display:grid}.self-employed-record-toggles label{border:1px solid var(--line);border-radius:999px;align-items:center;min-height:36px;padding:7px 12px;display:flex}.self-employed-record-toggles input{accent-color:var(--theme-accent)}.self-employed-table-wrap{overflow-x:auto}.self-employed-table td{vertical-align:top;padding-top:10px;padding-bottom:10px}.self-employed-table th{white-space:nowrap}.self-employed-table td:first-child,.self-employed-table th:first-child{width:22%}.self-employed-table td:not(:first-child),.self-employed-table th:not(:first-child){width:19.5%}.self-employed-table td small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.self-employed-table .client-select,.self-employed-table .client-search,.self-employed-summary-filters .client-select,.self-employed-summary-filters input{width:100%;max-width:170px}.self-employed-table .numeric-input{text-align:right;margin-left:auto}.self-employed-table select.client-select,.self-employed-table input.client-search{min-height:36px;padding-top:7px;padding-bottom:7px}.self-employed-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.self-employed-recharge-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.self-employed-summary-filters{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:12px;display:flex}.self-employed-summary-filters label{color:var(--muted);text-transform:uppercase;gap:4px;font-size:12px;font-weight:800;display:grid}.self-employed-dashboard-filters{grid-template-columns:minmax(180px,220px) 140px 112px;align-items:end;gap:10px;display:grid}.self-employed-dashboard-filters label{min-width:0}.self-employed-dashboard-filters .client-select,.self-employed-dashboard-filters input,.self-employed-dashboard-filters .maintenance-save-button{min-height:42px}.self-employed-dashboard-filters .maintenance-save-button{width:100%}.self-employed-toggle{border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex}.self-employed-toggle button{color:var(--muted);background:0 0;border:0;border-radius:999px;min-height:30px;padding:5px 10px;font-weight:800}.self-employed-toggle button.active{background:var(--ink);color:#fff}.self-employed-action-stack{flex-wrap:wrap;gap:6px;display:flex}.self-employed-summary-table{min-width:1120px}.self-employed-summary-table td:first-child,.self-employed-summary-table th:first-child{width:32%}.self-employed-summary-table td:not(:first-child),.self-employed-summary-table th:not(:first-child){width:9.71%}.self-employed-summary-table tbody>tr:not(.self-employed-detail-row)>td.self-employed-money-cell{vertical-align:bottom;padding-bottom:18px}.self-employed-money-cell strong{line-height:32px;display:inline-block}.self-employed-stylist-main{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;display:grid}.self-employed-expand-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;margin-top:-1px;font-size:13px;font-weight:900;display:inline-flex}.self-employed-stylist-chair{color:var(--muted);text-transform:uppercase;align-items:center;gap:14px;margin-top:6px;font-size:12px;font-weight:800;display:flex}.self-employed-stylist-chair label{display:inline-flex}.self-employed-summary-table .self-employed-chair-days-input{border:1px solid var(--line);text-align:right;border-radius:8px;flex:0 0 64px;width:64px;min-width:64px;max-width:64px;min-height:32px;padding:5px 6px}.self-employed-product-setup-table td:first-child,.self-employed-product-setup-table th:first-child{width:24%}.self-employed-product-setup-table td:nth-child(2),.self-employed-product-setup-table th:nth-child(2){width:48%}.self-employed-product-setup-table td:nth-child(3),.self-employed-product-setup-table th:nth-child(3){width:28%}.self-employed-percentage-input{justify-content:flex-end;align-items:center;gap:6px;display:flex}.self-employed-percentage-input input[readonly]{background:var(--surface-muted,#f3f6f3);color:var(--muted)}.self-employed-product-example{margin:0}.self-employed-summary-table th:nth-child(2),.self-employed-summary-table td:nth-child(2){padding-left:18px}.self-employed-detail-row>td{background:#f8fbf8;padding:12px 14px 16px}.self-employed-breakdowns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.self-employed-breakdowns h4{margin:0 0 8px;font-size:13px}.self-employed-breakdowns table{border-collapse:collapse;width:100%}.self-employed-breakdowns th,.self-employed-breakdowns td{border-bottom:1px solid var(--line);padding:6px 4px;font-size:12px}.self-employed-breakdowns th{color:var(--muted);text-align:left;font-weight:900}.self-employed-breakdowns p{color:var(--muted);margin:0;font-size:13px}.self-employed-clients-table td:first-child,.self-employed-clients-table th:first-child{width:34%}.self-employed-clients-table td:not(:first-child),.self-employed-clients-table th:not(:first-child){width:16.5%}.self-employed-client-detail-table{border-collapse:collapse;width:100%}.self-employed-client-detail-table th,.self-employed-client-detail-table td{border-bottom:1px solid var(--line);padding:7px 6px;font-size:13px}.self-employed-client-detail-table th{color:var(--muted);text-align:left;font-size:12px;font-weight:900}.self-employed-dashboard .dashboard-summary-grid>div small{color:var(--muted);margin-top:6px;font-size:12px;display:block}.self-employed-dashboard .self-employed-summary-card{flex-direction:column;min-height:132px;display:flex}.self-employed-dashboard .self-employed-summary-card>span{min-height:32px;line-height:1.25}.self-employed-dashboard .self-employed-summary-card>strong{font-variant-numeric:tabular-nums;line-height:1.1}.self-employed-dashboard .self-employed-summary-card>small:last-child{margin-top:auto}.self-employed-dashboard-breakdowns{gap:10px;display:grid}.self-employed-dashboard-breakdowns details{border:1px solid var(--line);border-radius:8px;overflow:hidden}.self-employed-dashboard-breakdowns summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:flex}.self-employed-dashboard-breakdowns summary::-webkit-details-marker{display:none}.self-employed-dashboard-breakdowns summary:before{border:1px solid var(--line);content:">";border-radius:999px;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:inline-flex}.self-employed-dashboard-breakdowns details[open] summary:before{content:"v"}.self-employed-dashboard-breakdowns summary>span{flex:1;gap:2px;display:grid}.self-employed-dashboard-breakdowns summary small{color:var(--muted);font-size:13px;font-weight:500}.self-employed-dashboard-breakdowns details>p,.self-employed-dashboard-breakdowns details>.self-employed-table-wrap{border-top:1px solid var(--line)}.self-employed-dashboard-breakdowns details>p{color:var(--muted);margin:0;padding:12px 14px}.self-employed-dashboard-breakdowns .self-employed-client-detail-table th:first-child,.self-employed-dashboard-breakdowns .self-employed-client-detail-table td:first-child{padding-left:14px}.self-employed-dashboard-breakdowns .self-employed-client-detail-table th:last-child,.self-employed-dashboard-breakdowns .self-employed-client-detail-table td:last-child{padding-right:14px}.self-employed-action-stack .maintenance-save-button{min-height:32px;padding:6px 10px}.self-employed-chair-rent-flags{border-top:1px solid var(--line);gap:12px;margin-top:4px;padding-top:14px;display:grid}.self-employed-chair-rent-flags .section-heading.compact h3{margin:0;font-size:18px}.self-employed-flag-month{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;display:flex}.self-employed-flag-month label{color:var(--muted);text-transform:uppercase;gap:4px;font-size:12px;font-weight:800;display:grid}.self-employed-flag-month input{max-width:150px}.self-employed-flag-month .button-secondary{min-height:36px}.self-employed-flag-form{gap:12px;max-width:760px;display:grid}.self-employed-flag-form label,.self-employed-flag-group label{color:var(--muted);text-transform:uppercase;gap:4px;font-size:12px;font-weight:800;display:grid}.self-employed-flag-group{align-items:end;gap:12px;min-width:0;display:grid}.self-employed-flag-dates{grid-template-columns:repeat(2,150px)}.self-employed-flag-rule{grid-template-columns:minmax(280px,1fr) 150px 150px}.self-employed-flag-save-row{grid-template-columns:minmax(280px,1fr) auto}.self-employed-flag-group .client-search,.self-employed-flag-group .client-select{width:100%;min-width:0}.self-employed-flag-save-row>.maintenance-save-button{align-self:end;min-height:38px;margin-top:0}.self-employed-flag-list{gap:8px;display:grid}.self-employed-flag-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:150px 1fr 150px 1.2fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.self-employed-flag-row span,.self-employed-flag-row small{color:var(--muted)}.self-employed-flag-row .button-secondary,.self-employed-flag-month .button-secondary{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:34px;padding:7px 10px;font-weight:800}.self-employed-saved{border-top:1px solid var(--line);gap:12px;padding-top:12px;display:grid}.self-employed-saved summary{border:1px solid var(--line);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;list-style:none;display:flex}.self-employed-saved summary::-webkit-details-marker{display:none}.self-employed-saved summary:before{border:1px solid var(--line);content:">";border-radius:999px;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:inline-flex}.self-employed-saved[open] summary:before{content:"v"}.self-employed-saved summary>span{flex:1;gap:2px;display:grid}.self-employed-saved summary small{color:var(--muted);font-size:13px;font-weight:500}.self-employed-saved-list{gap:8px;display:grid}.self-employed-saved-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr .7fr 1.2fr .6fr;align-items:center;gap:12px;padding:12px;display:grid}.self-employed-saved-row span{color:var(--muted);font-size:14px}@media (max-width:980px){.self-employed-summary-grid,.self-employed-recharge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.self-employed-breakdowns{grid-template-columns:1fr}.self-employed-dashboard-filters{grid-template-columns:minmax(170px,1fr) 140px 112px;justify-content:stretch;width:100%}.self-employed-flag-form{max-width:none}.self-employed-flag-dates,.self-employed-flag-rule,.self-employed-flag-save-row,.self-employed-flag-row{grid-template-columns:1fr 1fr}.self-employed-flag-rule label:first-child,.self-employed-flag-row small,.self-employed-flag-row form{grid-column:1/-1}.self-employed-flag-save-row>.maintenance-save-button{justify-self:start}}@media (max-width:640px){.self-employed-flag-dates,.self-employed-flag-rule,.self-employed-flag-save-row,.self-employed-dashboard-filters{grid-template-columns:1fr}.self-employed-flag-rule label:first-child{grid-column:auto}}.dashboard-note{color:#765600;background:#fff8e2;border:1px solid #f1cf88;border-radius:8px;margin:0 0 14px;padding:12px 14px}.dashboard-table-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.dashboard-table-meta{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.dashboard-table-meta span{color:var(--muted);font-size:13px}.dashboard-table-controls{justify-content:flex-start}.dashboard-table-controls>div{gap:3px;margin-right:auto;display:grid}.dashboard-category-filter{color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:750;display:flex}.dashboard-category-filter select{background:var(--theme-panel);border:1px solid var(--theme-line);border-radius:var(--app-control-radius);color:var(--theme-ink);min-width:170px;min-height:36px;padding:7px 10px}.dashboard-table-wrap{overflow-x:auto}.dashboard-table{border-collapse:collapse;width:100%;min-width:980px}.dashboard-table th,.dashboard-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:12px 14px}.dashboard-table th{color:var(--active-text);background:color-mix(in srgb, var(--active-bg) 34%, #fff);font-size:13px;font-weight:850}.dashboard-sortable-table th button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:6px;width:100%;padding:0;display:inline-flex}.dashboard-sortable-table th.numeric button{justify-content:flex-end}.dashboard-sortable-table th button:focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px;border-radius:3px}.dashboard-sort-indicator{color:var(--muted);font-size:12px}.dashboard-commission-report{gap:14px;display:grid}.dashboard-commission-report .dashboard-summary-grid{margin-bottom:0}.dashboard-commission-table{min-width:1260px}.dashboard-commission-table td:first-child strong,.dashboard-commission-table td:first-child small{display:block}.dashboard-commission-table td:first-child small{color:var(--muted);margin-top:3px;font-size:12px}.dashboard-table td.numeric,.dashboard-table th.numeric{text-align:right}.dashboard-table tbody tr:hover td{background:color-mix(in srgb, var(--active-bg) 34%, #fff)}.dashboard-table tfoot td{background:color-mix(in srgb, var(--active-bg) 46%, #fff);font-weight:850}.dashboard-report-tabs{border-bottom:1px solid #cad8d0;gap:4px;margin:2px 0 16px;display:flex}.dashboard-report-tabs a{color:#476056;border-bottom:3px solid #0000;padding:10px 14px 9px;font-weight:700;text-decoration:none}.dashboard-report-tabs a[aria-current=page]{color:#12613c;border-bottom-color:#2f8a5c}.diary-insights{gap:16px;display:grid}.diary-insights-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.diary-insights-heading h2{letter-spacing:0;margin:4px 0 6px;font-size:24px}.diary-insights-heading p{color:var(--muted);margin:0}.diary-insights-selector{align-items:end;gap:8px;display:flex}.diary-insights-selector label{color:var(--muted);gap:4px;font-size:12px;font-weight:750;display:grid}.diary-insights-selector select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-width:180px;padding:8px 10px}.diary-insights-selector button{background:var(--theme-accent);color:#fff;border:0;border-radius:8px;padding:9px 12px;font-weight:850}.diary-insights-summary,.diary-insights-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.diary-insights-summary>div,.diary-insight-card,.diary-insights-panel{border:1px solid var(--line);background:#fff;border-radius:8px}.diary-insights-summary>div{padding:14px 16px}.diary-insights-summary span,.diary-insight-card>span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.diary-insights-summary strong{margin-top:8px;font-size:24px;display:block}.diary-insights-summary small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.diary-insight-card{padding:16px}.diary-insight-card h2{margin:8px 0;font-size:18px;line-height:1.2}.diary-insight-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.diary-insights-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.diary-insights-panel{overflow:hidden}.diary-insight-bars{gap:12px;padding:14px 16px;display:grid}.diary-insight-bars>div{grid-template-columns:minmax(92px,.8fr) minmax(110px,1.5fr) 46px;align-items:center;gap:10px;display:grid}.diary-insight-bars>div>span{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.diary-insight-bars>div>div{background:#e8eeea;border-radius:999px;height:10px;overflow:hidden}.diary-insight-bars i{background:var(--theme-accent);min-width:2px;height:100%;display:block}.diary-insight-bars strong{text-align:right;font-size:12px}.diary-insights-panel>.dashboard-note{border-inline:0;border-bottom:0;border-radius:0;margin:0}.diary-insights-note{margin-bottom:0}.diary-insights-empty{margin:0;padding:18px}.diary-insights-empty h2{margin:0 0 6px}.diary-insights-empty p{color:var(--muted);margin:0}@media (max-width:980px){.diary-insights-heading{flex-direction:column;align-items:flex-start}.diary-insights-summary,.diary-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-insights-detail-grid{grid-template-columns:1fr}}@media (max-width:640px){.diary-insights-selector{flex-direction:column;align-items:stretch;width:100%}.diary-insights-selector select{width:100%;min-width:0}.diary-insights-summary,.diary-insights-grid{grid-template-columns:1fr}}.dashboard-work-mix-table td:first-child small{color:#607269;margin-top:3px;display:block}.dashboard-work-mix-table th:last-child,.dashboard-work-mix-table td:last-child{min-width:430px}.work-mix{gap:8px;display:grid}.work-mix-bar{background:#e8eeea;border-radius:3px;width:100%;height:10px;display:flex;overflow:hidden}.work-mix-bar span{min-width:2px}.work-mix-details{color:#42574d;flex-wrap:wrap;gap:5px 14px;font-size:.78rem;display:flex}.work-mix-details span{white-space:nowrap}.work-mix-details i{border:1px solid #00000024;border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.dashboard-empty-value{color:#74837c}.holiday-planner-module{padding:18px}.planner-hero,.planner-toolbar,.planner-summary-grid,.planner-shell,.planner-legend{max-width:1720px;margin-inline:auto}.planner-hero{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px;display:flex}.planner-hero h1{margin:4px 0;font-size:24px;line-height:1}.planner-hero p,.planner-status,.planner-note{color:var(--muted)}.planner-status{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;font-size:13px;display:flex}.planner-note{background:#fff8e2;border:1px solid #f1cf88;border-radius:8px;max-width:1720px;margin:0 auto 12px;padding:12px 14px}.planner-toolbar{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border-radius:8px;align-items:end;gap:10px;margin-bottom:12px;padding:12px;display:flex;position:sticky;top:64px}.planner-toolbar label{min-width:260px;color:var(--muted);gap:5px;font-size:13px;display:grid}.planner-toolbar select,.planner-toolbar button,.planner-nav-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px;text-decoration:none}.planner-toolbar select{min-height:42px}.planner-toolbar button:disabled{color:#7f9188;cursor:not-allowed}.planner-nav-button{place-items:center;width:42px;height:42px;font-weight:900;display:grid}.planner-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.planner-summary-grid>div{border:1px solid var(--line);background:#fff;border-radius:8px;padding:13px 14px}.planner-summary-grid span{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.planner-summary-grid strong{font-size:24px;display:block}.planner-shell{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:14px;display:grid}.planner-month-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.planner-month-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.planner-month-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;padding:12px 14px 8px;display:flex}.planner-month-heading h2{margin:0;font-size:18px}.planner-month-heading span{color:var(--muted);font-size:12px}.planner-weekday-row,.planner-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.planner-weekday-row{color:#38564a;text-align:center;padding:8px 10px 4px;font-size:11px;font-weight:850}.planner-day-grid{gap:4px;padding:8px 10px 12px}.planner-day-cell,.planner-day-empty{min-height:52px}.planner-day-cell{color:var(--ink);text-align:left;background:#f9fbfa;border:1px solid #d8e5dd;border-radius:6px;align-content:start;gap:2px;padding:5px;display:grid;overflow:hidden}.planner-day-cell:hover,.planner-day-cell.selected{border-color:var(--theme-accent);box-shadow:inset 0 0 0 1px var(--theme-accent)}.planner-day-cell span{color:#40594f;font-size:11px;line-height:1}.planner-day-cell strong{color:#102219;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.15;overflow:hidden}.planner-day-cell em{color:#526a60;font-size:10px;font-style:normal}.planner-day-cell.work-day{background:#e8f3ff}.planner-day-cell.holiday{background:#fff9c9}.planner-day-cell.sick{background:#c9f35e}.planner-day-cell.unpaid{background:#24d044}.planner-day-cell.maternity{background:#f5d8ee}.planner-day-cell.college{background:#d9d1ff}.planner-day-cell.day-off{color:#fff;background:#66a5ea}.planner-day-cell.salon-closed{color:#fff;background:#4d6474}.planner-day-cell.day-off span,.planner-day-cell.day-off strong,.planner-day-cell.day-off em,.planner-day-cell.salon-closed span,.planner-day-cell.salon-closed strong,.planner-day-cell.salon-closed em{color:#fff}.planner-day-cell.quiet{opacity:.7;background:#f8faf9}.planner-detail-panel{border:1px solid var(--line);background:#fff;border-radius:8px;max-height:calc(100dvh - 96px);padding:16px;position:sticky;top:76px;overflow:auto}.planner-detail-panel h2{margin:6px 0;font-size:23px;line-height:1.1}.planner-detail-panel p{color:var(--muted)}.planner-detail-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.planner-detail-stats>div{border:1px solid var(--line);background:color-mix(in srgb, var(--active-bg) 22%, #fff);border-radius:8px;padding:10px}.planner-detail-stats span{color:var(--muted);font-size:12px;display:block}.planner-detail-stats strong{margin-top:6px;font-size:20px;display:block}.planner-detail-section{border-top:1px solid var(--line);padding:14px 0}.planner-detail-section h3{text-transform:uppercase;margin:0 0 8px;font-size:14px}.planner-detail-section p{margin:0}.planner-event-list{gap:8px;display:grid}.planner-event-row{border:1px solid #dce9e2;border-left-width:6px;border-radius:8px;padding:10px}.planner-event-row span{color:var(--muted);font-size:12px;display:block}.planner-event-row strong{margin:2px 0;display:block}.planner-event-row.holiday{border-left-color:#f5d84e}.planner-event-row.sick{border-left-color:#aeea3f}.planner-event-row.unpaid{border-left-color:#17b838}.planner-event-row.maternity{border-left-color:#df82c4}.planner-event-row.college{border-left-color:#7b66d6}.planner-event-row.day-off{border-left-color:#4f96df}.planner-detail-actions{gap:8px;margin-top:10px;display:grid}.planner-detail-actions a{border:1px solid var(--line);color:#0b5b3a;text-align:center;background:#fff;border-radius:8px;padding:11px 12px;font-weight:850;text-decoration:none}.planner-detail-actions a:first-child{border-color:var(--theme-accent);background:var(--theme-accent);color:#fff}.planner-view-toggle{border:1px solid var(--line);background:#f8fbf9;border-radius:8px;display:inline-flex;overflow:hidden}.planner-toolbar .planner-view-toggle button{background:0 0;border:0;border-radius:0;min-height:42px}.planner-toolbar .planner-view-toggle button.active{background:var(--theme-accent);color:#fff;font-weight:900}.planner-month-board.single-month{grid-template-columns:minmax(0,1fr)}.planner-month-board.single-month .planner-day-cell,.planner-month-board.single-month .planner-day-empty{min-height:82px}.planner-matrix-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 10px 14px;overflow:auto}.planner-matrix-grid{grid-template-columns:172px repeat(31,48px);gap:3px;min-width:1660px;display:grid}.planner-matrix-row{display:contents}.planner-matrix-heading,.planner-matrix-month-label{z-index:2;background:#fff;position:sticky;left:0}.planner-matrix-heading,.planner-matrix-day-heading,.planner-matrix-month-label,.planner-matrix-cell,.planner-matrix-empty{min-height:42px}.planner-matrix-heading,.planner-matrix-day-heading{color:var(--muted);text-align:center;align-content:center;font-size:11px;font-weight:850;display:grid}.planner-matrix-day-heading strong{color:var(--ink);font-size:12px}.planner-matrix-day-heading span{color:#3b5a4c;font-size:10px;font-weight:750}.planner-matrix-month-label{border-right:1px solid var(--line);align-content:center;gap:2px;padding:6px 12px 6px 4px;display:grid}.planner-matrix-month-label strong{font-size:15px}.planner-matrix-month-label span{color:var(--muted);font-size:11px}.planner-matrix-cell,.planner-matrix-empty{border-radius:0}.planner-matrix-cell{color:#102219;border:1px solid #ffffffb3;place-items:center;padding:2px;display:grid;position:relative}.planner-matrix-cell:hover,.planner-matrix-cell.selected{border-color:#132f43;box-shadow:inset 0 0 0 1px #132f43}.planner-matrix-cell span{color:color-mix(in srgb, currentColor 68%, transparent);font-size:8px;line-height:1;position:absolute;top:2px;left:3px}.planner-matrix-cell strong{font-size:11px;line-height:1}.planner-matrix-cell em{opacity:.8;background:currentColor;border-radius:999px;width:4px;height:4px;position:absolute;bottom:3px;right:3px}.planner-matrix-empty{background:#f7faf8}.planner-matrix-cell.work-day{color:#fff;background:#5d9de8}.planner-matrix-cell.holiday{color:#425044;background:#fffde4}.planner-matrix-cell.sick{color:#203518;background:#c7f45f}.planner-matrix-cell.unpaid{color:#fff;background:#00cf13}.planner-matrix-cell.maternity{color:#463041;background:#f5d8ee}.planner-matrix-cell.college{color:#342c66;background:#d9d1ff}.planner-matrix-cell.day-off{color:#fff;background:#5b9be5}.planner-matrix-cell.salon-closed{color:#fff;background:#45627e}.planner-matrix-cell.quiet{color:#9dafb6;background:#f8faf9}.planner-period-label{text-align:center;align-self:center;min-width:150px}.planner-bookout-panel .section-heading{align-items:baseline;margin-bottom:10px}.planner-bookout-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.planner-bookout-form label{color:var(--muted);gap:5px;font-size:12px;font-weight:800;display:grid}.planner-bookout-form input,.planner-bookout-form select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:8px;min-height:40px;padding:9px 10px}.planner-bookout-form input:disabled{color:#7f9188;background:#f0f5f2}.planner-full-day-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:40px;padding:9px 10px;font-weight:850}.planner-full-day-button.active{border-color:var(--theme-soft-border);background:var(--active-bg);color:var(--active-text)}.planner-form-hint{color:var(--muted);margin:-2px 0 0;font-size:12px;line-height:1.35}.planner-bookout-form .span-2{grid-column:1/-1}.planner-inline-check{flex-direction:row;align-items:center;gap:9px!important;display:flex!important}.planner-inline-check input{min-height:0}.planner-action-message{border-radius:8px;grid-column:1/-1;margin:0;padding:10px 12px}.planner-action-message.good{color:#0b5b3a;background:#e8f8ef;border:1px solid #aee7c5}.planner-action-message.bad{color:#9f2222;background:#fff0f0;border:1px solid #f0b8b8}.planner-legend{border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;gap:12px;margin-top:14px;padding:12px 14px;display:flex}.planner-legend span{color:#2f493e;align-items:center;gap:7px;font-size:13px;display:inline-flex}.planner-legend i{border:1px solid #cbdad2;border-radius:4px;width:16px;height:16px}.planner-legend i.work-day{background:#e8f3ff}.planner-legend i.holiday{background:#fff9c9}.planner-legend i.sick{background:#c9f35e}.planner-legend i.unpaid{background:#24d044}.planner-legend i.maternity{background:#f5d8ee}.planner-legend i.college{background:#d9d1ff}.planner-legend i.day-off{background:#66a5ea}.planner-legend i.salon-closed{background:#4d6474}@media (max-width:1280px){.service-category-row{grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) 76px}.service-category-row .team-category-count{overflow-wrap:anywhere;white-space:normal;place-self:center end;min-width:0;max-width:100%}.till-promotion-builder{grid-template-columns:minmax(120px,.7fr) minmax(170px,1fr) minmax(120px,.7fr)}.till-promotion-actions{grid-column:1/-1;justify-content:flex-start}.stylist-toolbar{align-items:flex-start}.stylist-field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stylist-days-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stylist-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-shell{grid-template-columns:1fr}.planner-detail-panel{max-height:none;position:static}.planner-month-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.app-shell{display:block}.side-rail{display:none}.topbar{flex-flow:wrap;align-items:center;gap:10px;padding:8px 12px}.app-primary-nav{flex-basis:100%;order:4;width:100%;min-width:0}.topbar-right{flex:1 1 0;justify-content:flex-end;min-width:0;margin-left:auto}.diary-toolbar{grid-template-columns:minmax(0,1fr);padding:8px 12px;display:grid;overflow-x:visible}.diary-date-nav{grid-column:1/-1;width:100%;min-width:0}.diary-status-group{flex:none}.date-strip{width:auto;margin-left:0}.date-strip-day{display:none}.diary-column-toggle{scrollbar-width:thin;grid-column:1/-1;width:100%;padding-bottom:2px;overflow-x:auto}.diary-action-status{grid-column:1/-1;justify-self:start;max-width:100%}.diary-layout,.diary-layout.has-panel,.diary-layout.has-calendar,.diary-layout.has-calendar.has-panel{grid-template-columns:1fr}.diary-calendar-panel{border-right:0;border-bottom:1px solid var(--line);max-height:360px}.appointment-panel{z-index:120;border-left:1px solid var(--line);width:min(420px,100vw);max-width:100vw;height:100dvh;display:block;position:fixed;inset:0 0 0 auto;box-shadow:-18px 0 36px #0f261b2e}.client-toolbar,.client-toolbar-actions,.dashboard-actions,.dashboard-heading,.service-toolbar,.service-toolbar-actions,.stylist-toolbar,.stylist-toolbar-actions,.client-detail-heading,.service-detail-heading,.stylist-detail-heading{flex-direction:column;align-items:stretch}.client-toolbar-actions,.service-toolbar-actions,.stylist-toolbar-actions{width:100%;min-width:0;margin-left:0}.dashboard-actions{justify-content:flex-start}.dashboard-summary-grid{grid-template-columns:1fr}.dashboard-week-form{flex-direction:column;align-items:stretch;width:100%}.client-search,.client-select{width:100%;min-width:0}.client-layout,.preferences-layout,.promotion-layout,.service-layout,.stylist-layout,.security-shell,.till-layout,.till-appointment-strip,.till-account-content,.till-payment-grid,.till-payment-row,.till-payment-row.requires-stylist,.till-line,.till-line.deposit-line,.till-promotion-builder,.till-deposit-grid,.in-salon-layout,.maintenance-sheet-layout.client-layout,.maintenance-sheet-layout.service-layout,.maintenance-sheet-layout.stylist-layout{grid-template-columns:1fr}.maintenance-back-button{border:1px solid var(--line);color:#174732;background:#fbfdfc;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;min-height:40px;padding:8px 11px;font-size:13px;font-weight:850;display:inline-flex}.maintenance-layout.mobile-list-open>.client-detail,.maintenance-layout.mobile-list-open>.service-detail,.maintenance-layout.mobile-list-open>.stylist-detail,.maintenance-layout.mobile-detail-open>.client-list,.maintenance-layout.mobile-detail-open>.service-list,.maintenance-layout.mobile-detail-open>.stylist-list{display:none}.till-retail-picker>div{grid-template-columns:1fr}.till-section-actions{justify-content:flex-start}.till-payment-row{background:#fbfdfc;border:1px solid #e4eee8;border-radius:8px;padding:10px}.till-payment-row+.till-payment-row{margin-top:2px}.client-list,.promotion-list,.service-list,.stylist-list{border-right:0;border-bottom:1px solid var(--line);max-height:none}.security-menu{position:static}.planner-toolbar{flex-wrap:wrap;align-items:stretch}.planner-bookout-form{grid-template-columns:1fr}.preferences-module,.promotion-module,.service-module,.in-salon-module,.client-module,.stylist-module{height:auto;min-height:calc(100dvh - 64px);overflow:visible}.client-layout,.preferences-layout,.promotion-layout,.service-layout,.stylist-layout{overflow:visible}.client-detail,.preferences-detail,.promotion-detail,.service-detail,.stylist-detail{min-width:0;overflow-y:visible}.in-salon-layout{overflow:visible}.in-salon-list-header{display:none}.in-salon-list{max-height:none}.in-salon-row{grid-template-columns:1fr;gap:0;padding:10px}.in-salon-row-main{grid-column:auto;grid-template-columns:1fr;gap:5px;min-height:0;padding:0}.in-salon-options{justify-content:flex-start;margin-top:10px}.client-detail-heading,.preferences-focus-strip,.promotion-detail-heading,.service-detail-heading,.stylist-detail-heading{position:static}.preference-field-grid,.preference-planning-grid,.appointment-order-layout,.preferences-contact-grid,.sms-reminder-summary-grid,.promotion-days-grid,.promotion-editor-layout,.promotion-field-grid,.promotion-service-controls,.service-summary-grid,.service-field-grid,.service-booking-rules-form .deposit-rule-fields,.service-rule-grid,.team-price-add-form,.stylist-roster-form,.stylist-photo-grid,.stylist-summary-grid,.stylist-field-grid,.stylist-rule-grid,.stylist-days-grid,.stylist-section-grid,.stylist-permission-grid,.service-group-panels,.service-group-row,.service-category-row,.appointment-category-order-row,.appointment-service-order-row,.service-category-new,.security-action-panel,.security-code-grid,.security-rule-grid,.sms-stylist-row,.staff-login-page,.staff-reset-fields,.team-category-row,.theme-preview-grid,.logs-filter-bar,.vat-payment-row,.client-field-grid,.client-stat-grid,.client-deposit-row,.client-deposit-statement-grid,.client-history-card summary,.client-upcoming-card,.client-consent-grid,.client-consent-summary,.privacy-grid,.client-section-grid{grid-template-columns:1fr}.maintenance-field-grid.client-field-grid,.maintenance-field-grid.service-field-grid,.maintenance-field-grid.stylist-field-grid,.stylist-login-form .maintenance-field-grid.stylist-field-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}.maintenance-toggle-grid.stylist-rule-grid,.stylist-login-form .maintenance-toggle-grid.stylist-rule-grid,.maintenance-toggle-grid.service-rule-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.maintenance-sheet-layout .stylist-photo-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.preference-field.span-2,.client-field.span-2,.promotion-tabs,.roster-exception{grid-column:auto}.preferences-menu{border-right:0;border-bottom:1px solid var(--line);padding:12px;display:flex;overflow-x:auto}.preferences-menu a,.preferences-menu button{flex:none;max-width:82vw}.preferences-detail,.promotion-detail,.client-detail,.service-detail,.stylist-detail{min-width:0;padding:14px}.preferences-toolbar,.section-heading{flex-direction:column;align-items:stretch}.security-action-buttons{justify-content:flex-start}.preferences-hero{grid-template-columns:1fr;position:static}.brand-preview{grid-template-columns:1fr}.brand-preview small{grid-column:auto}.team-category-count{text-align:left;min-width:0}.promotion-tabs{display:flex;position:static;top:auto;overflow-x:auto}.promotion-tabs button{white-space:nowrap;flex:none}.promotion-service-controls{position:static}.planner-hero,.planner-toolbar{flex-direction:column;align-items:stretch}.planner-toolbar{position:static}.planner-toolbar label{min-width:0}.planner-summary-grid,.planner-month-board,.planner-detail-stats{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:980px){.client-field-grid,.service-field-grid,.stylist-field-grid,.stylist-login-form .stylist-field-grid,.stylist-login-form .stylist-rule-grid,.stylist-photo-grid,.stylist-rule-grid,.service-rule-grid,.stylist-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-field.span-2,.stylist-photo-grid,.service-overrides-form .service-table-wrap{grid-column:1/-1}}@media (max-width:640px){.topbar{gap:8px;padding:8px 10px}.stylist-mobile-shell .topbar{flex-wrap:nowrap;gap:8px;min-height:52px;padding:6px 8px}.stylist-mobile-shell .hamburger-button{width:38px;height:38px}.stylist-mobile-shell .stylist-mobile-title{flex:auto;gap:1px;min-width:0;display:grid}.stylist-mobile-shell .stylist-mobile-title strong,.stylist-mobile-shell .stylist-mobile-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stylist-mobile-shell .stylist-mobile-title strong{color:var(--ink);font-size:17px;font-weight:850;line-height:1.1}.stylist-mobile-shell .stylist-mobile-title span{color:var(--muted);font-size:11px;font-weight:750;line-height:1.1}.hamburger-panel{width:min(340px,100vw - 20px)}.topnav{gap:4px}.topnav>button,.topnav>a,.topnav>span{gap:4px;padding:8px 9px}.stylist-mobile-shell .app-primary-nav{flex:none;order:0;width:auto;padding-bottom:0;overflow:visible}.stylist-mobile-shell .app-primary-nav>a.active{display:none}.stylist-mobile-shell .topnav>a,.stylist-mobile-shell .topnav>span{border:1px solid var(--line);padding:7px 8px}.topbar-right{gap:10px}.stylist-mobile-shell .topbar-right{flex:none;gap:0;margin-left:0}.stylist-mobile-shell .topbar-time{font-size:13px}.user-summary{max-width:44vw}.user-summary span{display:none}.app-nav-icon,.app-nav-pound{width:16px;height:16px}.diary-toolbar{gap:8px;padding:8px 10px}.stylist-diary-module .diary-toolbar{align-items:center;gap:6px;min-height:46px;padding:6px 8px}.stylist-diary-module .calendar-toggle{width:34px;height:34px}.date-strip{gap:4px}.stylist-diary-module .date-strip{width:auto;margin-left:0;padding-bottom:0;overflow-x:auto}.date-strip button,.diary-column-toggle button{padding:8px 9px}.stylist-diary-module .date-strip button{min-height:34px;padding:7px 8px}.stylist-diary-module .diary-column-toggle{display:none}.stylist-diary-module .diary-action-status{grid-column:1/-1}.till-toolbar{align-items:flex-start;gap:10px;padding:10px}.till-status-row{justify-content:flex-start}.till-notice{margin:10px}.till-stage-tabs{grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 20px);margin:10px;display:grid}.till-stage-tabs button{min-width:0}.till-layout{gap:12px;padding:10px}.till-section{padding:14px}.till-section-heading{align-items:flex-start}.till-section-actions{width:100%}.till-section-actions .till-secondary-button{flex:150px}.till-deposit-use-button{flex:180px}.till-info-button{flex:none}.till-payment-info-popover{width:min(340px,100vw - 32px);left:0;right:auto}.in-salon-header{flex-direction:column;align-items:stretch;padding:12px}.in-salon-layout{grid-template-columns:1fr;padding:10px;overflow:auto}.in-salon-list-header{display:none}.in-salon-list{max-height:none}.in-salon-row{grid-template-columns:1fr;gap:0;padding:10px}.in-salon-row-main{grid-column:auto;grid-template-columns:1fr;gap:5px;min-height:0;padding:0}.in-salon-options{justify-content:flex-start;margin-top:10px}.diary-layout{height:calc(100dvh - 260px);min-height:360px}.stylist-diary-module .diary-layout{height:calc(100dvh - 98px);min-height:500px}.diary-calendar-panel{max-height:300px;padding:10px}.calendar-panel-controls{grid-template-columns:32px minmax(0,1fr) 74px 32px}.calendar-quick-jumps{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-panel{width:100vw}.quick-actions{bottom:14px;right:14px}.quick-actions-button{width:52px;height:52px}.list-search-row,.promotion-service-row,.roster-exception{grid-template-columns:1fr}.filter-checkbox.compact{width:100%;min-width:0}.client-list,.promotion-list,.service-list,.stylist-list{max-height:none}.client-detail,.preferences-detail,.promotion-detail,.service-detail,.stylist-detail{padding:10px}.client-detail-heading,.client-section,.preferences-section,.promotion-detail-heading,.service-detail-heading,.service-section,.stylist-detail-heading,.stylist-section{padding:14px}.client-detail-heading,.service-detail-heading,.stylist-detail-heading{gap:10px}.client-detail-heading>div,.service-detail-heading>div,.stylist-detail-heading>div,.section-heading{width:100%}.client-status-stack,.service-status-stack{justify-content:flex-start;width:100%}.client-detail-heading h2,.preferences-hero h2,.promotion-detail-heading h2,.service-detail-heading h2,.stylist-detail-heading h2{font-size:20px;line-height:1.15}.client-row,.promotion-row,.service-row,.stylist-row{padding:12px 14px}.service-row,.stylist-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.service-row>.service-pill,.stylist-row-pills{grid-column:2;justify-content:flex-start;justify-self:start}.access-toggle{grid-template-columns:auto minmax(0,1fr);min-height:58px}.access-toggle b{white-space:normal;grid-column:2;justify-self:start}.access-toggle strong{white-space:normal;justify-self:start}.maintenance-field-grid.service-field-grid>.access-toggle,.maintenance-toggle-grid.service-rule-grid .access-toggle{grid-template-columns:auto minmax(0,1fr)}.maintenance-field-grid.service-field-grid>.access-toggle strong,.maintenance-toggle-grid.service-rule-grid .access-toggle strong{display:none}.preference-toggle,.promotion-services-save-row{flex-wrap:wrap}.sms-stylist-count{text-align:left;justify-items:start}.team-category-active{justify-content:flex-start}.team-category-row input[type=text],.team-category-new,.team-category-new input,.service-group-row input[type=text],.service-category-row input[type=text],.service-category-row select,.service-category-new,.service-category-new input[type=text],.service-category-new select,.vat-payment-row input,.stylist-roster-form .primary-button{width:100%}.stylist-photo-form{grid-template-columns:1fr}.stylist-photo-card{grid-template-columns:auto minmax(0,1fr);align-items:flex-start;display:grid}.stylist-photo-preview{flex-basis:72px;width:72px;height:72px}.stylist-setup-form,.stylist-working-form,.stylist-login-form .stylist-field-grid,.stylist-login-form .stylist-rule-grid,.service-overrides-form,.self-employed-receipt-fields{grid-template-columns:1fr}.self-employed-address-field{grid-column:auto}.stylist-setup-form>.primary-button,.stylist-working-save,.service-overrides-save,.maintenance-save-button{z-index:18;grid-column:1;justify-self:start;width:auto;min-height:44px;position:sticky;bottom:10px;box-shadow:0 12px 26px #0f261b2e}.stylist-setup-form .save-confirmation,.stylist-working-form .save-confirmation,.service-overrides-form .save-confirmation{grid-column:1}.save-confirmation{justify-content:flex-start;width:fit-content}.save-confirmation button{min-width:42px;min-height:38px}.service-overrides-form .service-table-wrap{border:0;overflow-x:visible}.service-table{min-width:0}.service-table,.service-table tbody,.service-table tr,.service-table td{width:100%;display:block}.service-table thead{display:none}.service-table tr{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;margin-bottom:10px;overflow:hidden}.service-table td{border-bottom:1px solid var(--line);gap:6px;padding:10px;display:grid}.service-table td:last-child{border-bottom:0}.service-table td:before{color:var(--muted);content:"";text-transform:uppercase;font-size:12px;font-weight:850}.service-table td:first-child:before{content:"Team member"}.service-table td:nth-child(2):before{content:"Book online"}.service-table td:nth-child(3):before{content:"Price"}.service-table td:nth-child(4):before{content:"Time"}.service-table td:nth-child(5):before{content:"Sources"}.logs-table-wrap{border:0;overflow-x:visible}.logs-table{min-width:0}.logs-table,.logs-table tbody,.logs-table tr,.logs-table td{width:100%;display:block}.logs-table thead{display:none}.logs-table tr{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:10px;overflow:hidden}.logs-table td{border-bottom:1px solid var(--line);gap:5px;padding:10px;display:grid}.logs-table td:last-child{border-bottom:0}.logs-table td:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;font-size:12px;font-weight:850}.planner-period-label{text-align:left;min-width:0}.bill-finder-module,.logs-module{padding:10px}.bill-finder-header,.logs-header,.bill-row{grid-template-columns:1fr}.bill-finder-header{display:grid}.bill-finder-search,.logs-filter-bar{grid-template-columns:1fr}.bill-row-totals{border-left:0;border-top:1px solid var(--line)}.client-history-card summary,.client-upcoming-card,.client-history-card footer{display:grid}.maintenance-table-header{display:none}.maintenance-table-row.client-row,.maintenance-table-row.service-row,.maintenance-table-row.stylist-row{align-items:center;gap:8px 10px;min-height:58px;padding:10px 12px}.maintenance-table-row.client-table-row{grid-template-columns:minmax(0,1fr) auto}.maintenance-table-row.client-table-row .maintenance-cell{color:var(--muted);grid-column:1;font-size:12px}.maintenance-table-row.client-table-row .maintenance-cell:nth-of-type(3){display:none}.maintenance-table-row.client-table-row .maintenance-status-cell,.maintenance-table-row.client-table-row .data-pill{grid-area:1/2}.maintenance-table-row.service-table-row,.maintenance-table-row.stylist-table-row{grid-template-columns:minmax(0,1fr)}.maintenance-sheet-layout .stylist-photo-form,.maintenance-sheet-layout .maintenance-field-grid.client-field-grid,.maintenance-sheet-layout .maintenance-field-grid.service-field-grid,.maintenance-sheet-layout .maintenance-field-grid.stylist-field-grid,.maintenance-sheet-layout .stylist-login-form .maintenance-field-grid.stylist-field-grid,.maintenance-sheet-layout .maintenance-toggle-grid.stylist-rule-grid,.maintenance-sheet-layout .stylist-login-form .maintenance-toggle-grid.stylist-rule-grid,.maintenance-sheet-layout .maintenance-toggle-grid.service-rule-grid{grid-template-columns:1fr}.maintenance-sheet-layout .maintenance-field-grid.client-field-grid .client-field.span-2{grid-column:auto}}@container (max-width:820px){.stylist-section-grid{grid-template-columns:1fr}}@container (max-width:760px){.stylist-field-grid,.stylist-login-form .stylist-field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (max-width:640px){.stylist-field-grid,.stylist-login-form .stylist-field-grid,.stylist-rule-grid,.stylist-login-form .stylist-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stylist-photo-grid{grid-template-columns:1fr}}@container (max-width:420px){.stylist-field-grid,.stylist-login-form .stylist-field-grid,.stylist-rule-grid,.stylist-login-form .stylist-rule-grid,.stylist-roster-form,.stylist-permission-grid{grid-template-columns:1fr}.access-toggle{grid-template-columns:auto minmax(0,1fr);min-height:58px}.access-toggle b{white-space:normal;grid-column:2;justify-self:start}.access-toggle strong{white-space:normal;justify-self:start}.stylist-photo-form .primary-button,.stylist-login-actions .primary-button{width:100%}}@media (max-width:420px){.user-summary{display:none}.topbar-right{flex:none}.topnav>button,.topnav>a,.topnav>span,.date-strip button,.diary-column-toggle button,.diary-column-toggle span{font-size:12px}}.booking-test-module,.marketing-module,.stripe-module{gap:14px;padding:14px;display:grid}.module-hero,.ops-section{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 8px 26px #17211c0a}.module-hero{justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.module-hero h1{margin:3px 0 8px;font-size:26px;line-height:1.1}.module-hero p,.ops-section p{color:var(--muted);margin:0}.eyebrow{color:var(--theme-accent);text-transform:uppercase;font-size:12px;font-weight:900}.module-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.module-hero-actions .primary-button,.module-hero-actions .secondary-button{white-space:nowrap;justify-content:center;align-items:center;min-height:40px;padding:9px 12px;display:inline-flex}.locked-status{background:#fff8df;border:1px solid #f1d58a;border-radius:8px;gap:4px;min-width:190px;padding:12px;display:grid}.locked-status span{color:#755500;font-size:13px}.module-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.module-stat-grid article{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:4px;min-width:0;padding:14px;display:grid}.module-stat-grid span,.module-stat-grid small,.settings-row span,.ops-table small{color:var(--muted);font-size:12px}.module-stat-grid strong{font-size:26px;line-height:1}.ops-section{padding:16px}.ops-section .section-heading h2{margin:0 0 5px;font-size:19px}.text-link{color:var(--active-text);font-weight:850;text-decoration:none}.text-link:hover{text-decoration:underline}.status-pill{border-radius:999px;align-items:center;min-height:26px;padding:4px 10px;font-size:12px;font-weight:900;display:inline-flex}.status-pill.success{background:var(--active-bg);color:var(--active-text)}.status-pill.warning{color:#755500;background:#fff0ba}.form-message{border-radius:10px;margin:0 0 12px;padding:10px 14px;font-size:13px;font-weight:700}.form-message.success{background:var(--active-bg);color:var(--active-text)}.form-message.warning{color:#755500;background:#fff0ba}.refund-inline-form{gap:8px;min-width:220px;padding:6px 0;display:grid}.refund-inline-form label{gap:3px;display:grid}.refund-inline-form label span{color:var(--muted-text,#6b7280);text-transform:uppercase;font-size:11px;font-weight:800}.refund-inline-form input{border:1px solid var(--border-strong,#d1d5db);font:inherit;border-radius:8px;padding:6px 9px;font-size:13px}.refund-inline-actions{gap:8px;display:flex}.refund-inline-actions .primary-button,.refund-inline-actions .secondary-button{min-height:34px;padding:6px 12px}.readiness-grid,.segment-grid,.social-draft-grid{gap:10px;display:grid}.readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.readiness-card{border:1px solid var(--line);background:#fbfdfc;border-left:4px solid #9fb5ac;border-radius:8px;gap:7px;min-width:0;padding:12px;display:grid}.readiness-card.ready{border-left-color:var(--theme-accent)}.readiness-card.review{border-left-color:#d1a000}.readiness-card.blocked{border-left-color:#b55252}.readiness-card span{color:var(--theme-accent);text-transform:uppercase;font-size:12px;font-weight:900}.readiness-card.review span{color:#755500}.readiness-card.blocked span{color:#8c2929}.readiness-card p{font-size:14px}.ops-two-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.test-script-list,.gate-list{gap:9px;margin:0;padding-left:20px;display:grid}.gate-list{list-style:square}.ops-table-wrap{border:1px solid var(--line);border-radius:8px;overflow:auto}.ops-table{border-collapse:collapse;width:100%;min-width:760px}.ops-table th,.ops-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.ops-table th{background:color-mix(in srgb, var(--active-bg) 34%, #fff);color:var(--active-text);text-transform:uppercase;font-size:12px}.ops-table td strong,.ops-table td small{display:block}.stripe-status-panel{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.stripe-status-panel h2{margin:9px 0 6px}.stripe-sandbox-note{border:1px solid var(--theme-soft-border);background:var(--active-bg);border-radius:8px;gap:4px;max-width:430px;padding:12px;display:grid}.stripe-sandbox-note span{color:var(--muted)}.stripe-sandbox-note small{color:var(--active-text);font-size:12px;font-weight:800}.stripe-payment-tool{gap:12px;display:grid}.stripe-payment-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;display:grid}.stripe-payment-form label{gap:5px;min-width:0;display:grid}.stripe-payment-form label.span-2{grid-column:span 2}.stripe-payment-form label span{color:var(--muted);font-size:12px;font-weight:850}.stripe-payment-form input,.stripe-payment-form select{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:40px;padding:8px 10px}.stripe-payment-form button{white-space:nowrap;align-self:end;min-height:40px}.stripe-form-note{border-radius:8px;margin:0;padding:10px 12px;font-weight:800}.stripe-form-note.warning{color:#755500;background:#fff8df;border:1px solid #f1d58a}.stripe-form-note.error{color:#8c2929;background:#fff1f1;border:1px solid #efb8b8}.stripe-checkout-result{border:1px solid var(--theme-soft-border);background:var(--active-bg);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.stripe-checkout-result span,.stripe-checkout-result small{color:var(--muted);font-size:12px;display:block}.stripe-checkout-result strong{overflow-wrap:anywhere;min-width:0;display:block}.stripe-checkout-result p{grid-column:1/-1}.stripe-result-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.stripe-result-actions .primary-button,.stripe-result-actions .secondary-button{justify-content:center;align-items:center;min-height:40px;text-decoration:none;display:inline-flex}.settings-stack{gap:9px;display:grid}.settings-row{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:4px;padding:11px;display:grid}.settings-row p{font-size:13px}.marketing-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.marketing-filter-grid label{gap:5px;display:grid}.marketing-filter-grid span{color:var(--muted);font-size:12px;font-weight:850}.marketing-filter-grid select{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:38px;padding:8px 10px}.segment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.segment-card,.social-draft-card{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;align-content:start;gap:10px;min-width:0;padding:13px;display:grid}.segment-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.segment-card-heading div{gap:3px;display:grid}.segment-card-heading span,.segment-client-preview small,.social-draft-card span,.social-draft-card small{color:var(--muted);font-size:12px}.segment-card-heading b{background:var(--active-bg);color:var(--active-text);border-radius:999px;padding:5px 9px}.segment-channel-row{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:6px;display:flex}.segment-channel-row span{border:1px solid var(--theme-soft-border);color:var(--active-text);background:#fff;border-radius:999px;align-self:flex-start;padding:4px 8px;font-size:12px;font-weight:850}.segment-client-preview,.availability-slot-list{gap:6px;display:grid}.segment-client-preview span,.availability-slot-list span{border:1px solid var(--line);background:#fff;border-radius:8px;gap:2px;padding:8px;display:grid}.social-draft-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.social-draft-card div{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.social-draft-card p{color:var(--ink)}@media (max-width:980px){.module-hero,.stripe-status-panel{flex-direction:column}.module-hero-actions,.help-category-row{justify-content:flex-start}.module-stat-grid,.help-search-panel,.help-topic-grid,.marketing-filter-grid,.readiness-grid,.segment-grid,.social-draft-grid,.stripe-payment-form,.ops-two-column{grid-template-columns:1fr}.stripe-payment-form label.span-2{grid-column:auto}.stripe-checkout-result{grid-template-columns:1fr}.stripe-result-actions{justify-content:flex-start}}@media (max-width:640px){.booking-test-module,.marketing-module,.stripe-module{padding:10px}.module-hero,.ops-section{padding:13px}.module-hero-actions .primary-button,.module-hero-actions .secondary-button,.stripe-result-actions .primary-button,.stripe-result-actions .secondary-button{width:100%}.module-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:where(.bill-finder-module,.booking-test-module,.dashboard-shell,.help-module,.holiday-planner-module,.logs-module,.marketing-module,.security-module,.self-employed-shell,.stripe-module){gap:var(--app-page-gap);padding:var(--app-page-padding)}:where(.bill-finder-header,.client-detail-heading,.client-section,.dashboard-summary-grid>div,.dashboard-table-card,.help-hero,.help-search-panel,.help-topic-card,.locked-status,.module-hero,.ops-section,.preferences-section,.promotion-detail-heading,.promotion-section,.security-action-panel,.security-menu,.self-employed-panel,.service-detail-heading,.service-section,.staff-login-panel,.stripe-sandbox-note,.stripe-checkout-result,.stylist-detail-heading,.stylist-section,.till-section,.till-summary-card){border-radius:var(--app-panel-radius)}:where(.client-search,.client-select,.dashboard-week-form input,.dashboard-week-form select,.logs-filter-bar input,.logs-filter-bar select,.marketing-filter-grid select,.preference-field input,.preference-field select,.preference-field textarea,.stripe-payment-form input,.stripe-payment-form select,.staff-login-code-card input,.staff-login-form input,.staff-pin-form input,.staff-reset-form input,.till-line input,.till-payment-grid input,.till-payment-grid select,.till-payment-row input,.till-payment-row select,.till-notes textarea){min-height:var(--app-control-height)}:where(.primary-button,.secondary-button,.till-secondary-button,.danger-button,.dashboard-week-form button,.help-category-row button,.module-hero-actions .primary-button,.module-hero-actions .secondary-button,.stripe-result-actions .primary-button,.stripe-result-actions .secondary-button,.text-link-button){border-radius:var(--app-control-radius);min-height:40px}:where(.client-field span,.dashboard-week-form label,.logs-filter-bar label,.marketing-filter-grid span,.preference-field,.promotion-field span,.stripe-payment-form label span,.staff-login-code-card label,.staff-login-form label,.staff-pin-form label,.staff-reset-form label,.till-line label,.till-payment-grid label,.till-payment-row label,.till-notes){color:var(--muted);font-size:var(--app-label-size);font-weight:var(--app-label-weight);letter-spacing:0}:where(.access-toggle input[type=checkbox],.client-consent-switch input[type=checkbox],.inline-checkbox input[type=checkbox],.opening-day-toggle input[type=checkbox],.planner-inline-check input[type=checkbox],.preference-filter-toggle input[type=checkbox],.preference-toggle input[type=checkbox],.self-employed-record-toggles input[type=checkbox],.staff-login-check input[type=checkbox],.team-category-active input[type=checkbox],.till-vat-toggle input[type=checkbox]){appearance:none;background:#b8c0bc;border:1px solid #aab4af;border-radius:999px;flex:0 0 40px;width:40px;height:22px;min-height:22px;margin:0;display:inline-block;position:relative}:where(.access-toggle input[type=checkbox],.client-consent-switch input[type=checkbox],.inline-checkbox input[type=checkbox],.opening-day-toggle input[type=checkbox],.planner-inline-check input[type=checkbox],.preference-filter-toggle input[type=checkbox],.preference-toggle input[type=checkbox],.self-employed-record-toggles input[type=checkbox],.staff-login-check input[type=checkbox],.team-category-active input[type=checkbox],.till-vat-toggle input[type=checkbox]):before{content:"";background:#fff;border-radius:999px;width:18px;height:18px;transition:transform .18s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #0f261b38}:where(.access-toggle input[type=checkbox],.client-consent-switch input[type=checkbox],.inline-checkbox input[type=checkbox],.opening-day-toggle input[type=checkbox],.planner-inline-check input[type=checkbox],.preference-filter-toggle input[type=checkbox],.preference-toggle input[type=checkbox],.self-employed-record-toggles input[type=checkbox],.staff-login-check input[type=checkbox],.team-category-active input[type=checkbox],.till-vat-toggle input[type=checkbox]):checked{background:var(--app-switch-on);border-color:var(--app-switch-on-border)}:where(.access-toggle input[type=checkbox],.client-consent-switch input[type=checkbox],.inline-checkbox input[type=checkbox],.opening-day-toggle input[type=checkbox],.planner-inline-check input[type=checkbox],.preference-filter-toggle input[type=checkbox],.preference-toggle input[type=checkbox],.self-employed-record-toggles input[type=checkbox],.staff-login-check input[type=checkbox],.team-category-active input[type=checkbox],.till-vat-toggle input[type=checkbox]):checked:before{transform:translate(18px)}.promotion-slider-switch{width:40px;height:22px}.promotion-slider-switch>span{pointer-events:none;background:#b8c0bc;border:1px solid #aab4af}.promotion-slider-switch>span:after{width:18px;height:18px;top:1px;left:1px}.promotion-slider-switch input:checked+span{background:var(--app-switch-on);border-color:var(--app-switch-on-border)}.promotion-slider-switch input:checked+span:after{transform:translate(18px)}@media (max-width:640px){:where(.bill-finder-module,.booking-test-module,.dashboard-shell,.help-module,.holiday-planner-module,.logs-module,.marketing-module,.security-module,.self-employed-shell,.stripe-module){padding:10px}}.patch-test-flag{color:#fff;white-space:nowrap;background:#b42318;border:1px solid #7a1712;border-radius:999px;align-items:center;gap:4px;width:fit-content;padding:2px 6px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.card-flags span.patch-test-flag{color:#fff;background:#b42318}.card-flags .client-alert-flag{color:#fff;background:#b42318;border:1px solid #7a1712;border-radius:999px;justify-content:center;align-items:center;min-width:18px;min-height:18px;padding:2px;display:inline-flex}.appointment-hover-card .patch-test-flag{color:#fff;background:#b42318;margin-top:2px;padding:3px 7px;font-size:11px}.panel-heading .panel-patch-flag{color:#fff;white-space:normal;background:#b42318;margin-top:2px;padding:5px 9px;font-size:12px;font-weight:850}.confirm-dialog-overlay{z-index:200;background:#10221973;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--line);border-radius:var(--app-panel-radius);background:var(--panel);width:min(430px,100%);box-shadow:var(--shadow);padding:var(--app-panel-padding);gap:10px;display:grid}.confirm-dialog strong{font-size:16px}.confirm-dialog p{color:var(--muted);margin:0;line-height:1.45}.confirm-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.confirm-dialog-actions button:not(.primary-button):not(.danger-button){border:1px solid var(--line);border-radius:var(--app-control-radius);color:var(--ink);background:#fff;padding:10px 13px;font-weight:800}.confirm-dialog-actions button:focus-visible{box-shadow:var(--app-focus-ring);outline:none}@media (max-width:640px){.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-actions button{width:100%}}.toast-stack{z-index:80;pointer-events:none;justify-items:end;gap:8px;display:grid;position:fixed;bottom:96px;right:24px}.toast{pointer-events:auto;border:1px solid var(--theme-soft-border);background:var(--rail);color:#fff;max-width:min(360px,100vw - 32px);box-shadow:var(--shadow);text-align:left;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:750;line-height:1.35;animation:.18s toast-in}.toast.good{background:var(--active-text);border-color:#0f8f3e}.toast.warning{background:#6d5200;border-color:#e5c76b}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.toast-stack{justify-items:center;bottom:92px;left:16px;right:16px}}.dashboard-export-links{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.dashboard-export-link{border:1px solid var(--shell-border,#0f172a29);color:inherit;border-radius:8px;padding:.35rem .7rem;font-size:.82rem;text-decoration:none}.dashboard-export-link:hover{background:#0f172a0d}.dashboard-deposit-warning{color:#b42318;font-weight:600}.till-line-stylist-select{border:1px solid var(--shell-border,#0f172a29);border-radius:6px;max-width:12rem;margin-top:.2rem;padding:.2rem .35rem;font-size:.82rem}.appointment-status-bar{gap:10px;display:grid}.appointment-status-badge-row{flex-wrap:wrap;gap:8px;display:flex}.appointment-status-pill{color:var(--ink,#1b2a22);background:#eef2ef;border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.appointment-status-pill.status-arrived,.appointment-status-pill.status-working{color:#146c3a;background:#e2f3e8}.appointment-status-pill.status-completed{color:#1d4ed8;background:#e5eefc}.appointment-status-pill.status-no_show,.appointment-status-pill.status-cancelled{color:#b42318;background:#fbe6e4}.appointment-status-pill.status-deposit{color:#92620a;background:#fff2d9}.diary-current-date-label{color:var(--ink,#1b2a22);white-space:nowrap;flex:none;font-size:13px;font-weight:700;display:none}@media (max-width:980px){.diary-current-date-label{align-items:center;display:inline-flex}}.diary-column-frame{pointer-events:none;z-index:4;border-radius:0 0 10px 10px;margin:0 3px;box-shadow:inset 0 0 0 1px #1732241f,0 3px 10px #17322421}.stylist-header{box-shadow:inset 0 0 0 1px #17322417}.barcode-scanner{gap:8px;margin-top:12px;display:grid}.barcode-scanner-viewport{aspect-ratio:4/3;background:#000;border-radius:12px;width:100%;max-width:480px;position:relative;overflow:hidden}.barcode-scanner-video{object-fit:cover;width:100%;height:100%}.barcode-scanner-reticle{pointer-events:none;border:2px solid #ffffffd9;border-radius:10px;position:absolute;inset:22% 12%;box-shadow:0 0 0 100vmax #00000040}.barcode-scanner-hint{color:var(--muted,#64748b);margin:0;font-size:13px}.barcode-scanner-error{color:#b42318;margin:0;font-size:13px}.barcode-scanner-close{background:#fff;border:1px solid #1732242e;border-radius:8px;justify-self:start;padding:8px 14px}
