@font-face{font-family:Geist;src:url(/assets/geist-latin-BfrrXRGr.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ds-font:"Geist", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ds-canvas:#e4e9f0;--ds-surface:#fff;--ds-surface-subtle:#edf1f6;--ds-hover:#e4eaf2;--ds-accent-soft:#dde7f4;--ds-control-fill:#edf1f6;--ds-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234f5c6c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--ds-heading:#192430;--ds-text:#192430;--ds-text-muted:#4f5c6c;--ds-action:#293f5c;--ds-action-hover:#1c2f49;--ds-selected:#293f5c;--ds-border:#d8dfe8;--ds-control-border:#8593a4;--ds-focus:#293f5c;--ds-danger:#a32d25;--ds-danger-surface:#fff0ee;--ds-warning:#795217;--ds-warning-surface:#f8edcf;--ds-success:#2a6040;--ds-success-surface:#e6f1e9;--ds-info:#285c7b;--ds-info-surface:#edf4f8;--ds-on-action:#fff;--ds-type-page:1.625rem;--ds-type-dialog:1.125rem;--ds-type-section:1rem;--ds-type-body:.875rem;--ds-type-label:.8125rem;--ds-type-meta:.75rem;--ds-space-1:4px;--ds-space-2:8px;--ds-space-3:12px;--ds-space-4:16px;--ds-space-6:24px;--ds-space-8:32px;--ds-space-12:48px;--ds-radius-control:9px;--ds-radius-surface:12px;--ds-radius-dialog:14px;--ds-control-height:44px;--ds-motion:.16s ease-out;--ds-surface-depth:0 2px 12px #19243008;--ds-elevation:0 12px 40px #1924301f;--ds-overlay:#19243061;--ds-layer-header:10;--ds-layer-nav:20;--ds-layer-menu:30;--ds-layer-dialog:100;--panel-content-inset-inline:var(--ds-space-3);--panel-content-inset-block:var(--ds-space-3);--primary:var(--ds-action);--primary-dark:var(--ds-action-hover);--primary-soft:var(--ds-selected);--bg:var(--ds-canvas);--surface:var(--ds-surface);--text:var(--ds-text);--muted:var(--ds-text-muted);--line:var(--ds-border);--focus:var(--ds-focus);--success:var(--ds-success);--warning:var(--ds-warning);--danger:var(--ds-danger);--v2-bg:var(--ds-canvas);--v2-surface:var(--ds-surface);--v2-line:var(--ds-border);--v2-muted:var(--ds-text-muted);--app-canvas:var(--ds-canvas);--app-surface:var(--ds-surface);--app-surface-subtle:var(--ds-surface-subtle);--app-border:var(--ds-border);--app-separator:var(--ds-border);--app-text:var(--ds-text);--app-text-secondary:var(--ds-text-muted);--app-card-radius:var(--ds-radius-surface);--app-control-radius:var(--ds-radius-control)}.public-shell{--ds-action:var(--public-primary,#234a3d);--ds-action-hover:color-mix(in srgb, var(--ds-action) 82%, #000);--ds-selected:var(--ds-action);--ds-focus:var(--ds-action)}*{box-sizing:border-box}html{scrollbar-gutter:stable;background:var(--ds-canvas);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:20px}body{color:var(--ds-text);background:var(--ds-canvas);font-family:var(--ds-font);font-size:var(--ds-type-body);margin:0;line-height:1.5}input,select,textarea{font:inherit}button{font-family:inherit}button,a,input,select,textarea,strong,small,span,p,h1,h2,h3,h4{min-width:0}img,svg,video,canvas{max-width:100%}svg{flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4,legend{color:var(--ds-heading);font-weight:600}h1{font-size:var(--ds-type-page);letter-spacing:-.025em;line-height:1.2}h2{font-size:var(--ds-type-section);letter-spacing:-.015em;line-height:1.35}h3,h4,legend{font-size:1rem;line-height:1.4}strong{font-weight:600}fieldset{min-inline-size:0;border:0;min-width:0;margin:0;padding:0}fieldset>legend{width:100%;font-size:var(--ds-type-section);margin-bottom:12px;padding:0}.settings-form-group{border-bottom:1px solid var(--ds-border);gap:16px;padding-bottom:24px;display:grid}.settings-form-group:last-of-type{border-bottom:0;padding-bottom:0}small,.meta,.muted,.helper-text,.page-copy{color:var(--ds-text-muted);font-size:var(--ds-type-meta);font-weight:400;line-height:1.5}:where(p,dd,td){overflow-wrap:break-word}a{color:var(--ds-action);text-underline-offset:3px}::selection{background:var(--ds-selected);color:var(--ds-on-action)}:where(input,textarea){caret-color:var(--ds-action)}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ds-focus);outline-offset:-2px}:where(.button-primary,.button-link,.public-continue-button,.confirm-action,button[type=submit],button.danger:not(.ghost)):focus-visible{outline-color:var(--ds-on-action)}:where(h1,h2,h3)[tabindex="-1"]:focus{outline:none}:where(button,.button-link){appearance:none;min-height:var(--ds-control-height);border-radius:var(--ds-radius-control);color:var(--ds-text);background:var(--ds-surface-subtle);font-size:var(--ds-type-label);cursor:pointer;transition:background-color var(--ds-motion), color var(--ds-motion);border:0;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:600;line-height:1.35;text-decoration:none;display:inline-flex}:where(button,.button-link):where(:hover:not(:disabled)){background:var(--ds-hover);border-color:#0000}:where(.button-primary,.button-link,.public-continue-button,.confirm-action,button[type=submit]){color:var(--ds-on-action);background:var(--ds-action);border-color:var(--ds-action)}:where(.button-primary,.button-link,.public-continue-button,.confirm-action,button[type=submit]):where(:hover:not(:disabled)){color:var(--ds-on-action);background:var(--ds-action-hover);border-color:var(--ds-action-hover)}:where(button,input,select,textarea):disabled{opacity:.55;cursor:not-allowed}:where(button,.button-link)[aria-busy=true]{cursor:progress}:where(.button-secondary){color:var(--ds-action);background:var(--ds-surface-subtle);border-color:#0000}:where(.ghost){color:var(--ds-action);background:0 0;border-color:#0000}:where(.ghost,.button-secondary):where(:hover:not(:disabled)){color:var(--ds-action-hover);background:var(--ds-hover);border-color:#0000}:where(.text-button,.link-button,.button-tertiary){color:var(--ds-action);background:0 0;border-color:#0000}:where(.text-button,.link-button,.button-tertiary):where(:hover:not(:disabled)){color:var(--ds-action);background:var(--ds-hover);border-color:#0000}:where(button.danger,.confirm-action.danger){color:var(--ds-on-action);background:var(--ds-danger);border-color:var(--ds-danger)}:where(button.ghost.danger){color:var(--ds-danger);background:var(--ds-danger-surface);border-color:#0000}:where(button.danger):where(:hover:not(:disabled)){color:var(--ds-on-action);background:var(--ds-danger);border-color:var(--ds-danger)}:where(.compact-button){font-size:var(--ds-type-meta);padding-inline:12px}:where(.icon-button){width:var(--ds-control-height);min-width:var(--ds-control-height);padding:0}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){width:100%;min-height:var(--ds-control-height);border-radius:var(--ds-radius-control);color:var(--ds-text);background:var(--ds-control-fill);border:0;padding:11px 12px;font-size:1rem;font-weight:400;line-height:1.4;display:block}select{appearance:none;background-image:var(--ds-select-arrow);background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}select option{color:var(--ds-text);background:var(--ds-surface)}:where(input,textarea)::placeholder{color:var(--ds-text-muted);opacity:1}textarea{resize:none;min-height:96px;overflow-y:auto}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;accent-color:var(--ds-action);flex:0 0 18px}input[type=color]{border:1px solid var(--ds-control-border);border-radius:var(--ds-radius-control);width:100%;min-height:44px}:where(label,.field-label){color:var(--ds-text);font-size:var(--ds-type-label);gap:6px;font-weight:500;line-height:1.45;display:grid}:where(label.check,.consent-row,.checkbox-consent){align-items:flex-start;gap:10px;min-height:44px;padding-block:10px;display:flex}:where(label.check,.consent-row,.checkbox-consent) input{margin-top:2px}:is(:where(input,textarea,select)[aria-invalid=true],:where(input,textarea,select):user-invalid){background-color:var(--ds-danger-surface);outline:2px solid var(--ds-danger);outline-offset:-2px}:where(.signature-field canvas,.signature-pad,.signature-pad-placeholder){background:var(--ds-surface);border-radius:var(--ds-radius-control);border:0}.field-error{color:var(--ds-danger);font-size:var(--ds-type-meta)}:where(.actions,.form-actions,.modal-actions,.section-actions,.task-toolbar,.compact-document-actions,.page-actions){flex-wrap:wrap;align-items:center;gap:8px;display:flex}:where(.actions,.form-actions,.modal-actions,.section-actions,.task-toolbar,.compact-document-actions,.page-actions)>button{white-space:nowrap}:where(.form-actions,.modal-actions){justify-content:flex-end;padding-top:16px}:where(.form-grid){gap:20px;min-width:0;display:grid}:where(.two-fields,.two-column){grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}:where(.three-column){grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}:where(.stack){gap:24px;display:grid}:where(.section-title){gap:4px;display:grid}:where(.panel-head,.record-summary){justify-content:space-between;gap:16px;display:flex}.panel-head{align-items:center;margin-bottom:16px}.panel-head>.section-title{align-self:center}:where(.record-summary){align-items:flex-start}:where(.section-title p,.panel-head p){color:var(--ds-text-muted);font-size:var(--ds-type-meta)}:where(.panel){padding:var(--panel-content-inset-block) var(--panel-content-inset-inline);border-radius:var(--ds-radius-surface);background:var(--ds-surface);box-shadow:none;border:0;min-width:0}:where(.item-card,.task-card,.profile-record,.summary-card,.table-wrap,.quote-preview-card,.saved-invoice-preview,.order-work-card,.customer-button,.connection-card){color:var(--ds-text);background:var(--ds-surface);border-radius:var(--ds-radius-surface);box-shadow:var(--ds-surface-depth);border:0}:where(.item-card){padding:14px 16px}:where(.panel)>:where(.panel),:where(.item-card)>:where(.item-card){border-radius:var(--ds-radius-control);background:var(--ds-surface-subtle);box-shadow:none;border:0}:where(.card-line){justify-content:space-between;align-items:center;gap:12px;display:flex}:where(.list){gap:12px;display:grid}:where(.table-wrap){box-shadow:none;overflow:auto}table{border-collapse:collapse;width:100%;font-size:var(--ds-type-label)}th{color:var(--ds-text-muted);background:var(--ds-surface-subtle);text-align:left;font-weight:500}th,td{border-bottom:1px solid var(--ds-border);vertical-align:top;padding:12px 14px}tr:last-child td{border-bottom:0}:where(.amount,.metric strong,.order-money-line,.record-value){font-variant-numeric:tabular-nums}:where(.metric){background:0 0;border:0;border-radius:0;align-content:start;gap:4px;padding:12px 16px;display:grid}:where(.metric) span{color:var(--ds-text-muted);font-size:var(--ds-type-meta)}:where(.metric) strong{color:var(--ds-heading);font-size:1.5rem;font-weight:600;line-height:1.25}:where(.metric-primary) strong{font-size:1.75rem}:where(.metric-grid,.metric-hierarchy){border-radius:var(--ds-radius-surface);background:var(--ds-surface);border:0;overflow:hidden}.os-v2 .metric-hierarchy:not(.customer-invoice-metrics){gap:12px;display:grid;overflow:visible}.os-v2 .metric-hierarchy:not(.customer-invoice-metrics)>:where(.metric,article,details){background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0;min-width:0;padding:12px}.os-v2 .metric-hierarchy-3:not(.customer-invoice-metrics){grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr))}.os-v2 .metric-hierarchy-4:not(.customer-invoice-metrics){grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr))}.os-v2 .metric-hierarchy-6:not(.customer-invoice-metrics){grid-template-columns:repeat(3,minmax(0,1fr))}.os-v2 .metric-hierarchy-6:not(.customer-invoice-metrics)>.metric-primary{grid-column:1/-1}@media (width<=767px){.os-v2 .metric-hierarchy-3:not(.customer-invoice-metrics),.os-v2 .metric-hierarchy-4:not(.customer-invoice-metrics),.os-v2 .metric-hierarchy-6:not(.customer-invoice-metrics){grid-template-columns:repeat(2,minmax(0,1fr))}.os-v2 .metric-hierarchy:not(.customer-invoice-metrics)>.metric-primary{grid-column:1/-1}}@media (width<=359px){.os-v2 .metric-hierarchy:not(.customer-invoice-metrics){grid-template-columns:minmax(0,1fr)}}:where(.badge,.status-pill){min-height:24px;color:var(--ds-text-muted);background:var(--ds-surface-subtle);font-size:var(--ds-type-meta);text-transform:none;border:0;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-weight:500;line-height:1.35;display:inline-flex}:where(.badge.ready,.badge.success,.status-pill.ready){color:var(--ds-success);background:var(--ds-success-surface)}:where(.badge.amber,.badge.warning,.status-pill.ordered){color:var(--ds-warning);background:var(--ds-warning-surface)}:where(.badge.blue,.badge.info,.status-pill.partial){color:var(--ds-info);background:var(--ds-info-surface)}:where(.badge.danger,.badge.red,.error-badge){color:var(--ds-danger);background:var(--ds-danger-surface)}:where(.error,.success,.notice,.inline-feedback,.attention-note){border-radius:var(--ds-radius-control);font-size:var(--ds-type-label);overflow-wrap:anywhere;padding:12px 14px;line-height:1.5}:where(.error){color:var(--ds-danger);background:var(--ds-danger-surface)}:where(.success){color:var(--ds-success);background:var(--ds-success-surface)}:where(.notice,.inline-feedback){color:var(--ds-info);background:var(--ds-info-surface)}:where(.attention,.attention-note,.closed-note){color:var(--ds-warning);background:var(--ds-warning-surface)}:where(.divider){background:var(--ds-border);height:1px;margin:20px 0}:where(.info-row){border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:start;gap:16px;padding-block:10px;display:flex}:where(.info-row) span{color:var(--ds-text-muted);font-size:var(--ds-type-label)}:where(.empty,.skeleton-state){color:var(--ds-text-muted);background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface);padding:24px}:where(.empty){text-align:center;gap:8px;display:grid}:where(.empty) strong{color:var(--ds-heading);font-size:1rem}.skeleton-layout{gap:12px;margin-top:20px;display:grid}.skeleton-line{background:var(--ds-border);border-radius:4px;width:100%;height:20px;animation:1.5s ease-in-out infinite alternate ds-pulse;display:block}.skeleton-line:nth-child(3n){width:65%}.skeleton-workspace{max-width:680px;margin:10vh auto}.skeleton-workspace .skeleton-line{height:44px}@keyframes ds-pulse{to{opacity:.45}}*{scrollbar-color:var(--ds-control-border) var(--ds-surface-subtle);scrollbar-width:auto}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--ds-surface-subtle)}::-webkit-scrollbar-thumb{border:3px solid var(--ds-surface-subtle);background:var(--ds-control-border);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--ds-text-muted)}::-webkit-scrollbar-thumb:active{background:var(--ds-action)}.segmented{flex-wrap:wrap;align-items:center;gap:4px;width:auto;margin:0;padding:0;display:inline-flex}.segmented button{white-space:nowrap;min-width:72px}.booking-controls{background:var(--ds-surface);border-radius:var(--ds-radius-surface)}.booking-period-controls .segmented{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.dashboard-week-metrics{background:0 0;border:0}.weekly-detail-trigger{border-radius:var(--ds-radius-control);width:100%;color:var(--ds-text);background:var(--ds-surface-subtle);border:0;justify-content:stretch;justify-items:start;gap:4px;padding:12px;display:grid}.weekly-detail-trigger strong{color:var(--ds-heading);font-size:1.5rem}.weekly-detail-trigger small{color:var(--ds-text-muted)}.weekly-detail-trigger:hover{color:var(--ds-text);background:var(--ds-hover);border-color:#0000}.dashboard-week-metrics>button{border-radius:var(--ds-radius-control);background:var(--ds-surface-subtle);border:0}.quote-line{border:0;border-bottom:1px solid var(--ds-border);grid-template-columns:minmax(180px,2fr) repeat(3,minmax(90px,1fr));gap:12px;margin:0;padding:16px 0;display:grid}.quote-line legend{font-size:var(--ds-type-label);padding:0}.quote-line>strong{align-self:center}.app-shell.os-v2{width:100%;min-height:100dvh;color:var(--ds-text);background:var(--ds-canvas);grid-template-columns:224px minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--ds-border);background:var(--ds-surface);flex-direction:column;gap:20px;height:100dvh;padding:24px 14px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{width:100%;min-height:52px;color:var(--ds-heading);text-align:left;white-space:normal;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.brand:hover{color:var(--ds-heading);background:0 0;border:0}.brand-mark{background:var(--ds-accent-soft);width:44px;height:44px;color:var(--ds-action);border-radius:8px;flex:0 0 44px;place-items:center;font-weight:700;display:grid}.brand-mark img,.mobile-header-brand img{object-fit:contain;width:100%;height:100%;display:block}.brand-title{font-size:var(--ds-type-body);overflow-wrap:anywhere;line-height:1.3;display:block}.brand-subtitle{color:var(--ds-text-muted);margin-top:3px;font-size:12px;font-weight:400}.nav-section{gap:6px;display:grid}.nav-label{color:var(--ds-text-muted);padding-inline:12px;font-size:12px;font-weight:500}.sidebar nav{gap:3px;display:grid}.sidebar .nav-button{width:100%;min-height:44px;color:var(--ds-text-muted);text-align:left;background:0 0;border:0;border-radius:8px;justify-content:flex-start;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:none;display:flex}.sidebar .nav-button:hover{color:var(--ds-heading);background:var(--ds-surface-subtle)}.sidebar .nav-button.active{color:var(--ds-on-action);background:var(--ds-selected);font-weight:600}.sidebar .nav-button.active:hover{color:var(--ds-on-action);background:var(--ds-action-hover)}.sidebar-note{border-top:1px solid var(--ds-border);gap:4px;margin-top:auto;padding:16px 12px 0;display:grid}.sidebar-note strong{font-size:13px}.sidebar-note span{color:var(--ds-text-muted);font-size:12px}.main{width:100%;min-width:0;max-width:1600px;padding:28px 32px 48px}.workspace-header{justify-content:space-between;align-items:center;gap:20px;min-height:64px;margin-bottom:24px;display:flex}.workspace-heading{align-items:center;gap:12px;min-width:0;display:flex}.workspace-heading>div{gap:6px;display:grid}.workspace-heading h1{font-size:var(--ds-type-page)}.topbar-command-row,.top-actions{align-items:center;gap:8px;display:flex}.compact-search{flex:0 0 var(--ds-control-height);width:var(--ds-control-height);min-width:var(--ds-control-height);min-height:var(--ds-control-height);color:var(--ds-text-muted);padding:0}.business-switcher{width:100%;min-height:var(--ds-control-height);flex-shrink:0;margin-top:10px}.mobile-header-brand,.mobile-nav,.mobile-workspace-switcher{display:none}.skip-link{z-index:200;color:var(--ds-on-action);background:var(--ds-action);border-radius:8px;padding:12px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}:where(button[aria-pressed],button[aria-selected],button[aria-current],.inventory-groups button,.settings-menu button,.new-order-stepper button,.public-date,.public-time-button){transition:none}:where(.segmented,.communication-tabs,.order-file-tabs,.order-stage-tabs,.profile-tabs,.settings-menu,.tab-bar,.import-kind-grid,.body-pages,.calendar-date-control) :where(button,summary),:where(.nav-button,.card-button,.customer-button,.message-row,.rota-shift,.profile-order-button,.order-work-open,.today-appointment-button,.weekly-appointment-button,.calendar-empty,.list-toggle,.booking-approval-main,.customer-overview-row,.stock-product-open,.dashboard-work-card,.weekly-detail-trigger,.monthly-breakdown-button,.recent-entry,.diary-event,.week-calendar-day-head,.task-card,.order-stage-more summary,.order-more-action summary){color:var(--ds-text);border-radius:var(--ds-radius-control);text-align:left;background:0 0;border:0}:where(.segmented,.communication-tabs,.order-file-tabs,.order-stage-tabs,.profile-tabs,.settings-menu,.tab-bar,.import-kind-grid,.body-pages,.calendar-date-control) :where(button,summary):where(:hover),:where(.card-button,.customer-button,.message-row,.rota-shift,.profile-order-button,.order-work-open,.today-appointment-button,.weekly-appointment-button,.calendar-empty,.list-toggle):where(:hover){color:var(--ds-heading);background:var(--ds-surface-subtle);border-color:#0000}:where(.segmented,.communication-tabs,.order-file-tabs,.order-stage-tabs,.profile-tabs,.settings-menu,.tab-bar,.import-kind-grid,.body-pages,.calendar-date-control) :where(button.active,button[aria-selected=true],button[aria-pressed=true],button[aria-current=page]){color:var(--ds-on-action);background:var(--ds-selected);border-color:#0000;font-weight:600}:where(.tab-bar,.communication-tabs,.order-file-tabs,.order-stage-tabs){flex-wrap:nowrap;gap:4px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}:where(.tab-bar,.communication-tabs,.order-file-tabs,.order-stage-tabs) button{white-space:nowrap;flex:none;min-height:44px}:where(.communication-tabs) span{min-width:20px;padding:2px 5px}:where(.inventory-groups) button.active{color:var(--ds-on-action);background:var(--ds-selected);border-color:#0000}:where(.profile-tabs) button{white-space:normal;min-height:52px}:where(.settings-menu,.profile-tabs) button[aria-pressed=true] small,:where(.settings-menu,.profile-tabs) button.active small{color:var(--ds-on-action)}:where(.profile-tabs) button small{display:block}:where(.settings-menu,.profile-tabs) button small{color:var(--ds-text-muted);font-size:12px}:where(.tool-link-list){display:grid}:where(.tool-link-list)>:where(button,a){min-height:56px;color:var(--ds-text);border:0;border-bottom:1px solid var(--ds-border);text-align:left;background:0 0;border-radius:0;grid-template-columns:24px minmax(0,1fr) 20px;justify-content:stretch;gap:12px;padding:12px 16px;text-decoration:none;display:grid}:where(.tool-link-list)>:where(button,a):last-child{border-bottom:0}.modal-backdrop{z-index:var(--ds-layer-dialog);background:var(--ds-overlay);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{overscroll-behavior:contain;border-radius:var(--ds-radius-dialog);width:min(720px,100%);max-height:calc(100dvh - 48px);color:var(--ds-text);background:var(--ds-surface);box-shadow:var(--ds-elevation);padding:0 24px 24px;scroll-padding-top:20px;display:block;position:relative;overflow-y:auto}.modal:focus{outline:none}.modal:has(.order-file,.order-form,.customer-file,.inventory-form,.weekly-appointments-sheet){width:min(1120px,100%)}.modal-head{background:var(--ds-surface-subtle);border:0;align-items:center;gap:12px;min-height:76px;margin:0 -24px 24px;padding:16px 24px;display:flex;position:relative}.modal-head h2{font-size:var(--ds-type-dialog);flex:1}.modal-head-action{flex-wrap:wrap;gap:8px;display:flex}.modal-head .icon-button{border-color:#0000}.modal .modal-head+:where(p,.error,.success){margin-bottom:16px}.task-form-section{border-radius:var(--ds-radius-surface);background:var(--ds-surface-subtle);border:0;gap:8px;min-width:0;margin:0;padding:16px;display:grid}.task-form-section :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){background-color:var(--ds-surface)}.task-form-section>legend{width:100%;font-size:var(--ds-type-section);margin-bottom:8px;padding:0}.task-form-section>p{color:var(--ds-text-muted);font-size:var(--ds-type-label);margin-bottom:8px}.task-form-section>div{gap:16px;min-width:0;display:grid}:where(.task-review){background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}:where(.task-review)>span{gap:4px;min-width:0;padding:12px;display:grid}:where(.task-review) strong{overflow-wrap:anywhere}:where(.task-completion){background:var(--ds-success-surface);border-radius:var(--ds-radius-surface);align-items:flex-start;gap:12px;padding:20px;display:flex}:where(.task-completion)>svg{color:var(--ds-success)}:where(.task-completion)>div:first-of-type{flex:1;gap:6px;display:grid}:where(.task-completion-action){align-self:center}:where(.task-counts){color:var(--ds-text-muted);font-size:var(--ds-type-meta);flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}:where(.task-counts) strong{color:var(--ds-heading)}:where(.search-field){flex:240px}:where(.profile-context){gap:4px;display:grid}:where(.order-file-head){border-bottom:1px solid var(--ds-border);padding-bottom:20px}:where(.customer-profile-avatar,.customer-list-avatar){background:var(--ds-accent-soft);color:var(--ds-action);border-radius:8px;font-weight:600}:where(.customer-profile-identity h3,.order-row-customer,.order-work-title,.customer-list-main strong,.today-appointment-name){color:var(--ds-heading);font-size:1rem;font-weight:600}:where(.profile-record)>summary{cursor:pointer;min-height:52px;padding:12px 14px}:where(.profile-record-body){padding:0 14px 14px}:where(.customer-directory-list)>*{border-bottom:1px solid var(--ds-border)}:where(.customer-directory-list)>:last-child{border-bottom:0}:where(.customer-directory-list){background:var(--ds-surface);border-radius:var(--ds-radius-surface);border:0}:where(.customer-directory-list .customer-button){border:0;border-radius:0}.customer-overview-list{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface)}.customer-overview-row{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.customer-overview-row:hover{background:var(--ds-hover)}.customer-overview-row>svg:last-child{color:var(--ds-text-muted)}.customer-measurement-preview,.customer-notes-card,.customer-file .profile-record{background:var(--ds-surface-subtle);box-shadow:none}.os-v2 .customer-invoice-metrics{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}.customer-invoice-metrics>.metric,.customer-payment-summary{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface);border:0;min-width:0;min-height:100px}.customer-invoice-metrics>.metric{padding:16px}.customer-paid-trigger{cursor:pointer;border-radius:var(--ds-radius-surface);grid-template-columns:minmax(0,1fr) 18px;align-content:start;align-items:center;gap:4px 8px;min-height:100px;padding:16px;list-style:none;display:grid}.customer-paid-trigger::-webkit-details-marker{display:none}.customer-paid-label{grid-column:1}.customer-paid-value{grid-area:2/1}.customer-paid-chevron{color:var(--ds-text-muted);grid-area:1/2}.customer-paid-trigger:hover{background:var(--ds-hover)}.customer-payment-summary[open] .customer-paid-chevron{transform:rotate(180deg)}.customer-payment-details{font-size:var(--ds-type-meta);gap:8px;padding:0 16px 16px;display:grid}.customer-payment-record{border-radius:var(--ds-radius-control);background:var(--ds-surface);gap:4px;padding:12px;display:grid}:where(.measurement-grid>article){padding:12px}:where(.measurement-grid>article,.customer-measurement-grid>p){background:var(--ds-surface-subtle);border-radius:8px}:where(.measurement-grid span,.customer-measurement-grid span){color:var(--ds-text-muted);font-size:var(--ds-type-meta)}:where(.measurement-grid strong,.customer-measurement-grid strong){font-size:1rem}:where(.today-appointment-type){background:var(--appointment-fill,var(--ds-surface-subtle));color:var(--appointment-ink,var(--ds-text))}.appointment-card{background:color-mix(in srgb, var(--appointment-fill,var(--ds-selected)) 12%, var(--ds-surface));color:var(--ds-text)}:where(.today-appointment-type){border-radius:6px;font-size:12px;font-weight:500}:where(.weekly-appointment-type){background:var(--appointment-fill,var(--ds-surface-subtle))}:where(.today-appointment-note,.weekly-appointment-copy>small,.order-row-product,.order-row-meta){color:var(--ds-text-muted);font-size:var(--ds-type-meta)}:where(.order-view-panel,.customer-directory-panel,.embedded-panel){background:var(--ds-surface);border:0}:where(.order-work-queue){background:0 0;border:0}:where(.order-work-card){background:var(--ds-surface-subtle);box-shadow:none}:where(.order-stage-menu,.order-more-menu,.order-row-menu,.order-stage-more>div,.order-card-menu>div){border-radius:var(--ds-radius-control);background:var(--ds-surface);box-shadow:var(--ds-elevation);border:0}:where(.order-form .invoice-section,.order-form .invoice-composer-step,.invoice-section .invoice-section){box-shadow:none;background:0 0;border:0;border-radius:0}:where(.order-form .invoice-section)+.invoice-section{border:0}.order-form .invoice-composer-step>.invoice-section{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface);border:0}.order-form .invoice-section :where(input:not([type=checkbox]):not([type=radio]),select,textarea){background-color:var(--ds-surface)}.customer-mode{background:var(--ds-control-fill);border-radius:var(--ds-radius-control)}.customer-mode button{background:0 0;border:0}.customer-mode button[aria-pressed=true]{background:var(--ds-selected);color:var(--ds-on-action)}:where(.order-optional-section,.quote-preview-disclosure){border:0;border-block:1px solid var(--ds-border);background:0 0;border-radius:0}:where(.order-optional-section,.quote-preview-disclosure)>summary{cursor:pointer;min-height:52px}:where(.invoice-edit-totals,.order-stage-guidance,.stock-status-summary),:where(.stock-image){background:var(--ds-surface-subtle);border-radius:8px}:where(.rota-day,.month-day,.diary-hour,.diary-day-head){border-color:var(--ds-border)}:where(.day-cell.today,.month-day.today){background:var(--ds-accent-soft)}.rota-toolbar{background:var(--ds-surface);border-radius:var(--ds-radius-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:16px;display:flex}.rota-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rota-week-navigation{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);grid-template-columns:44px minmax(100px,1fr) 44px;align-items:center;gap:4px;padding:4px;display:grid}.rota-week-navigation button{padding-inline:8px}.rota-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.rota-day{border-radius:var(--ds-radius-surface);background:var(--ds-surface);border:0;min-width:0;padding:16px}.rota-day-head{gap:4px;display:grid}.rota-day-body{gap:8px;margin-top:12px;display:grid}.rota-shift{background:var(--ds-surface-subtle);text-align:left;gap:4px;width:100%;padding:12px;display:grid}.rota-shift:hover{background:var(--ds-hover)}.rota-shift:disabled{opacity:1;cursor:default}.rota-empty{border-radius:var(--ds-radius-control);background:var(--ds-surface-subtle);min-height:44px;color:var(--ds-text-muted);font-size:var(--ds-type-label);align-items:center;padding:12px;display:grid}.new-order-stepper{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface)}.new-order-stepper button{color:var(--ds-text-muted);font-size:var(--ds-type-label);background:0 0;border:0}.new-order-stepper button.active{background:var(--ds-selected);color:var(--ds-on-action)}.new-order-stepper button.complete{color:var(--ds-action)}.new-order-stepper button:disabled{opacity:1;cursor:default}@media (width<=380px){.new-order-stepper strong{font-size:12px}}.week-duration-calendar{border:1px solid var(--ds-border);background:var(--ds-surface);border-radius:8px;grid-template-columns:36px repeat(7,minmax(0,1fr));width:100%;min-width:0;display:grid;overflow:visible}.week-calendar-time,.week-calendar-day{border-right:1px solid var(--ds-border);min-width:0;max-width:100%}.week-calendar-day:last-child{border-right:0}.week-calendar-day-head{z-index:2;box-sizing:border-box;color:var(--ds-text);border-bottom:1px solid var(--ds-border);text-align:center;background:var(--ds-surface-subtle);white-space:nowrap;border-radius:0;align-content:center;justify-items:center;gap:1px;width:100%;height:44px;min-height:44px;padding:3px 1px;font-size:11px;line-height:13px;display:grid;position:sticky;top:0}.week-calendar-day-head span{white-space:nowrap;overflow-wrap:normal;word-break:normal}.week-calendar-day-head strong{font-variant-numeric:tabular-nums;font-size:15px;line-height:18px}.week-calendar-track{background:linear-gradient(to bottom, var(--ds-surface-subtle) 0 calc(var(--fit-open,9) * var(--fit-hour,56px)), var(--ds-surface) calc(var(--fit-open,9) * var(--fit-hour,56px)) calc(var(--fit-close,18) * var(--fit-hour,56px)), var(--ds-surface-subtle) calc(var(--fit-close,18) * var(--fit-hour,56px)) 100%);position:relative}.week-calendar-hour{width:100%;height:var(--fit-hour,56px);min-height:var(--fit-hour,56px);color:var(--ds-text-muted);border:0;border-bottom:1px solid var(--ds-border);background:0 0;border-radius:0;padding:0;display:block}.week-calendar-hour:hover{background:var(--ds-surface-subtle);border-color:var(--ds-border)}.week-calendar-time>time{box-sizing:border-box;height:var(--fit-hour,56px);min-height:var(--fit-hour,56px);color:var(--ds-text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--ds-border);padding:5px 2px;font-size:10px;line-height:13px;display:block}.week-calendar-event{top:var(--event-top);left:calc(var(--event-lane) * 100% / var(--event-lanes));width:calc(100% / var(--event-lanes));height:var(--event-height);border:1px solid var(--ds-surface);min-width:0;min-height:0;color:var(--appointment-ink,var(--ds-text));background:var(--appointment-fill,var(--ds-selected));text-align:left;border-radius:4px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:1px;padding:3px 2px;font-size:11px;line-height:13px;display:flex;position:absolute;overflow:hidden}.week-calendar-event>:is(strong,span,small){text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;word-break:normal;min-width:0;max-width:100%;color:inherit;flex:none;display:block;overflow:hidden}.week-calendar-event>strong{font-size:11px;line-height:13px}.week-calendar-event>:is(span,small){font-size:10px;line-height:11px}.week-calendar-event:focus-visible{outline-color:currentColor}.week-calendar-event:hover{color:var(--appointment-ink,var(--ds-text));background:var(--appointment-fill,var(--ds-selected))}@media (forced-colors:active){.week-calendar-track{background:canvas}}.month-calendar button>span{white-space:nowrap;word-break:normal;font-size:10px;line-height:12px}.month-calendar button>strong{font-variant-numeric:tabular-nums;font-size:15px;line-height:18px}.month-calendar button>small{word-break:normal;font-size:10px;line-height:11px}.calendar-range-title{font-size:var(--ds-type-section);line-height:1.3}.os-v2 .notification-switch{background:var(--ds-border);border:1px solid var(--ds-control-border);border-radius:18px}.os-v2 .notification-switch:after{background:var(--ds-surface);box-shadow:0 1px 3px var(--ds-border);border-radius:50%}.os-v2 .notification-switch:checked{background:var(--ds-action);border-color:var(--ds-action)}:where(.page-actions) button{white-space:nowrap;flex-shrink:0}.finance-key-figures{background:var(--ds-surface);border-radius:var(--ds-radius-surface);border:0;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.finance-key-figures>div{gap:6px;min-width:0;padding:16px;display:grid}.finance-key-figures>div+div{border-left:0}.finance-key-figures dt{color:var(--ds-text-muted);font-size:var(--ds-type-label)}.finance-key-figures dd{color:var(--ds-heading);font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:600}.finance-summary-state{border-radius:var(--ds-radius-surface);background:var(--ds-surface);border:0;gap:12px;padding:16px;display:grid}.communication-toolbar{grid-template-columns:minmax(240px,1fr) auto;align-items:center;gap:12px;margin:12px 0;display:grid}.message-search{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.communication-desk{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.message-list-panel,.conversation-panel{border-radius:var(--ds-radius-surface);background:var(--ds-surface);min-width:0;padding:16px}.message-list-head{font-size:var(--ds-type-label);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.message-list{gap:8px;display:grid}.message-row{background:var(--ds-surface-subtle);text-align:left;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:8px 10px;width:100%;min-width:0;padding:12px;display:grid}.message-row[aria-pressed]{transition:none}.message-row[aria-pressed=true]{color:var(--ds-on-action);background:var(--ds-selected)}.message-row[aria-pressed=true] :where(small,.message-preview,.message-status,.message-delivery-error){color:var(--ds-on-action)}.message-row:hover{background:var(--ds-hover)}.message-row[aria-pressed=true]:hover{background:var(--ds-action-hover)}.message-avatar{width:36px;height:36px;color:var(--ds-action);background:var(--ds-surface);border-radius:8px;place-items:center;display:grid}.message-summary{min-width:0;font-size:var(--ds-type-label);gap:4px;display:grid}.message-summary-identity{flex-wrap:wrap;justify-content:space-between;gap:4px 8px;display:flex}.message-summary-identity small{font-size:12px}.message-preview{-webkit-line-clamp:2;font-size:var(--ds-type-meta);color:var(--ds-text-muted);-webkit-box-orient:vertical;font-style:normal;font-weight:400;display:-webkit-box;overflow:hidden}.message-status{flex-wrap:wrap;grid-column:2;align-items:center;gap:8px;font-size:12px;display:flex}.message-delivery-error{color:var(--ds-danger);font-size:12px;font-style:normal;font-weight:400}.conversation{gap:16px;display:grid}.conversation-contact{justify-content:space-between;align-items:center;gap:12px;display:flex}.conversation-contact>button{white-space:nowrap;flex-shrink:0}.conversation-identity{gap:4px;min-width:0;display:grid}.conversation-identity-name{font-size:1rem}.conversation-identity>:where(p,span){font-size:var(--ds-type-label);color:var(--ds-text-muted);overflow-wrap:anywhere}.conversation-thread{border-radius:var(--ds-radius-control);background:var(--ds-surface-subtle);align-content:start;gap:8px;min-height:180px;max-height:480px;padding:12px;display:grid;overflow-y:auto}.conversation-bubble{width:fit-content;max-width:min(88%,64ch);color:var(--ds-text);background:var(--ds-surface);border:0;border-radius:12px;justify-self:start;gap:4px;padding:8px 12px;display:grid}.conversation-bubble.outbound{color:var(--ds-on-action);background:var(--ds-action);justify-self:end}.conversation-bubble.outbound :where(.conversation-message-meta,.conversation-message-meta small,.conversation-message-status,.conversation-message-error){color:var(--ds-on-action)}.conversation-message-meta{color:var(--ds-text-muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:12px;display:flex}.conversation-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--ds-type-label);margin:0;line-height:1.45}.conversation-message-status{color:var(--ds-text-muted);font-size:12px}.conversation-message-error{color:var(--ds-danger);font-size:12px}.conversation-reply{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);padding:16px}.conversation-reply :where(input,select,textarea){background-color:var(--ds-surface)}.communication-empty{text-align:center;align-content:center;justify-items:center;gap:12px;min-height:180px;display:grid}.mobile-conversation-back{display:none}.communication-desk:has(.communication-empty){grid-template-columns:minmax(0,1fr)}.conversation-panel:has(.communication-empty){display:none}.communication-desk.empty{min-height:0;display:block}.communication-desk.empty .conversation-panel{display:none}.communication-desk.empty .message-list-panel{padding:12px 0}.os-v2 .invoice-picker-option{align-items:center;gap:8px;min-width:0;display:flex}.os-v2 .invoice-picker-option .invoice-picker-add{flex:1;min-width:0}.os-v2 .invoice-picker-option .invoice-picker-preview{white-space:nowrap;flex:none;display:inline-flex}.os-v2 .inventory-image-placeholder{font-size:var(--ds-type-meta);color:var(--ds-text-muted);text-align:center}.os-v2 .selected-item-photo{border:0;width:48px;height:64px;padding:0}.os-v2 .selected-item-photo img{object-fit:contain;width:46px;height:62px}.os-v2 .invoice-document-tools{grid-column:1/-1}.os-v2 .invoice-document-tools>summary{min-height:44px;color:var(--ds-action);cursor:pointer;align-items:center;padding:10px 0;display:inline-flex}.os-v2 .invoice-document-tools>div{flex-wrap:wrap;gap:8px;display:flex}.login-shell,.onboarding-shell{align-content:center;justify-items:center;min-height:100dvh;padding:32px 20px;display:grid}.login-card,.onboarding-card,.center-card{border-radius:var(--ds-radius-dialog);width:min(440px,100%);color:var(--ds-text);background:var(--ds-surface);border:0;gap:20px;padding:32px;display:grid}.onboarding-card{width:min(640px,100%)}.login-logo{width:44px;height:44px;color:var(--ds-action);background:var(--ds-accent-soft);border-radius:8px;place-items:center;font-weight:700;display:grid}.login-card h1,.onboarding-card h1,.center-card h1{font-size:1.75rem}.login-card>p,.onboarding-card>p{color:var(--ds-text-muted);font-size:14px}.password-field{position:relative}.password-field input{padding-right:52px}.password-field .icon-button{color:var(--ds-text-muted);background:0 0;border:0;position:absolute;top:0;right:2px}.public-shell{background:var(--ds-canvas);min-height:100dvh;padding:32px 24px}.booking-flow-shell{max-width:1080px;margin-inline:auto}.public-booking-header{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding-bottom:24px;display:grid}.public-back-button,.public-month-button{width:44px;min-width:44px;color:var(--ds-action);background:var(--ds-surface-subtle);border-color:#0000;padding:0}.public-signin-button{align-items:center;min-height:44px;font-size:14px;text-decoration:none;display:inline-flex}.public-brand{color:var(--ds-heading);align-items:center;gap:12px;display:flex}.public-brand>span{background:var(--ds-accent-soft);width:44px;height:44px;color:var(--ds-action);border-radius:8px;place-items:center;display:grid}.public-brand img{object-fit:contain;width:56px;height:44px}.public-brand strong{font-size:16px;display:block}.public-brand small{font-size:12px;display:block}.public-progress-panel{grid-column:2/-1;align-items:center;gap:20px;display:flex}.public-step-count{color:var(--ds-text-muted);white-space:nowrap;font-size:13px;font-weight:500}.public-step-rail{flex-wrap:wrap;gap:20px;font-size:14px;display:flex}.public-step-rail span{color:var(--ds-text-muted);align-items:center;gap:8px;display:inline-flex}.public-step-rail i{background:var(--ds-border);border-radius:50%;width:8px;height:8px}.public-step-rail .active{color:var(--ds-action);font-weight:600}.public-step-rail .active i,.public-step-rail .complete i{background:var(--ds-action)}.public-booking-main{gap:24px;max-width:760px;margin-inline:auto;display:grid}.public-step,.public-details-form{gap:20px;display:grid}.public-step-intro{gap:8px;display:grid}.public-step-intro h1{letter-spacing:-.02em;font-size:28px;line-height:1.25}.public-step-intro p{max-width:65ch;color:var(--ds-text-muted)}.public-service-list{gap:12px;display:grid}.public-service-card{width:100%;min-height:100px;color:var(--ds-text);background:var(--ds-surface);border-radius:var(--ds-radius-surface);box-shadow:var(--ds-surface-depth);text-align:left;white-space:normal;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;display:grid}.public-service-card>span{gap:5px;display:grid}.public-service-card strong{font-size:18px}.public-service-card small{color:var(--ds-text-muted);font-size:14px;font-weight:400;display:block}.public-service-card em{color:var(--ds-text-muted);font-size:13px;font-style:normal}.public-service-card b{color:var(--ds-action);font-size:14px;font-weight:600}.public-service-card.selected{color:var(--ds-on-action);background:var(--ds-action)}.public-service-card.selected :where(strong,small,em,b){color:var(--ds-on-action)}.public-service-card:hover{color:var(--ds-text);background:var(--ds-surface-subtle);border-color:var(--ds-control-border)}.public-service-card.selected:hover{background:var(--ds-action-hover)}.public-approval-pill{color:var(--ds-warning);font-size:12px}.public-included-panel{border-top:1px solid var(--ds-border);gap:12px;padding-top:20px;display:grid}.public-included-panel ul{color:var(--ds-text-muted);margin:0;padding-left:20px}.public-booking-footer{padding:20px 0 calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--ds-border);background:var(--ds-canvas);justify-content:space-between;align-items:center;gap:20px;display:flex;position:sticky;bottom:0}.public-booking-footer p{max-width:55ch;color:var(--ds-text-muted);font-size:14px}.public-booking-footer button{flex-shrink:0;min-width:144px}.public-month-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.public-month-head>div{gap:8px;display:flex}.public-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.public-weekday{color:var(--ds-text-muted);text-align:center;padding-block:8px;font-size:13px}.public-date{min-height:48px;color:var(--ds-text);background:var(--ds-surface);border:1px solid #0000;padding:8px;font-size:14px}.public-date.outside{color:var(--ds-text-muted)}.public-date.unavailable{opacity:.4}.public-date.selected,.public-time-button.selected{color:var(--ds-on-action);background:var(--ds-action);border-color:var(--ds-action)}.public-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.public-time-grid>section{flex-wrap:wrap;align-items:start;gap:8px;display:flex}.public-time-grid h4{width:100%;margin-bottom:4px}.public-time-button{min-width:82px;color:var(--ds-action);background:var(--ds-surface-subtle);border-color:#0000}.public-field{gap:6px;display:grid}.public-field.phone>div{display:block}.public-hold-message,.public-selected-slot{color:var(--ds-info);background:var(--ds-info-surface);border-radius:8px;padding:14px 16px;font-size:14px}.public-selected-slot{color:var(--ds-text);background:var(--ds-surface-subtle)}.public-consent{color:var(--ds-text-muted);font-size:14px}.public-card{background:var(--ds-surface);border-radius:var(--ds-radius-dialog);border:0;gap:24px;max-width:680px;margin:6vh auto;padding:32px;display:grid}.public-state h1{font-size:28px}.public-confirmation-summary{gap:0;margin:0;display:grid}.public-confirmation-summary>div{border-bottom:1px solid var(--ds-border);grid-template-columns:120px minmax(0,1fr);gap:16px;padding-block:12px;display:grid}.public-confirmation-summary dt{color:var(--ds-text-muted);font-size:14px}.public-confirmation-summary dd{margin:0;font-weight:500}.public-confirmation-next{color:var(--ds-text-muted);gap:8px;display:grid}.public-complete-mark{width:44px;height:44px;color:var(--ds-success)}.public-completion-copy{gap:12px;display:grid}.design-gallery{color:var(--ds-text);background:var(--ds-canvas);gap:32px;padding:24px;display:grid}.design-gallery>section{gap:16px;display:grid}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=768px) and (width<=1024px){.app-shell.os-v2{grid-template-columns:188px minmax(0,1fr)}.sidebar{padding-inline:10px}.main{padding:24px 20px 40px}.brand{gap:8px}.brand-title{font-size:14px}.brand-subtitle{display:none}.sidebar .nav-button{padding-inline:10px}}@media (width<=1100px){.rota-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.communication-toolbar,.communication-desk{grid-template-columns:minmax(0,1fr)}}@media (width<=767px){:root{--ds-type-page:1.75rem;--panel-content-inset-inline:16px;--panel-content-inset-block:16px}.app-shell.os-v2{display:block}.sidebar{display:none}.main{padding:calc(16px + env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom))}.workspace-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:24px;display:grid}.workspace-heading{grid-area:1/1;width:100%}.workspace-heading h1{font-size:28px}.mobile-header-brand{width:32px;min-width:32px;height:44px;color:var(--ds-action);background:0 0;border:0;place-items:center;padding:0;display:grid}.topbar-command-row{display:contents}.workspace-header .top-actions{grid-area:1/2}.compact-search{width:44px;min-width:44px;padding:0}.compact-search span{display:none}.mobile-workspace-switcher{grid-area:2/1/auto/-1;width:100%;font-size:12px;display:grid}.mobile-workspace-switcher>span{display:none}.mobile-workspace-switcher select{font-size:14px}.mobile-nav{z-index:var(--ds-layer-nav);padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--ds-border);background:var(--ds-surface);grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{min-height:52px;color:var(--ds-text-muted);background:0 0;border:0;gap:4px;padding:6px 2px;font-size:12px;font-weight:500;transition:none;display:grid}.mobile-nav button.active{color:var(--ds-on-action);background:var(--ds-selected);font-weight:600}:where(.panel){padding:var(--panel-content-inset-block) var(--panel-content-inset-inline)}:where(.new-order-stepper) strong{font-size:var(--ds-type-meta)}:where(.two-fields,.two-column,.three-column){grid-template-columns:1fr}.finance-key-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-key-figures>div:nth-child(3){border-left:0}.finance-key-figures>div:nth-child(n+3){border-top:0}.os-v2 .staff-performance-panel>.panel-head{grid-template-columns:minmax(0,1fr);display:grid}.os-v2 .report-range{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.os-v2 .report-range label{flex:none;align-content:start}.os-v2 .report-range>button{grid-column:1/-1;justify-self:start}.quote-line{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-line>label:first-of-type{grid-column:1/-1}.rota-toolbar{grid-template-columns:minmax(0,1fr);padding:12px;display:grid}.rota-actions{grid-template-columns:minmax(0,1fr) auto;width:100%;display:grid}.rota-week-navigation{grid-template-columns:44px minmax(0,1fr) 44px}.rota-actions>.button-primary{padding-inline:12px}.rota-grid{grid-template-columns:minmax(0,1fr)}.os-v2 .customer-invoice-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-invoice-metrics>.metric:first-child{grid-column:1/-1}.communication-desk{display:block}.communication-desk.conversation-list-open .conversation-panel,.communication-desk.conversation-open .message-list-panel{display:none}.communication-desk.conversation-open .conversation-panel{display:block}.mobile-conversation-back{justify-content:flex-start;margin-bottom:12px;display:inline-flex}.conversation-contact{align-items:start}.conversation-contact>button{padding-inline:12px}.conversation-bubble{max-width:94%}.message-list-panel,.conversation-panel{padding:12px}.conversation-thread{padding:10px}:where(.panel-head){flex-wrap:wrap}.modal-backdrop{padding:calc(8px + env(safe-area-inset-top)) 8px calc(8px + env(safe-area-inset-bottom));align-items:stretch}:is(.modal,.modal:has(.order-file,.order-form,.customer-file,.inventory-form,.weekly-appointments-sheet)){width:100%;max-height:100%;padding:0 16px 24px}.modal-head{gap:8px;min-height:72px;margin:0 -16px 20px;padding:14px 16px}.modal-head h2{font-size:20px}.modal-head-action{max-width:45%}:where(.task-review){grid-template-columns:1fr}:where(.task-completion){flex-wrap:wrap}.task-completion-action{width:100%}.login-card,.onboarding-card,.center-card{padding:24px}.public-shell{padding:calc(20px + env(safe-area-inset-top)) 16px 0}.public-booking-header{gap:10px;padding-bottom:24px}.public-progress-panel{grid-column:1/-1;gap:12px}.public-step-rail{gap:12px;font-size:12px}.public-service-card{padding:16px}.public-service-card strong{font-size:16px}.public-service-card b{align-self:start}.public-time-grid{gap:16px}.public-booking-footer{gap:12px}.public-booking-footer button{min-width:120px}.public-booking-footer p{font-size:13px}.public-card{margin-block:20px;padding:24px}.public-confirmation-summary>div{grid-template-columns:90px minmax(0,1fr)}}@media (width<=380px){.mobile-nav button{font-size:11px}.mobile-nav button span{white-space:nowrap}.rota-actions{grid-template-columns:minmax(0,1fr)}.rota-actions>.button-primary{justify-self:end}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition:none;animation:none}}.document-preview-frame{background:var(--ds-surface-subtle);border:0;width:100%;min-height:60vh;display:block}:where(.panel-load-error){justify-items:start;gap:12px;display:grid}@media (forced-colors:active){*{scrollbar-color:auto}:where(button,input,select,textarea,.badge,.panel,.item-card,.public-service-card){border:1px solid buttontext}:where(button.active,[aria-selected=true],[aria-pressed=true]){outline-offset:-2px;outline:2px solid highlight}}.dashboard-work-card,.recent-entry,.today-appointment-button,.weekly-appointment-button{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.dashboard-work-card:hover,.recent-entry:hover,.today-appointment-button:hover,.weekly-appointment-button:hover{background:var(--ds-hover)}.dashboard-work-icon{color:var(--ds-warning);background:var(--ds-warning-surface);border-radius:10px}.dashboard-work-copy>strong{font-size:var(--ds-type-label);line-height:1.45}.dashboard-work-copy small{font-size:var(--ds-type-meta);line-height:1.45}.dashboard-empty-appointment{color:var(--ds-text-muted);background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);font-size:var(--ds-type-label)}.dashboard-empty-appointment>svg{color:var(--ds-text-muted)}.dashboard-empty-appointment strong{color:var(--ds-text)}.dashboard-week-metrics>button:hover{background:var(--ds-hover)}.dashboard-activity-list strong{font-size:var(--ds-type-label)}.dashboard-work-copy .dashboard-order-reference{color:var(--ds-text-muted);font-size:var(--ds-type-meta);font-weight:400}.calendar-panel,.booking-day-group{background:var(--ds-surface);border-radius:var(--ds-radius-surface)}.diary-hour .available-slot{color:var(--ds-text-muted);background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0}.diary-hour .available-slot:hover{color:var(--ds-action);background:var(--ds-hover)}.customer-button.crm-list-row{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);box-shadow:none;border:0}.customer-button.crm-list-row:hover{background:var(--ds-hover)}.order-prototype-card{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface)}@media (width<=767px){.os-v2[data-view=dashboard] .workspace-header{grid-template-columns:minmax(0,1fr) auto;gap:12px}.os-v2[data-view=dashboard] .workspace-header .top-actions{grid-area:1/2}.os-v2[data-view=dashboard] .mobile-header-brand{display:none}.today-create-booking{white-space:nowrap;padding-inline:12px}}.stock-product,.staff-score-list>article,.team-member-card,.connection-row{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);box-shadow:none}.stock-product-open,.stock-product-open:hover{color:var(--ds-text);background:0 0}.stock-product-media{color:var(--ds-text-muted);background:var(--ds-surface);border-radius:8px}.stock-product-open strong{font-size:var(--ds-type-label);line-height:1.45}.stock-product-open small,.inventory-group-head p{color:var(--ds-text-muted);font-size:var(--ds-type-meta);font-weight:400}.stock-product details{background:var(--ds-surface);border-radius:var(--ds-radius-control)}.stock-product details>summary{font-size:var(--ds-type-meta);font-weight:500;list-style:none}.stock-product details>summary:hover{background:var(--ds-hover);border-radius:var(--ds-radius-control)}.metric-grid>.metric,.finance-key-figures>div{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0}.finance-key-figures{gap:12px;padding:16px}.settings-menu{background:var(--ds-surface);border-radius:var(--ds-radius-surface)}.settings-menu button{background:var(--ds-surface-subtle)}.settings-menu button:hover{background:var(--ds-hover)}.settings-menu button.active,.settings-menu button[aria-pressed=true],.settings-menu button[aria-current=page],.settings-menu button.active:hover,.settings-menu button[aria-pressed=true]:hover{color:var(--ds-on-action);background:var(--ds-selected)}.tool-link-list{background:var(--ds-surface);border-radius:var(--ds-radius-surface);gap:12px;padding:16px}.tool-link-list>:where(button,a){background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0}.tool-link-list>:where(button,a):hover{background:var(--ds-hover)}.payment-month-summary{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.booking-empty-day{color:var(--ds-text-muted);background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.calendar-slot-label{color:var(--ds-text-muted);font-size:var(--ds-type-meta);font-weight:400}.order-brief,.order-overview-section{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-surface)}.order-item-row,.order-date-grid>div,.selected-order-item{background:var(--ds-surface);border-radius:var(--ds-radius-control)}.order-work-queue{background:var(--ds-surface);border-radius:var(--ds-radius-surface);border:0}.order-next-action,.quote-work-card,.customer-file .profile-order-button,.timeline-item{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);box-shadow:none}.order-file-tabs .order-tab[aria-selected=true],.order-file-tabs .order-tab[aria-selected=true]:hover{color:var(--ds-on-action);background:var(--ds-selected)}.order-brief-record>strong{font-size:var(--ds-type-meta)}@media (width<=767px){.customer-profile-modal .profile-tabs button:not(.active){background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control)}.customer-profile-modal .profile-tabs button:not(.active):hover{background:var(--ds-hover)}}.appointment-rule-row,.opening-row,.branding-logo-control,.notification-master-row,.notification-availability-row,.notification-toggle-row{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);border:0}.appointment-rule-row>summary:hover{background:var(--ds-hover)}.appointment-rule-row[open] input,.opening-row input:not([type=checkbox]){background:var(--ds-surface)}.import-kind-grid{background:var(--ds-surface-subtle);border-radius:var(--ds-radius-control);padding:4px}input[type=color]{background:var(--ds-surface-subtle);border:0;padding:8px}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:0;border-radius:6px}input[type=color]::-moz-color-swatch{border:0;border-radius:6px}.invoice-pdf-preview iframe,.pdf-preview-modal iframe,.email-preview-modal iframe{background:var(--ds-surface);border:0}.public-schedule-group,.public-details-form,.public-included-panel{background:var(--ds-surface);border-radius:var(--ds-radius-surface);border:0;gap:16px;padding:16px;display:grid}.public-date{background:var(--ds-surface-subtle);border:0}.public-date.selected,.public-date.selected:hover,.public-time-button.selected,.public-time-button.selected:hover{color:var(--ds-on-action);background:var(--ds-selected)}.public-date:not(:disabled):not(.selected):hover{background:var(--ds-hover)}.public-service-card.selected:hover{color:var(--ds-on-action)}@media (width<=767px){.os-v2 .communication-workspace>.panel-head{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.os-v2 .communication-workspace>.panel-head>.page-actions{justify-content:flex-start;justify-self:start;width:100%}.os-v2 .communication-workspace>.panel-head>.page-actions>button{padding-inline:12px}.message-list-head>span{white-space:nowrap}}@media (width<=359px){.os-v2 .report-range{grid-template-columns:minmax(0,1fr)}}.stock-product-media>svg,.os-v2 .cancelled-appointments-intro,.os-v2 .cancelled-appointments-count,.os-v2 .cancelled-appointments-message,.os-v2 .cancelled-appointment-copy small,.os-v2 .appointment-status-feedback{color:var(--ds-text-muted)}.os-v2 .cancelled-appointments-error,.os-v2 .appointment-status-feedback[data-state=unknown]{color:var(--ds-danger)}.os-v2 .appointment-status-feedback[data-state=saved],.os-v2 .appointment-status-feedback[data-state=reviewed]{color:var(--ds-success)}.os-v2 .cancelled-appointment-row,.os-v2 .appointment-more>summary{border-radius:var(--ds-radius-control);color:var(--ds-text);background:var(--ds-surface-subtle);border:0}.os-v2 .cancelled-appointment-row:hover:not(:disabled),.os-v2 .appointment-more>summary:hover{background:var(--ds-hover)}.os-v2 .appointment-more>summary{color:var(--ds-action);cursor:pointer;font-weight:600}.os-v2 .appointment-more>summary:after{border-bottom:2px solid;border-right:2px solid}.os-v2 .workspace-header{gap:12px;margin-bottom:18px}.os-v2 .main{padding:20px}.os-v2 .workspace-header h1{font-size:26px;line-height:1.2}.os-v2 .section-title h2,.os-v2 .section-title h3{font-size:16px;line-height:1.35}.os-v2 .modal{padding:20px}.os-v2 .modal-head{gap:12px;min-height:64px;margin:-20px -20px 16px;padding:10px 20px}.os-v2 .modal-head h2{font-size:18px;line-height:1.3}.os-v2 .form-grid{gap:14px}.os-v2 .two-fields{gap:12px}.os-v2 .form-section,.os-v2 .task-form-section{gap:8px;padding:12px}.os-v2 .task-form-section>div{gap:12px}.os-v2 .form-section-title{margin-bottom:8px}.os-v2 .main button,.os-v2 .modal button,.os-v2 .main .button{min-height:44px;font-size:14px;line-height:1.3}.os-v2 label{gap:6px;font-size:13px}.os-v2 input:not([type=checkbox]):not([type=radio]):not([type=range]),.os-v2 select,.os-v2 textarea{min-height:44px;font-size:16px}.os-v2 textarea{min-height:88px}.os-v2 .panel-head{margin-bottom:12px}.os-v2 .toolbar{gap:10px;margin-bottom:14px}.os-v2 .contact-strip a{white-space:normal;overflow-wrap:normal;word-break:normal;min-height:44px}.os-v2 .appointment-profile-head .avatar{background:var(--ds-accent-soft);color:var(--ds-action);border-radius:8px;font-size:13px;font-weight:600}.os-v2 .customer-profile-actions button{font-size:13px}.os-v2 .customer-invoice-metrics{gap:8px}.os-v2 .customer-invoice-metrics>.metric,.os-v2 .customer-payment-summary{min-height:72px}.os-v2 .customer-invoice-metrics>.metric,.os-v2 .customer-paid-trigger{min-height:72px;padding:12px}.os-v2 .customer-invoice-metrics .metric strong,.os-v2 .customer-paid-value{font-size:22px;line-height:1.25}.os-v2 .calendar-panel .week-calendar-event,.os-v2 .calendar-panel .week-calendar-day-head{font-size:11px;line-height:13px}@media (width<=900px){.os-v2 .main{padding:18px}.os-v2 .modal{max-width:calc(100vw - 32px)}}@media (width<=650px){.os-v2 .main{padding:calc(16px + env(safe-area-inset-top)) 12px calc(88px + env(safe-area-inset-bottom))}.os-v2 .workspace-header h1{font-size:22px}.os-v2 .workspace-header{gap:10px;margin-bottom:14px}.os-v2 .modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:auto;max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));align-self:center;padding:16px}.os-v2 .modal-head{margin:-16px -16px 14px;padding:10px 16px}.os-v2 .modal-head h2{font-size:18px}.os-v2 .form-section{padding:12px}.os-v2 .two-fields{gap:12px}.os-v2 .finance-workspace tr:has(>td[data-label=Invoice]):has(>td[data-label=Action])>td{font-size:14px}}
