:root{color:#191c1e;--app-font-family:"Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--app-font-size:12px;font-family:var(--app-font-family);--bg:#f7f9fb;--bg-strong:#eef2f7;--surface:#fff;--surface-2:#f2f4f6;--surface-3:#e6e8ea;--text:#191c1e;--muted:#64748b;--border:#dce2ea;--border-strong:#c3cad5;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-soft:#dbeafe;--teal:#0f766e;--teal-soft:#ccfbf1;--warning:#b45309;--warning-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fee2e2;--success:#15803d;--success-soft:#dcfce7;--sidebar:#0f172a;--sidebar-surface:#172033;--sidebar-text:#f8fafc;--sidebar-muted:#aab6c8;--shadow:0 16px 42px #0f172a14;--shadow-tight:0 8px 22px #0f172a12;--card-bg:#fff;--card-border:#c6c6cd9e;--card-border-hover:#76777d70;--card-radius:16px;--card-radius-sm:12px;--card-shadow:0 4px 10px #0f172a0d;--card-shadow-hover:0 10px 24px #0f172a14;--control-height:48px;--control-radius:12px;--label-letter-spacing:.02em;--font-display:var(--app-font-family);--motion-fast:.14s;--motion-base:.22s;--motion-slow:.32s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--focus-ring:0 0 0 3px color-mix(in srgb, var(--accent) 24%, transparent);background:#f7f9fb}*{box-sizing:border-box}html{min-width:320px}body{background:var(--bg);color:var(--text);font-family:var(--app-font-family);font-size:var(--app-font-size);margin:0;line-height:1.5}button,input,select,textarea{font:inherit;font-family:var(--app-font-family);font-size:var(--app-font-size)}button{color:inherit}button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:2px}a:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:2px}input:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:2px}select:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:2px}h1,h2,h3,p{margin:0}h1{max-width:760px;font-size:2rem;line-height:1.15}h2{font-size:1.35rem;line-height:1.25}h3{align-items:center;gap:8px;margin-bottom:16px;font-size:1rem;line-height:1.3;display:flex}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.app-shell.no-sidebar{grid-template-columns:minmax(0,1fr)}.app-sidebar{background:linear-gradient(180deg, #2563eb1f, transparent 240px), var(--sidebar);height:100vh;color:var(--sidebar-text);border-right:1px solid #ffffff14;padding:24px 18px;position:sticky;top:0}.brand{color:inherit;align-items:center;gap:12px;margin-bottom:32px;text-decoration:none;display:flex}.brand div{gap:2px;min-width:0;display:grid}.brand strong{font-size:1.2rem}.brand-suite{color:var(--sidebar-muted);font-size:.86rem;line-height:1.25}.pp-brand-wordmark{color:inherit;display:inline-flex}.pp-brand-wordmark>.pp-brand-wordmark__visual{color:inherit;font-family:var(--app-font-family);font-size:var(--pp-brand-wordmark-size,1.12rem);letter-spacing:normal;white-space:nowrap;align-items:baseline;gap:0;font-weight:760;display:inline-flex}.pp-brand-wordmark .pp-brand-wordmark__accent{color:#f59e0b;font:inherit;letter-spacing:inherit}.primary-nav{gap:8px;display:grid}.primary-nav a{min-height:44px;color:var(--sidebar-muted);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:0 12px;text-decoration:none;display:flex}.primary-nav a.active,.primary-nav a:hover{color:var(--sidebar-text);background:var(--sidebar-surface);border-color:#ffffff14}.primary-nav a.active{box-shadow:inset 3px 0 0 var(--accent)}.app-workspace{background:linear-gradient(180deg, #dbe1ff73, transparent 300px), var(--bg);min-width:0;padding:28px}.app-topbar{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, transparent);box-shadow:var(--shadow-tight);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:18px;display:flex}.eyebrow,.page-heading span,.metric span:not(.metric-icon){color:var(--muted);font-size:.78rem;font-weight:800}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.segmented-control{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;min-height:40px;padding:3px;display:inline-flex}.segmented-control button{min-width:40px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-weight:800}.segmented-control button.active{color:var(--text);background:var(--accent-soft)}.icon-segment button{justify-content:center;align-items:center;display:inline-flex}.route-surface{width:100%;min-width:0}.login-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-2) 72%, transparent) 0, transparent 360px), var(--bg);grid-template-rows:auto minmax(0,1fr);min-height:100vh;padding:24px;display:grid}.login-topbar{justify-content:space-between;align-items:center;gap:16px;width:min(1180px,100%);min-height:64px;margin:0 auto;display:flex}.login-brand{min-width:0;color:var(--text);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.login-brand>span:last-child{gap:2px;min-width:0;display:grid}.login-brand strong{font-size:1.1rem}.login-brand small{color:var(--muted);font-size:.84rem;line-height:1.25}.login-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.login-return-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.auth-mode-tabs button.active{color:var(--text);background:var(--surface);box-shadow:var(--shadow)}.login-error{border:1px solid color-mix(in srgb, var(--danger) 40%, var(--border));background:var(--danger-soft);color:var(--danger);border-radius:8px;padding:10px 12px;font-weight:800;line-height:1.4}.login-divider{color:var(--muted);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;font-size:.78rem;font-weight:800;display:grid}.login-divider:before,.login-divider:after{content:"";background:var(--border);height:1px}.login-return-panel div{gap:4px;min-width:0;display:grid}.login-return-panel strong{line-height:1.25}.login-return-panel span{color:var(--muted);line-height:1.45}.session-dot.active{background:var(--success);box-shadow:0 0 0 5px var(--success-soft)}.login-return-panel{border-color:color-mix(in srgb, var(--accent) 38%, var(--border));grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.login-return-panel>svg{color:var(--accent)}.page{gap:20px;display:grid}.page-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-heading>div:first-child{gap:6px;display:grid}.section-tabs a.active{color:var(--text);background:var(--accent-soft)}.panel-eyebrow{color:var(--muted);font-size:.78rem;font-weight:800}.metrics{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.metric,.panel,.table,.empty-state,.loading-state{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-tight);border-radius:8px}.metric{border-top-color:color-mix(in srgb, var(--surface) 75%, #fff);align-content:space-between;gap:10px;min-height:118px;padding:16px;display:grid}.metric-icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.metric strong{overflow-wrap:anywhere;min-width:0;font-size:1.72rem;line-height:1.1}.panel,.empty-state,.loading-state{padding:18px}.panel{min-width:0}.appointments-panel,.schedule-panel{grid-column:1/-1}.muted-text{color:var(--muted)}.button{white-space:nowrap;cursor:pointer;min-height:40px;transition:transform var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)scale(.985)}.button:focus-visible{box-shadow:var(--focus-ring);outline:none}.button:disabled{opacity:.58;cursor:not-allowed}.button.primary{color:var(--on-accent);background:var(--accent)}.button.primary:hover:not(:disabled){background:var(--accent-strong);box-shadow:var(--shadow-tight)}.button.secondary{color:var(--text);background:var(--surface);border-color:var(--border)}.button.secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-2)}.button.ghost{min-height:34px;color:var(--accent);background:var(--accent-soft);padding:0 10px}.toolbar{grid-template-columns:24px minmax(0,1fr);align-items:end;gap:12px;max-width:520px;display:grid}.toolbar svg{color:var(--muted);margin-bottom:12px}.table{overflow:hidden}.row{border-bottom:1px solid var(--border);grid-template-columns:1.4fr .8fr 1.1fr .7fr .7fr;align-items:center;gap:12px;min-height:60px;padding:0 16px;display:grid}.row strong{align-items:center;gap:8px;min-width:0;display:flex}.row span,.appointment span,.choice span{color:var(--muted)}.row.header{background:var(--surface-2);min-height:44px;color:var(--muted);font-size:.82rem;font-weight:800}.row:last-child{border-bottom:0}.table-empty{color:var(--muted);padding:18px}.field{min-width:0;color:var(--muted);gap:7px;font-size:.82rem;font-weight:800;display:grid}.phone-field-input-wrap{border:1px solid var(--border);background:var(--surface-2);transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.phone-field-input-wrap:focus-within{border-color:var(--accent);box-shadow:var(--focus-ring)}.phone-field--error .phone-field-input-wrap{border-color:var(--danger,#dc2626)}.phone-field-input-wrap .phone-field-country-select{width:max(6.75rem,min(28vw,8.5rem));min-width:0;max-width:42%;min-height:0;color:var(--text);text-overflow:ellipsis;cursor:pointer;flex:0 0 max(6.75rem,min(28vw,8.5rem));padding-inline-start:10px;padding-inline-end:26px;font-size:.82rem;font-weight:700;border:0!important;border-inline-end:1px solid var(--border)!important;background-color:var(--surface-3)!important;box-shadow:none!important;border-radius:0!important;outline:0!important}.phone-field-input-wrap .phone-field-country-select:focus{border-color:var(--border)!important;box-shadow:none!important;outline:0!important}.phone-field-input-wrap .phone-field-country-select:focus-visible{border-color:var(--border)!important;box-shadow:none!important;outline:0!important}.phone-field-input-wrap .phone-field-country-select:disabled{cursor:not-allowed}.phone-field-input-wrap input{flex:1;min-width:0;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.field-error{color:var(--danger,#dc2626);margin-top:-2px;font-size:.78rem;font-weight:600}input:not([type=checkbox]),select{border:1px solid var(--border);width:100%;min-height:42px;color:var(--text);background:var(--surface-2);transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out);border-radius:8px;padding:0 12px}input:not([type=checkbox]):focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}select:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}textarea:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}input::placeholder{color:color-mix(in srgb, var(--muted) 70%, transparent)}input:not([type=checkbox]):read-only{cursor:default;background:var(--surface-3);color:var(--muted);border-color:var(--border)}select{cursor:pointer}.date-picker,.time-picker{position:relative}.date-picker-trigger,.time-picker-trigger{border:1px solid var(--border);background:var(--surface-2);width:100%;min-height:42px;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex}.date-picker-trigger:hover:not(:disabled),.time-picker-trigger:hover:not(:disabled){border-color:var(--border-strong)}.date-picker-trigger:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.time-picker-trigger:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.date-picker-trigger>svg,.time-picker-trigger>svg{color:var(--muted);flex:none}.date-picker-trigger span,.time-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.date-picker-placeholder,.time-picker-placeholder{color:color-mix(in srgb, var(--muted) 80%, transparent);font-weight:500}.date-picker-trigger:disabled,.time-picker-trigger:disabled{opacity:.55;cursor:not-allowed}.date-picker-popover,.time-picker-popover{z-index:100;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;position:absolute;top:calc(100% + 6px);left:0}.date-picker-popover{padding:12px}.time-picker-popover{max-height:240px;margin:0;padding:6px;list-style:none;right:0;overflow-y:auto}.time-picker-popover.time-picker-popover--up{top:auto;bottom:calc(100% + 6px)}.time-picker-option{width:100%;min-height:36px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-weight:600}.time-picker-option:hover{background:var(--surface-2)}.time-picker-option.is-selected{background:var(--accent);color:var(--on-accent)}.calendar{gap:8px;width:264px;display:grid}.calendar-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-title{color:var(--text);text-transform:capitalize;font-size:.92rem;font-weight:800}.calendar-nav-btn{border:1px solid var(--border);background:var(--surface-2);width:32px;height:32px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.calendar-nav-btn:hover{background:var(--surface-3)}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekdays span{text-align:center;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800}.calendar-day{min-height:34px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;font-weight:600;position:relative}.calendar-day:hover:not(:disabled){background:var(--surface-2)}.calendar-day.is-outside{color:var(--muted);opacity:.6}.calendar-day.is-today:not(.is-selected){box-shadow:inset 0 0 0 1px var(--accent)}.calendar-day.is-selected{background:var(--accent);color:var(--on-accent);font-weight:800}.calendar-day.is-marked:after{content:"";background:var(--accent);border-radius:999px;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.calendar-day.is-selected.is-marked:after{background:var(--on-accent)}.calendar-day.is-closed:not(.is-selected){color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}.calendar-day.is-closed:not(.is-selected):hover:not(:disabled){background:color-mix(in srgb, var(--danger) 20%, transparent)}.calendar-day.is-closed.is-today:not(.is-selected){box-shadow:inset 0 0 0 1px var(--danger)}.calendar-day.is-closed.is-marked:after{background:var(--danger)}.calendar-day.is-selected.is-closed{background:var(--danger);color:var(--on-accent)}.calendar-day.is-selected.is-closed.is-marked:after{background:var(--on-accent)}.calendar-day:disabled{color:var(--muted);opacity:.35;cursor:not-allowed}.calendar-day.is-closed:disabled{color:color-mix(in srgb, var(--danger) 70%, var(--muted));opacity:.5}.status-badge{background:var(--surface-3);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-badge--confirmed{background:var(--success-soft);color:var(--success)}.status-badge--cancelled{background:var(--danger-soft);color:var(--danger)}.status-badge--pending,.status-badge--muted{background:var(--warning-soft);color:var(--warning)}.staff-bookable-toggle{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:background .12s,border-color .12s;display:flex}.staff-bookable-toggle:hover{border-color:var(--accent)}.staff-bookable-toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);cursor:pointer;border-radius:21px;flex-shrink:0;width:38px;height:21px;margin:0;transition:background .2s;position:relative}.staff-bookable-toggle input[type=checkbox]:before{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:left .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000002e}.staff-bookable-toggle input[type=checkbox]:checked{background:var(--accent)}.staff-bookable-toggle input[type=checkbox]:checked:before{left:20px}.staff-bookable-toggle span{flex-direction:column;gap:2px;font-size:.86rem;font-weight:700;display:flex}.staff-bookable-toggle small{color:var(--muted);font-size:.74rem;font-weight:500;line-height:1.3}.staff-status-cell{flex-wrap:wrap;gap:6px;display:inline-flex}.holiday-management,.blacklist-management{gap:20px;display:grid}.blacklist-form-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;gap:12px;padding:16px;display:grid}.blacklist-form-fields{grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.2fr);align-items:end;gap:12px;display:grid}.blacklist-form-panel .button{justify-self:start}.blacklist-row-main{cursor:default}.blacklist-row-main .holiday-row-date{align-items:center;gap:6px;display:inline-flex}@media (max-width:720px){.blacklist-form-fields{grid-template-columns:1fr}}.holiday-error{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:0;padding:8px 12px;font-size:.85rem;font-weight:700}.holiday-layout{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px;display:grid}.holiday-calendar{align-content:start;gap:10px;display:grid}.holiday-hint,.holiday-empty-hint{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.holiday-form-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;align-self:start;padding:16px}.holiday-form{gap:12px;display:grid}.holiday-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.7rem;font-weight:800}.holiday-selected{gap:10px;display:grid}.holiday-selected-date{color:var(--text);margin:0;font-size:1.05rem;font-weight:800}.holiday-selected-reason{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.9rem;display:flex}.holiday-recurring{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.holiday-list-panel{border:1px solid var(--border);background:var(--surface);border-radius:14px;gap:12px;padding:16px;display:grid}.holiday-list-head{justify-content:space-between;align-items:center;display:flex}.holiday-list-heading{align-items:center;gap:8px;display:flex}.holiday-list-toggle{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:4px 0;display:flex}.holiday-list-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.holiday-list-panel.is-open .holiday-list-chevron{transform:rotate(180deg)}.holiday-list-title{color:var(--text);margin:0;font-size:.95rem;font-weight:800}.holiday-list-count{background:var(--accent-soft);min-width:22px;height:22px;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:.75rem;font-weight:800;display:inline-flex}.holiday-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.holiday-row{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:center;transition:border-color .15s,box-shadow .15s;display:flex}.holiday-row:not(.holiday-row--head):hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:var(--shadow-tight)}.holiday-row.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.holiday-row--head{background:0 0;border:0;gap:14px;padding:0 14px 2px}.holiday-row--head:hover{box-shadow:none}.holiday-row--head span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.68rem;font-weight:800}.holiday-row--head .holiday-row-date{flex:0 0 150px}.holiday-row--head .holiday-row-reason{flex:auto}.holiday-row--head .holiday-row-actions{flex:none}.holiday-row-main{min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:14px;padding:12px 14px;display:flex}.holiday-row-date{flex:0 0 150px;font-size:.88rem;font-weight:700}.holiday-row-reason{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:auto;align-items:center;gap:8px;font-size:.85rem;display:flex;overflow:hidden}.holiday-row-delete{color:var(--muted);flex:none;margin-right:8px}.holiday-row-delete:hover:not(:disabled){color:var(--danger)}@media (max-width:720px){.holiday-layout{grid-template-columns:1fr}.calendar{width:auto}.holiday-row-date,.holiday-row--head .holiday-row-date{flex-basis:110px}}.form-panel{gap:12px;display:grid}.appointment{border-bottom:1px solid var(--border);grid-template-columns:130px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:58px;padding:12px 0;display:grid}.appointment strong{align-items:center;gap:6px;display:inline-flex}.appointment:last-child{border-bottom:0}.actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.status{border-radius:999px;justify-content:center;justify-self:start;align-items:center;min-width:92px;padding:6px 10px;font-size:.76rem;font-weight:900;display:inline-flex}.confirmed,.active,.sent{background:var(--success-soft);color:var(--success)}.requested{background:var(--warning-soft);color:var(--warning)}.cancelled,.inactive,.disabled,.failed{background:var(--danger-soft);color:var(--danger)}.completed{background:var(--accent-soft);color:var(--accent)}.choice{border:1px solid var(--border);background:var(--surface-2);width:100%;min-height:62px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;gap:5px;padding:12px;display:grid}.choice:hover{border-color:var(--accent)}.choice.selected,.slot.selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.choice.selected span{color:color-mix(in srgb, var(--on-accent) 78%, transparent)}.slot{border:1px solid var(--border);background:var(--surface-2);min-height:44px;color:var(--text);cursor:pointer;border-radius:8px;font-weight:800}.slot.busy,.slot:disabled{color:var(--muted);background:var(--surface-2);opacity:.62;cursor:not-allowed;border-style:dashed}.profile-choice-row button.selected{border-width:2px;border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.schedule-panel{gap:14px;display:grid}.schedule-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.schedule-heading h3{margin-bottom:6px}.schedule-controls{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;display:flex}.schedule-controls .field{min-width:180px}.admin-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.admin-section{gap:12px;display:grid}.admin-section h3{margin-bottom:0}.admin-section .table{box-shadow:none;background:0 0;border:0}.compact-list{gap:0;display:grid}.compact-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:12px 0;display:grid}.compact-row:last-child{border-bottom:0}.compact-row>div{gap:4px;min-width:0;display:grid}.compact-row span{color:var(--muted);overflow-wrap:anywhere}.audit-row{align-items:start}.code-pill{min-width:46px;min-height:30px;color:var(--accent);background:var(--accent-soft);border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:.76rem;font-weight:900;display:inline-flex}.success,.error-banner{border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-weight:800;display:flex}.success{background:var(--success-soft);color:var(--success)}.error-banner{background:var(--danger-soft);color:var(--danger)}.empty-state,.loading-state{text-align:center;align-content:center;justify-items:center;gap:14px;min-height:220px;display:grid}.empty-state p{max-width:520px;color:var(--muted);line-height:1.55}.empty-state-action{justify-content:center;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:999px;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1120px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}}@media (max-width:820px){.login-shell{padding:18px}.login-topbar{flex-direction:column;align-items:flex-start}.login-controls{justify-content:flex-start;width:100%}.login-return-panel{grid-template-columns:auto minmax(0,1fr)}.login-return-panel .button{grid-column:1/-1;width:100%}.app-shell{grid-template-columns:1fr}.app-sidebar{height:auto;padding:18px;position:static}.brand{margin-bottom:16px}.primary-nav{grid-template-columns:repeat(auto-fit,minmax(58px,1fr))}.primary-nav a{justify-content:center}.primary-nav a span{display:none}.app-workspace{padding:18px}.app-topbar,.page-heading{flex-direction:column}.topbar-actions{justify-content:flex-start;width:100%}h1{font-size:1.55rem}.row,.appointment{grid-template-columns:1fr;align-items:start;padding:14px 16px}.row.header{display:none}.actions{justify-content:flex-start}.schedule-heading{flex-direction:column;align-items:stretch}.schedule-controls{justify-content:flex-start}}@media (max-width:560px){.login-controls .segmented-control{max-width:100%}.metrics{grid-template-columns:1fr}.topbar-actions .button{width:100%}}:root{--bg:#f7f9fb;--bg-strong:#eef2f7;--surface:#fff;--surface-2:#f2f4f6;--surface-3:#e6e8ea;--text:#191c1e;--primary:#0f172a;--muted:#626f7f;--border:#d9dee7;--border-strong:#c6c6cd;--accent:#0051d5;--accent-strong:#003b9b;--accent-soft:#e8f0fe;--teal:#006c51;--teal-soft:#d8f4ec;--warning:#b75d00;--warning-soft:#fff3e0;--danger:#ba1a1a;--danger-soft:#ffebee;--success:#2e7d32;--success-soft:#e8f5e9;--sidebar:#fff;--sidebar-surface:#f1f4f7;--sidebar-text:#0f172a;--sidebar-muted:#626f7f;--shadow:0 16px 36px #0f172a14;--shadow-tight:0 4px 14px #0f172a0f;--text-primary:var(--text);--text-secondary:var(--muted);--surface-lowest:var(--surface);--surface-low:var(--surface-2);--surface-container:var(--surface-3);--border-subtle:var(--border);--secondary:var(--accent);--muted-color:var(--muted);--border-color:var(--border);--surface-color:var(--surface);--input-bg:var(--surface);--error-color:var(--danger);--on-accent:#fff}input[type=date],input[type=time],input[type=month],input[type=week]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){input[type=date],input[type=time],input[type=month],input[type=week]{--lightningcss-light: ;--lightningcss-dark:initial}}h1,h2,h3{color:var(--primary);letter-spacing:0}.app-shell{background:var(--bg);grid-template-columns:260px minmax(0,1fr)}.app-sidebar{background:var(--sidebar);color:var(--sidebar-text);border-right:1px solid var(--border);flex-direction:column;gap:18px;padding:24px 0;display:flex;box-shadow:4px 0 24px #0f172a08}.brand{margin:0;padding:0 24px}.brand strong{color:var(--sidebar-text)}.brand-suite{color:var(--sidebar-muted)}.sidebar-cta{min-height:42px;color:var(--on-accent);background:var(--accent);box-shadow:var(--shadow-tight);border-radius:8px;justify-content:center;align-items:center;gap:8px;margin:0 24px;font-weight:800;text-decoration:none;display:inline-flex}.primary-nav{gap:2px}.primary-nav a{min-height:44px;color:var(--sidebar-muted);border:0;border-left:3px solid #0000;border-radius:0;margin:0;padding:0 24px}.primary-nav a:hover{color:var(--sidebar-text);background:var(--sidebar-surface);border-color:#0000}.utility-nav{border-top:1px solid var(--border);margin-top:auto;padding-top:16px}.app-sidebar-toggle{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--muted);cursor:pointer;box-shadow:var(--shadow-tight);border-radius:10px;justify-content:center;align-self:flex-end;align-items:center;margin:0 18px -8px 0;display:inline-flex}.app-sidebar-toggle:hover{color:var(--accent);background:var(--accent-soft)}.app-shell--sidebar-collapsed .app-sidebar{width:84px;padding-inline-start:0;padding-inline-end:0}.app-shell--sidebar-collapsed .app-sidebar-toggle{align-self:center;margin:0 0 -8px}.app-shell--sidebar-collapsed .brand{justify-content:center;padding-inline-start:0;padding-inline-end:0}.app-shell--sidebar-collapsed .brand div,.app-shell--sidebar-collapsed .sidebar-cta span{opacity:0;pointer-events:none;width:0;overflow:hidden}.app-shell--sidebar-collapsed .sidebar-cta{width:44px;min-width:44px;margin-inline-start:auto;margin-inline-end:auto;padding:0}.app-shell--sidebar-collapsed .primary-nav a{flex-direction:column;justify-content:center;align-items:center;gap:3px;padding-block-start:8px;padding-block-end:8px;padding-inline-start:4px;padding-inline-end:4px}.app-shell--sidebar-collapsed .primary-nav a span{white-space:nowrap;text-overflow:ellipsis;text-align:center;opacity:.75;letter-spacing:.01em;width:auto;max-width:72px;font-size:10px;font-weight:500;line-height:1;overflow:hidden}.app-shell--portal.app-shell--sidebar-collapsed .brand{padding-bottom:18px}.app-workspace{background:var(--bg);min-height:100vh;padding:0}.app-topbar{z-index:40;border:0;border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--surface) 92%, transparent);min-height:64px;box-shadow:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:0;align-items:center;margin:0;padding:0 24px;position:sticky;top:0}.topbar-leading{align-items:center;gap:22px;min-width:0;display:flex}.topbar-leading h1{font-size:1.1rem;display:none}.topbar-search{border:1px solid var(--border);background:var(--surface-2);width:min(360px,44vw);min-height:40px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:flex}.topbar-search input{background:0 0;border:0;min-height:0;padding:0}.icon-button{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{color:var(--accent);background:var(--surface-2)}.user-menu{flex:none;align-items:center;display:inline-flex;position:relative}.user-menu__trigger[aria-expanded=true]{color:var(--accent);background:var(--surface-2)}.user-menu__panel{z-index:400;border:1px solid var(--border);background:var(--surface);min-width:168px;box-shadow:var(--shadow-tight);animation:modal-pop var(--motion-fast) var(--ease-out) both;border-radius:12px;padding:6px;position:absolute;top:calc(100% + 10px);right:0}.user-menu__panel:before{content:"";border-left:1px solid var(--border);border-top:1px solid var(--border);background:var(--surface);width:10px;height:10px;position:absolute;top:-6px;right:12px;transform:rotate(45deg)}.user-menu__item{z-index:1;width:100%;min-height:40px;color:var(--text);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:0 10px;font-size:.88rem;font-weight:800;display:flex;position:relative}.user-menu__item:hover{background:var(--surface-2);color:var(--accent)}.user-menu__item:focus-visible{background:var(--surface-2);color:var(--accent)}.user-menu__item--danger{color:var(--danger)}.user-menu__item--danger:hover{background:var(--danger-soft);color:var(--danger)}.user-menu__item--danger:focus-visible{background:var(--danger-soft);color:var(--danger)}.route-surface{width:min(1320px,100%);margin:0 auto;padding:24px}.login-shell{background:var(--surface);min-height:100vh;padding:0;display:flex}.login-panel{z-index:2;background:var(--surface);flex-direction:column;width:50%;min-width:520px;display:flex;position:relative;box-shadow:4px 0 24px #0f172a08}.login-topbar{z-index:20;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:72px;padding:24px;display:flex;position:absolute;top:0;left:0}.login-brand{color:var(--primary);font-size:1.2rem;font-weight:800}.login-brand svg{color:var(--primary)}.login-form-wrap{flex-direction:column;justify-content:center;gap:22px;width:min(360px,100% - 64px);min-height:100vh;margin:0 auto;padding:112px 0 48px;display:flex}.auth-form-header{text-align:left;gap:8px;display:grid}.auth-form-header h1{font-size:1.75rem}.auth-form-header p{color:var(--muted);line-height:1.55}.google-button{width:100%;min-height:42px}.login-refined-form,.register-refined-form{gap:18px;display:grid}.login-refined-form .button,.register-refined-form .button{width:100%;min-height:44px}.password-field>span:last-child{display:block;position:relative}.password-field svg{pointer-events:none}.password-toggle{cursor:pointer;width:42px;color:var(--muted);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:flex;position:absolute;top:0;bottom:0;right:0}.password-toggle:hover{color:var(--text)}.password-field input{padding-right:42px}.auth-inline-options{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;display:flex}.auth-inline-options label{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.auth-inline-options input{width:16px;height:16px;accent-color:var(--accent)}.auth-inline-options a,.auth-footer-link a{color:var(--accent);font-weight:800;text-decoration:none}.auth-footer-link{color:var(--muted);text-align:center;line-height:1.5}.forgot-password-icon-wrap{background:color-mix(in srgb, var(--accent) 12%, transparent);width:52px;height:52px;color:var(--accent);border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.forgot-password-success{text-align:left;gap:16px;display:grid}.forgot-password-success-icon{color:#22c55e;background:#22c55e24;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;display:inline-flex}.forgot-password-success h1{font-size:1.75rem}.forgot-password-success p{color:var(--muted);line-height:1.55}.forgot-password-back-link{color:var(--accent);align-items:center;gap:6px;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.login-hero{background:#0f172a;width:50%;min-height:100vh;position:relative;overflow:hidden}.login-hero img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.login-hero-overlay{background:linear-gradient(#0003,#0000006b 48%,#000000e6);position:absolute;top:0;bottom:0;left:0;right:0}.login-hero-content{z-index:1;color:#fff;flex-direction:column;justify-content:flex-end;gap:24px;min-height:100%;padding:80px;display:flex;position:relative}.login-hero-content h2{color:#fff;max-width:560px;font-size:3.35rem;line-height:1.02}.login-hero-content p{color:#ffffffd1;max-width:520px;font-size:1.05rem;line-height:1.6}.hero-badge{color:#fff;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #fff3;border-radius:999px;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;min-height:34px;padding:0 12px;font-size:.75rem;font-weight:900;display:inline-flex}.hero-badge span{background:#22c55e;border-radius:999px;width:8px;height:8px}.hero-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.hero-step{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff12;border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;gap:16px;min-height:132px;padding:16px;display:flex}.hero-step:nth-child(2){transform:translateY(16px)}.hero-step:nth-child(3){transform:translateY(32px)}.hero-step-icon{color:#fff;background:#0051d54d;border:1px solid #8ab4ff73;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.hero-step div{gap:4px;display:grid}.hero-step span:not(.hero-step-icon){color:#ffffff9e;font-size:.75rem;font-weight:800}.hero-step strong{color:#fff}.register-shell{background:var(--bg);justify-content:center;align-items:center;padding:96px 24px 32px;position:relative}.register-shell .login-topbar{position:fixed}.register-card{border:1px solid var(--border);background:var(--surface);width:min(1200px,100%);min-height:720px;box-shadow:var(--shadow);border-radius:16px;display:flex;overflow:hidden}.register-visual{color:#fff;background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;width:41.666%;padding:48px;display:flex;position:relative}.register-visual-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a7a;position:absolute;top:0;bottom:0;left:0;right:0}.register-visual>div{z-index:1;position:relative}.register-visual>:-webkit-any(strong,.pp-brand-wordmark){z-index:1;position:relative}.register-visual>:-moz-any(strong,.pp-brand-wordmark){z-index:1;position:relative}.register-visual>:is(strong,.pp-brand-wordmark){z-index:1;position:relative}.register-visual>:-webkit-any(strong,.pp-brand-wordmark){--pp-brand-wordmark-size:3rem}.register-visual>:-moz-any(strong,.pp-brand-wordmark){--pp-brand-wordmark-size:3rem}.register-visual>:is(strong,.pp-brand-wordmark){--pp-brand-wordmark-size:3rem}.register-visual h2{color:#fff;font-size:1.35rem}.register-visual p{color:#ffffffd1;margin-top:8px;line-height:1.6}.register-panel{flex-direction:column;justify-content:center;width:58.334%;padding:64px;display:flex}.register-mobile-brand{display:none}.role-card.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));box-shadow:0 0 0 1px var(--accent)}.role-card.active svg{color:var(--accent)}.register-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.register-input-grid .field:first-child{grid-column:1/-1}.page-heading{align-items:center}.page-heading h2{font-size:1.8rem}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel,.table,.empty-state,.loading-state{border-color:var(--border);box-shadow:var(--shadow-tight);border-radius:12px}.metric{min-height:136px;position:relative;overflow:hidden}.metric:before{content:"";background:var(--accent);height:3px;position:absolute;top:0;bottom:auto;left:0;right:0}.metric:nth-child(2):before{background:var(--teal)}.metric:nth-child(3):before{background:#8b5cf6}.metric:nth-child(4):before{background:var(--primary)}.metric em{color:var(--muted);font-size:.78rem;font-style:normal;font-weight:800}.metric-icon{color:var(--accent);background:var(--accent-soft)}.client-stitch-card-actions a.danger{color:var(--danger)}.client-stitch-card-actions a.danger:hover{border-color:var(--danger);background:var(--danger-soft)}.choice{background:var(--surface);min-height:68px}.choice.selected,.slot.selected{background:var(--accent);border-color:var(--accent)}.business-dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:24px;display:grid}.business-dashboard-grid--single{grid-template-columns:minmax(0,1fr)}.business-dashboard-grid .appointments-panel{grid-column:auto}.panel-title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.panel-title-row h3{margin-bottom:0}.panel-title-row button{color:var(--accent);cursor:pointer;background:0 0;border:0;font-weight:800}.business-table{overflow-x:auto}.business-table table{border-collapse:collapse;width:100%;min-width:760px}.business-table th,.business-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;min-height:56px;padding:14px 16px}.business-table th{color:var(--muted);background:var(--surface-2);font-size:.78rem;font-weight:900}.business-table td{color:var(--text)}.business-table td:first-child,.business-table td:nth-child(2),.business-table td:last-child{align-items:center;gap:8px;display:flex}.business-table tr:last-child td{border-bottom:0}.staff-avatar{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:.78rem;font-weight:900;display:inline-flex}.staff-avatar.small{width:32px;height:32px}.mini-calendar-grid button.active{color:var(--on-accent);background:var(--accent);font-weight:900}.staff-calendar-scroll{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.staff-calendar-grid{background:var(--surface);grid-template-columns:180px repeat(7,minmax(112px,1fr));min-width:980px;display:grid}.staff-calendar-header,.staff-person-cell,.staff-day-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:96px;padding:12px}.staff-calendar-header{background:var(--surface-2);text-align:center;place-items:center;gap:4px;min-height:76px;display:grid}.staff-name-cell{align-items:center;gap:10px;font-weight:500;display:flex}.staff-calendar-header span,.staff-name-cell span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.staff-calendar-header strong{font-size:1.25rem}.staff-calendar-header.current,.staff-day-cell.current{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}.staff-calendar-header.current{color:var(--accent);position:relative}.staff-calendar-header.current:before{content:"";top:0;background:var(--accent);height:3px;position:absolute;left:0;right:0}.staff-person-cell{z-index:2;background:var(--surface);align-items:center;gap:10px;display:flex;position:sticky;left:0}.staff-person-cell div{gap:4px;min-width:0;display:grid}.staff-person-cell span:not(.staff-avatar){color:var(--muted);font-size:.78rem}.staff-day-cell{background:var(--surface);position:relative}.staff-day-cell.off{background:var(--surface-2)}.shift-block{border-radius:8px;align-content:space-between;gap:6px;min-height:74px;padding:10px;font-size:.8rem;display:grid}.shift-block.available{background:var(--success-soft);color:var(--success);border:1px solid #a5d6a7}.shift-block.busy{background:var(--danger-soft);color:var(--danger);border:1px solid #ef9a9a}.shift-block.leave{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--accent-soft);color:var(--accent-strong)}.shift-block small{color:var(--muted);font-weight:800}.off-day{width:100%;height:100%;color:var(--muted);place-items:center;font-weight:800;display:grid}.app-workspace--portal{background:var(--bg)}.portal-stitch-topbar{z-index:120;border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:0 24px;display:flex;position:sticky;top:0}.portal-stitch-topbar-leading{align-items:center;gap:22px;min-width:0;display:flex}.portal-stitch-topbar-leading h1{color:var(--primary);margin:0;font-size:1.25rem;line-height:1.2;display:none}.portal-stitch-search{border:1px solid var(--border);background:var(--surface-2);width:300px;min-height:40px;color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:0 12px;display:flex}.portal-stitch-search input{background:0 0;border:0;min-height:0;padding:0}.portal-stitch-topbar-actions{justify-content:flex-end;align-items:center;gap:18px;display:flex}.portal-stitch-language{align-items:center;gap:12px;display:inline-flex}.portal-stitch-language button,.portal-stitch-icon-button,.portal-stitch-login-link{color:var(--muted);cursor:pointer;background:0 0;border:0}.portal-stitch-language button{padding:0;font-size:.78rem;font-weight:800}.portal-stitch-language button.active{color:var(--primary)}.portal-stitch-icon-button{justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.portal-stitch-login-link{min-height:32px;color:var(--accent);align-items:center;gap:6px;font-size:.78rem;font-weight:900;text-decoration:none;display:inline-flex}.portal-stitch-language button:hover,.portal-stitch-icon-button:hover,.portal-stitch-login-link:hover{color:var(--accent)}.portal-stitch-branch{align-items:center;display:inline-flex;position:relative}.portal-stitch-branch-button.is-single{cursor:default}.portal-stitch-branch-button.is-single:hover{border-color:var(--hairline,#0000001f);color:inherit}.portal-stitch-branch-button{border:1px solid var(--hairline,#0000001f);color:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:7px;max-width:220px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.portal-stitch-branch-button:hover{border-color:var(--accent);color:var(--accent)}.portal-stitch-branch-name{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.portal-stitch-branch-menu{z-index:40;background:var(--surface,#fff);border:1px solid var(--hairline,#0000001f);border-radius:14px;min-width:230px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 44px #0003}.portal-stitch-branch-item{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.portal-stitch-branch-item:hover{background:var(--surface-2,#0000000d)}.portal-stitch-branch-item.is-active{color:var(--primary)}.portal-stitch-branch-item-body{flex-direction:column;gap:2px;min-width:0;display:flex}.portal-stitch-branch-item-body strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.portal-stitch-branch-item-role{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.onboarding-form{flex-direction:column;gap:20px;max-width:620px;display:flex}.onboarding-section{border:1px solid var(--hairline,#0000001f);border-radius:14px;flex-direction:column;gap:12px;padding:18px 18px 20px;display:flex}.onboarding-section>legend{color:var(--accent);align-items:center;gap:8px;padding:0 8px;font-size:.86rem;font-weight:700;display:inline-flex}.onboarding-actions{justify-content:flex-end;display:flex}.onboarding-success{flex-direction:column;gap:12px;max-width:620px;padding:18px 20px;display:flex}.onboarding-success>p{align-items:center;gap:8px;display:inline-flex}.onboarding-success ul{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.onboarding-success-actions{gap:12px;margin-top:4px;display:flex}.onboarding-warn{color:var(--danger,#c62828)}.pp-id-code{word-break:break-all;-webkit-user-select:all;user-select:all;color:var(--muted);font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:.78rem}.route-surface--portal{width:min(1280px,100%);padding:24px}.route-surface--portal:has(.portal-operational-page){width:100%;max-width:none}.portal-stitch-page{gap:24px}.staff-mgmt-page{gap:20px;max-width:none}.staff-mgmt-table-col{flex-direction:column;gap:12px;min-width:0;display:flex}.staff-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.staff-stat{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;gap:2px;padding:12px 14px;display:grid}.staff-stat-value{color:var(--text);font-size:1.4rem;font-weight:900;line-height:1.1}.staff-stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.72rem;font-weight:700}.staff-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.staff-search-row{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);border-radius:8px;flex:220px;align-items:center;gap:8px;padding:0 12px;display:flex}.staff-search-input{min-height:40px;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:.9rem}.staff-filter-chips{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;gap:6px;padding:4px;display:inline-flex}.staff-filter-chip{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:700}.staff-filter-chip.is-active{background:var(--accent);color:var(--on-accent)}.staff-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow-x:auto}.staff-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.88rem}.staff-table th{text-align:left;letter-spacing:.05em;color:var(--muted);text-transform:uppercase;background:var(--surface-2);border-bottom:1px solid var(--border);padding:12px 16px;font-size:.72rem;font-weight:800}.staff-table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:12px 16px}.staff-table tr:last-child td{border-bottom:0}.staff-row{cursor:pointer;transition:background .12s}.staff-row:hover{background:var(--surface-2)}.staff-row.selected{background:var(--accent-soft)}.staff-row.is-inactive td{color:var(--muted)}.staff-row.is-inactive .staff-avatar{opacity:.6}.staff-person{align-items:center;gap:10px;min-width:0;display:flex}.staff-person-text{gap:1px;min-width:0;display:grid}.staff-person-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.staff-person-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;overflow:hidden}.staff-contact{color:var(--muted);font-size:.84rem}.staff-col-actions{white-space:nowrap;text-align:right;width:1%}.staff-row-actions{justify-content:flex-end;gap:4px;display:inline-flex}.staff-row-actions-locked{border:1px dashed var(--border);height:34px;color:var(--muted);white-space:nowrap;border-radius:8px;align-items:center;padding:0 10px;font-size:.78rem;display:inline-flex}.staff-role-locked{border:1px dashed var(--border);color:var(--text);border-radius:8px;flex-direction:column;gap:2px;margin:0;padding:9px 12px;display:flex}.staff-role-locked small{color:var(--muted);font-size:.76rem}.staff-action-btn{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.staff-action-btn:hover:not(:disabled){background:var(--surface-2);color:var(--accent);border-color:var(--accent)}.staff-action-btn:disabled{opacity:.5;cursor:not-allowed}.staff-table-footer{color:var(--muted);text-align:right;font-size:.78rem}@media (max-width:640px){.staff-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-toolbar{flex-direction:column;align-items:stretch;gap:8px}.staff-search-row{flex:none}.staff-filter-chips{scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:12px;justify-content:flex-start;width:100%;overflow-x:auto}.staff-filter-chips::-webkit-scrollbar{display:none}.staff-filter-chip{white-space:nowrap}.staff-table-wrap{background:0 0;border:none;border-radius:0;overflow-x:visible}.staff-table{min-width:0;display:block}.staff-table thead{display:none}.staff-table tbody{flex-direction:column;gap:8px;display:flex}.staff-row{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:start;gap:2px 10px;padding:14px;transition:background .12s;display:grid}.staff-row td{vertical-align:top;border:none;padding:0;display:block}.staff-row td:first-child{grid-area:1/1;padding-bottom:6px}.staff-row td:nth-child(2){color:var(--muted);grid-area:2/1;font-size:.8rem;font-weight:600}.staff-row td:nth-child(3),.staff-row td:nth-child(4){display:none}.staff-row td:nth-child(5){grid-area:1/2/3;justify-content:center;align-items:center;display:flex}.staff-row-actions{flex-direction:column;justify-content:center;gap:6px}.staff-action-btn{width:42px;height:42px}.staff-table--departed .staff-row{grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center}.staff-table--departed .staff-row td:nth-child(2),.staff-table--departed .staff-row td:nth-child(3){display:none}.staff-table--departed .staff-row td:nth-child(4){color:var(--muted);white-space:nowrap;text-align:right;grid-area:1/2/3;align-self:center;font-size:.78rem;display:block}.service-checkboxes{grid-template-columns:1fr}.service-checkbox-label{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 10px;font-size:.9rem}.staff-table-footer{text-align:left}}.staff-panel-loading,.staff-panel-error,.staff-panel-empty{color:var(--text-secondary);padding:16px 20px;font-size:14px}.staff-panel-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:.86rem}.staff-panel-success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:14px 16px;font-size:.88rem;line-height:1.55}.staff-panel-success p{margin:0 0 6px}.staff-panel-success p:last-child{margin-bottom:0}.staff-panel-success code{color:#166534;background:#00000012;border-radius:4px;padding:1px 6px;font-family:monospace;font-size:.9em;display:inline-block}.staff-form-section{border-bottom:1px solid var(--border-subtle,#f1f3f5);flex-direction:column;gap:12px;padding:16px 20px;display:flex}.modal-body .staff-form-section{border-bottom:none;padding:0}.staff-form-section-label{letter-spacing:.08em;color:var(--text-secondary);text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.staff-form-field{flex-direction:column;gap:4px;display:flex}.field-label{color:var(--text-secondary);font-size:12px;font-weight:500}.staff-select{border:1px solid var(--border);background:var(--surface-lowest);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;outline:none;padding:8px 10px;font-size:14px}.staff-select:focus{border-color:var(--secondary,#0051d5)}.schedule-row{align-items:center;gap:10px;font-size:14px;display:flex}.schedule-day-label{width:32px;color:var(--text-primary);font-size:13px;font-weight:500}.schedule-toggle{cursor:pointer;display:inline-block;position:relative}.schedule-toggle input{opacity:0;width:0;height:0;position:absolute}.schedule-toggle-track{background:var(--border);border-radius:20px;width:36px;height:20px;transition:background .15s;display:block}.schedule-toggle input:checked+.schedule-toggle-track{background:var(--secondary,#0051d5)}.schedule-toggle-track:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:left .15s;position:absolute;top:3px;left:3px}.schedule-toggle input:checked+.schedule-toggle-track:after{left:19px}.schedule-time-input{width:116px}.schedule-dash{color:var(--text-secondary)}.schedule-closed{color:var(--text-secondary);font-size:13px}.schedule-row--shop-closed{opacity:.6}.schedule-row--shop-closed .schedule-closed small{color:var(--text-secondary);font-size:11px}.schedule-toggle--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.schedule-apply-all{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:4px 9px;font-size:12px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.schedule-apply-all:hover{background:var(--surface-2);color:var(--text-primary);border-color:var(--secondary,#0051d5)}.schedule-apply-all:focus-visible{outline:2px solid var(--secondary,#0051d5);outline-offset:1px}.service-checkboxes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.service-checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.service-checkbox{border:1.5px solid var(--border);background:var(--surface-lowest);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:background .12s,border-color .12s;display:inline-flex}.service-checkbox.checked{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portal-stitch-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.portal-stitch-metric{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-content:space-between;gap:12px;min-width:0;min-height:154px;padding:16px;display:grid;position:relative;overflow:hidden}.portal-stitch-metric:before{content:"";background:var(--accent);height:4px;position:absolute;top:0;bottom:auto;left:0;right:0}.portal-stitch-metric>div:first-child{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.portal-stitch-metric>div:first-child>span:first-child{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.76rem;font-weight:900;line-height:1.2}.portal-stitch-metric-icon{width:36px;height:36px;color:var(--accent-strong);background:var(--accent-soft);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.portal-stitch-metric strong{min-width:0;color:var(--primary);overflow-wrap:anywhere;font-size:3rem;line-height:1.05}.portal-stitch-metric strong.compact{font-size:1.35rem;line-height:1.25}.portal-stitch-metric em{background:var(--surface-2);width:-moz-fit-content;width:fit-content;max-width:100%;min-height:24px;color:var(--muted);border-radius:999px;align-items:center;padding:0 9px;font-size:.74rem;font-style:normal;font-weight:900;display:inline-flex}.portal-stitch-progress{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.portal-stitch-progress span{border-radius:inherit;background:var(--primary);height:100%;display:block}.analytics-dashboard-page{gap:24px;padding-bottom:72px;display:grid;position:relative}.analytics-dashboard-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.analytics-dashboard-heading h2{color:var(--primary);font-size:1.9rem;line-height:1.2}.analytics-dashboard-heading span{background:var(--surface-2);width:-moz-fit-content;width:fit-content;color:var(--muted);border-radius:999px;margin-top:8px;padding:6px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.analytics-date-picker{width:200px}@media (max-width:640px){.analytics-date-picker{width:100%}}.analytics-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.analytics-kpi-card,.analytics-card{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--surface) 82%, transparent);box-shadow:var(--shadow-tight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px}.analytics-kpi-card{text-align:center;align-content:center;justify-items:center;gap:8px;min-height:148px;padding:16px;transition:transform .18s,box-shadow .18s;display:grid}.analytics-kpi-card:hover,.analytics-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.analytics-kpi-card>div:first-child{justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.analytics-kpi-card>div:first-child>span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.2}.analytics-kpi-card em{background:var(--success-soft);color:var(--success);border-radius:6px;padding:3px 6px;font-size:.64rem;font-style:normal;font-weight:800}.analytics-kpi-card i{color:var(--accent);font-style:normal}.analytics-kpi-card>strong{color:var(--primary);overflow-wrap:anywhere;font-size:1.75rem;line-height:1.15}.analytics-kpi-card small{color:color-mix(in srgb, var(--muted) 78%, transparent);font-size:.66rem;font-weight:500}.analytics-sparkline{width:100%;height:32px}.analytics-sparkline path{fill:none;stroke:#316bf3;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.analytics-radial{--percent:0%;background:conic-gradient(var(--accent) var(--percent), var(--surface-3) 0);border-radius:999px;place-items:center;width:64px;height:64px;display:grid;position:relative}.analytics-radial:before{content:"";border-radius:inherit;background:var(--surface);position:absolute;top:6px;bottom:6px;left:6px;right:6px}.analytics-radial strong{color:var(--primary);font-size:.85rem;line-height:1;position:relative}.analytics-main-grid{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:24px;display:grid}.analytics-card{min-width:0;padding:24px}.analytics-card h3{color:var(--primary);margin:0;font-size:1.25rem;line-height:1.3;display:block}.analytics-card-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.analytics-card-heading.compact{margin-bottom:16px}.analytics-card-heading p{color:var(--muted);margin-top:6px;font-size:.9rem;line-height:1.5}.analytics-segmented{background:var(--surface-2);border-radius:10px;flex:none;gap:4px;padding:4px;display:inline-flex}.analytics-segmented button{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:.76rem;font-weight:700}.analytics-segmented button.active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-tight)}.analytics-chart{min-height:330px;position:relative}.analytics-chart svg{width:100%;height:300px;overflow:visible}.analytics-chart line{stroke:color-mix(in srgb, var(--border) 62%, transparent);stroke-width:1px}.analytics-staff-list{gap:16px;max-height:320px;padding-right:4px;display:grid;overflow-y:auto}.analytics-staff-row{gap:8px;display:grid}.analytics-staff-row>div{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.analytics-avatar{border:1px solid var(--border);background:var(--surface-3);width:32px;height:32px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.analytics-staff-row strong{min-width:0;color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.analytics-staff-row em{color:var(--accent);font-size:.78rem;font-style:normal;font-weight:800}.analytics-staff-row>span{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.analytics-staff-row>span i{border-radius:inherit;background:var(--accent);height:100%;display:block}.analytics-bottom-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.analytics-heatmap-card h3,.analytics-customer-card h3{color:var(--muted);text-transform:uppercase;margin-bottom:20px;font-size:.76rem;font-weight:700}.analytics-heatmap{border-collapse:separate;border-spacing:3px;width:100%;color:var(--muted);text-align:center;font-size:.66rem}.analytics-heatmap th,.analytics-heatmap td{padding:0;font-weight:600}.analytics-heatmap td:first-child{width:32px;color:var(--muted);text-align:left}.analytics-heatmap-cell,.analytics-heatmap-legend i{background:#ecfdf5;border-radius:4px;height:24px;display:block}.analytics-heatmap-cell.intensity-1,.analytics-heatmap-legend i.intensity-1{background:#a7f3d0}.analytics-heatmap-cell.intensity-2,.analytics-heatmap-legend i.intensity-2{background:#93c5fd}.analytics-heatmap-cell.intensity-3,.analytics-heatmap-legend i.intensity-3{background:#fb923c}.analytics-heatmap-cell.intensity-4,.analytics-heatmap-legend i.intensity-4{background:#dc2626}.analytics-heatmap-legend{color:var(--muted);grid-template-columns:auto repeat(5,1fr) auto;align-items:center;gap:4px;margin-top:16px;font-size:.6rem;display:grid}.analytics-heatmap-legend i{height:6px}.analytics-customer-stack{gap:22px;display:grid}.analytics-customer-row{grid-template-columns:28px minmax(0,1fr) 64px;align-items:end;gap:12px;display:grid}.analytics-customer-row>span{background:var(--surface-2);width:28px;height:28px;color:var(--accent);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.analytics-customer-row p{color:var(--muted);font-size:.74rem}.analytics-customer-row strong{color:var(--primary);font-size:1.6rem;line-height:1.1;display:block}.analytics-mini-bars{align-items:end;gap:4px;height:32px;display:flex}.analytics-mini-bars i{background:var(--surface-3);border-radius:4px 4px 0 0;width:12px}.analytics-mini-bars i:first-child{height:16px}.analytics-mini-bars i:nth-child(2){height:24px}.analytics-mini-bars i:nth-child(3){background:var(--accent);height:20px}.analytics-mini-bars i:nth-child(4){background:var(--accent);height:32px}.analytics-return-rate{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;font-size:.68rem;display:flex}.analytics-return-rate strong{color:var(--success);font-size:.8rem}.analytics-empty-text{color:var(--muted);font-size:.82rem;line-height:1.45}.analytics-fab{z-index:45;background:var(--accent);width:56px;height:56px;color:var(--on-accent);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 28px #316bf342}.analytics-fab:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 22px 36px #316bf352}.portal-appointments-panel{box-shadow:none;border-radius:12px;overflow:hidden}.portal-appointments-panel .panel-title-row{border-bottom:1px solid var(--border);background:var(--surface);min-height:48px;margin:-18px -18px 0;padding:0 18px}.portal-appointments-panel .panel-title-row h3{color:var(--primary);margin:0;font-size:1.2rem;display:block}.business-table{box-shadow:none;border:0;border-radius:0 0 12px 12px;margin:0 -18px -18px}.business-table table{min-width:680px}.business-table th{height:48px;color:var(--muted);background:var(--surface-2);font-size:.76rem;font-weight:900}.business-table td{height:62px}.business-table tbody tr.active{background:color-mix(in srgb, var(--accent-soft) 52%, transparent)}.business-table tbody tr:hover{background:var(--surface-2)}.portal-appointments-panel .business-table td:first-child,.portal-appointments-panel .business-table td:nth-child(2),.portal-appointments-panel .business-table td:last-child{display:table-cell}.portal-appointments-panel .business-table td:first-child svg,.portal-appointments-panel .business-table .staff-avatar.small{vertical-align:middle;margin-right:8px}.portal-appointments-panel .business-table{max-height:480px;overflow:auto}.portal-appointments-panel .business-table thead th{z-index:2;position:sticky;top:0}.portal-status{background:var(--surface-3);min-height:28px;color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:0 10px;font-size:.74rem;font-weight:900;display:inline-flex}.portal-status i{background:var(--muted);border-radius:999px;width:7px;height:7px}.portal-status--inchair{background:var(--accent-soft);color:var(--accent-strong)}.portal-status--inchair i{background:var(--accent)}.portal-status--confirmed{background:var(--accent-soft);color:var(--accent-strong)}.portal-status--confirmed i{background:var(--accent)}.portal-status--cancelled,.portal-status--failed,.portal-status--no_show{background:var(--danger-soft);color:var(--danger)}.portal-status--cancelled i,.portal-status--failed i,.portal-status--no_show i{background:var(--danger)}.mini-calendar-grid button.has-event:after{content:"";background:var(--accent);border-radius:999px;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.mini-calendar-grid button.active.has-event:after{background:var(--on-accent)}.portal-stitch-secondary{gap:24px;display:grid}.app-shell--portal-calendar .brand strong{font-size:1.25rem;line-height:1.25}.app-shell--portal-calendar .primary-nav:not(.utility-nav){order:2;padding-top:0}.app-shell--portal-calendar .sidebar-cta{order:1;margin:0 24px 8px}.app-shell--portal-calendar .utility-nav{order:3}.app-shell--portal-calendar .portal-stitch-search{border-radius:8px;width:min(280px,34vw)}.route-surface--portal-calendar{width:100%;max-width:none;padding:24px}.staff-calendar-stitch-page{gap:24px;display:grid}.staff-calendar-stitch-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.staff-calendar-stitch-heading>div:first-child{gap:8px;min-width:0;display:grid}.staff-calendar-stitch-heading h2{color:var(--primary);font-size:2rem;line-height:1.2}.staff-calendar-stitch-heading p{color:var(--muted);line-height:1.5}.staff-calendar-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.staff-calendar-date-nav{border:1px solid var(--border);background:var(--surface);min-height:40px;box-shadow:var(--shadow-tight);border-radius:8px;align-items:center;display:inline-flex;overflow:hidden}.staff-calendar-date-nav button{width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.staff-calendar-date-nav button:first-child{border-right:1px solid var(--border)}.staff-calendar-date-nav button:last-child{border-left:1px solid var(--border)}.staff-calendar-date-nav button:hover{color:var(--primary);background:var(--surface-2)}.staff-calendar-date-nav span{min-width:190px;color:var(--primary);text-align:center;white-space:nowrap;padding:0 14px;font-size:.78rem;font-weight:900}.staff-calendar-view-toggle{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;align-items:center;gap:4px;min-height:40px;padding:4px;display:inline-flex}.staff-calendar-view-toggle button{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 12px;font-size:.78rem;font-weight:900}.staff-calendar-view-toggle button.active{color:var(--primary);background:var(--surface);box-shadow:var(--shadow-tight)}.staff-calendar-stitch-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:stretch;gap:24px;display:grid}.staff-calendar-board,.staff-calendar-settings-panel,.staff-calendar-detail-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-tight);border-radius:12px}.staff-calendar-board{min-height:600px;position:relative;overflow:hidden}.staff-calendar-loading{z-index:3;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:.75rem;font-weight:900;position:absolute;top:12px;right:12px}.staff-calendar-board-scroll{height:100%;overflow:auto}.staff-calendar-grid-cols{grid-template-columns:140px repeat(7,minmax(86px,1fr));min-width:760px;display:grid}.staff-calendar-week-header{z-index:2;border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0}.staff-calendar-axis-cell,.staff-calendar-day-header{border-right:1px solid var(--border);background:var(--surface);min-height:82px;padding:12px}.staff-calendar-axis-cell{justify-content:center;align-items:center;display:flex}.staff-calendar-axis-cell span,.staff-calendar-day-header span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900;line-height:1.2}.staff-calendar-day-header{text-align:center;place-items:center;gap:3px;display:grid;position:relative}.staff-calendar-day-header strong{color:var(--primary);font-size:1.25rem;line-height:1.15}.staff-calendar-day-header.current{background:color-mix(in srgb, var(--accent-soft) 38%, var(--surface))}.staff-calendar-day-header.current:before{content:"";background:var(--accent);height:4px;position:absolute;top:0;bottom:auto;left:0;right:0}.staff-calendar-day-header.current span,.staff-calendar-day-header.current strong{color:var(--accent)}.staff-calendar-day-header.weekend{background:var(--surface-2)}.staff-calendar-day-header.closed{background:color-mix(in srgb, var(--danger) 14%, var(--surface))}.staff-calendar-day-header.closed:before{content:"";background:var(--danger);height:4px;position:absolute;top:0;bottom:auto;left:0;right:0}.staff-calendar-day-header.closed span,.staff-calendar-day-header.closed strong{color:var(--danger)}.staff-calendar-day-cell.is-closed{background:color-mix(in srgb, var(--danger) 7%, transparent)}.staff-calendar-day-header:last-child,.staff-calendar-staff-row>:last-child{border-right:0}.staff-calendar-body{min-width:760px}.staff-calendar-staff-row{border-bottom:1px solid var(--border);min-height:104px}.staff-calendar-staff-row:hover .staff-calendar-person-cell{background:var(--surface-2)}.staff-calendar-person-cell{z-index:1;border-right:1px solid var(--border);background:var(--surface);text-align:center;grid-template-columns:minmax(0,1fr);place-items:center;gap:8px;min-width:0;padding:12px;display:grid;position:sticky;left:0}.staff-calendar-avatar{border:1px solid var(--border);background:var(--accent-soft);width:42px;height:42px;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;font-weight:900;display:inline-flex;position:relative}.staff-calendar-avatar i{border:2px solid var(--surface);background:var(--success);border-radius:999px;width:11px;height:11px;position:absolute;bottom:1px;right:1px}.staff-calendar-person-cell div{gap:3px;min-width:0;display:grid}.staff-calendar-person-cell strong{max-width:116px;color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.staff-calendar-person-cell span:not(:-webkit-any(.staff-calendar-avatar,.staff-calendar-new-avatar)){color:var(--muted);font-size:.72rem;font-weight:800}.staff-calendar-person-cell span:not(:-moz-any(.staff-calendar-avatar,.staff-calendar-new-avatar)){color:var(--muted);font-size:.72rem;font-weight:800}.staff-calendar-person-cell span:not(:is(.staff-calendar-avatar,.staff-calendar-new-avatar)){color:var(--muted);font-size:.72rem;font-weight:800}.staff-calendar-day-cell{border-right:1px solid var(--border);background:var(--surface);min-height:104px;padding:8px;position:relative}.staff-calendar-day-cell.is-current{background:color-mix(in srgb, var(--accent-soft) 24%, var(--surface))}.staff-calendar-day-cell.is-weekend{background:var(--surface-2)}.staff-shift-block{text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;justify-content:space-between;gap:8px;width:100%;height:100%;min-height:86px;padding:10px;transition:box-shadow .18s,transform .18s;display:flex}.staff-shift-block:hover{box-shadow:var(--shadow-tight);transform:translateY(-1px)}.staff-shift-block strong{font-size:.72rem;font-weight:900}.staff-shift-block span{align-items:center;gap:6px;font-size:.72rem;font-weight:900;display:inline-flex}.staff-shift-block--available{color:#2e7d32;background:#e8f5e9;border:1px solid #a5d6a7}.staff-shift-block--unavailable{color:#c62828;cursor:pointer;text-align:center;background:#ffebee;border:1px solid #ef9a9a;justify-content:center;align-items:center}.staff-shift-note{opacity:.85;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;font-size:.62rem;font-weight:600;display:block;overflow:hidden}.staff-shift-block.selected{box-shadow:0 0 0 1px var(--accent), 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.staff-shift-appointment-count{color:var(--primary);white-space:nowrap;font-size:.66rem;line-height:1.1}.staff-shift-appointment-count i{background:var(--accent);border-radius:999px;width:7px;height:7px;display:inline-block}.staff-shift-off-icon{height:100%;color:color-mix(in srgb, var(--muted) 36%, transparent);place-items:center;display:grid}.staff-calendar-side{grid-template-rows:auto minmax(240px,1fr);gap:24px;display:grid}.staff-calendar-settings-panel{gap:16px;padding:18px;display:grid;position:relative;overflow:hidden}.staff-calendar-panel-accent{background:linear-gradient(90deg, var(--accent), var(--primary));height:4px;position:absolute;top:0;bottom:auto;left:0;right:0}.staff-calendar-settings-panel h3{color:var(--primary);margin:0;font-size:1.15rem}.staff-calendar-settings-panel h3 svg{color:var(--accent)}.staff-calendar-settings-panel label{gap:8px;min-width:0;display:grid}.staff-calendar-settings-panel label span,.staff-calendar-legend>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.staff-calendar-settings-panel select{background:var(--surface);border-radius:8px;min-height:42px}.staff-calendar-legend{border-top:1px solid var(--border);gap:10px;padding-top:14px;display:grid}.staff-calendar-legend-item{color:var(--primary);align-items:center;gap:9px;font-size:.78rem;font-weight:800;display:flex}.staff-calendar-legend-swatch{border-radius:4px;flex:none;width:13px;height:13px}.staff-calendar-legend-swatch--available{background:#a5d6a7;border:1px solid #2e7d32}.staff-calendar-legend-swatch--busy{background:#ef9a9a;border:1px solid #c62828}.staff-calendar-legend-swatch--off{border:1px solid var(--border);background:var(--surface-3)}.staff-calendar-legend-swatch--overtime{background:#ffcc80;border:1px solid #e65100}.staff-calendar-legend-swatch--leave{background:#fef3c7;border:1px solid #f59e0b}.staff-calendar-legend-swatch--unavailable{background:#ffebee;border:1px solid #c62828}.staff-calendar-legend-swatch--sick{background:#ffedd5;border:1px solid #ea580c}.staff-shift-block--leave{color:#92400e;cursor:pointer;text-align:center;background:#fef3c7;border:1px solid #f59e0b;justify-content:center;align-items:center}.staff-schedule-edit-btn{border:1px solid var(--border);background:var(--surface-2);width:100%;min-height:28px;color:var(--muted);cursor:pointer;border-radius:6px;justify-content:center;justify-self:stretch;align-items:center;gap:6px;padding:5px 8px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.staff-schedule-edit-btn svg{flex-shrink:0}.staff-schedule-edit-btn span{white-space:normal;overflow-wrap:anywhere;text-align:left;min-width:0;font-size:.7rem;font-weight:800;line-height:1.2}.staff-schedule-edit-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.schedule-editor-body{gap:12px;padding:16px;display:grid}.day-action-body{gap:14px;padding:16px;display:grid}.day-action-error{color:var(--danger,#dc2626);padding:8px 16px 0;font-size:.78rem}.day-action-block-info{color:var(--primary);font-size:.88rem}.day-action-block-note{color:var(--muted)}.schedule-toggle-field{color:var(--primary);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.staff-form-field--times{align-items:flex-end;gap:10px;display:flex}.staff-form-field--times>div{flex:1;gap:6px;display:grid}.staff-calendar-detail-panel{flex-direction:column;min-height:260px;display:flex;overflow:hidden}.staff-calendar-detail-heading{border-bottom:1px solid var(--border);background:var(--surface-2);padding:16px 18px}.staff-calendar-detail-heading h3{color:var(--muted);text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.staff-calendar-detail-empty{min-height:220px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:14px;padding:24px;display:grid}.staff-calendar-detail-empty span{background:var(--surface-2);width:64px;height:64px;color:var(--border-strong);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.staff-calendar-detail-empty p{max-width:220px;line-height:1.45}@media (max-width:1120px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-calendar-stitch-layout{grid-template-columns:1fr}.staff-calendar-side{grid-template-rows:auto auto}.portal-stitch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-main-grid,.analytics-bottom-grid{grid-template-columns:1fr 1fr}.business-dashboard-grid{grid-template-columns:1fr}.register-card{min-height:auto}.register-visual{display:none}.register-panel{width:100%}.register-mobile-brand{color:var(--primary);align-items:center;gap:8px;margin-bottom:24px;font-weight:900;display:inline-flex}}@media (max-width:900px){.app-shell--portal .brand{border-bottom:0}.portal-stitch-topbar{width:100vw;max-width:100vw;padding:0 16px}.portal-stitch-topbar-leading h1{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.portal-stitch-search{display:none}.portal-stitch-topbar-actions{flex:none;gap:12px}.route-surface--portal,.route-surface--portal-calendar{padding:16px}.analytics-dashboard-heading,.analytics-card-heading{flex-direction:column;align-items:stretch}.analytics-segmented{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.staff-calendar-stitch-heading{flex-direction:column;align-items:stretch}.staff-calendar-toolbar{justify-content:stretch}.staff-calendar-date-nav,.staff-calendar-view-toggle{width:100%}.staff-calendar-date-nav span{flex:auto;min-width:0}.staff-calendar-view-toggle{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-shell{grid-template-columns:1fr}.app-sidebar{z-index:55;gap:10px;height:auto;padding:12px;position:sticky;top:0}.app-sidebar .brand{padding:0}.sidebar-cta,.utility-nav{display:none}.primary-nav{padding-bottom:2px;display:flex;overflow-x:auto}.primary-nav a{border-left:0;border-radius:8px;justify-content:center;min-width:76px;padding:0 12px}.primary-nav a span{display:none}.app-topbar{padding:12px;position:static}.topbar-leading h1{display:block}.topbar-search{display:none}.route-surface{padding:16px}.login-shell{display:block}.login-panel{width:100%;min-width:0}.login-hero{display:none}.login-topbar{padding:18px;position:static}.login-form-wrap{min-height:auto;padding:40px 0}.register-shell{padding:0 16px 24px}.register-shell .login-topbar{padding-inline-start:0;padding-inline-end:0;position:static}.register-panel{padding:28px}.hero-step:nth-child(2),.hero-step:nth-child(3){transform:none}}@media (max-width:640px){.metrics,.portal-stitch-metrics,.analytics-kpi-grid,.analytics-main-grid,.analytics-bottom-grid,.register-input-grid{grid-template-columns:1fr}.analytics-card,.analytics-kpi-card{border-radius:12px}.analytics-card{padding:18px}.analytics-chart{min-height:280px}.analytics-chart svg{height:250px}.staff-calendar-stitch-heading{flex-direction:column;gap:12px}.staff-calendar-stitch-heading h2{font-size:1.5rem}.staff-calendar-toolbar{justify-content:space-between;width:100%}.staff-calendar-date-nav span{padding:0 6px;font-size:.8rem}.staff-calendar-board{min-height:480px}.staff-calendar-grid-cols{grid-template-columns:76px repeat(7,minmax(66px,1fr));min-width:544px}.staff-calendar-body{min-width:544px}.staff-calendar-person-cell{gap:4px;padding:8px 4px}.staff-calendar-avatar{width:34px;height:34px;font-size:.7rem}.staff-calendar-person-cell strong{max-width:60px;font-size:.68rem}.staff-calendar-person-cell span:not(.staff-calendar-avatar),.staff-schedule-edit-btn span{display:none}.staff-schedule-edit-btn{border-radius:6px;width:26px;height:26px;padding:5px}.staff-calendar-day-cell{min-height:80px;padding:6px}.staff-shift-block{gap:3px;min-height:68px;padding:5px 4px}.staff-shift-block strong,.staff-shift-block span{font-size:.62rem}.register-card{border-radius:12px}.register-input-grid .field:first-child{grid-column:auto}.auth-inline-options,.page-heading,.panel-title-row{flex-direction:column;align-items:stretch}.login-topbar{flex-direction:column;align-items:center;gap:14px}.login-controls{justify-content:center}.login-form-wrap{gap:18px;max-width:300px;width:min(300px,100vw - 96px)!important;margin:0 auto!important}.login-shell,.login-panel{overflow-x:hidden;width:100vw!important;min-width:0!important}.auth-form-header h1{font-size:1.45rem}.auth-form-header p,.auth-footer-link{overflow-wrap:anywhere;max-width:100%}}.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}.mobile-bottom-nav{display:none}html,body,#root{max-width:100%;overflow-x:hidden}.route-surface--edge{width:100%;max-width:none;margin:0;padding:0}.barber-view-toggle button.active{color:var(--primary);background:var(--surface-2)}@media (min-width:901px){.app-shell{display:block}.app-sidebar{z-index:50;width:260px;height:100vh;position:fixed;top:0;bottom:0;left:0;right:auto}.app-workspace{margin-left:260px}.app-shell--sidebar-collapsed .app-sidebar{width:84px}.app-shell--sidebar-collapsed .app-workspace{margin-left:84px}}@media (max-width:900px){.app-shell{padding-bottom:72px;display:block}.app-sidebar{display:none}.app-workspace{margin-left:0}.app-topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100vw;max-width:100vw;min-height:64px;padding:0 16px;display:grid;position:sticky;top:0}.topbar-leading{min-width:0;display:block}.topbar-leading h1{text-align:left;text-overflow:ellipsis;white-space:nowrap;margin:0;display:block;overflow:hidden}.topbar-actions{flex-wrap:nowrap;justify-self:end;gap:8px}.topbar-actions .icon-button,.topbar-actions .button,.topbar-actions .segmented-control:first-of-type{display:none}.route-surface{max-width:100vw;padding:16px;overflow-x:hidden}.route-surface--edge{padding:0}.app-workspace{max-width:100vw;overflow-x:hidden}.mobile-bottom-nav{z-index:60;width:100vw;max-width:100vw;min-height:64px;padding:6px 0 max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);justify-content:space-around;align-items:center;gap:0;display:flex;position:fixed;top:auto;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 24px #0f172a14}.mobile-bottom-nav a,.mobile-bottom-nav button{min-width:0;min-height:52px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:0;font-family:inherit;font-size:.66rem;font-weight:900;text-decoration:none;display:inline-flex}.mobile-bottom-nav a.active,.mobile-bottom-nav button.active{color:var(--accent);background:var(--surface-2)}}@media (max-width:640px){.topbar-actions{display:none}}@media (max-width:480px){.mobile-bottom-nav{width:calc(100vw - 56px)}}@media (max-width:900px){.app-shell--portal .mobile-bottom-nav,.app-shell--backoffice .mobile-bottom-nav{max-width:none;min-height:64px;padding:6px 0 max(6px, env(safe-area-inset-bottom));background:var(--surface);grid-template-columns:repeat(5,minmax(0,1fr));left:0;right:0;justify-content:stretch!important;width:auto!important;display:grid!important}.app-shell--portal .mobile-bottom-nav a,.app-shell--portal .mobile-bottom-nav button,.app-shell--backoffice .mobile-bottom-nav a,.app-shell--backoffice .mobile-bottom-nav button{border-radius:0}.app-shell--portal .mobile-bottom-nav a.active,.app-shell--portal .mobile-bottom-nav button.active,.app-shell--backoffice .mobile-bottom-nav a.active,.app-shell--backoffice .mobile-bottom-nav button.active{background:0 0}.mobile-more-overlay{z-index:65;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a7a;animation:.18s ease-out both moreOverlayIn;position:fixed;top:0;bottom:0;left:0;right:0}.mobile-more-sheet{z-index:66;background:var(--surface);padding:0 0 max(80px, calc(64px + env(safe-area-inset-bottom)));border-radius:20px 20px 0 0;animation:.24s cubic-bezier(.32,.72,0,1) both moreSheetIn;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 40px #0f172a2e}.mobile-more-handle{background:var(--border);border-radius:2px;width:36px;height:4px;margin:12px auto 16px}.mobile-more-grid{grid-template-columns:1fr 1fr;gap:0;display:grid}.mobile-more-item{color:var(--text);border-bottom:1px solid var(--border);transition:background var(--motion-fast,.12s) ease;align-items:center;gap:12px;padding:14px 20px;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.mobile-more-item:hover{background:var(--surface-2)}.mobile-more-item.active{color:var(--accent);background:var(--surface-2)}.mobile-more-item.active .mobile-more-icon{color:var(--accent)}.mobile-more-icon{background:var(--surface-2);width:36px;height:36px;color:var(--muted);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@keyframes moreOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes moreSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media (max-width:480px){.portal-stitch-topbar{gap:10px}.portal-stitch-topbar-actions{gap:8px;display:flex}.portal-stitch-topbar-actions .portal-stitch-language,.portal-stitch-topbar-actions .portal-stitch-icon-button{display:none}.app-shell--portal .mobile-bottom-nav{width:auto!important}.app-shell--portal .route-surface--portal{padding-right:16px}}.app-shell--transactional{min-height:100vh;display:block}.app-shell--transactional .app-workspace,.app-workspace--transactional{background:var(--bg);min-height:100vh;margin-left:0;padding:0}.booking-staff-card.is-disabled{cursor:not-allowed;opacity:.5;filter:grayscale(.4)}.booking-staff-card.is-disabled:hover{border-color:var(--card-border)}.booking-branch-card.selected,.booking-service-card.selected,.booking-staff-card.selected{border-width:2px;border-color:var(--accent)}.booking-radio.selected{border:6px solid var(--accent)}.booking-service-card.selected svg{color:var(--accent)}.booking-slot.selected{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.booking-slot.busy{color:var(--muted);background:var(--surface-2);opacity:.62;cursor:not-allowed;border-style:dashed}.portal-operational-page{--operational-time-width:60px;--operational-row-height:32px;width:100%;max-width:none;color:var(--text);font-family:var(--app-font-family);gap:16px;margin:0;display:grid}.portal-operational-header,.portal-operational-layout,.portal-operational-controls,.portal-operational-staff-filter{min-width:0}.portal-operational-header{z-index:12;border-bottom:1px solid color-mix(in srgb, var(--border) 62%, transparent);background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:flex-start;gap:16px;margin:-24px -24px 0;padding:16px 24px;display:flex;position:sticky;top:64px}.portal-operational-header>div:first-child{gap:6px;display:grid}.portal-operational-header h2{color:var(--primary);letter-spacing:-.02em;font-size:max(1.55rem,min(2vw,1.85rem));font-weight:800}.portal-operational-header p{max-width:720px;color:var(--muted);line-height:1.55}.portal-operational-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.portal-operational-date-control,.portal-operational-controls label{border:1px solid var(--border);background:var(--surface);min-height:40px;box-shadow:var(--shadow-tight);border-radius:12px}.portal-operational-date-control{align-items:center;display:inline-flex;overflow:hidden}.portal-operational-date-control button{width:40px;min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.portal-operational-date-control label{min-width:148px;min-height:40px;color:var(--accent);box-shadow:none;border-top:0;border-bottom:0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 12px;display:inline-flex;position:relative}.portal-operational-date-label span{color:var(--text);white-space:nowrap;font-size:.86rem;font-weight:800}.portal-operational-date-control input{color:#0000;opacity:0;cursor:pointer;background:0 0;border:0;width:100%;min-height:40px;padding:0;font-weight:800;position:absolute;top:0;bottom:0;left:0;right:0}.portal-operational-board,.portal-operational-form-panel,.portal-operational-alert{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-tight);border-radius:18px}.portal-operational-kpi.tone-success>span{color:#059669;background:#ecfdf5;border-color:#bbf7d0}.portal-operational-staff-filter{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-tight);border-radius:16px;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.portal-operational-staff-filter button{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 14px;font-weight:700;display:inline-flex}.portal-operational-staff-dot{background:var(--success);border-radius:999px;flex:0 0 8px;width:8px;height:8px}.portal-operational-staff-dot.all{background:var(--accent)}.portal-operational-staff-filter button.active{border-color:color-mix(in srgb, var(--accent) 30%, var(--border));background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface));color:var(--accent)}.portal-operational-alert{padding:12px 14px;font-weight:900}.portal-operational-alert.error{border-color:color-mix(in srgb, var(--danger) 42%, var(--border));background:var(--danger-soft);color:var(--danger)}.portal-operational-alert.success{border-color:color-mix(in srgb, var(--success) 42%, var(--border));background:var(--success-soft);color:var(--success)}.portal-operational-alert.info{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));background:var(--accent-soft);color:color-mix(in srgb, var(--accent) 60%, var(--text))}.portal-operational-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:stretch;gap:16px;display:grid}.portal-operational-board{background:var(--surface);border-radius:16px;flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.portal-operational-loading{z-index:3;background:var(--surface-2);color:var(--muted);border-radius:12px;padding:10px 12px;font-weight:800;position:absolute;top:12px;bottom:auto;left:12px;right:12px}.portal-operational-timeline{background:var(--surface);flex-direction:column;flex:auto;min-width:700px;min-height:0;max-height:none;display:flex;overflow:auto}.portal-operational-grid-head{z-index:2;grid-template-columns:var(--operational-time-width) minmax(0, 1fr);border-bottom:1px solid var(--border);background:var(--surface);min-width:700px;min-height:48px;display:grid;position:sticky;top:0;box-shadow:0 4px 12px #0f172a0a}.portal-operational-time-head{border-right:1px solid var(--border);background:var(--surface-2);min-height:48px;color:var(--muted);justify-content:center;align-items:center;display:flex}.portal-operational-date-head{background:var(--surface);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:0 14px;display:flex}.portal-operational-date-head>div:first-child{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.portal-operational-date-head strong{color:var(--primary);font-size:1rem;font-weight:800}.portal-operational-date-head span{color:#047857;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:5px;align-items:center;min-height:20px;padding:0 8px;font-size:.72rem;font-weight:800;display:inline-flex}.portal-operational-date-head span:last-child{color:#b45309;background:#fffbeb;border-color:#fde68a}.portal-operational-date-head>div:last-child{gap:4px;display:inline-flex}.portal-operational-date-head button{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.portal-operational-slot-list{flex-direction:column;flex:auto;display:flex;position:relative}.portal-operational-now-line{z-index:5;background:var(--danger);pointer-events:none;align-items:center;height:1px;display:flex;position:absolute;left:0;right:0}.portal-operational-now-line>span{left:var(--operational-time-width);background:var(--danger);border-radius:999px;width:8px;height:8px;position:absolute;transform:translate(-50%)}.portal-operational-now-line strong{background:var(--danger);min-height:22px;color:var(--on-accent);white-space:nowrap;box-shadow:var(--shadow-tight);border-radius:0 6px 6px 0;align-items:center;margin-left:4px;padding:0 8px;font-size:.68rem;font-weight:900;display:inline-flex}.portal-operational-slot-row{min-width:700px;min-height:var(--operational-row-height);grid-template-columns:var(--operational-time-width) minmax(0, 1fr);border-bottom:1px solid color-mix(in srgb, var(--border) 74%, transparent);flex:1 0 auto;display:grid}.portal-operational-slot-row:nth-child(odd) .portal-operational-row-track:after{border-bottom-style:dashed}.portal-operational-time{border-right:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 74%, var(--surface));color:var(--muted);justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.portal-operational-row-track{min-width:0;min-height:var(--operational-row-height);cursor:pointer;align-items:center;gap:6px;padding:1px 54px 1px 6px;display:flex;position:relative;overflow-x:auto}.portal-operational-row-track:after{content:"";border-bottom:1px solid color-mix(in srgb, var(--border) 40%, transparent);pointer-events:none;position:absolute;bottom:-1px;left:0;right:0}.portal-operational-slot-row.tone-open .portal-operational-row-track{background:color-mix(in srgb, #dcfce7 58%, var(--surface))}.portal-operational-slot-row.tone-low .portal-operational-row-track{background:color-mix(in srgb, #f7fee7 58%, var(--surface))}.portal-operational-slot-row.tone-partial .portal-operational-row-track{background:color-mix(in srgb, #fef3c7 58%, var(--surface))}.portal-operational-slot-row.tone-high .portal-operational-row-track{background:color-mix(in srgb, #ffedd5 62%, var(--surface))}.portal-operational-slot-row.tone-full .portal-operational-row-track{background:color-mix(in srgb, #fee2e2 62%, var(--surface));cursor:default}.portal-operational-capacity{z-index:1;color:var(--muted);font-size:.7rem;font-weight:800;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.portal-operational-appointment-card,.portal-operational-block-card,.portal-operational-more-card{border-radius:8px;flex:0 0 180px;width:180px;min-width:0;min-height:28px}.portal-operational-appointment-card{border:1px solid var(--border);border-left:4px solid var(--accent);background:var(--surface);box-shadow:var(--shadow-tight);cursor:grab;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:3px 5px;display:grid}.portal-operational-appointment-card.status-completed{border-left-color:var(--success);opacity:.78;flex-basis:164px;width:164px}.portal-operational-card-grip{display:none}.portal-operational-card-main{gap:1px;min-width:0;display:grid}.portal-operational-card-main div{align-items:center;gap:4px;min-width:0;display:flex}.portal-operational-card-main .staff-avatar.small{display:none}.portal-operational-card-main strong,.portal-operational-card-main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-operational-card-main strong{font-size:.68rem;font-weight:900}.portal-operational-card-main span{color:var(--muted);font-size:.62rem;font-weight:700}.portal-operational-block-card button{background:var(--surface-2);width:22px;height:22px;color:var(--muted);cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.portal-operational-appointment-card.is-clickable{font:inherit;text-align:left;color:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.portal-operational-appointment-card.is-clickable:hover{border-color:var(--accent);box-shadow:0 6px 16px #0f172a24}.portal-operational-card-customer{min-width:0;color:var(--text);align-items:center;gap:4px;display:flex}.portal-operational-time-field{position:relative}.portal-operational-time-field.is-pinging select{animation:.62s opTimePulse}.portal-operational-time-field.is-pinging:after{content:"";border:3px solid var(--accent);pointer-events:none;border-radius:10px;animation:.62s ease-out forwards opPing;position:absolute;top:24px;bottom:0;left:0;right:0}@keyframes opTimePulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 80%, transparent);background:color-mix(in srgb, var(--accent) 18%, var(--surface-2))}to{background:var(--surface-2);box-shadow:0 0 0 14px #0000}}@keyframes opPing{0%{opacity:1;transform:scale(.92)}60%{opacity:.85}to{opacity:0;transform:scale(1.12)}}.customer-management-form{gap:14px;display:grid}.blacklist-management .holiday-list{gap:10px}.blacklist-management .holiday-row:not(.holiday-row--head){border-radius:16px;min-height:76px;padding-left:58px;transition:transform .16s,border-color .16s,box-shadow .16s;position:relative}.blacklist-management .holiday-row:not(.holiday-row--head):before{content:"";border:1px solid color-mix(in srgb, var(--danger) 26%, transparent);background:color-mix(in srgb, var(--danger-soft) 72%, transparent);border-radius:999px;width:34px;height:34px;position:absolute;top:17px;left:14px}.blacklist-management .holiday-row:not(.holiday-row--head):hover{border-color:color-mix(in srgb, var(--danger) 34%, var(--border));box-shadow:var(--shadow-tight);transform:translateY(-1px)}.blacklist-management .blacklist-row-main{padding-block-start:14px;padding-block-end:14px}.blacklist-management .blacklist-row-main .holiday-row-date{color:var(--danger)}.blacklist-management .blacklist-row-main .holiday-row-reason{white-space:normal;line-height:1.5}.blacklist-management .holiday-row-delete{border-color:color-mix(in srgb, var(--danger) 22%, transparent);width:auto;min-width:38px;color:var(--danger);background:color-mix(in srgb, var(--danger-soft) 48%, transparent);border-radius:9px}.analytics-financial-card--featured{border-color:color-mix(in srgb, var(--accent) 34%, var(--border));background:linear-gradient(120deg, color-mix(in srgb, var(--accent-soft) 58%, var(--surface)), var(--surface) 58%);grid-template-columns:minmax(180px,.8fr) minmax(0,2fr);gap:18px 28px;display:grid}.analytics-financial-card--featured>div:first-child span,.analytics-financial-featured-metrics span{color:var(--muted);font-size:.72rem;font-weight:700;display:block}.analytics-financial-card--featured>div:first-child strong{color:var(--primary);margin-top:5px;font-size:1.8rem;display:block}.analytics-financial-featured-metrics{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.analytics-financial-featured-metrics strong{color:var(--primary);margin-top:5px;font-size:1rem;display:block}.analytics-financial-card--featured .analytics-progress{grid-column:1/-1}.analytics-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.analytics-report-revenue{order:1}.analytics-report-customer{order:2}.analytics-report-service{order:3}.analytics-report-density{order:4}.analytics-main-grid{grid-template-columns:1fr}.analytics-main-grid .analytics-performance-card{display:none}.analytics-report-card h3{margin-bottom:18px}.analytics-report-card{border-radius:16px;min-height:320px}.analytics-tooltip{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:10px;gap:4px;padding:10px 12px;display:grid}.analytics-tooltip strong{color:var(--primary)}.analytics-tooltip span{font-size:.75rem;font-weight:700}@media (max-width:820px){.analytics-report-grid,.analytics-financial-card--featured{grid-template-columns:1fr}.analytics-financial-card--featured .analytics-progress{grid-column:auto}.analytics-financial-featured-metrics{grid-template-columns:1fr}}.portal-operational-staff-picker button.is-pinging{z-index:1;animation:.62s ease-out opStaffPulse;position:relative}.portal-operational-staff-picker button.is-pinging:after{content:"";border:2px solid var(--accent);border-radius:inherit;pointer-events:none;animation:.62s ease-out opPing;position:absolute;top:-3px;bottom:-3px;left:-3px;right:-3px}@keyframes opStaffPulse{0%,to{transform:scale(1)}35%{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 18%, transparent);transform:scale(1.035)}}.portal-operational-slot-row.is-pinging .portal-operational-row-track{animation:.62s ease-out opRowPulse}.portal-operational-slot-row.is-pinging .portal-operational-row-track:before{content:"";border:3px solid var(--accent);pointer-events:none;z-index:3;border-radius:8px;animation:.62s ease-out forwards opPing;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes opRowPulse{0%{box-shadow:inset 0 0 0 9999px color-mix(in srgb, var(--accent) 24%, transparent)}to{box-shadow:inset 0 0 0 9999px #0000}}.op-ripple{background:color-mix(in srgb, var(--accent) 45%, transparent);opacity:.55;pointer-events:none;z-index:4;border-radius:999px;width:14px;height:14px;margin:-7px 0 0 -7px;animation:.55s ease-out forwards opRipple;position:absolute;transform:scale(0)}@keyframes opRipple{to{opacity:0;transform:scale(9)}}.portal-operational-edit-card{max-width:520px}.portal-operational-edit-card textarea{border:1px solid var(--border);resize:vertical;min-height:72px;color:var(--text);background:var(--surface-2);font:inherit;border-radius:10px;padding:10px 12px}.portal-operational-status-segment{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.portal-operational-status-segment button{border:1px solid var(--border);background:var(--surface-2);min-height:38px;color:var(--text);cursor:pointer;border-radius:8px;padding:0 6px;font-size:.82rem;font-weight:700}.portal-operational-status-segment button:disabled{opacity:.45;cursor:not-allowed}.portal-operational-status-segment button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.portal-operational-status-segment button.active.status-completed{border-color:var(--success);color:var(--success);background:color-mix(in srgb, var(--success) 14%, var(--surface));box-shadow:inset 0 0 0 1px var(--success)}.portal-operational-status-segment button.active.status-cancelled,.portal-operational-status-segment button.active.status-no_show{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--surface));box-shadow:inset 0 0 0 1px var(--danger)}.portal-operational-edit-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (prefers-reduced-motion:reduce){.portal-operational-time-field.is-pinging select,.portal-operational-slot-row.is-pinging .portal-operational-row-track,.portal-operational-staff-picker button.is-pinging,.op-ripple{animation:none}.portal-operational-time-field.is-pinging:after,.portal-operational-slot-row.is-pinging .portal-operational-row-track:before,.portal-operational-staff-picker button.is-pinging:after{display:none}}.portal-operational-block-card{border:1px dashed var(--border-strong);background:var(--surface-2);color:var(--muted);opacity:.9;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 5px;display:grid}.portal-operational-block-card strong{color:var(--text);font-size:.68rem;display:block}.portal-operational-block-card span{font-size:.66rem}.portal-operational-block-card--off{border-style:solid}.portal-operational-block-card--off>svg:first-child{color:#ef4444}.portal-operational-block-card--break{background:color-mix(in srgb, #f59e0b 10%, var(--surface-2));border-style:solid;border-color:#f59e0b}.portal-operational-block-card--break>svg:first-child{color:#d97706}.portal-operational-more-card{border:1px dashed var(--border-strong);background:var(--surface-2);color:var(--muted);justify-content:center;align-items:center;font-size:.72rem;font-weight:900;display:inline-flex}.portal-operational-hold-card{border:1px dashed var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-radius:8px;flex:0 0 180px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:6px;width:180px;min-width:0;padding:3px 6px;animation:.28s opHoldFade;display:grid}.portal-operational-hold-card>svg{color:var(--accent)}.portal-operational-hold-card div{gap:1px;min-width:0;display:grid}.portal-operational-hold-card strong{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:900;overflow:hidden}.portal-operational-hold-card span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;font-weight:700;overflow:hidden}.portal-operational-hold-pulse{background:var(--accent);border-radius:50%;width:9px;height:9px;animation:1.5s ease-out infinite opHoldPulse}@keyframes opHoldPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 55%, transparent)}70%{box-shadow:0 0 0 7px color-mix(in srgb, var(--accent) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent)}}@keyframes opHoldFade{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.portal-operational-appointment-card.is-new{animation:1.5s ease-out 3 opNewPulse}@keyframes opNewPulse{0%,to{box-shadow:var(--shadow-tight)}50%{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 32%, transparent)}}.portal-operational-card-badge{text-transform:uppercase;letter-spacing:.03em;background:var(--accent);color:var(--surface);border-radius:999px;flex:none;padding:1px 5px;font-size:.52rem;font-weight:900;line-height:1.5}@media (prefers-reduced-motion:reduce){.portal-operational-hold-card,.portal-operational-hold-pulse,.portal-operational-appointment-card.is-new{animation:none}}.portal-operational-form-panel{border-radius:16px;align-self:stretch;max-height:none;padding:0;position:static;overflow:visible;box-shadow:0 18px 42px #0f172a14}.portal-operational-form-panel form{gap:12px;padding:16px;display:grid}.portal-operational-form-head{border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:16px 16px 0 0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;margin:-16px -16px 0;padding:16px;display:grid}.portal-operational-form-head>span{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:11px;justify-content:center;align-items:center;display:inline-flex}.portal-operational-form-head h3{color:var(--primary);margin:0;font-size:1.1rem;font-weight:800}.portal-operational-form-head p{color:var(--muted);font-size:.82rem;line-height:1.4}.portal-operational-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.portal-operational-staff-picker{color:var(--muted);gap:8px;font-size:.82rem;font-weight:800;display:grid}.portal-operational-staff-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.portal-operational-staff-picker button{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:52px;color:var(--muted);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:8px;display:flex;position:relative}.portal-operational-staff-picker button.active{border:2px solid var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--primary)}.portal-operational-staff-picker button.active:after{content:"";border:2px solid var(--surface);background:var(--accent);width:10px;height:10px;box-shadow:var(--shadow-tight);border-radius:999px;position:absolute;top:-4px;right:-4px}.portal-operational-staff-picker strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.portal-operational-form-panel textarea{border:1px solid var(--border);resize:none;min-height:86px;max-height:140px;color:var(--text);background:var(--surface);font:inherit;border-radius:12px;padding:10px 12px;overflow-y:auto}.portal-operational-disabled-check{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface));color:var(--muted);cursor:not-allowed;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.portal-operational-disabled-check input{pointer-events:none;width:18px;height:18px}.portal-operational-disabled-check strong,.portal-operational-disabled-check small{display:block}.portal-operational-submit{border-radius:12px;width:100%;min-height:54px;font-size:1rem;font-weight:800}.portal-operational-cancel{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-weight:700}.portal-operational-cancel:hover{color:var(--primary)}.portal-operational-day-records{border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface) 90%, var(--surface-2));flex:none;gap:10px;padding:12px;display:grid}.portal-operational-day-records-button{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--primary);cursor:pointer;box-shadow:var(--shadow-tight);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-weight:900;display:flex}.portal-operational-day-records-button strong{background:var(--accent-soft);min-width:30px;height:24px;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;display:inline-flex}.portal-operational-day-records-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:12px;max-height:320px;overflow-y:auto}.portal-operational-day-records-empty{color:var(--muted);margin:0;padding:16px}.portal-operational-day-records-table{border-collapse:collapse;width:100%;font-size:.85rem}.portal-operational-day-records-table thead th{z-index:1;text-align:left;background:var(--surface-2);color:var(--muted);text-transform:uppercase;letter-spacing:.02em;border-bottom:1px solid var(--border);padding:10px 14px;font-size:.75rem;font-weight:700;position:sticky;top:0}.portal-operational-day-records-table tbody td{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);color:var(--text);vertical-align:middle;padding:10px 14px}.portal-operational-day-records-table tbody tr:last-child td{border-bottom:0}.portal-operational-day-records-table tbody tr.tone-completed td{color:var(--muted)}.portal-operational-list-item.tone-completed{border-left-color:var(--success);background:color-mix(in srgb, var(--success-soft) 58%, var(--surface))}.portal-operational-list-item.tone-unfinished{border-left-color:var(--danger);background:color-mix(in srgb, var(--danger-soft) 56%, var(--surface))}.portal-operational-list-item.tone-current{border-left-color:var(--muted);background:color-mix(in srgb, var(--surface-2) 76%, var(--surface))}.portal-operational-list-item.tone-cancelled{border-left-color:color-mix(in srgb, var(--danger) 42%, var(--border));opacity:.6}@media (max-width:1180px){.portal-operational-layout{grid-template-columns:1fr}.portal-operational-form-panel{max-height:none;position:static}}@media (max-width:760px){.portal-operational-header{margin:-16px -16px 0;padding:14px 16px;display:grid;top:0}.portal-operational-controls{justify-content:flex-start}.portal-operational-form-grid{grid-template-columns:1fr}.portal-operational-grid-head,.portal-operational-slot-row{min-width:700px}.portal-operational-date-head>div:last-child{display:none}.portal-operational-staff-picker>div{grid-template-columns:1fr}.portal-operational-staff-filter{box-shadow:none;background:0 0;border:none;gap:6px;padding:2px 0}.portal-operational-staff-filter button{gap:6px;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:600}.portal-operational-staff-dot{flex:0 0 7px;width:7px;height:7px}.portal-operational-board{overflow-x:auto}}.app-shell--client,.app-shell--portal{font-family:var(--app-font-family);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.app-shell--client ::-webkit-scrollbar{width:6px;height:6px}.app-shell--portal ::-webkit-scrollbar{width:6px;height:6px}.app-shell--client ::-webkit-scrollbar-track{background:0 0}.app-shell--portal ::-webkit-scrollbar-track{background:0 0}.app-shell--client ::-webkit-scrollbar-thumb{background:#d8dadc;border-radius:999px}.app-shell--portal ::-webkit-scrollbar-thumb{background:#d8dadc;border-radius:999px}.app-shell--client :-webkit-any(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--client :-moz-any(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--client :is(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--portal :-webkit-any(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--portal :-moz-any(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--portal :is(h1,h2,h3,h4){color:var(--primary);font-family:var(--app-font-family);letter-spacing:-.01em;font-weight:600}.app-shell--client :-webkit-any(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--client :-moz-any(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--client :is(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--portal :-webkit-any(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--portal :-moz-any(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--portal :is(p,span,small,label,input,select,textarea,button,a){font-family:var(--app-font-family)}.app-shell--client :is(.page-heading h2){letter-spacing:-.02em;font-size:max(1.5rem,min(2.2vw,2rem));font-weight:600;line-height:1.2}.app-shell--portal :is(.portal-operational-header h2,.page-heading h2){letter-spacing:-.02em;font-size:max(1.5rem,min(2.2vw,2rem));font-weight:600;line-height:1.2}.app-shell--client .muted-text{color:var(--muted);font-size:.95rem;font-weight:400;line-height:1.55}.app-shell--portal :is(.portal-operational-header p,.muted-text){color:var(--muted);font-size:.95rem;font-weight:400;line-height:1.55}.app-shell--client :-webkit-any(.panel-eyebrow,.field){color:var(--muted);letter-spacing:var(--label-letter-spacing);font-size:.75rem;font-weight:600}.app-shell--client :-moz-any(.panel-eyebrow,.field){color:var(--muted);letter-spacing:var(--label-letter-spacing);font-size:.75rem;font-weight:600}.app-shell--client :is(.panel-eyebrow,.field){color:var(--muted);letter-spacing:var(--label-letter-spacing);font-size:.75rem;font-weight:600}.app-shell--portal :is(.panel-eyebrow,.field,.portal-stitch-metric>div:first-child>span:first-child,.portal-operational-card-main span,.business-table th){color:var(--muted);letter-spacing:var(--label-letter-spacing);font-size:.75rem;font-weight:600}.app-shell--client :is(.button,.sidebar-cta,.primary-nav a){font-weight:600}.app-shell--portal :is(.button,.sidebar-cta,.primary-nav a,.portal-stitch-login-link,.portal-operational-submit,.portal-operational-cancel,.portal-operational-staff-filter button){font-weight:600}.app-shell--client .route-surface--client :-webkit-any(.panel,.metric){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--client .route-surface--client :-moz-any(.panel,.metric){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--client .route-surface--client :is(.panel,.metric){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :-webkit-any(.panel,.portal-stitch-metric,.portal-appointments-panel,.staff-calendar-settings-panel,.staff-calendar-detail-panel,.schedule-panel,.portal-operational-board,.portal-operational-form-panel){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :-moz-any(.panel,.portal-stitch-metric,.portal-appointments-panel,.staff-calendar-settings-panel,.staff-calendar-detail-panel,.schedule-panel,.portal-operational-board,.portal-operational-form-panel){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :is(.panel,.portal-stitch-metric,.portal-appointments-panel,.staff-calendar-settings-panel,.staff-calendar-detail-panel,.schedule-panel,.portal-operational-board,.portal-operational-form-panel){border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :-webkit-any(.portal-stitch-metric,.portal-operational-appointment-card){transition:border-color .18s,box-shadow .18s,transform .18s,background .18s}.app-shell--portal .route-surface--portal :-moz-any(.portal-stitch-metric,.portal-operational-appointment-card){transition:border-color .18s,box-shadow .18s,transform .18s,background .18s}.app-shell--portal .route-surface--portal :is(.portal-stitch-metric,.portal-operational-appointment-card){transition:border-color .18s,box-shadow .18s,transform .18s,background .18s}.app-shell--portal .route-surface--portal :-webkit-any(.portal-stitch-metric,.portal-operational-appointment-card):hover{border-color:var(--card-border-hover);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :-moz-any(.portal-stitch-metric,.portal-operational-appointment-card):hover{border-color:var(--card-border-hover);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :is(.portal-stitch-metric,.portal-operational-appointment-card):hover{border-color:var(--card-border-hover);box-shadow:var(--card-shadow-hover)}.app-shell--client .route-surface--client :-webkit-any(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--client .route-surface--client :-moz-any(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--client .route-surface--client :is(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--portal .route-surface--portal :-webkit-any(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--portal .route-surface--portal :-moz-any(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--portal .route-surface--portal :is(.portal-stitch-metric,.metric){padding:20px;overflow:hidden}.app-shell--client .route-surface--client :is(.metric strong){color:var(--primary);letter-spacing:-.02em;font-weight:700}.app-shell--portal .route-surface--portal :is(.portal-stitch-metric strong,.metric strong){color:var(--primary);letter-spacing:-.02em;font-weight:700}.app-shell--client .route-surface--client .metric-icon,.app-shell--portal .route-surface--portal .portal-stitch-metric-icon{border-radius:var(--card-radius-sm);width:48px;height:48px}.app-shell--client .route-surface--client :-webkit-any(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--client .route-surface--client :-moz-any(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--client .route-surface--client :is(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--portal .route-surface--portal :-webkit-any(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--portal .route-surface--portal :-moz-any(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--portal .route-surface--portal :is(input:not([type=checkbox]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}.app-shell--client .route-surface--client :-webkit-any(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--client .route-surface--client :-moz-any(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--client .route-surface--client :is(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--portal .route-surface--portal :-webkit-any(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--portal .route-surface--portal :-moz-any(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--portal .route-surface--portal :is(input:not([type=checkbox]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}.app-shell--portal .portal-stitch-search input,.app-shell--portal .portal-operational-date-control input,.app-shell--client .topbar-search input{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0}.app-shell--client .route-surface--client :-webkit-any(.booking-branch-card.selected,.booking-service-card.selected,.booking-staff-card.selected,.booking-slot.selected){border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--primary);box-shadow:0 0 0 1px var(--accent), var(--card-shadow)}.app-shell--client .route-surface--client :-moz-any(.booking-branch-card.selected,.booking-service-card.selected,.booking-staff-card.selected,.booking-slot.selected){border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--primary);box-shadow:0 0 0 1px var(--accent), var(--card-shadow)}.app-shell--client .route-surface--client :is(.booking-branch-card.selected,.booking-service-card.selected,.booking-staff-card.selected,.booking-slot.selected){border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--primary);box-shadow:0 0 0 1px var(--accent), var(--card-shadow)}.app-shell--portal .route-surface--portal :is(.portal-operational-staff-picker button.active,.portal-operational-staff-filter button.active){border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--primary);box-shadow:0 0 0 1px var(--accent), var(--card-shadow)}.app-shell--client .route-surface--client .button.primary,.app-shell--client .sidebar-cta,.app-shell--portal .sidebar-cta{border-radius:var(--control-radius);background:var(--primary);min-height:48px;color:var(--on-accent);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :-webkit-any(.button.primary,.portal-operational-submit){border-radius:var(--control-radius);background:var(--primary);min-height:48px;color:var(--on-accent);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :-moz-any(.button.primary,.portal-operational-submit){border-radius:var(--control-radius);background:var(--primary);min-height:48px;color:var(--on-accent);box-shadow:var(--card-shadow)}.app-shell--portal .route-surface--portal :is(.button.primary,.portal-operational-submit){border-radius:var(--control-radius);background:var(--primary);min-height:48px;color:var(--on-accent);box-shadow:var(--card-shadow)}.app-shell--client .route-surface--client .button.primary:hover,.app-shell--client .sidebar-cta:hover,.app-shell--portal .sidebar-cta:hover{background:var(--accent);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :-webkit-any(.button.primary,.portal-operational-submit):hover{background:var(--accent);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :-moz-any(.button.primary,.portal-operational-submit):hover{background:var(--accent);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :is(.button.primary,.portal-operational-submit):hover{background:var(--accent);box-shadow:var(--card-shadow-hover)}.app-shell--portal .route-surface--portal :-webkit-any(.portal-operational-appointment-card,.portal-operational-block-card){background:var(--surface);width:180px;min-height:28px;box-shadow:var(--card-shadow);border-radius:8px;flex:0 0 180px}.app-shell--portal .route-surface--portal :-moz-any(.portal-operational-appointment-card,.portal-operational-block-card){background:var(--surface);width:180px;min-height:28px;box-shadow:var(--card-shadow);border-radius:8px;flex:0 0 180px}.app-shell--portal .route-surface--portal :is(.portal-operational-appointment-card,.portal-operational-block-card){background:var(--surface);width:180px;min-height:28px;box-shadow:var(--card-shadow);border-radius:8px;flex:0 0 180px}.app-shell--portal .route-surface--portal .portal-operational-appointment-card.status-completed{flex:0 0 164px;width:164px}.app-shell--portal .route-surface--portal .portal-operational-form-panel{box-shadow:var(--card-shadow-hover);border-radius:16px}.app-shell--portal .route-surface--portal .portal-operational-form-head{border-radius:16px 16px 0 0}.app-shell--portal .route-surface--portal .portal-operational-alert.error{border-color:color-mix(in srgb, var(--danger) 42%, var(--card-border));background:var(--danger-soft);color:var(--danger)}.app-shell--portal .route-surface--portal .portal-operational-alert.success{border-color:color-mix(in srgb, var(--success) 42%, var(--card-border));background:var(--success-soft);color:var(--success)}@media (max-width:760px){.app-shell--client .route-surface--client :-webkit-any(.panel,.metric){border-radius:var(--card-radius-sm)}.app-shell--client .route-surface--client :-moz-any(.panel,.metric){border-radius:var(--card-radius-sm)}.app-shell--client .route-surface--client :is(.panel,.metric){border-radius:var(--card-radius-sm)}.app-shell--portal .route-surface--portal :-webkit-any(.panel,.portal-stitch-metric,.portal-operational-board,.portal-operational-form-panel){border-radius:var(--card-radius-sm)}.app-shell--portal .route-surface--portal :-moz-any(.panel,.portal-stitch-metric,.portal-operational-board,.portal-operational-form-panel){border-radius:var(--card-radius-sm)}.app-shell--portal .route-surface--portal :is(.panel,.portal-stitch-metric,.portal-operational-board,.portal-operational-form-panel){border-radius:var(--card-radius-sm)}}.app-workspace--support{background:linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 42%, transparent) 0, transparent 320px), var(--bg)}.support-page,.support-standalone{min-width:0}.support-hero,.support-standalone-header{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow);gap:18px;display:grid}.support-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;padding:24px}.support-hero h2,.support-standalone-header h1{color:var(--primary);letter-spacing:0;font-size:max(1.7rem,min(2.4vw,2.35rem));line-height:1.12}.support-hero p,.support-standalone-header p{max-width:760px;color:var(--muted);line-height:1.6}.support-hero-actions,.support-form-actions,.support-status-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.support-action-grid,.support-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.support-action-card,.support-summary,.support-form-side,.support-doc-section,.support-doc-callout{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow)}.support-action-card{min-height:190px;color:var(--text);align-content:start;gap:12px;padding:20px;text-decoration:none;display:grid}.support-action-card>span,.support-summary>span,.support-doc-icon{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.support-action-card:hover{border-color:var(--card-border-hover);box-shadow:var(--card-shadow-hover)}.support-action-card strong,.support-summary strong{color:var(--primary);font-size:1.05rem;line-height:1.3}.support-action-card p,.support-form-side p,.support-doc-section p,.support-doc-callout p{color:var(--muted);line-height:1.55}.support-action-card em{color:var(--accent);font-style:normal;font-weight:800}.support-summary{gap:8px;min-height:124px;padding:18px;display:grid}.support-summary small,.support-ticket-meta span,.support-detail-item span{color:var(--muted);font-size:.78rem;font-weight:700}.support-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.support-section-heading>div{gap:8px;display:grid}.support-ticket-panel .loading-state,.support-ticket-panel .empty-state{box-shadow:none}.support-ticket-list{gap:12px;display:grid}.support-ticket-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(180px,auto);gap:18px;padding:16px;display:grid}.support-ticket-card>div:first-child{gap:8px;min-width:0;display:grid}.support-ticket-card h3{color:var(--primary);margin:0;font-size:1rem}.support-ticket-card p{color:var(--muted);line-height:1.5}.support-admin-note{border-left:3px solid var(--accent);padding-left:10px;color:var(--text)!important}.support-ticket-meta{text-align:right;align-content:start;justify-items:end;gap:8px;display:grid}.support-ticket-badge{border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.support-ticket-badge.tone-open{background:var(--accent-soft);color:var(--accent)}.support-ticket-badge.tone-info{background:var(--teal-soft);color:var(--teal)}.support-ticket-badge.tone-warning{background:var(--warning-soft);color:var(--warning)}.support-ticket-badge.tone-success{background:var(--success-soft);color:var(--success)}.support-standalone{gap:18px;width:min(1180px,100%);margin:0 auto;display:grid}.support-standalone-header{padding:24px}.support-standalone-header>div{align-items:center;gap:10px;display:inline-flex}.support-back-link{width:-moz-fit-content;width:fit-content;color:var(--accent);align-items:center;gap:8px;font-weight:800;text-decoration:none;display:inline-flex}.support-doc-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:18px;display:grid}.support-doc-index{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow);gap:8px;padding:16px;display:grid;position:sticky;top:20px}.support-doc-index a{min-height:38px;color:var(--muted);border-radius:8px;align-items:center;padding:0 10px;font-weight:800;text-decoration:none;display:flex}.support-doc-index a:hover{background:var(--accent-soft);color:var(--accent)}.support-doc-content{gap:14px;display:grid}.support-doc-section{grid-template-columns:auto minmax(0,1fr);gap:16px;padding:20px;scroll-margin-top:20px;display:grid}.support-doc-section h2{margin-bottom:8px}.support-doc-section ul,.support-form-side ul{color:var(--text);gap:8px;margin:14px 0 0;padding-left:18px;line-height:1.5;display:grid}.support-doc-callout{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.support-doc-callout svg{color:var(--accent)}.support-form-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.support-form{gap:14px;display:grid}.support-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.support-description-field textarea,.support-admin-detail textarea{border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);min-height:150px;color:var(--text);resize:vertical;padding:12px}.support-context-note,.support-alert{border-radius:12px;align-items:flex-start;gap:9px;padding:12px;line-height:1.45;display:flex}.support-context-note{border:1px solid var(--border);background:var(--surface-2);color:var(--muted)}.support-alert.error{border:1px solid color-mix(in srgb, var(--danger) 38%, var(--border));background:var(--danger-soft);color:var(--danger)}.support-alert.success{border:1px solid color-mix(in srgb, var(--success) 38%, var(--border));background:var(--success-soft);color:var(--success)}.support-alert.success div{gap:4px;display:grid}.support-form-side{gap:12px;padding:18px;display:grid}.support-admin-toolbar{grid-template-columns:minmax(240px,1fr) 220px auto;align-items:end;gap:12px;display:grid}.support-admin-layout{grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.support-admin-list,.support-admin-detail{min-width:0}.support-admin-list{gap:10px;display:grid}.support-admin-list button{border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--text);text-align:left;cursor:pointer;border-radius:12px;justify-items:start;gap:6px;padding:12px;display:grid}.support-admin-list button.selected,.support-admin-list button:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 48%, var(--surface))}.support-admin-list button strong,.support-admin-list button small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.support-admin-list button small{color:var(--muted)}.support-admin-detail{gap:14px;display:grid}.support-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.support-detail-item{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;gap:6px;padding:12px;display:grid}.support-detail-item strong{overflow-wrap:anywhere;min-width:0}@media (max-width:980px){.support-hero,.support-doc-layout,.support-form-layout,.support-admin-layout{grid-template-columns:1fr}.support-doc-index{position:static}.support-action-grid,.support-summary-grid,.support-form-grid,.support-detail-grid,.support-admin-toolbar{grid-template-columns:1fr}}@media (max-width:760px){.support-hero,.support-standalone-header,.support-doc-section,.support-doc-callout,.support-form-side{border-radius:var(--card-radius-sm)}.support-hero-actions,.support-form-actions,.support-status-actions{justify-content:stretch}.support-hero-actions .button,.support-form-actions .button,.support-status-actions .button{width:100%}.support-ticket-card,.support-doc-section,.support-doc-callout{grid-template-columns:1fr}.support-ticket-meta{text-align:left;justify-items:start}}.availability-title-icon,.availability-section-icon{vertical-align:middle;flex-shrink:0;margin-right:6px;display:inline}.availability-form{flex-direction:column;gap:20px;display:flex}.availability-holidays-wrap{margin-top:20px}.availability-rules-head{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.availability-rules-head h3,.availability-rules-head p{margin:0}.availability-rules-head h3{margin-bottom:2px}.availability-rules-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.availability-rule{flex-direction:column;gap:6px;display:flex}.availability-rule-hint{margin:0;font-size:.82rem;line-height:1.45}.availability-rules-summary{border:1px solid var(--border-strong);background:var(--accent-soft);border-radius:10px;margin:16px 0 0;padding:10px 14px;font-size:.88rem;line-height:1.5}.availability-schedule-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.availability-schedule-copy h3{align-items:center;margin:0 0 4px;display:flex}.availability-schedule-copy .muted-text{margin:0;font-size:13px}.availability-defaults-bar{flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.availability-defaults-field{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);flex-direction:column;gap:4px;font-size:11px;font-weight:700;display:flex}.availability-defaults-field .availability-time-input .time-picker-trigger,.availability-schedule-table .availability-time-input .time-picker-trigger{min-height:36px;padding:0 8px;font-size:13px}.availability-apply-btn{white-space:nowrap;align-self:flex-end;align-items:center;gap:4px;padding:7px 12px;font-size:12px;display:flex}.availability-schedule-table{flex-direction:column;gap:2px;display:flex}.availability-schedule-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);grid-template-columns:118px 96px repeat(4,1fr);gap:8px;padding:8px 14px;font-size:11px;font-weight:700;display:grid}.availability-schedule-row{border-radius:8px;grid-template-columns:118px 96px repeat(4,1fr);align-items:center;gap:8px;padding:8px 14px;transition:background .15s;display:grid}.availability-schedule-row:hover{background:var(--surface-2)}.availability-row-primary,.availability-row-times{display:contents}.availability-row-times .field>span:first-child{display:none}.availability-schedule-row--closed{opacity:.5}.availability-day-label{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.availability-toggle{cursor:pointer;color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:flex}.availability-toggle input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:16px;height:16px}.availability-time-input{width:100%;margin:0}.availability-warning{color:var(--warning);background:var(--warning-soft);border:1px solid color-mix(in srgb, var(--warning) 30%, transparent);border-radius:6px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.availability-row-warning{grid-column:1/-1;margin-top:2px}.availability-action-bar{justify-content:flex-end;align-items:center;gap:10px;padding:4px 0;display:flex}.availability-action-bar .button{align-items:center;gap:6px;display:flex}.availability-holidays-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.availability-holidays-head h3{align-items:center;margin:0;display:flex}@media (max-width:640px){.availability-rules-grid{grid-template-columns:1fr}.availability-schedule-top{flex-direction:column;gap:14px}.availability-defaults-bar{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.availability-apply-btn{grid-column:1/-1;justify-content:center;align-self:auto;width:100%}.availability-schedule-head{display:none}.availability-schedule-table{gap:8px}.availability-schedule-row{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--elev-1);flex-direction:column;gap:0;padding:0;transition:none;display:flex;overflow:hidden}.availability-schedule-row:hover{background:var(--card-bg)}.availability-schedule-row--closed{opacity:1;background:var(--surface-2)}.availability-row-primary{justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.availability-schedule-row:not(.availability-schedule-row--closed) .availability-row-primary{border-bottom:1px solid var(--border)}.availability-schedule-row--closed .availability-day-label{color:var(--muted)}.availability-row-times{grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px;display:grid}.availability-row-times .field>span:first-child{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:3px;font-size:10px;font-weight:700;display:block}.availability-schedule-row--closed .availability-row-times{display:none}.availability-row-warning{grid-column:auto;margin:0 16px 12px}.availability-toggle{font-size:13px;font-weight:600}.availability-day-label{font-size:15px;font-weight:600}.availability-action-bar{flex-direction:column-reverse;align-items:stretch;gap:8px}.availability-action-bar .button{justify-content:center;width:100%}.availability-row-times .availability-time-input .time-picker-trigger{min-height:44px;font-size:14px}.availability-defaults-field .availability-time-input .time-picker-trigger{min-height:42px;font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.services-page{flex-direction:column;gap:24px;display:flex}.services-catalog-panel,.services-table-panel{background:var(--surface-lowest,#fff);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;padding:24px;display:flex}.services-catalog-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.services-section-title{color:var(--text);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.services-section-subtitle{color:var(--muted);margin-top:4px;font-size:.875rem}.services-count-badge{background:var(--accent-soft,#dbeafe);color:var(--accent,#2563eb);border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:500}.services-catalog-search-row{border:1px solid var(--border);height:40px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.services-catalog-search-row:focus-within{border-color:var(--accent)}.services-search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.services-empty-inline{color:var(--muted);padding:12px 0;font-size:.875rem}.services-error{color:#dc2626;background:#fee2e2;border-radius:8px;padding:10px 16px;font-size:.875rem}.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.catalog-card{background:var(--surface-lowest,#fff);border:1.5px solid var(--border);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.catalog-card:hover{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb14}.catalog-card.is-selected{border-color:var(--accent,#2563eb);background:var(--accent-soft,#dbeafe)}.catalog-card-name{color:var(--text);font-size:.875rem;font-weight:600}.catalog-card-category{color:var(--muted);font-size:.75rem}.catalog-card-icon{color:var(--muted);position:absolute;top:10px;right:10px}.catalog-card.is-selected .catalog-card-icon{color:var(--accent)}.catalog-inline-form-title{align-items:center;gap:8px;font-size:.9rem;display:flex}.catalog-inline-form-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.services-visibility-check{color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.875rem;display:flex}.services-table .staff-col-actions{width:90px}.services-type-badge{letter-spacing:.03em;background:var(--surface-container,#eceef0);color:var(--muted);text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:600}.services-type-badge.is-catalog{background:var(--accent-soft,#dbeafe);color:var(--accent,#2563eb)}.visibility-toggle{background:var(--surface-container,#eceef0);width:32px;height:32px;color:var(--muted);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.visibility-toggle.is-visible{color:#15803d;background:#dcfce7}.visibility-toggle:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop{z-index:900;animation:modal-fade var(--motion-fast) var(--ease-out) both;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-card{background:var(--surface-lowest,#fff);width:100%;max-width:480px;animation:modal-pop var(--motion-base) var(--ease-out) both;border-radius:16px;flex-direction:column;display:flex;box-shadow:0 16px 42px #0f172a2e}.modal-card.pp-modal-card{overscroll-behavior:contain;max-height:min(90dvh,820px);overflow-y:auto}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-pop{0%{opacity:0;transform:translateY(10px)scale(.985)}}.modal-header{z-index:1;background:var(--surface-lowest,#fff);border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex;position:sticky;top:0}.modal-header h3{color:var(--text);font-size:1rem;font-weight:600}.modal-close{background:var(--surface-container,#eceef0);width:36px;height:36px;color:var(--muted);cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal-body{flex-direction:column;gap:16px;padding:20px 24px 24px;display:flex}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-card.staff-edit-modal-card{max-width:560px}@media (max-width:640px){.modal-backdrop.pp-modal-backdrop{align-items:flex-end;padding:0}.modal-card.pp-modal-card{border-radius:20px 20px 0 0;width:100%;max-width:100%;max-height:90dvh;overflow-y:auto}.modal-card.pp-modal-card:before{content:"";background:var(--border);border-radius:2px;width:36px;height:4px;margin:10px auto 0;display:block}.modal-card.staff-edit-modal-card{max-width:100%}.modal-header{border-radius:20px 20px 0 0;padding-top:14px}.modal-body{padding:16px 20px 32px}.modal-actions{flex-direction:column;gap:10px}.modal-actions .button{justify-content:center;width:100%;min-height:46px}}.pp-alert-message{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}.pp-alert-message--error{color:var(--danger);font-weight:700}.pp-alert-message--warning{color:var(--warning,#b45309);font-weight:600}.pp-action-feedback-card{max-width:420px}.pp-action-feedback-body{text-align:center;align-items:center;padding-top:10px}.pp-action-feedback-icon{background:color-mix(in srgb, var(--danger) 12%, transparent);width:56px;height:56px;color:var(--danger);box-shadow:0 0 0 6px color-mix(in srgb, var(--danger) 6%, transparent);border-radius:50%;justify-content:center;align-items:center;display:flex}.pp-action-feedback-message{color:var(--text);max-width:36ch;margin:0;font-size:.97rem;line-height:1.55}.pp-action-feedback-body .modal-actions{justify-content:center;width:100%;margin-top:8px}.portal-realtime-toasts{z-index:1000;pointer-events:none;flex-direction:column;gap:12px;max-width:340px;display:flex;position:fixed;top:18px;right:18px}.portal-realtime-toast{pointer-events:auto;background:var(--surface-color,#fff);border:1px solid var(--border-color,#e2e8f0);border-left:4px solid #f59e0b;border-radius:12px;padding:14px 16px;animation:.18s ease-out portal-realtime-pop;position:relative;box-shadow:0 12px 32px #0f172a2e}.portal-realtime-toast.is-confirmed{border-left-color:#10b981}@keyframes portal-realtime-pop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.portal-realtime-toast-close{color:var(--muted-color,#94a3b8);cursor:pointer;background:0 0;border:none;padding:2px;line-height:0;position:absolute;top:8px;right:8px}.portal-realtime-toast-head{text-transform:uppercase;letter-spacing:.03em;color:#b45309;align-items:center;gap:6px;font-size:.78rem;font-weight:600;display:flex}.portal-realtime-toast.is-confirmed .portal-realtime-toast-head{color:#047857}.portal-realtime-toast-name{margin:8px 0 2px;font-size:1.02rem;font-weight:700}.portal-realtime-toast-meta{color:var(--muted-color,#64748b);margin:0;font-size:.85rem}.portal-realtime-toast-error{color:#dc2626;margin:6px 0 0;font-size:.8rem}.portal-realtime-toast-actions{gap:8px;margin-top:12px;display:flex}.portal-realtime-view-btn,.portal-realtime-block-btn{cursor:pointer;border:1px solid var(--border-color,#e2e8f0);border-radius:8px;flex:1;padding:8px 10px;font-size:.85rem;font-weight:600}.portal-realtime-view-btn{color:var(--text-color,#1e293b);background:0 0}.portal-realtime-block-btn{color:#fff;background:#dc2626;border-color:#dc2626}.portal-realtime-block-btn:disabled{opacity:.6;cursor:default}.analytics-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.analytics-range-picker{align-items:center;gap:8px;display:inline-flex}.analytics-range-picker>div{width:160px}.analytics-range-picker>span{color:var(--muted);font-weight:700}.analytics-range-compare{color:var(--muted);margin-top:-12px;font-size:.76rem;font-weight:600}.analytics-insights-strip{flex-wrap:wrap;gap:10px;display:flex}.analytics-insight{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.76rem;font-weight:600;display:inline-flex}.analytics-insight.severity-warn{border-color:color-mix(in srgb, var(--warning-color,#f59e0b) 50%, transparent);background:color-mix(in srgb, var(--warning-color,#f59e0b) 14%, transparent);color:color-mix(in srgb, var(--warning-color,#b45309) 90%, var(--text))}.analytics-insight.severity-good{border-color:color-mix(in srgb, var(--success,#10b981) 50%, transparent);background:color-mix(in srgb, var(--success,#10b981) 14%, transparent);color:color-mix(in srgb, var(--success,#047857) 90%, var(--text))}.analytics-insight.severity-info{border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.analytics-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.analytics-delta{background:var(--surface-2);color:var(--muted);border-radius:6px;align-items:center;gap:2px;padding:3px 6px;font-size:.64rem;font-weight:800;display:inline-flex}.analytics-delta.up{background:color-mix(in srgb, var(--success,#10b981) 16%, transparent);color:var(--success,#047857)}.analytics-delta.down{color:#dc2626;background:#ef444429}.analytics-chart-legend{flex:none;gap:14px;display:inline-flex}.analytics-chart-legend span{color:var(--muted);align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:inline-flex}.analytics-chart-legend i{border-radius:999px;width:16px;height:3px}.analytics-chart-legend i.legend-current{background:#316bf3}.analytics-chart-legend i.legend-previous{background:var(--border-strong)}.analytics-comparison{margin-top:24px}.analytics-comparison h4,.analytics-customer-value-card h4{color:var(--muted);text-transform:uppercase;margin:0 0 12px;font-size:.74rem;font-weight:700}.analytics-table-wrap{overflow-x:auto}.analytics-comparison-table{border-collapse:collapse;width:100%;font-size:.82rem}.analytics-comparison-table th,.analytics-comparison-table td{text-align:right;white-space:nowrap;padding:8px 10px}.analytics-comparison-table th:first-child,.analytics-comparison-table td:first-child{text-align:left}.analytics-comparison-table thead th{color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--border);font-size:.68rem;font-weight:700}.analytics-comparison-table tbody td{color:var(--text);border-bottom:1px solid color-mix(in srgb, var(--border) 50%, transparent)}.analytics-comparison-table tfoot td{color:var(--primary);padding-top:12px;font-weight:800}.analytics-side-column{align-content:start;gap:24px;display:grid}.analytics-progress{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.analytics-progress i{border-radius:inherit;background:var(--accent);height:100%;display:block}.analytics-financial-card small{color:var(--muted);margin-top:8px;font-size:.72rem;font-weight:600;display:block}.analytics-staff-meta{color:var(--muted);justify-content:space-between;gap:8px;padding-left:40px;font-size:.74rem;font-weight:700;grid-template-columns:none!important;display:flex!important}.analytics-ratings-card h3,.analytics-customer-value-card h3{color:var(--muted);text-transform:uppercase;margin-bottom:20px;font-size:.76rem;font-weight:700}.analytics-rating-summary{align-items:center;gap:14px;margin-bottom:18px;display:flex}.analytics-rating-summary>strong{color:var(--primary);font-size:2.2rem;line-height:1}.analytics-rating-summary span{color:var(--muted);margin-top:4px;font-size:.72rem;font-weight:600;display:block}.analytics-stars{color:var(--border-strong);gap:2px;display:inline-flex}.analytics-stars .filled{color:#f59e0b;fill:#f59e0b}.analytics-rating-distribution{gap:8px;display:grid}.analytics-rating-row{grid-template-columns:40px minmax(0,1fr) 28px;align-items:center;gap:8px;display:grid}.analytics-rating-row>span{color:var(--muted);align-items:center;gap:2px;font-size:.72rem;font-weight:700;display:inline-flex}.analytics-rating-row>i{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.analytics-rating-row>i b{border-radius:inherit;background:#f59e0b;height:100%;display:block}.analytics-rating-row>em{color:var(--muted);text-align:right;font-size:.72rem;font-style:normal;font-weight:700}.analytics-value-metrics{gap:14px;margin-bottom:18px;display:grid}.analytics-value-metrics>div{gap:2px;display:grid}.analytics-value-metrics span{color:var(--muted);font-size:.72rem;font-weight:600}.analytics-value-metrics strong{color:var(--primary);font-size:1.05rem}.analytics-value-metrics small{color:color-mix(in srgb, var(--muted) 80%, transparent);font-size:.66rem}.analytics-top-customers{gap:12px;margin:0;padding:0;list-style:none;display:grid}.analytics-top-customers li{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.analytics-rank{background:var(--surface-2);width:24px;height:24px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.analytics-top-customers strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;display:block;overflow:hidden}.analytics-top-customers small{color:var(--muted);font-size:.68rem}.analytics-top-customers em{color:var(--accent);font-size:.82rem;font-style:normal;font-weight:800}@media (max-width:1100px){.analytics-main-grid{grid-template-columns:minmax(0,1fr)}.analytics-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.analytics-toolbar{justify-content:stretch}.analytics-bottom-grid{grid-template-columns:minmax(0,1fr)}.analytics-range-picker>div{width:100%}}@media print{.analytics-toolbar,.analytics-fab,.app-sidebar,nav{display:none!important}.analytics-card,.analytics-kpi-card{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;break-inside:avoid}.analytics-main-grid,.analytics-bottom-grid{grid-template-columns:minmax(0,1fr)}}.skeleton{gap:10px;display:grid}.skeleton-line{background:linear-gradient(100deg, var(--surface-2) 40%, var(--surface-3) 50%, var(--surface-2) 60%);background-size:200% 100%;border-radius:6px;height:14px;animation:1.4s infinite skeleton-shimmer}.skeleton-line:nth-child(2n){width:86%}.skeleton-line:nth-child(3n){width:72%}.skeleton--block .skeleton-line{border-radius:10px;height:100%;min-height:48px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.modal-backdrop,.modal-card,.user-menu__panel{animation:none}.skeleton-line{background:var(--surface-2);animation:none}.button,input:not([type=checkbox]),select,.date-picker-trigger,.time-picker-trigger{transition:none}}.shop-profile-page{flex-direction:column;gap:20px;max-width:880px;display:flex}.shop-profile-identity{border:1px solid var(--border);background:radial-gradient(130% 150% at 0% 0%, var(--accent-soft) 0%, transparent 58%), var(--surface);border-radius:16px;align-items:center;gap:16px;padding:20px 22px;display:flex}.shop-profile-identity-icon{background:var(--accent);width:56px;height:56px;color:var(--on-accent);box-shadow:0 8px 22px -10px color-mix(in srgb, var(--accent) 70%, transparent);border-radius:16px;flex-shrink:0;place-items:center;display:grid}.shop-profile-identity-body{gap:6px;min-width:0;display:grid}.shop-profile-identity-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.shop-profile-identity-head h3{color:var(--text);margin:0;font-size:1.35rem;font-weight:800;line-height:1.15}.shop-profile-status{letter-spacing:.02em;background:var(--surface-2);color:var(--muted);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:.74rem;font-weight:800;display:inline-flex}.shop-profile-status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.shop-profile-status.is-active{color:#15803d;background:#16a34a24;border-color:#16a34a52}.shop-profile-identity-meta{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:.9rem;display:flex}.shop-profile-identity-meta svg{color:var(--accent);flex-shrink:0}.shop-profile-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.shop-profile-stat{border:1px solid var(--border);background:var(--surface);border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.shop-profile-stat-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.shop-profile-stat-body{gap:2px;min-width:0;display:grid}.shop-profile-stat-value{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:800;line-height:1.2;overflow:hidden}.shop-profile-stat-value.is-muted{color:var(--muted);font-weight:700}.shop-profile-stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.7rem;font-weight:700}.shop-profile-form{border:1px solid var(--border);background:var(--surface);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.shop-profile-section{border-bottom:1px solid var(--border);gap:16px;padding:22px;display:grid}.shop-profile-section-head h4{color:var(--text);margin:0 0 2px;font-size:.95rem;font-weight:800}.shop-profile-section-head p{color:var(--muted);margin:0;font-size:.84rem}.shop-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.shop-profile-form input[aria-invalid=true]{background:color-mix(in srgb, #dc2626 6%, var(--surface-2));border-color:#dc2626}.shop-profile-map-link{width:-moz-fit-content;width:fit-content;color:var(--accent);align-items:center;gap:6px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.shop-profile-map-link:hover{text-decoration:underline}.address-picker{flex-direction:column;gap:12px;display:flex}.address-picker-search{flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:relative}.address-picker-search input{border:1px solid var(--card-border,#d9d4cc);background:var(--surface,#fff);min-width:0;font:inherit;border-radius:10px;flex:220px;padding:9px 12px 9px 34px}.address-picker-map{border:1px solid var(--card-border,#d9d4cc);z-index:0;border-radius:12px;width:100%;height:320px;overflow:hidden}.address-picker-geo-error{color:var(--danger,#dc2626);margin:0;font-size:.84rem}.address-picker-hint{color:var(--text-muted,#8a8178);align-items:center;gap:6px;margin:0;font-size:.84rem;display:flex}.address-picker-hint.is-set{color:var(--success,#2e7d32)}.address-picker-map-error{color:var(--warning-text,#8a5a00);background:var(--warning-soft,#fdf3e0);border:1px solid var(--warning-border,#f0d9ae);border-radius:10px;align-items:flex-start;gap:6px;margin:0;padding:8px 10px;font-size:.84rem;line-height:1.45;display:flex}.address-picker-map-error svg{flex:none;margin-top:2px}.address-picker-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.address-picker-full textarea{resize:vertical;border:1px solid var(--card-border,#d9d4cc);background:var(--surface,#fff);width:100%;font:inherit;border-radius:10px;padding:9px 12px}.field-label-text{color:var(--text,#2b2b2b);align-items:center;gap:6px;font-size:.84rem;font-weight:700;display:inline-flex}.onboarding-address{flex-direction:column;gap:8px;display:flex}@media (max-width:640px){.address-picker-fields{grid-template-columns:1fr}}.shop-profile-footer{background:var(--surface-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;display:flex}.shop-profile-feedback{min-height:20px;font-size:.85rem;font-weight:600}.shop-profile-feedback-ok{color:#15803d;align-items:center;gap:6px;display:inline-flex}.shop-profile-feedback-error{color:#dc2626}.shop-profile-feedback-dirty{color:var(--muted)}.shop-profile-footer-actions{align-items:center;gap:10px;margin-left:auto;display:flex}@media (max-width:720px){.shop-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-profile-fields{grid-template-columns:1fr}.shop-profile-footer{flex-direction:column;align-items:stretch}.shop-profile-footer-actions{justify-content:flex-end;margin-left:0}}.merchant-picker{position:relative}.merchant-picker-trigger{border:1px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;border-radius:8px;align-items:center;width:100%;min-height:44px;padding:8px 12px;display:flex}.merchant-picker-trigger:disabled{opacity:.6;cursor:not-allowed}.merchant-picker-value,.merchant-picker-pop button{gap:2px;min-width:0;display:grid}.merchant-picker-value strong,.merchant-picker-pop strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.merchant-picker-meta{gap:1px;min-width:0;display:grid}.merchant-picker-value small,.merchant-picker-pop small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.35;overflow:hidden}.merchant-picker-placeholder{color:var(--muted);font-size:.86rem}.merchant-picker-pop{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;max-height:320px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 12px 32px #0000002e}.merchant-picker-search{border:1px solid var(--border);background:var(--surface-2);border-radius:6px;margin:8px;padding:8px 10px;font-size:.84rem}.merchant-picker-list{margin:0;padding:0 4px 6px;list-style:none;overflow-y:auto}.merchant-picker-list>li>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%;padding:8px 10px}.merchant-picker-list>li>button:hover,.merchant-picker-list>li>button.is-active{background:var(--accent-soft)}.merchant-picker-empty{color:var(--muted);text-align:center;padding:12px 10px;font-size:.82rem}.staff-schedule-day-list{display:none}@media (max-width:768px){.staff-schedule-grid-wrap{display:none}.staff-schedule-day-list{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.staff-schedule-day-row{border-bottom:1px solid var(--border);grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:12px;display:grid}.staff-schedule-day-row:last-child{border-bottom:0}.staff-schedule-day-row.is-off{opacity:.65;background:var(--surface-2)}.staff-schedule-day-meta{gap:2px;min-width:0;display:grid}.staff-schedule-day-meta strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:700;overflow:hidden}.staff-schedule-day-meta>span{color:var(--muted);font-size:.72rem}.staff-schedule-day-shift{text-align:right}.staff-schedule-day-shift .off-day{font-size:.75rem}.staff-schedule-day-shift .shift-block{text-align:right;gap:2px;min-height:0;padding:4px 8px}.staff-schedule-day-shift .shift-block strong,.staff-schedule-day-shift .shift-block span{font-size:.7rem}}@media (max-width:720px){.services-page .staff-table.pp-table--cards{min-width:0}.services-page .staff-table-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.services-page .services-table-panel{padding:16px}}.services-staff-pricing{flex-direction:column;gap:12px;display:flex}.pp-price-toggle{margin-top:2px}.services-per-staff-section{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;gap:8px;max-height:260px;padding:12px;display:flex;overflow-y:auto}.pp-staff-price-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.pp-staff-price-name{flex-direction:column;min-width:0;font-size:.875rem;display:flex}.pp-staff-price-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pp-staff-price-hint{color:#b26a00;font-size:.7rem;font-style:normal}.pp-staff-price-input{flex:none}.pp-staff-price-input .field{margin:0}.pp-staff-price-input .field span:empty{display:none}.pp-staff-price-input .field input{text-align:right;width:118px}.staff-panel-hint{color:var(--text-secondary);margin:-4px 0 4px;font-size:.75rem}@media (max-width:640px){.services-per-staff-section{max-height:38vh}.pp-staff-price-input .field input{width:96px}}.portal-operational-price-summary{border:1px solid var(--border);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 14px;display:flex}.portal-operational-price-summary>span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.portal-operational-price-summary>strong{align-items:baseline;gap:8px;font-size:1.1rem;display:inline-flex}.portal-operational-price-tag{color:var(--accent,#c8853b);text-transform:uppercase;letter-spacing:.03em;background:#c8853b1f;border-radius:999px;padding:2px 8px;font-size:.66rem;font-style:normal;font-weight:600}.time-picker-clear{top:50%;border:1px solid var(--border);background:var(--surface);width:20px;height:20px;color:var(--muted);cursor:pointer;border-radius:999px;place-items:center;font-size:13px;line-height:1;display:grid;position:absolute;transform:translateY(-50%)}.time-picker-clear:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:8px}.time-picker-clear:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:8px}.time-picker-clear:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:8px}.time-picker-clear:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:8px}.time-picker-clear:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:8px}.time-picker-clear:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:8px}.time-picker-clear:hover{border-color:var(--accent);color:var(--accent)}.time-picker-clear-row{border-bottom:1px solid var(--border);margin-bottom:4px;padding-bottom:4px}.time-picker-option--clear{color:var(--muted);font-weight:600}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}select option{background-color:var(--surface-2);color:var(--text)}.pp-language-select{border:1px solid var(--border);min-height:40px;color:var(--muted);background:var(--surface);border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:inline-flex}.pp-language-select:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.pp-language-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:auto;max-width:10rem;min-height:38px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;outline:0;padding:0 20px 0 0;font-size:.82rem;font-weight:750}.pp-language-select-chevron{pointer-events:none;margin-inline-start:-18px}[dir=rtl] .pp-language-select select{padding:0 0 0 20px}:root{color:#1f1b16;--bg:#faf7f2;--bg-strong:#f1ece3;--surface:#fff;--surface-2:#f7f4ee;--surface-3:#ebe6dc;--text:#1f1b16;--primary:#231f19;--muted:#6f6a60;--border:#e5dfd3;--border-strong:#cfc7b8;--accent:#b45309;--accent-strong:#92400e;--accent-soft:#f9efe0;--on-accent:#fff;--teal:#006c51;--teal-soft:#d8f4ec;--warning:#9a5b00;--warning-soft:#f7ead6;--danger:#ba1a1a;--danger-soft:#ffebee;--success:#2e7d32;--success-soft:#e8f5e9;--sidebar:#16181d;--sidebar-surface:#22252c;--sidebar-text:#f3efe7;--sidebar-muted:#a09a8e;--pp-sidebar-accent:#f59e0b;--shadow:0 16px 36px #231c121a;--shadow-tight:0 4px 14px #231c1212;--card-bg:#fff;--card-border:#bab09e8c;--card-border-hover:#92400e59;--card-shadow:0 4px 10px #231c120d;--card-shadow-hover:0 10px 24px #231c1217;--font-display:"Lora", Georgia, "Times New Roman", serif;--accent-gradient:linear-gradient(135deg, #d97706 0%, #f59e0b 100%);--gold-hairline:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 55%, transparent) 50%, transparent);--elev-1:0 1px 2px #231c120f, 0 2px 8px #231c120d;--elev-2:0 4px 14px #231c1214;--elev-3:0 16px 40px #231c1224;background:#faf7f2}h1,h2{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}.pp-hairline{background:var(--gold-hairline);border:0;height:1px;margin:0}.pp-eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-size:.72rem;font-weight:700;display:inline-flex}.pp-stack{gap:16px;display:grid}@keyframes pp-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-sidebar{background:linear-gradient(180deg, #f59e0b12, transparent 220px), var(--sidebar);border-right:1px solid #ffffff0f;box-shadow:4px 0 24px #140f081f}.primary-nav a{color:var(--sidebar-muted);transition:color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out)}.primary-nav a:hover{color:var(--sidebar-text);background:var(--sidebar-surface)}.primary-nav a.active{color:var(--pp-sidebar-accent);background:color-mix(in srgb, var(--pp-sidebar-accent) 12%, transparent);border-left-color:var(--pp-sidebar-accent);box-shadow:none}.utility-nav{border-top-color:#ffffff14}.app-sidebar-toggle{background:var(--sidebar-surface);color:var(--sidebar-muted);box-shadow:none;transition:color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);border-color:#ffffff1f}.app-sidebar-toggle:hover{color:var(--pp-sidebar-accent);background:color-mix(in srgb, var(--pp-sidebar-accent) 12%, transparent);border-color:color-mix(in srgb, var(--pp-sidebar-accent) 36%, transparent)}.app-workspace{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 5%, transparent), transparent 280px), var(--bg)}.app-topbar{box-shadow:var(--elev-1);position:relative}.app-topbar .topbar-search{transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out)}.app-topbar .topbar-search:focus-within{border-color:var(--accent);box-shadow:var(--focus-ring)}.app-topbar .topbar-search input:focus-visible{box-shadow:none;border:0}.mobile-bottom-nav{background:var(--sidebar);border-top:1px solid #ffffff14;box-shadow:0 -10px 28px #0a080447}.mobile-bottom-nav a,.mobile-bottom-nav button{color:var(--sidebar-muted);transition:color var(--motion-fast) var(--ease-out);position:relative}.mobile-bottom-nav a:before,.mobile-bottom-nav button:before{content:"";width:28px;height:3px;transition:background var(--motion-fast) var(--ease-out);background:0 0;border-radius:0 0 3px 3px;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.mobile-bottom-nav a.active,.mobile-bottom-nav button.active{color:var(--pp-sidebar-accent);background:0 0}.mobile-bottom-nav a.active:before,.mobile-bottom-nav button.active:before{background:var(--accent-gradient)}.mobile-more-sheet{background:var(--sidebar)}.mobile-more-handle{background:#ffffff26}.mobile-more-item{color:var(--sidebar-text,var(--text));border-bottom-color:#ffffff12}.mobile-more-item:hover{background:var(--sidebar-raised,#ffffff0d)}.mobile-more-item.active{color:var(--pp-sidebar-accent);background:var(--sidebar-raised,#ffffff0d)}.mobile-more-icon{color:var(--sidebar-muted);background:#ffffff14}.mobile-more-item.active .mobile-more-icon{color:var(--pp-sidebar-accent)}.pp-modal-backdrop,.pp-modal-card{animation:none}.pp-page-transition{min-width:0}.pp-page-header{gap:14px;margin-bottom:4px;display:grid}.pp-page-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.pp-page-header-copy{gap:6px;min-width:0;display:grid}.pp-page-header-copy h2{font-size:1.65rem}.pp-page-header-copy p{color:var(--muted);max-width:640px;line-height:1.5}.pp-page-header-actions{flex:none;align-items:center;gap:10px;display:flex}.pp-filter-chip{border:1px solid color-mix(in srgb, var(--accent) 36%, transparent);background:var(--accent-soft);width:-moz-fit-content;width:fit-content;min-height:34px;color:var(--accent-strong);border-radius:999px;align-items:center;gap:10px;padding:0 6px 0 14px;font-size:.82rem;font-weight:700;display:inline-flex}.pp-filter-chip button{width:24px;height:24px;color:inherit;cursor:pointer;transition:background var(--motion-fast) var(--ease-out);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.pp-filter-chip button:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}@media (max-width:720px){.pp-table--cards thead{display:none}.pp-table--cards,.pp-table--cards tbody{width:100%;display:block}.pp-table--cards tbody tr{border:1px solid var(--card-border);border-radius:var(--card-radius-sm);background:var(--card-bg);box-shadow:var(--elev-1);gap:6px;margin-bottom:10px;padding:14px;display:grid}.pp-table--cards tbody td{text-align:right;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.pp-table--cards tbody td:before{content:attr(data-label);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;text-align:left;flex:none;font-size:.72rem;font-weight:800}}.login-hero-overlay{background:linear-gradient(200deg,#16181d2e 0%,#16181da8 78%),linear-gradient(20deg,#d9770647,#0000 55%)}.hero-badge{color:#f3efe7;background:#16181d8c;border:1px solid #f59e0b73}.hero-step-icon{color:#221302;background:var(--accent-gradient)}.login-form-wrap,.register-shell .auth-form-header{animation:pp-fade-in var(--motion-base) var(--ease-out) both}.support-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 9%, transparent), transparent 60%), var(--surface);position:relative}.support-hero:after{content:"";background:var(--gold-hairline);height:1px;position:absolute;bottom:0;left:0;right:0}.support-action-card{transition:transform var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out)}.support-action-card:hover{border-color:var(--card-border-hover);box-shadow:var(--elev-2);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.login-form-wrap,.register-shell .auth-form-header{animation:none}.primary-nav a,.app-sidebar-toggle,.app-topbar .topbar-search,.mobile-bottom-nav a,.mobile-bottom-nav button,.pp-filter-chip button,.support-action-card{transition:none}.support-action-card:hover{transform:none}}.pp-public-support-shell{background:radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--accent-soft) 72%, transparent), transparent 34rem), var(--bg);min-height:100vh;padding:max(1rem,min(3vw,2.5rem))}.auth-footer-link>svg{vertical-align:-.18em;margin-inline-end:.2rem;display:inline}.pp-tenant-404{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-2) 72%, transparent) 0, transparent 360px), var(--bg);grid-template-rows:auto minmax(0,1fr);min-height:100vh;padding:24px;display:grid}.pp-tenant-404-topbar{justify-content:space-between;align-items:center;gap:16px;width:min(1180px,100%);min-height:64px;margin:0 auto;display:flex}.pp-tenant-404-controls{align-items:center;gap:12px;display:inline-flex}.pp-tenant-404-body{text-align:center;width:min(560px,100%);animation:pp-fade-in var(--motion-base) var(--ease-out) both;align-self:center;justify-items:center;gap:14px;margin:0 auto;padding:24px 0 64px;display:grid}.pp-tenant-404-icon{width:76px;height:76px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid var(--gold-hairline);border-radius:999px;place-items:center;margin-bottom:6px;display:inline-grid}.pp-tenant-404-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:.78rem;font-weight:600}.pp-tenant-404-title{font-family:var(--font-display,"Lora", serif);color:var(--text);margin:0;font-size:max(1.6rem,min(4vw,2.2rem));line-height:1.15}.pp-tenant-404-description{max-width:44ch;color:var(--text-muted);margin:0;line-height:1.6}.pp-tenant-404-cta{margin-top:10px}@media (prefers-reduced-motion:reduce){.pp-tenant-404-body{animation:none}}.pp-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;display:flex}.pp-pagination-info{color:var(--muted);font-size:.82rem}.pp-pagination-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pp-pagination-size{color:var(--muted);align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.pp-pagination-size select{width:auto;min-height:32px;padding:0 8px}.pp-pagination-button{border:1px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.pp-pagination-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.pp-pagination-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pp-pagination-size select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pp-pagination-button:disabled{opacity:.4;cursor:not-allowed}.pp-pagination-page{font-size:.82rem;font-weight:700}@media (max-width:520px){.pp-pagination,.pp-pagination-controls{align-items:stretch}.pp-pagination-info,.pp-pagination-controls{width:100%}.pp-pagination-controls{justify-content:space-between}}[data-app=backoffice] .primary-nav a:hover{transform:translate(3px)}[data-app=backoffice] .route-surface--backoffice :-webkit-any(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .route-surface--backoffice :-moz-any(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .route-surface--backoffice :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .modal-body :-webkit-any(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .modal-body :-moz-any(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .modal-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:var(--control-height);border:1px solid var(--card-border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:400}[data-app=backoffice] .route-surface--backoffice :-webkit-any(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .route-surface--backoffice :-moz-any(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .route-surface--backoffice :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .modal-body :-webkit-any(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .modal-body :-moz-any(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .modal-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:0}[data-app=backoffice] .topbar-search input,[data-app=backoffice] .pp-admin-search input{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0}[data-app=backoffice] .field>span,[data-app=backoffice] .panel-eyebrow{color:var(--muted);letter-spacing:var(--label-letter-spacing);font-size:.75rem;font-weight:600}[data-app=backoffice] .data-table-wrapper{border:1px solid var(--card-border);border-radius:var(--card-radius-sm);background:var(--card-bg);box-shadow:var(--elev-1);overflow-x:auto}[data-app=backoffice] .data-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.88rem}[data-app=backoffice] .data-table th{border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--muted);letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:12px 16px;font-size:.72rem;font-weight:800}[data-app=backoffice] .data-table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:12px 16px}[data-app=backoffice] .data-table tbody tr:last-child td{border-bottom:0}[data-app=backoffice] .data-table td strong{color:var(--text);font-weight:700}[data-app=backoffice] .data-table .pp-cell-main{align-items:center;gap:8px;min-width:0;display:flex}[data-app=backoffice] .data-table .pp-cell-main>svg{color:var(--muted);flex:none}@media (max-width:720px){[data-app=backoffice] .data-table-wrapper{box-shadow:none;background:0 0;border:0;overflow:visible}[data-app=backoffice] .data-table.pp-table--cards{min-width:0}}[data-app=backoffice] .pp-stat-cards{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}[data-app=backoffice] .pp-admin-stat{border:1px solid var(--card-border);border-radius:var(--card-radius-sm);background:var(--card-bg);min-width:170px;box-shadow:var(--elev-1);align-content:start;gap:3px;padding:14px 18px;display:grid}[data-app=backoffice] .pp-admin-stat-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:6px;margin:0;font-size:.72rem;font-weight:800;display:inline-flex}[data-app=backoffice] .pp-admin-stat-value{color:var(--primary);font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.6rem;font-weight:700;line-height:1.15}[data-app=backoffice] .pp-admin-stat-caption{color:var(--muted);margin:0;font-size:.74rem}[data-app=backoffice] .pp-admin-stat--success .pp-admin-stat-value{color:var(--success)}[data-app=backoffice] .pp-admin-stat--warning .pp-admin-stat-value{color:var(--warning)}[data-app=backoffice] .pp-admin-stat--danger .pp-admin-stat-value{color:var(--danger)}[data-app=backoffice] .filter-tabs{flex-wrap:wrap;gap:6px;display:inline-flex}[data-app=backoffice] .pp-export-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin-bottom:18px;display:grid}[data-app=backoffice] .pp-export-card{border:1px solid var(--card-border);border-radius:var(--card-radius-sm);background:var(--card-bg);box-shadow:var(--elev-1);align-items:center;gap:14px;padding:16px 18px;display:flex}[data-app=backoffice] .pp-export-icon{width:42px;height:42px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}[data-app=backoffice] .pp-export-body{flex:1;gap:2px;min-width:0;display:grid}[data-app=backoffice] .pp-export-body p{margin:0}[data-app=backoffice] .pp-table-title{align-items:center;gap:8px;margin:0;padding:14px 16px 10px;font-size:.95rem;display:flex}[data-app=backoffice] .metrics>div{min-width:0;display:grid}[data-app=backoffice] .metric{border-color:var(--card-border);height:100%;box-shadow:var(--elev-1);transition:transform var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);position:relative;overflow:hidden}[data-app=backoffice] .metric:after{content:"";background:var(--gold-hairline);height:2px;position:absolute;top:0;bottom:auto;left:0;right:0}[data-app=backoffice] .metric:hover{border-color:var(--card-border-hover);box-shadow:var(--elev-2);transform:translateY(-2px)}[data-app=backoffice] .metric strong{font-family:var(--font-display);font-size:1.9rem}[data-app=backoffice] .panel{border-color:var(--card-border);box-shadow:var(--elev-1)}[data-app=backoffice] .stat-card{box-shadow:var(--elev-1);transition:transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);position:relative;overflow:hidden}[data-app=backoffice] .stat-card:after{content:"";background:var(--gold-hairline);height:2px;position:absolute;top:0;bottom:auto;left:0;right:0}[data-app=backoffice] .stat-card:hover{box-shadow:var(--elev-2);transform:translateY(-2px)}[data-app=backoffice] .stat-card p:last-child{font-family:var(--font-display)}[data-app=backoffice] .data-table tbody tr,[data-app=backoffice] .staff-table tbody tr,[data-app=backoffice] .admin-table .row{transition:background var(--motion-fast) var(--ease-out)}[data-app=backoffice] .data-table tbody tr:hover,[data-app=backoffice] .staff-table tbody tr:hover,[data-app=backoffice] .admin-table .row:not(.header):hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}[data-app=backoffice] .filter-tab{border:1px solid var(--border);min-height:38px;color:var(--muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);background:0 0;border-radius:999px;padding:0 14px;font-size:.84rem;font-weight:700}[data-app=backoffice] .filter-tab:hover{color:var(--text);border-color:var(--border-strong)}[data-app=backoffice] .filter-tab.active{color:var(--accent-strong);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}[data-app=backoffice] .compact-row{transition:background var(--motion-fast) var(--ease-out)}[data-app=backoffice] .compact-row:hover{background:color-mix(in srgb, var(--accent) 4%, transparent)}[data-app=backoffice] .pp-admin-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}[data-app=backoffice] .pp-admin-search{border:1px solid var(--border);background:var(--surface-2);min-height:42px;color:var(--muted);transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);border-radius:999px;flex:240px;align-items:center;gap:8px;padding:0 12px;display:flex}[data-app=backoffice] .pp-admin-search:focus-within{border-color:var(--accent);box-shadow:var(--focus-ring)}[data-app=backoffice] .pp-admin-search input{background:0 0;border:0;flex:1;min-height:0;padding:0}[data-app=backoffice] .pp-admin-search input:focus-visible{box-shadow:none;border:0}[data-app=backoffice] .pp-admin-filter{flex:0 auto;min-width:150px}[data-app=backoffice] .pp-clickable-row{cursor:pointer}[data-app=backoffice] .pp-clickable-row.is-selected{background:var(--accent-soft)}[data-app=backoffice] .pp-row-link{color:inherit;text-decoration:none}[data-app=backoffice] .pp-row-link:hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}[data-app=backoffice] .pp-metric-link{color:inherit;cursor:pointer;text-decoration:none}[data-app=backoffice] .pp-section-link{color:var(--accent);margin-left:auto;font-size:.78rem;font-weight:700;text-decoration:none}[data-app=backoffice] .pp-entity-link{color:var(--accent-strong);align-items:center;gap:5px;font-weight:600;text-decoration:none;display:inline-flex}[data-app=backoffice] .pp-entity-link:hover{text-decoration:underline}[data-app=backoffice] .pp-detail-grid{gap:10px;display:grid}[data-app=backoffice] .pp-detail-row{grid-template-columns:170px minmax(0,1fr);align-items:baseline;gap:10px;display:grid}[data-app=backoffice] .pp-detail-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:800}[data-app=backoffice] .pp-detail-value{overflow-wrap:anywhere;min-width:0}[data-app=backoffice] .pp-origin-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;min-height:24px;padding:0 9px;font-size:.74rem;font-weight:700;display:inline-flex}[data-app=backoffice] .pp-origin-chip--customer{color:var(--teal);background:var(--teal-soft)}[data-app=backoffice] .pp-origin-chip--merchant{color:var(--accent-strong);background:var(--accent-soft)}[data-app=backoffice] .pp-admin-actions{border-top:1px solid var(--border);gap:12px;padding-top:12px;display:grid}[data-app=backoffice] .pp-status-change{align-items:flex-end;gap:10px;display:flex}[data-app=backoffice] .pp-status-change .field{flex:1}[data-app=backoffice] .pp-cancel-confirm{border:1px solid color-mix(in srgb, var(--danger) 38%, transparent);border-radius:var(--card-radius-sm);background:var(--danger-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:.85rem;display:flex}[data-app=backoffice] .pp-review-stars{color:var(--border-strong);align-items:center;gap:2px;display:inline-flex}[data-app=backoffice] .pp-review-stars .is-filled{color:var(--accent);fill:var(--accent)}[data-app=backoffice] .pp-admin-tabs{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}[data-app=backoffice] .pp-admin-tab.active{color:var(--accent-strong);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}[data-app=backoffice] .pp-merchant-profile{gap:14px;display:grid}[data-app=backoffice] .pp-branch-grid-admin{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}[data-app=backoffice] .pp-admin-branch-card{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}[data-app=backoffice] .pp-admin-branch-card.is-current{border-color:color-mix(in srgb, var(--accent) 55%, transparent)}[data-app=backoffice] .pp-admin-branch-icon{width:40px;height:40px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}[data-app=backoffice] .pp-admin-branch-body{flex:1;gap:3px;min-width:0;display:grid}[data-app=backoffice] .pp-admin-branch-meta{justify-items:end;gap:4px;display:grid}[data-app=backoffice] .pp-current-pill{background:var(--accent-soft);min-height:20px;color:var(--accent-strong);border-radius:999px;align-items:center;padding:0 8px;font-size:.7rem;font-style:normal;font-weight:800;display:inline-flex}[data-app=backoffice] .pp-staff-layout{gap:16px;display:grid}[data-app=backoffice] .pp-staff-layout.has-detail{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start}[data-app=backoffice] .pp-staff-detail{animation:pp-panel-in var(--motion-base) var(--ease-out) both;gap:12px;display:grid}[data-app=backoffice] .pp-subheading{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;margin:4px 0 0;font-size:.8rem;font-weight:800;display:flex}[data-app=backoffice] .pp-week-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}[data-app=backoffice] .pp-week-day{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;gap:4px;padding:10px;display:grid}[data-app=backoffice] .pp-week-day.is-off{opacity:.62}[data-app=backoffice] .pp-week-day-name{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}[data-app=backoffice] .pp-holiday-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}[data-app=backoffice] .pp-holiday-list li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 0;display:flex}[data-app=backoffice] .pp-holiday-list li:last-child{border-bottom:0}[data-app=backoffice] .pp-holiday-list li .muted-text{flex:1;min-width:0}[data-app=backoffice] .pp-admin-inline-fields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}[data-app=backoffice] .pp-admin-inline-fields>*{flex:160px;min-width:0}[data-app=backoffice] .pp-admin-inline-fields>.holiday-recurring,[data-app=backoffice] .pp-admin-inline-fields>.button{flex:none}[data-app=backoffice] .pp-admin-schedule-rows{gap:10px;display:grid}[data-app=backoffice] .pp-admin-schedule-row{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:10px;display:flex}[data-app=backoffice] .pp-admin-schedule-row.is-off{opacity:.72}[data-app=backoffice] .pp-admin-schedule-day{flex:0 0 150px;align-items:center;gap:8px;font-weight:700;display:flex}[data-app=backoffice] .pp-admin-schedule-times{flex-wrap:wrap;flex:320px;align-items:flex-end;gap:10px;min-width:0;display:flex}[data-app=backoffice] .pp-admin-schedule-times>*{flex:130px;min-width:0}[data-app=backoffice] .pp-admin-row-actions{flex-wrap:wrap;gap:6px;display:flex}[data-app=backoffice] .pp-admin-subsection{border-top:1px solid var(--border);gap:10px;padding-top:12px;display:grid}[data-app=backoffice] .pp-admin-service-assign{gap:8px;margin:0;padding:0;list-style:none;display:grid}[data-app=backoffice] .pp-admin-service-assign>li{border-bottom:1px solid var(--border);gap:6px;padding-bottom:8px;display:grid}[data-app=backoffice] .pp-admin-service-assign>li:last-child{border-bottom:0}[data-app=backoffice] .pp-admin-service-assign-row{align-items:center;gap:8px;display:flex}[data-app=backoffice] .pp-admin-service-assign-row>span:first-of-type{flex:1;min-width:0}[data-app=backoffice] .pp-admin-appointment-edit{border-top:1px solid var(--border);gap:10px;margin-top:14px;padding-top:14px;display:grid}[data-app=backoffice] .pp-admin-value-with-action{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}[data-app=backoffice] .blacklist-management,[data-app=backoffice] .holiday-list-panel,[data-app=backoffice] .blacklist-form-panel{gap:12px;display:grid}[data-app=backoffice] .blacklist-form-panel,[data-app=backoffice] .holiday-list-panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:14px}[data-app=backoffice] .blacklist-form-fields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}[data-app=backoffice] .blacklist-form-fields>*{flex:180px;min-width:0}[data-app=backoffice] .pp-customers-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}[data-app=backoffice] .pp-customers-search{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex:240px;align-items:center;gap:8px;min-width:0;padding:0 10px;display:flex}[data-app=backoffice] .pp-customers-search input{min-width:0;color:inherit;background:0 0;border:0;flex:1;padding:9px 0}[data-app=backoffice] .pp-customers-search input:focus{outline:none}[data-app=backoffice] .analytics-dashboard-page{gap:16px;display:grid}[data-app=backoffice] .analytics-dashboard-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}[data-app=backoffice] .pp-admin-branch-link{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}[data-app=backoffice] .pp-user-sections{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-top:16px;display:grid}[data-app=backoffice] .pp-link-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}[data-app=backoffice] .pp-link-list li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;font-size:.88rem;display:flex}[data-app=backoffice] .pp-link-list li:last-child{border-bottom:0}[data-app=backoffice] .pp-audit-path{text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-family:ui-monospace,monospace;font-size:.8rem;overflow:hidden}[data-app=backoffice] .pp-audit-toggle{width:32px;color:var(--muted)}[data-app=backoffice] .pp-audit-details-row td{background:var(--surface-2)}[data-app=backoffice] .pp-audit-details{gap:8px;padding:12px;font-size:.84rem;display:grid}[data-app=backoffice] .pp-audit-json{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin:0;padding:12px;font-size:.78rem;overflow-x:auto}[data-app=backoffice] .pp-http-status{border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:.74rem;font-weight:800;display:inline-flex}[data-app=backoffice] .pp-http-status--2xx{color:var(--success);background:var(--success-soft)}[data-app=backoffice] .pp-http-status--3xx{color:var(--teal);background:var(--teal-soft)}[data-app=backoffice] .pp-http-status--4xx{color:var(--warning);background:var(--warning-soft)}[data-app=backoffice] .pp-http-status--5xx{color:var(--danger);background:var(--danger-soft)}[data-app=backoffice] .pp-support-360{border:1px solid color-mix(in srgb, var(--accent) 26%, var(--border));border-radius:var(--card-radius-sm);background:color-mix(in srgb, var(--accent-soft) 38%, var(--surface));gap:12px;padding:14px 16px;display:grid}[data-app=backoffice] .pp-support-360>h4{color:var(--accent-strong);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:6px;margin:0;font-size:.78rem;font-weight:800;display:flex}[data-app=backoffice] .pp-support-360-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:900px){[data-app=backoffice] .pp-staff-layout.has-detail{grid-template-columns:minmax(0,1fr)}[data-app=backoffice] .pp-detail-row{grid-template-columns:minmax(0,1fr);gap:2px}}@media (prefers-reduced-motion:reduce){[data-app=backoffice] .metric,[data-app=backoffice] .stat-card,[data-app=backoffice] .compact-row,[data-app=backoffice] .filter-tab{transition:none}[data-app=backoffice] .metric:hover,[data-app=backoffice] .stat-card:hover{transform:none}}[data-app=backoffice] .pp-card-heading-row,[data-app=backoffice] .pp-salon-defaults-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}[data-app=backoffice] .pp-card-heading-row h3,[data-app=backoffice] .pp-card-heading-row p{margin:0}[data-app=backoffice] .pp-card-heading-row h3{align-items:center;gap:8px;display:inline-flex}[data-app=backoffice] .pp-card-heading-row p{margin-top:5px;font-size:.8rem}[data-app=backoffice] .pp-salon-types-card,[data-app=backoffice] .pp-salon-type-form,[data-app=backoffice] .pp-salon-defaults{gap:14px;display:grid}[data-app=backoffice] .pp-chip-list{flex-wrap:wrap;gap:7px;display:flex}[data-app=backoffice] .pp-selection-chip,[data-app=backoffice] .pp-count-chip{border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);background:var(--accent-soft);min-height:26px;color:var(--accent-strong);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.74rem;font-weight:750;display:inline-flex}[data-app=backoffice] .pp-salon-defaults{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;max-height:min(52vh,520px);padding:14px;overflow:auto}[data-app=backoffice] .pp-salon-defaults-heading>span{color:var(--muted);font-size:.76rem;font-weight:700}[data-app=backoffice] .pp-service-check-group{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-width:0;margin:0;padding:12px}[data-app=backoffice] .pp-service-check-group legend{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:0 6px;font-size:.7rem;font-weight:800}[data-app=backoffice] .pp-service-check-grid,[data-app=backoffice] .pp-salon-type-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}[data-app=backoffice] .pp-salon-type-choice-fieldset{border:0;min-width:0;margin:0;padding:0}[data-app=backoffice] .pp-salon-type-multi-hint{color:var(--accent-strong);margin:0;font-size:.8rem;font-weight:700}[data-app=backoffice] .pp-service-check-card,[data-app=backoffice] .pp-salon-type-choice{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:9px;align-items:center;gap:9px;min-width:0;min-height:44px;padding:9px 10px;display:flex}[data-app=backoffice] .pp-salon-type-choice.is-selected{border-color:color-mix(in srgb, var(--accent) 52%, transparent);background:var(--accent-soft)}[data-app=backoffice] .pp-service-check-card:has(input:checked){border-color:color-mix(in srgb, var(--accent) 52%, transparent);background:var(--accent-soft)}[data-app=backoffice] .pp-salon-type-choice:has(input:checked){border-color:color-mix(in srgb, var(--accent) 52%, transparent);background:var(--accent-soft)}[data-app=backoffice] .pp-service-check-card input,[data-app=backoffice] .pp-salon-type-choice input{width:17px;height:17px;accent-color:var(--accent);flex:none}[data-app=backoffice] .pp-service-check-card span{gap:2px;min-width:0;display:grid}[data-app=backoffice] .pp-service-check-card strong,[data-app=backoffice] .pp-service-check-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}[data-app=backoffice] .pp-service-check-card small,[data-app=backoffice] .pp-lead-salon-types>p{color:var(--muted);font-size:.72rem}[data-app=backoffice] .pp-lead-salon-types{border-top:1px solid var(--border);gap:7px;padding-top:12px;display:grid}[data-app=backoffice] .pp-lead-salon-types>p{margin:0}@media (max-width:640px){[data-app=backoffice] .pp-card-heading-row{flex-direction:column;align-items:flex-start}[data-app=backoffice] .pp-service-check-grid,[data-app=backoffice] .pp-salon-type-choice-grid{grid-template-columns:1fr}}[data-app=backoffice] .backoffice-mobile-menu-button,[data-app=backoffice] .backoffice-mobile-sidebar-backdrop,[data-app=backoffice] .backoffice-mobile-drawer-close{display:none}[data-app=backoffice] .backoffice-mobile-drawer-head{display:contents}@media (max-width:900px){[data-app=backoffice] .app-shell--backoffice .app-sidebar{z-index:140;width:min(86vw,300px);height:100dvh;transition:transform .24s var(--ease-out);flex-direction:column;padding:18px 12px;display:flex;position:fixed;top:0;bottom:0;left:0;right:auto;overflow-y:auto;transform:translate(-105%);box-shadow:24px 0 50px #0000003d}[data-app=backoffice] .app-shell--backoffice .app-sidebar.is-mobile-open{transform:translate(0)}[data-app=backoffice] .app-shell--backoffice .app-sidebar .brand{padding:0}[data-app=backoffice] .app-shell--backoffice .app-sidebar-toggle{display:none}[data-app=backoffice] .app-shell--backoffice:has(.app-sidebar.is-mobile-open) .app-topbar{visibility:hidden}[data-app=backoffice] .backoffice-mobile-drawer-head{justify-content:space-between;align-items:center;gap:10px;padding:2px 4px 14px;display:flex}[data-app=backoffice] .backoffice-mobile-drawer-close{width:34px;height:34px;color:var(--sidebar-muted);cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:10px;flex:none;place-items:center;display:inline-grid}[data-app=backoffice] .backoffice-mobile-drawer-close:hover{color:var(--sidebar-text);border-color:#ffffff4d}[data-app=backoffice] .app-shell--backoffice .primary-nav{grid-template-columns:1fr;width:100%;display:grid;overflow:visible}[data-app=backoffice] .app-shell--backoffice .primary-nav a{border-radius:10px;justify-content:flex-start;min-width:0;padding-inline-start:16px;padding-inline-end:16px}[data-app=backoffice] .app-shell--backoffice .primary-nav a span{display:inline}[data-app=backoffice] .app-shell--backoffice .utility-nav{margin-top:auto;display:grid}[data-app=backoffice] .backoffice-mobile-menu-button{border:1px solid var(--border);width:40px;height:40px;color:var(--text);background:var(--surface);border-radius:11px;flex:none;place-items:center;display:inline-grid}[data-app=backoffice] .backoffice-mobile-sidebar-backdrop{z-index:135;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a090885;border:0;display:block;position:fixed;top:0;bottom:0;left:0;right:0}[data-app=backoffice] .app-shell--backoffice .mobile-bottom-nav,[data-app=backoffice] .app-shell--backoffice .mobile-more-overlay,[data-app=backoffice] .app-shell--backoffice .mobile-more-sheet{display:none!important}[data-app=backoffice] .app-shell--backoffice .route-surface--backoffice{padding-bottom:20px}}
