:root{--bg-page: #f8fafc;--bg-subtle: #f1f5f9;--sidebar-bg: #ffffff;--sidebar-border: #e2e8f0;--sidebar-text: #334155;--sidebar-muted: #94a3b8;--sidebar-active-bg: #eef4fb;--sidebar-active-text: #1e40af;--accent: #4a7fc7;--border: #e2e8f0;--card-bg: #ffffff;--muted: #64748b;--danger: #dc2626;--warn: #d97706;--success: #16a34a;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--sidebar-width: 72px;--sidebar-width-expanded: 280px;--bg-card: #ffffff;--text: #0f172a;--text-muted: #64748b;--crm-border: var(--border);--crm-surface: var(--card-bg);--crm-muted: var(--muted);--crm-surface-muted: var(--bg-subtle);--shadow-md: 0 8px 24px rgba(15, 23, 42, .1);--font-page-title: 1.35rem;--font-section-title: 1rem;--font-body: .875rem;--font-label: .78rem;--font-caption: .75rem;--text-on-accent: #ffffff;--surface-header: #f8fafc;--surface: var(--card-bg);--surface-muted: var(--bg-subtle);--banner-neutral-bg: #e2e8f0;--banner-paid-bg: #dcfce7;--banner-paid-text: #166534;--banner-warn-bg: #fff7ed;--banner-warn-text: #9a3412;--payment-block-bg: #fafafa;--stripe-a: #f1f5f9;--stripe-b: #e2e8f0;--text-on-pastel: #0f172a;--text-on-pastel-muted: #475569;--avatar-bg: #e2e8f0;--row-hover-bg: rgba(241, 245, 249, .65)}[data-theme=dark]{color-scheme:dark;--bg-page: #0f172a;--bg-subtle: #1e293b;--sidebar-bg: #1e293b;--sidebar-border: #334155;--sidebar-text: #e2e8f0;--sidebar-muted: #94a3b8;--sidebar-active-bg: #1e3a5f;--sidebar-active-text: #93c5fd;--accent: #60a5fa;--border: #334155;--card-bg: #1e293b;--muted: #94a3b8;--text: #f1f5f9;--text-muted: #94a3b8;--crm-surface: #1e293b;--crm-surface-muted: #0f172a;--bg-card: #1e293b;--danger: #f87171;--warn: #fbbf24;--success: #4ade80;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);--surface-header: #0f172a;--banner-neutral-bg: #334155;--banner-paid-bg: #14532d;--banner-paid-text: #86efac;--banner-warn-bg: #431407;--banner-warn-text: #fdba74;--payment-block-bg: #1e293b;--stripe-a: #1e293b;--stripe-b: #334155;--avatar-bg: #334155;--row-hover-bg: rgba(51, 65, 85, .45);--text-on-pastel: #f1f5f9;--text-on-pastel-muted: #cbd5e1}[data-theme=dark] .cohort-cell[data-level="5"],[data-theme=dark] .cohort-cell[data-level="4"]{background:#166534;color:#bbf7d0}[data-theme=dark] .cohort-cell[data-level="3"]{background:#854d0e;color:#fef9c3}[data-theme=dark] .cohort-cell[data-level="2"],[data-theme=dark] .cohort-cell[data-level="1"]{background:#9a3412;color:#ffedd5}[data-theme=dark] .cohort-cell[data-level="0"]{background:var(--crm-surface-muted);color:var(--text-muted)}body{background:var(--bg-page);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:var(--font-body)}.app-shell{display:grid;max-width:100vw;overflow:hidden;height:100vh;min-height:100vh}.app-shell.sidebar-expanded{grid-template-columns:var(--sidebar-width-expanded) minmax(0,1fr)}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);padding:.75rem .65rem;z-index:40;display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;overflow-y:auto}.sidebar-brand{margin-bottom:.65rem;padding:.35rem .5rem .5rem;border-bottom:1px solid var(--sidebar-border)}.brand-title{font-size:.95rem;font-weight:700;line-height:1.25;color:var(--text);word-break:break-word}button.brand-title{display:block;width:100%;padding:0;border:none;background:none;text-align:left;cursor:default}button.brand-title.brand-title-editable{cursor:pointer;border-radius:var(--radius-sm)}button.brand-title.brand-title-editable:hover{background:var(--bg-subtle)}.brand-title-input{width:100%;font-size:.9rem;font-weight:600;padding:.25rem .4rem}.sidebar-nav{display:flex;flex-direction:column;gap:.125rem;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.nav-link{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:.5rem .65rem;border-radius:var(--radius-md);font-size:.8rem;line-height:1.2;text-align:left;text-decoration:none;color:var(--sidebar-muted)}.nav-link svg{width:1.25rem;height:1.25rem;flex-shrink:0}.nav-link.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600}.nav-link:not(.disabled):hover{background:var(--bg-subtle);color:var(--sidebar-text)}.nav-link-dashboard.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.nav-link-dashboard:not(.active):hover{background:var(--bg-subtle)}.sidebar-footer{border-top:1px solid var(--sidebar-border);padding:.5rem .65rem .6rem}.sidebar-footer-row{display:flex;align-items:center;gap:.35rem;width:100%;min-width:0}.sidebar-footer .sidebar-user-link{display:block;flex:1 1 auto;min-width:0;padding:0;border:none;background:none;text-align:left;font-size:.75rem;font-weight:600;color:var(--sidebar-text);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer .sidebar-user-link:hover{color:var(--sidebar-active-text)}.sidebar-footer-actions{display:flex;flex-shrink:0;align-items:center;gap:.1rem}.sidebar-footer-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--sidebar-muted);cursor:pointer}.sidebar-footer-icon-btn svg{width:1rem;height:1rem}.sidebar-footer-icon-btn:hover,.sidebar-footer-icon-btn:focus-visible{color:var(--sidebar-active-text);background:var(--bg-subtle)}.sidebar-schedule-panel{padding:.55rem .5rem .65rem;border-bottom:1px solid var(--sidebar-border);display:flex;flex-direction:column;gap:.45rem}.sidebar-schedule-toolbar{display:flex;align-items:center;gap:.35rem}.sidebar-location-field{display:block;flex:1 1 auto;min-width:0}.sidebar-location-field select{width:100%;padding:.4rem .5rem;border:1px solid var(--sidebar-border);border-radius:var(--radius-sm);background:var(--card-bg);font-size:.78rem;color:var(--sidebar-text)}.sidebar-schedule-panel .schedule-mini-calendar{background:var(--card-bg);border:1px solid var(--sidebar-border);padding:.35rem .25rem;width:100%;min-width:0;box-sizing:border-box}.sidebar-schedule-panel .schedule-mini-calendar-header{gap:.25rem}.sidebar-schedule-panel .schedule-mini-calendar-header .btn-secondary.small{padding:.2rem .35rem;min-width:1.75rem}.sidebar-schedule-panel .schedule-mini-calendar-title select{max-width:5.5rem;font-size:.72rem;padding:.15rem .2rem;background:var(--card-bg);color:var(--sidebar-text);border-color:var(--sidebar-border)}.sidebar-schedule-panel .schedule-mini-calendar-weekdays,.sidebar-schedule-panel .schedule-mini-calendar-grid{gap:.1rem}.sidebar-schedule-panel .schedule-mini-calendar-weekday{font-size:.62rem}.sidebar-schedule-panel .schedule-mini-calendar-day{width:1.65rem;height:1.65rem;font-size:.72rem}.date-range-row{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.date-range-field{display:flex;align-items:center;gap:.35rem;min-width:0}.date-range-label{flex-shrink:0;font-size:.8rem;font-weight:600;color:var(--muted)}.date-range-field .input,.date-range-field input[type=date]{width:9.5rem;min-width:0;height:2.25rem;padding:0 .5rem;font-size:.8rem;box-sizing:border-box}.period-toolbar-row,.date-range-with-action{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.date-range-with-action .btn-primary{height:2.25rem;min-height:2.25rem;max-height:2.25rem;padding:0 .85rem;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;line-height:1;box-sizing:border-box}.vision-period-toolbar{flex-wrap:nowrap}.vision-period-toolbar .date-range-field select.input{width:11rem;min-width:0;height:2.25rem;padding:0 .5rem;font-size:.8rem;box-sizing:border-box}.locations-card{padding:0;overflow:hidden}.locations-card .clients-table-wrap{margin:0}.sidebar-today-link{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border:0;background:transparent;color:var(--accent);cursor:pointer;padding:0;line-height:1}.sidebar-today-link-icon{font-size:.55rem;line-height:1}.sidebar-today-link:disabled{opacity:.45;cursor:default}.settings-subnav{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.settings-subnav-link{padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);font-size:.8rem;text-decoration:none}.settings-subnav-link.active{background:var(--sidebar-active-bg);border-color:var(--accent);color:var(--sidebar-active-text)}.settings-subnav-link-disabled{opacity:.45;cursor:default}.page.settings-page{overflow:visible;overflow-y:visible;min-height:auto;height:auto}.page.settings-page .card{overflow:visible;max-height:none}.billing-settings-page{gap:1rem;max-width:56rem}.billing-settings-card{display:flex;flex-direction:column;gap:.85rem}.billing-settings-card h2{margin:0;font-size:1rem;font-weight:600}.billing-settings-hint{margin:-.2rem 0 0;line-height:1.45}.billing-settings-empty{margin:0}.billing-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem}.billing-settings-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;width:100%}.billing-settings-stack .drawer-field.checkbox-row{width:100%;align-self:flex-start}.billing-settings-stack .drawer-field:not(.checkbox-row){width:100%;max-width:28rem}.billing-settings-field-wide{grid-column:1 / -1}.billing-settings-checkbox{align-self:end;min-height:2.25rem}.billing-settings-page .table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.billing-vat-table{width:100%;margin:0}.billing-vat-table th,.billing-vat-table td{padding:.55rem .75rem}.billing-vat-override-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem}.billing-vat-override-row .drawer-field{min-width:10rem;flex:1 1 12rem;max-width:18rem;margin:0}.billing-settings-page .btn-primary{font-weight:600;min-height:2.35rem}.billing-settings-page .form-actions{margin-top:.35rem}.drawer-field-label-with-hint{display:inline-flex;align-items:center;gap:.35rem}.field-help-hint{position:relative;display:inline-flex;vertical-align:middle}.field-help-hint-btn{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--bg-muted, var(--bg-card));color:var(--muted);font-size:.72rem;font-weight:700;line-height:1;cursor:pointer}.field-help-hint-btn:hover,.field-help-hint-btn:focus-visible{color:var(--text);border-color:var(--accent)}.field-help-hint-panel{position:absolute;left:0;top:calc(100% + .35rem);z-index:50;min-width:16rem;max-width:min(22rem,85vw);padding:.65rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-size:var(--font-small, .8125rem);font-weight:400;line-height:1.45;color:var(--text)}.field-help-hint-panel p{margin:0}.field-help-hint-panel p+p,.field-help-hint-panel ul+p{margin-top:.5rem}.field-help-hint-panel code{font-size:.92em}.field-help-hint-list{margin:.45rem 0 0;padding-left:1.1rem}.field-help-hint-list li+li{margin-top:.15rem}.billing-vat-override-row .btn-primary{min-height:2.25rem;align-self:flex-end}.billing-vat-overrides-table{margin-top:.15rem}.notification-settings-page{gap:1rem;max-width:56rem}.notification-settings-card{display:flex;flex-direction:column;gap:.85rem}.notification-settings-card h2{margin:0;font-size:1rem;font-weight:600}.notification-settings-hint{margin:-.2rem 0 0;line-height:1.45}.notification-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem}.notification-settings-field-wide{grid-column:1 / -1}.notification-settings-empty{margin:0}.notification-settings-checkbox{align-self:end;min-height:2.25rem}.notification-settings-page label.checkbox-row,.notification-settings-page .notification-cascade-chip{display:inline-flex;align-items:center;gap:.65rem}.notification-settings-page .drawer-field.checkbox-row{display:flex;flex-direction:row!important;align-items:center;gap:.65rem}.notification-settings-page .drawer-field.checkbox-row>span,.notification-settings-page label.checkbox-row>span,.notification-settings-page .notification-cascade-chip>span{color:var(--text);font-weight:400;line-height:1.3}.notification-settings-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;width:100%}.notification-settings-stack .drawer-field.checkbox-row{width:100%;align-self:flex-start}.notification-settings-stack .drawer-field:not(.checkbox-row){width:100%;max-width:28rem}.notification-template-block{display:flex;flex-direction:column;gap:.65rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.notification-template-block:last-child{padding-bottom:0;border-bottom:none}.notification-template-title{margin:0;font-size:.95rem;font-weight:600}.notification-cascade-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;font-size:.85rem;color:var(--muted)}.notification-cascade-row>span{font-weight:600}.notification-cascade-chip{display:inline-flex;align-items:center;gap:.65rem}.notification-webhook-block{display:flex;flex-direction:column;gap:.65rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.notification-webhook-block:last-of-type{border-bottom:none}.notification-webhook-events{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;font-size:.85rem;color:var(--muted)}.notification-webhook-events>span{font-weight:600}.notification-deliveries-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem}.notification-deliveries-filters .drawer-field{min-width:10rem;margin:0}.notification-settings-page .clients-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.notification-settings-page .data-table th,.notification-settings-page .data-table td{padding:.55rem .75rem}.salaries-accruals-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.75rem}.salaries-accruals-toolbar h2{margin:0}.salaries-accruals-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem}.salaries-status-filter{min-width:10rem;margin:0}.salaries-accruals-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;margin-bottom:.75rem}.salaries-selected-total{white-space:nowrap}.salaries-accruals-empty{margin:0}.salaries-accruals-check-col{width:2.75rem;white-space:nowrap;text-align:center}.salaries-accruals-check-col input[type=checkbox]{margin:0 auto}.salaries-accruals-table tbody tr.is-selected{background:color-mix(in srgb,var(--accent) 8%,transparent)}.form-grid .form-grid-submit{align-self:end;height:2.25rem;min-height:2.25rem;max-height:2.25rem;padding:0 .85rem;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;box-sizing:border-box}.employee-grades-form{max-width:36rem;align-items:end}.roles-permissions-card{overflow:visible;max-height:none}.roles-editor-card{display:flex;flex-direction:column;gap:.85rem}.roles-role-select{max-width:22rem;margin:0}.roles-grades-toggle{margin:0}.roles-grades-toggle-control{display:inline-flex;align-items:center;gap:.75rem;margin:0;cursor:pointer}.roles-permissions-module strong{display:block;margin-bottom:.35rem}.employee-edit-modal{width:min(640px,94vw);max-height:90vh;overflow:auto;margin:0;padding:1.25rem 1.5rem}.employee-edit-form{margin:1rem 0}.employee-locations-field{grid-column:1 / -1}.employee-locations-field .field-label{display:block;margin-bottom:.35rem;font-size:.78rem;font-weight:500;color:var(--muted)}.widget-settings-page{gap:1rem;max-width:56rem}.widget-settings-card h2{margin:0 0 .85rem;font-size:1rem}.widget-settings-body{display:flex;flex-direction:column;gap:1rem}.widget-settings-hint{margin:0}.widget-settings-checklist{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.widget-settings-checklist .drawer-field.checkbox-row{width:100%;max-width:28rem}.widget-trigger-settings{padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 60%,var(--card-bg))}.widget-trigger-settings-title{margin:0 0 .35rem;font-size:.95rem}.widget-trigger-preview-wrap{display:flex;justify-content:flex-start;padding:1rem 0 .75rem}.widget-trigger-preview-btn{display:inline-flex;align-items:center;gap:12px;padding:10px 10px 10px 22px;border:none;letter-spacing:.04em;line-height:1;cursor:default;box-shadow:0 1px 2px #0f172a0f}.widget-trigger-preview-label{white-space:nowrap}.widget-trigger-preview-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;flex-shrink:0;font-size:1.1rem;line-height:1}.widget-color-field input[type=color]{width:3rem;height:2.25rem;padding:.15rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);cursor:pointer}.widget-embed-block{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.widget-embed-block .drawer-field{width:100%;max-width:none}.widget-embed-code-wrap{display:flex;flex-direction:column;gap:.3rem;width:100%}.widget-embed-code-label{font-size:var(--font-label);font-weight:500;color:var(--muted)}.widget-embed-code{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:.9rem 1rem;overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-header);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.55;white-space:pre-wrap;word-break:break-all;color:var(--text)}.widget-embed-code code{font:inherit;white-space:inherit;word-break:inherit}.widget-upsell-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.widget-upsell-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-header)}.widget-upsell-table-wrap{margin-top:.5rem}.widget-upsell-table .input{width:100%;min-width:0}.widget-upsell-price-input{max-width:7rem}.widget-upsell-actions-col{width:6.5rem;white-space:nowrap}.widget-upsell-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem}.widget-upsell-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem}.widget-theme-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.widget-demo-links{display:flex;flex-direction:column;gap:.5rem;margin:.75rem 0 1rem;padding:.85rem 1rem;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-header)}.widget-demo-links-row{display:flex;flex-wrap:wrap;gap:.5rem}.widget-demo-landing{min-height:100vh;overflow:visible;background:#f8fafc;color:#0f172a;font-family:system-ui,-apple-system,sans-serif}html.widget-demo-page,html.widget-demo-page body,html.widget-demo-page #root{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}.widget-demo-landing-header{background:#fff;border-bottom:1px solid #e2e8f0}.widget-demo-landing-header-inner,.widget-demo-landing-hero-inner,.widget-demo-landing-about-inner,.widget-demo-landing-booking-inner,.widget-demo-landing-footer-inner,.widget-demo-landing-main{max-width:960px;margin:0 auto;padding:0 1.25rem}.widget-demo-landing-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}.widget-demo-landing-brand{font-weight:700;font-size:1.05rem}.widget-demo-landing-nav{display:flex;flex-wrap:wrap;gap:1rem;color:#64748b;font-size:.9rem}.widget-demo-landing-hero{background:linear-gradient(135deg,#0f172a,#134e4a);color:#fff;padding:3rem 0 2.5rem}.widget-demo-landing-eyebrow{margin:0 0 .5rem;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:#99f6e4}.widget-demo-landing-hero h1{margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.5rem)}.widget-demo-landing-lead{margin:0 0 .5rem;max-width:42rem;color:#e2e8f0;line-height:1.55}.widget-demo-landing-hint{margin:0 0 1rem;color:#cbd5e1;font-size:.92rem}.widget-demo-landing-warn{margin:0 0 1rem;padding:.65rem .85rem;border-radius:8px;background:#fee2e226;border:1px solid rgba(252,165,165,.45);color:#fecaca;font-size:.9rem}.widget-demo-landing-mode-switch{display:flex;flex-wrap:wrap;gap:.5rem}.widget-demo-landing-mode-btn{display:inline-flex;align-items:center;padding:.45rem .85rem;border-radius:999px;border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none;font-size:.85rem;background:#ffffff14}.widget-demo-landing-mode-btn.is-active{background:var(--widget-demo-accent, #92bc3c);color:#1a1a1a;border-color:transparent}.widget-demo-landing-about,.widget-demo-landing-booking{padding:2rem 0}.widget-demo-landing-about-inner,.widget-demo-landing-booking-inner{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem 1.5rem;overflow:visible}.widget-demo-landing-booking{padding-bottom:4rem}.widget-demo-landing-booking h2,.widget-demo-landing-about h2{margin:0 0 .75rem;font-size:1.25rem}.widget-demo-landing-embed{margin-top:1rem;min-height:4rem;overflow:visible}.widget-demo-landing-embed--embedded.is-ready{min-height:0}.widget-demo-landing-embed--popup_window.is-ready,.widget-demo-landing-embed--collection.is-ready{padding:.75rem 0 1.5rem;min-height:auto}.widget-demo-landing-embed-status{margin:.75rem 0 0}.widget-demo-landing-embed iframe{display:block;width:100%;max-width:100%;min-height:0;height:auto;border:0;border-radius:12px;box-shadow:0 8px 24px #0f172a14;overflow:hidden}.widget-demo-landing-embed button{margin:.25rem 0}.widget-demo-landing-footer{border-top:1px solid #e2e8f0;background:#fff;padding:1.25rem 0 2rem;color:#64748b;font-size:.9rem}.widget-demo-landing-back a{color:var(--widget-demo-accent, #92bc3c);text-decoration:none}.widget-demo-landing-back a:hover{text-decoration:underline}.widget-demo-landing-main--narrow{padding-top:3rem;padding-bottom:3rem}.input-invalid{border-color:var(--danger, #dc2626)}.roles-permissions-module{margin-bottom:1rem}.roles-permissions-module:last-child{margin-bottom:0}.roles-permissions-actions{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.35rem}.roles-permission-chip{display:inline-flex;align-items:center;gap:.65rem;font-size:.85rem;color:var(--text);cursor:pointer}.schedule-top-bar-unified{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);box-shadow:var(--shadow-sm)}.schedule-top-bar-primary{display:flex;align-items:center;gap:.45rem;flex:1 1 16rem;min-width:0}.schedule-top-bar-primary .crm-global-search-field{height:2.25rem;min-height:2.25rem;max-height:2.25rem;padding:0 .65rem;box-sizing:border-box}.schedule-new-booking-btn{height:2.25rem;min-height:2.25rem;max-height:2.25rem;padding:0 .85rem;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;white-space:nowrap;flex-shrink:0;box-sizing:border-box}.schedule-top-bar-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-left:auto}.schedule-top-bar-filters .schedule-nav-btn,.schedule-top-bar-filters .btn-secondary.xs{min-height:2rem}.schedule-toolbar-icon-btn{margin-left:auto}.schedule-global-search{flex:1 1 12rem;max-width:20rem}.schedule-date-badge{font-weight:600;font-size:.9rem;white-space:nowrap}.schedule-booking[draggable=true]{cursor:grab}.schedule-booking[draggable=true]:active{cursor:grabbing;opacity:.85}.sidebar-toggle-mobile{display:none}.main{padding:.75rem 1.25rem;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;height:100%;max-height:100vh;box-sizing:border-box}.main--schedule,.main--staff-chat{overflow:hidden}.main--schedule>.schedule-page,.main--staff-chat>.staff-chat-page{flex:1 1 auto;min-height:0}.crm-topbar{flex-shrink:0;display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;min-height:2.5rem}.crm-global-search{position:relative;flex:1;max-width:32rem}.crm-global-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.crm-global-search-field{display:flex;align-items:center;gap:.5rem;padding:.35rem .65rem;border:1px solid var(--crm-border);border-radius:.65rem;background:var(--crm-surface);color:var(--text);box-shadow:var(--shadow-sm)}.crm-global-search-icon{color:var(--crm-muted);font-size:1rem;line-height:1}.crm-global-search-input{flex:1;min-width:0;border:0;background:transparent;font:inherit;color:inherit;outline:none}.crm-global-search-input::placeholder{color:var(--crm-muted)}.crm-global-search-kbd{display:none;font-size:.7rem;line-height:1;padding:.2rem .35rem;border-radius:.35rem;border:1px solid var(--crm-border);color:var(--crm-muted);background:var(--crm-surface-muted)}.crm-global-search-panel{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:40;max-height:min(24rem,60vh);overflow:auto;border:1px solid var(--crm-border);border-radius:.75rem;background:var(--crm-surface);color:var(--text);box-shadow:var(--shadow-md)}.crm-global-search-section+.crm-global-search-section{border-top:1px solid var(--crm-border)}.crm-global-search-section-title{padding:.45rem .75rem .25rem;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--crm-muted)}.crm-global-search-list{list-style:none;margin:0;padding:0 .35rem .35rem}.crm-global-search-hit{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.45rem .55rem;border:0;border-radius:.5rem;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.crm-global-search-hit:hover,.crm-global-search-hit:focus-visible{background:var(--crm-surface-muted);outline:none}.crm-global-search-hit-title{font-size:.9rem;font-weight:500;color:var(--text)}.crm-global-search-hit-sub{font-size:.78rem;color:var(--crm-muted)}.crm-global-search-empty{padding:.85rem .9rem;font-size:.85rem;color:var(--crm-muted)}.crm-global-search-error{color:#b91c1c}@media(min-width:900px){.crm-global-search-kbd{display:inline-block}}.page{min-width:0;display:flex;flex-direction:column;flex:0 0 auto;overflow:visible;min-height:auto;padding-bottom:0}.page .card:not(.schedule-grid-wrap):not(.schedule-week-grid){overflow:visible;max-height:none}.page.schedule-page .schedule-grid-wrap,.page.schedule-page .schedule-week-grid{overflow:auto}.page.schedule-page{flex:1;min-height:0;overflow:hidden;gap:0}.page.staff-chat-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;gap:.5rem}.page.staff-chat-page .page-header{flex-shrink:0;margin-bottom:0}.page.staff-chat-page .error{flex-shrink:0;margin:0}.page.staff-chat-page .staff-chat-layout{flex:1;min-height:0}.page-header.row{flex-wrap:wrap;gap:.75rem;align-items:flex-start}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1rem 1.25rem}.card h2{margin:0 0 .5rem;font-size:var(--font-section-title)}.page-header h1{margin:0 0 .25rem}.muted{color:var(--muted);font-size:var(--font-body)}.error{color:var(--danger);font-size:var(--font-body)}.btn-text{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;text-align:left}.btn-primary{background:var(--accent);color:var(--text-on-accent);border:none;border-radius:var(--radius-md);padding:.625rem 1rem;cursor:pointer;font:inherit}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:.5rem .75rem;cursor:pointer;font:inherit;color:var(--text)}.btn-secondary.active-mode{border-color:var(--accent);background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.page-header__main{min-width:0;flex:1 1 12rem}.page-header__main h1{margin:0 0 .2rem;font-size:var(--font-page-title);font-weight:700;line-height:1.25;color:var(--text)}.page-header__main .muted{margin:0;font-size:var(--font-body)}.page-header>div:first-child:not(.page-header__actions):not(.clients-header-actions){min-width:0;flex:1 1 12rem}.page-header>div:first-child:not(.page-header__actions):not(.clients-header-actions) h1{margin:0 0 .2rem;font-size:var(--font-page-title);font-weight:700;line-height:1.25;color:var(--text)}.page-header>div:first-child:not(.page-header__actions):not(.clients-header-actions) .muted{margin:0;font-size:var(--font-body)}.page-header__actions,.page-header-actions,.clients-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex-shrink:0}.section-title{grid-column:1 / -1;margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--text)}.page-loading{padding:2rem 1rem;text-align:center;color:var(--muted);font-size:.9rem}.empty-state{padding:2rem 1rem;text-align:center;color:var(--muted)}.err{color:var(--danger);font-size:var(--font-body)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.kpi-grid .kpi-card h3,.kpi-card h3{margin:0 0 .35rem;font-size:var(--font-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.kpi-value{margin:0;font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--text)}.input,input.input,select.input,textarea.input,.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.drawer-field input:not([type=checkbox]):not([type=radio]),.drawer-field select,.drawer-field textarea,.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select,.form-grid textarea,label input[type=date],label input[type=datetime-local],label input[type=number],label input[type=email],label input[type=tel],label input[type=search],label input[type=text],label input[type=password],label select,label textarea{width:100%;padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);font:inherit;color:var(--text);box-sizing:border-box}.input:focus-visible,.field input:focus-visible,.drawer-field input:focus-visible,.form-grid input:focus-visible,.form-grid select:focus-visible{outline:2px solid rgba(74,127,199,.35);outline-offset:1px;border-color:var(--accent)}.field,.drawer-field{display:flex;flex-direction:column;gap:.3rem;font-size:var(--font-body)}.field>span:first-child,.drawer-field>span:first-child{font-size:var(--font-label);font-weight:500;color:var(--muted)}input[type=checkbox],input[type=radio]{width:1rem;height:1rem;min-width:1rem;flex-shrink:0;margin:0;padding:0;accent-color:var(--accent);cursor:pointer}.checkbox-row,label.checkbox-row,.drawer-field.checkbox-row,label.drawer-field.checkbox-row,.field.checkbox-row,label.field.checkbox-row,.checkbox-inline,label.checkbox-inline,.field-inline.checkbox-inline,.schedule-menu-toggle,.roles-permission-chip{flex-direction:row!important;align-items:center;justify-content:flex-start;text-align:left}.checkbox-row,label.checkbox-row,.drawer-field.checkbox-row,label.drawer-field.checkbox-row,.checkbox-inline,label.checkbox-inline{gap:.5rem;cursor:pointer}label.drawer-field:has(>input[type=checkbox]),label.drawer-field:has(>input[type=radio]),label.field:has(>input[type=checkbox]),label.field:has(>input[type=radio]){flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;cursor:pointer}label.drawer-field:has(>input[type=checkbox])>span,label.drawer-field:has(>input[type=radio])>span,label.field:has(>input[type=checkbox])>span,label.field:has(>input[type=radio])>span{font-size:inherit;font-weight:inherit;color:inherit}label:has(>span+input[type=checkbox]),label:has(>span+input[type=radio]){flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;cursor:pointer}label:has(>span+input[type=checkbox])>input[type=checkbox],label:has(>span+input[type=radio])>input[type=radio]{order:-1}.checkbox-grid{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.checkbox-grid label{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;cursor:pointer}.drawer-field-hint{margin:.15rem 0 0;line-height:1.4}.form-grid,.recurring-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem 1rem;max-width:none}.form-grid label,.recurring-form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:var(--font-body)}.form-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;font:inherit;cursor:pointer;border-radius:var(--radius-md);text-decoration:none;white-space:nowrap}.btn.xs,.btn-primary.xs,.btn-secondary.xs{padding:.25rem .55rem;font-size:.75rem}.btn.small,.btn-primary.small,.btn-secondary.small{padding:.35rem .65rem;font-size:.8rem}.table-wrap,.clients-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg)}.data-table,.clients-table{width:100%;border-collapse:collapse;font-size:var(--font-body)}.data-table th,.data-table td,.clients-table th,.clients-table td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.data-table th,.clients-table th{background:var(--bg-subtle);font-size:var(--font-caption);font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.data-table tbody tr:hover,.clients-table tbody tr:hover{background:var(--row-hover-bg)}.export-format-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.link:hover{text-decoration:underline}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.25rem;background:var(--bg-page)}.login-card{width:min(100%,400px);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem 1.5rem;box-shadow:0 8px 32px #0f172a14}.login-card h1{margin:0 0 .25rem;font-size:1.35rem}.login-card form{display:flex;flex-direction:column;gap:.85rem;margin-top:1.25rem}.login-card .field{margin:0}.login-card .btn-primary{width:100%;margin-top:.25rem}.settings-subnav{margin-bottom:1rem}.toast-host{position:fixed;right:1rem;bottom:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;max-width:min(360px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;padding:.65rem .9rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);box-shadow:0 8px 24px #0f172a24;font-size:.85rem;text-align:left;cursor:pointer;color:var(--text)}.toast-success{border-color:#86efac;background:#f0fdf4;color:#166534}.toast-error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.toast-info{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}[data-theme=dark] .toast-success{border-color:#166534;background:#14532d;color:#86efac}[data-theme=dark] .toast-error{border-color:#991b1b;background:#450a0a;color:#fca5a5}[data-theme=dark] .toast-info{border-color:#1e40af;background:#1e3a8a;color:#bfdbfe}.global-loading-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0f172a61;pointer-events:all}.global-loading-card{min-width:min(280px,88vw);max-width:360px;padding:1.25rem 1.5rem 1.35rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow-md);text-align:center}.global-loading-bar{height:4px;margin:0 0 .85rem;background:var(--border);border-radius:999px;overflow:hidden}.global-loading-bar-fill{height:100%;width:42%;background:linear-gradient(90deg,var(--accent),#6b9bd1);border-radius:999px;animation:global-loading-slide 1.1s ease-in-out infinite}.global-loading-message{margin:0;font-size:.875rem;font-weight:500;color:var(--text)}@keyframes global-loading-slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}[data-theme=dark] .global-loading-overlay{background:#0000008c}.top-loading-bar{position:relative;height:3px;margin:0 0 .5rem;background:var(--border);border-radius:999px;overflow:hidden;flex-shrink:0}.top-loading-bar-fill{height:100%;width:40%;background:linear-gradient(90deg,var(--accent),#6b9bd1);border-radius:999px;animation:top-loading-slide 1.1s ease-in-out infinite}@keyframes top-loading-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.inline-form-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem}.inline-form-row select,.inline-form-row input[type=text],.inline-form-row input[type=email],.inline-form-row input[type=search]{width:auto;min-width:10rem;flex:1 1 10rem;max-width:16rem}.color-legend-hover{position:relative}.color-legend-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--card-bg);cursor:pointer}.color-legend-icon-btn:hover{border-color:var(--accent);background:var(--sidebar-active-bg)}.color-legend-icon{position:relative;width:1.1rem;height:1.1rem;border-radius:50%;overflow:hidden;background:conic-gradient(#7c3aed 0deg 72deg,#2563eb 72deg 144deg,#0d9488 144deg 216deg,#d97706 216deg 288deg,#64748b 288deg 360deg)}.color-legend-icon-slice{display:none}.color-legend-hover-panel{position:absolute;top:calc(100% + .35rem);right:0;z-index:60;min-width:260px;padding:.65rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 32px #0f172a24}.location-thumb{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-size:.7rem;font-weight:700;overflow:hidden}.locations-table td strong{font-weight:600}.locations-page .locations-empty{padding:1rem 1.25rem}.location-detail-page .back-link{display:inline-block;margin-bottom:.35rem;text-decoration:none}.location-detail-page .back-link:hover{color:var(--accent)}.location-detail-tabs.drawer-tabs{margin-bottom:.75rem;padding:.35rem .65rem 0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg)}.location-detail-page .card+.card{margin-top:.75rem}.location-detail-page .location-form-grid{grid-template-columns:1fr;max-width:none}.location-detail-page .location-form-schedule-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem}.location-detail-page .location-form-schedule-row .drawer-field{flex-direction:row;align-items:center;gap:.5rem;margin:0}.location-detail-page .location-form-schedule-row .drawer-field>span:first-child{white-space:nowrap}.location-detail-page .location-form-schedule-row .drawer-field select.input,.location-detail-page .location-form-schedule-row .drawer-field input.input{width:5.5rem;min-width:5.5rem;max-width:5.5rem}.location-detail-page .location-form-grid>label:not(.drawer-field):not(.checkbox-row){display:flex;flex-direction:column;gap:.3rem;font-size:var(--font-label);font-weight:500;color:var(--muted)}.location-detail-page .location-form-grid label>input:not([type=checkbox]):not([type=radio]),.location-detail-page .location-form-grid label>select,.location-detail-page .location-form-grid label>textarea,.location-detail-page .location-form-grid .input,.location-detail-page .location-inline-form .input{width:100%;font:inherit;color:var(--text)}.location-detail-page .location-inline-form{display:contents}.location-detail-page .hot-slot-fieldset{grid-column:1 / -1;margin:0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-header)}.location-detail-page .hot-slot-fieldset>legend,.location-detail-page .hot-slot-fieldset>summary{font-size:var(--font-label);font-weight:600;color:var(--text);padding:0 .25rem}.location-detail-page .hot-slot-fieldset details{display:flex;flex-direction:column;gap:.75rem}.location-detail-page .location-kkm-fieldset{display:flex;flex-direction:column;gap:.75rem;grid-column:1 / -1}.location-detail-page .space-list{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.65rem}.location-detail-page .space-list-directions>li{padding:.75rem .85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg)}.location-detail-page .space-list-directions>li.is-inactive{opacity:.78;background:var(--surface-header)}.location-detail-page .space-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.location-spaces-hint{margin:0 0 .75rem;max-width:42rem}.location-spaces-empty{margin:0 0 .75rem}.location-detail-page .space-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;font-weight:600}.location-detail-page .space-list-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem .75rem;flex-shrink:0}.location-detail-page .space-list-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.location-detail-page .space-directions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.5rem}.location-detail-page .space-direction-option{display:inline-flex;align-items:center;gap:.75rem;padding-right:.35rem}.location-detail-page .space-direction-name{font-weight:500;line-height:1.25}.location-detail-page .drawer-field.checkbox-row>span,.location-detail-page label.checkbox-row>span{color:var(--text);font-weight:400}.location-detail-page .form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;margin-top:.25rem;width:100%}.schedule-space-header{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .25rem;min-height:2rem;flex-wrap:nowrap;white-space:nowrap;font-size:.78rem}.schedule-space-name{font-weight:600}.schedule-occupancy{font-size:.72rem;color:var(--muted)}.schedule-booking{z-index:5;pointer-events:auto;touch-action:none}.schedule-slot-cell{z-index:0}.schedule-selection{z-index:3}.page>.card+.card,.page>section.card+section.card{margin-top:.75rem}.page>.card-grid,.page>section.card-grid{margin-top:.75rem}.vision-dashboard-blocks{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.vision-dashboard-blocks>.card-grid,.vision-dashboard-blocks>section.card,.vision-dashboard-blocks>section.card-grid{margin-top:0}.vision-chart-card h2{margin:0 0 .75rem}.vision-chart-note{margin:-.35rem 0 .75rem}.analytics-page-blocks{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.analytics-page-blocks>section{margin-top:0}.custom-report-save{margin-top:1rem}.custom-reports-list-card h2{margin:0 0 .75rem}.custom-reports-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.custom-reports-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle)}.custom-reports-row-name{min-width:0;font-weight:600;color:var(--text)}.custom-reports-row-actions{display:flex;flex-shrink:0;align-items:center;gap:.5rem}.reports-export-card{margin-top:.75rem}.reports-export-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.reports-export-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle)}.reports-export-row-name{min-width:0;font-weight:600;color:var(--text)}.reports-export-row-actions{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.reports-export-section{margin:.75rem 0 0;padding:.35rem .25rem 0;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border:none;background:transparent}.reports-reconcile-result{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}@media(max-width:720px){.reports-export-row{flex-direction:column;align-items:stretch}.reports-export-row-actions{justify-content:flex-start}}.field-picker{margin:.75rem 0 0;border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem}.client-categories-page .card h2{margin:0 0 .75rem;font-size:1rem}.client-categories-list{display:flex;flex-direction:column;gap:.75rem}.client-category-card{display:grid;grid-template-columns:minmax(8rem,10rem) minmax(0,1fr) auto;gap:.75rem 1rem;align-items:end;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle)}.client-category-card-preview{display:flex;align-items:center;min-height:2.25rem}.client-category-card-fields{margin:0}.client-category-color-field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem}.client-category-color-input{width:2.75rem;height:2.25rem;padding:.15rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer}.client-category-color-readonly{font-family:ui-monospace,monospace;font-size:.8rem;color:var(--muted)}.client-category-card-actions{display:flex;align-items:center;padding-bottom:.1rem}.client-categories-create-btn{margin-top:.75rem}@media(max-width:900px){.client-category-card{grid-template-columns:1fr;align-items:stretch}.client-category-card-actions{justify-content:flex-start;padding-bottom:0}}.schedule-chrome{flex-shrink:0;display:flex;flex-direction:column;gap:.35rem}.schedule-grid-area{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.schedule-grid-area .schedule-grid-wrap,.schedule-grid-area .schedule-week-grid{flex:1;min-height:0;height:auto;max-height:none;overflow:auto}.schedule-location-select-only select{font-weight:500;min-width:200px}.color-legend-popover{position:relative}.color-legend-popover-trigger{list-style:none;cursor:pointer}.color-legend-popover-trigger::-webkit-details-marker{display:none}.color-legend-popover-panel{position:absolute;top:calc(100% + .35rem);right:0;z-index:40;min-width:280px;max-width:min(420px,90vw);padding:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.color-legend-popover-panel .color-legend{margin:0}.schedule-toolbar-viva{align-items:center;gap:.5rem}.schedule-menu-dropdown{position:relative}.schedule-menu-dropdown-trigger{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.8rem;font-weight:500;color:var(--text);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap}.schedule-menu-dropdown.is-active .schedule-menu-dropdown-trigger{border-color:var(--accent);background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.schedule-menu-dropdown-trigger:hover{border-color:var(--accent);color:var(--text)}[data-theme=dark] .schedule-menu-dropdown-trigger{color:var(--text);background:var(--crm-surface-muted)}[data-theme=dark] .schedule-menu-dropdown-trigger:hover{background:var(--bg-subtle);color:var(--text)}[data-theme=dark] .schedule-menu-dropdown.is-active .schedule-menu-dropdown-trigger{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}[data-theme=dark] .schedule-menu-dropdown-icon{opacity:1;color:currentColor}[data-theme=dark] .schedule-menu-dropdown-chevron{opacity:.75;color:currentColor}[data-theme=dark] .schedule-menu-dropdown-panel{box-shadow:var(--shadow-md)}[data-theme=dark] .schedule-menu-toggle{color:var(--text)}.schedule-menu-dropdown-icon{display:flex;width:1rem;height:1rem;opacity:.75}.schedule-menu-dropdown-icon svg{width:100%;height:100%}.schedule-menu-dropdown-badge{min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.65rem;font-weight:700;line-height:1.1rem;text-align:center;color:var(--text-on-accent);background:var(--accent);border-radius:999px}.schedule-menu-dropdown-chevron{font-size:.65rem;opacity:.55;margin-left:.1rem}.schedule-menu-dropdown-panel{position:absolute;top:calc(100% + .35rem);left:0;z-index:50;min-width:240px;max-width:min(320px,90vw);max-height:min(70vh,480px);overflow:auto;padding:.35rem 0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 32px #0f172a29}.schedule-menu-section{padding:.25rem 0;border-bottom:1px solid var(--border)}.schedule-menu-section:last-child{border-bottom:none}.schedule-menu-section-title{padding:.35rem .85rem .25rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.schedule-menu-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.45rem .85rem;font-size:.8rem;text-align:left;color:var(--text);background:transparent;border:none;cursor:pointer}.schedule-menu-item:hover{background:var(--bg-subtle)}.schedule-menu-item-check{color:var(--accent);font-weight:700}.schedule-menu-panel-footer{padding:.5rem .85rem}.schedule-menu-toggle{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text);cursor:pointer}.contract-create-row{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:flex-end;margin-bottom:.75rem}.contract-create-row label{display:flex;flex-direction:column;gap:.25rem;font-size:var(--font-label);color:var(--muted);min-width:0}.contract-create-row input:not([type=checkbox]),.contract-create-row select{font-size:var(--font-body);padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text);font:inherit;min-width:8rem}.b2b-detail-page .b2b-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem}.b2b-detail-page .stat-widget{text-align:center;padding:.85rem 1rem}.b2b-detail-page .stat-value{font-size:1.2rem;font-weight:700;line-height:1.25;color:var(--text)}.b2b-detail-page .stat-value.debt{color:var(--danger)}.b2b-detail-page .stat-label{margin-top:.25rem;font-size:var(--font-caption);font-weight:500;color:var(--muted)}.b2b-detail-page .card+.card{margin-top:.75rem}.b2b-detail-page .card h2{margin-bottom:.75rem}.b2b-detail-page .section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.b2b-detail-page .section-head h2{margin:0}.b2b-detail-page .drawer-dl{display:grid;grid-template-columns:minmax(8rem,auto) 1fr;gap:.5rem 1rem;margin:0;font-size:var(--font-body)}.b2b-detail-page .drawer-dl dt{margin:0;color:var(--muted);font-weight:500}.b2b-detail-page .drawer-dl dd{margin:0;color:var(--text)}.b2b-detail-page .b2b-edit-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem 1rem;align-items:end}.b2b-detail-page .b2b-edit-form .drawer-field--wide{grid-column:1 / -1}.b2b-detail-page .b2b-edit-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem}.b2b-detail-page .b2b-weekdays-field{grid-column:1 / -1}.b2b-detail-page .b2b-reserve-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem 1rem;align-items:end;margin:1rem 0 0;padding:0;border:none;min-width:0}.b2b-detail-page .b2b-reserve-form:disabled{opacity:.72;pointer-events:none}.b2b-detail-page .b2b-reserve-form .drawer-field{min-width:0}.b2b-detail-page .b2b-reserve-form .input{width:100%;min-height:2.5rem;box-sizing:border-box}.b2b-detail-page .b2b-reserve-weekdays{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:2.5rem}.b2b-detail-page .b2b-reserve-form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.15rem}.b2b-detail-page .clients-table select{min-width:8rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text);font:inherit}.b2b-detail-page .clients-header-actions input{flex:1 1 12rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text)}.b2b-detail-page .act-period-row input{padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text);font:inherit}.schedule-week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:.5rem;flex:1;min-height:0;overflow:auto;padding:.5rem}.schedule-week-col{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.schedule-week-col.today{border-color:var(--accent);box-shadow:inset 0 0 0 1px #0d948833}.schedule-week-col-header{display:flex;justify-content:space-between;align-items:center;padding:.4rem .5rem;font-size:.8rem;font-weight:600;border-bottom:1px solid var(--border);background:var(--surface-header)}.schedule-week-bookings{list-style:none;margin:0;padding:.35rem;display:flex;flex-direction:column;gap:.35rem;overflow:auto;flex:1}.schedule-week-booking{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.35rem .4rem;text-align:left;border:none;border-left:3px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:.72rem;color:var(--text-on-pastel);font:inherit}.schedule-week-booking-time{font-weight:600}.schedule-top-bar-compact{align-items:center;margin-bottom:0;gap:.5rem}.schedule-location-field{min-width:160px;max-width:220px}.schedule-toolbar-compact{padding:.35rem .5rem;gap:.35rem;display:flex;flex-wrap:wrap;align-items:center}.schedule-toolbar-compact .schedule-toolbar-filters{gap:.35rem}.schedule-toolbar-compact .schedule-field.compact{min-width:88px;gap:.1rem}.schedule-toolbar-compact .schedule-field.compact span{font-size:.6rem}.schedule-toolbar-compact select,.schedule-toolbar-compact .btn-secondary,.schedule-toolbar-compact .btn-secondary.xs{padding:.2rem .4rem;font-size:.72rem;line-height:1.2;border-radius:var(--radius-sm);min-height:1.6rem}.btn-secondary.xs,.btn.xs{padding:.2rem .45rem;font-size:.72rem;line-height:1.2}.schedule-filter-summary{margin:0;align-self:center;white-space:nowrap}.dashboard-today-section{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.75rem}.dashboard-today-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem}.dashboard-today-header h2{margin:0;font-size:1.1rem}.dashboard-today-header .btn{margin-left:auto}.schedule-top-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem;margin-bottom:.25rem}.schedule-top-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.schedule-top-bar .page-title-block h1{margin:0;font-size:1.35rem;font-weight:600}.btn.small,.btn-secondary.small{padding:.35rem .65rem;font-size:.8rem}.schedule-date-picker{position:relative;flex-shrink:0}.schedule-date-picker-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.schedule-date-picker-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);cursor:pointer;font-weight:600;font-size:.95rem;color:var(--text);box-shadow:var(--shadow-sm)}.schedule-date-picker-trigger:hover{background:var(--bg-subtle)}.schedule-date-picker-icon{display:flex;color:var(--accent)}.schedule-date-picker-popover{position:absolute;top:calc(100% + .35rem);left:0;z-index:30;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0f172a1f}.schedule-date-picker-nav{display:flex;align-items:center;gap:.35rem}.btn-icon{width:2rem;height:2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;font-size:1.1rem;line-height:1;color:var(--muted)}.btn-icon:hover{background:var(--bg-subtle)}.kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.kpi-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.15rem;box-shadow:var(--shadow-sm)}.kpi-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.kpi-value{font-size:1.5rem;font-weight:700;line-height:1.1;color:var(--text)}.kpi-value.kpi-warn{color:var(--warn)}.kpi-hint{margin-top:.1rem}.color-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.5rem .75rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.75rem}.color-legend-title{font-weight:600}.color-legend-items{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center}.color-legend-item{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.color-swatch{width:.65rem;height:.65rem;border-radius:2px;flex-shrink:0}.pay-dot{width:.5rem;height:.5rem;border-radius:50%;display:inline-block}.pay-dot.pay-paid,.schedule-booking.pay-paid:after{background:var(--success)}.pay-dot.pay-unpaid,.schedule-booking.pay-unpaid:after{background:#f59e0b}.pay-dot.pay-partial,.schedule-booking.pay-partial:after{background:#fb923c}.pay-dot.pay-pending,.schedule-booking.pay-pending:after{background:#eab308}.schedule-toolbar{gap:.75rem;padding:.75rem;margin-bottom:0;align-items:center}.schedule-toolbar-filters{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:flex-end;flex:1;min-width:0}.schedule-field.compact{min-width:120px}.schedule-field.compact span{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.schedule-grid-wrap{flex:1;min-height:0;overflow:auto;padding:0;border-radius:var(--radius-lg);border:1px solid var(--border)}.schedule-corner,.schedule-space-header{background:var(--bg-page)}.schedule-time-cell{border-bottom:1px solid var(--border)}.schedule-slot-cell{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.schedule-booking{border-radius:var(--radius-sm);border-left-width:3px;border-left-style:solid;box-shadow:none;position:absolute}.schedule-booking:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%}.schedule-booking.technical{background:repeating-linear-gradient(-45deg,var(--stripe-a),var(--stripe-a) 6px,var(--stripe-b) 6px,var(--stripe-b) 12px)!important;border-left-color:var(--muted)!important}.schedule-booking.group-event{box-shadow:inset 0 0 0 1px #a894d459}.schedule-mini-calendar{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.schedule-mini-calendar-day.selected:not(.today){background:var(--sidebar-active-bg);outline:2px solid var(--accent);color:var(--sidebar-active-text)}.booking-drawer{width:min(400px,100vw)}.drawer-backdrop{background:#0f172a33}.category-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1rem}.category-color-preview{border-left:4px solid;border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:.75rem;display:flex;flex-direction:column;gap:.25rem}.category-color-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.preset-swatches{display:flex;flex-wrap:wrap;gap:.35rem}.preset-swatch{width:1.25rem;height:1.25rem;border:1px solid var(--border);border-radius:4px;cursor:pointer;padding:0}.login-card{border-radius:var(--radius-lg);box-shadow:0 4px 24px #0f172a14}@media(max-width:1100px){.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{flex-direction:row;flex-wrap:nowrap;padding:.5rem;border-right:none;border-bottom:1px solid var(--sidebar-border);overflow-x:auto}.sidebar-brand{margin-bottom:0;margin-right:.5rem}.sidebar-nav{flex-direction:row;flex:1;gap:.25rem}.nav-link{min-width:3.5rem;font-size:.55rem}.sidebar-footer{border-top:none;border-left:1px solid var(--sidebar-border);padding:0 .25rem 0 .5rem;display:flex;align-items:center}.main{padding:.75rem;height:100%;max-height:100vh}.schedule-grid-wrap{max-height:calc(100vh - 380px)}.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.color-legend{font-size:.7rem}}@media(max-width:480px){.kpi-strip{grid-template-columns:1fr 1fr}.schedule-date-picker-label{font-size:.85rem}.page-header.row h1{font-size:1.15rem}}.shifts-week-grid-wrap{overflow-x:auto}.shifts-week-grid{width:100%;border-collapse:collapse;font-size:.8rem}.shifts-week-grid th,.shifts-week-grid td{border:1px solid var(--border-subtle, #e8eaed);vertical-align:top;padding:.35rem}.shifts-week-grid__name{min-width:120px;white-space:nowrap}.shifts-week-grid__cell{min-width:96px}.shift-chip{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;margin-bottom:.25rem;padding:.25rem .35rem;border:1px solid transparent;border-radius:6px;background:#e8f0fe;text-align:left;cursor:pointer}.shift-chip--off{background:#fce8e6}.shift-chip--vacation{background:#fef7e0}.shifts-add-btn{width:100%}.shift-form-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:120;width:min(420px,92vw);max-height:90vh;overflow:auto}.staff-chat-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);min-height:0;height:100%;gap:0;overflow:hidden}.staff-chat-threads{display:flex;flex-direction:column;min-height:0;overflow:hidden;border-right:1px solid var(--border);padding:12px}.staff-chat-new{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;flex-shrink:0}.staff-chat-thread-empty{margin:0}.staff-chat-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.staff-chat-thread-btn{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);cursor:pointer;text-align:left}.staff-chat-thread-btn.active{border-color:var(--accent);background:var(--sidebar-active-bg)}.staff-chat-messages{display:flex;flex-direction:column;min-height:0;overflow:hidden}.staff-chat-messages>.muted{margin:0;padding:1rem}.staff-chat-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px;display:flex;flex-direction:column;gap:12px}.staff-chat-message{max-width:80%;padding:10px 12px;border-radius:10px;background:var(--surface-muted)}.staff-chat-message header{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}.staff-chat-booking-ref{display:inline-block;margin-top:8px;font-size:.8125rem}.staff-chat-compose{flex-shrink:0;border-top:1px solid var(--border);padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--card-bg)}.staff-chat-compose-actions{display:flex;align-items:center;gap:8px}.staff-chat-compose-actions input{flex:1;min-width:0}.staff-chat-compose-actions .btn-primary{flex-shrink:0}.staff-chat-compose textarea,.staff-chat-compose input{width:100%;font:inherit;padding:8px 10px;border:1px solid var(--border);border-radius:8px;box-sizing:border-box}.staff-mention{color:var(--accent, #2563eb);font-weight:600}.staff-mention-suggestions{list-style:none;margin:0 0 8px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);max-height:160px;overflow:auto}.staff-mention-suggestions button{display:block;width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;cursor:pointer;font:inherit}.staff-mention-suggestions button:hover{background:var(--muted-bg, #f3f4f6)}.booking-staff-thread-log{max-height:280px;margin:12px 0}@media(max-width:900px){.staff-chat-layout{grid-template-columns:1fr}.staff-chat-threads{border-right:none;border-bottom:1px solid var(--border)}}.client-detail-page input:not([type=checkbox]):not([type=radio]),.client-detail-page select,.client-detail-page textarea{width:100%;font:inherit;padding:.45rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg)}.client-detail-page input:focus-visible,.client-detail-page select:focus-visible,.client-detail-page textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.b2b-detail-page .input,.b2b-detail-page select,.b2b-detail-page textarea,.b2b-event-detail-page .input,.b2b-event-detail-page select,.b2b-event-detail-page textarea,.b2b-page .clients-header-actions .input,.b2b-page .clients-header-actions select{width:100%}.b2b-event-form{display:flex;flex-direction:column;gap:.75rem;max-width:36rem}.b2b-detail-grid{display:grid;grid-template-columns:minmax(7rem,auto) 1fr;gap:.5rem 1.25rem;margin:0;font-size:var(--font-body)}.b2b-detail-grid dt{margin:0;color:var(--muted);font-weight:500}.b2b-detail-grid dd{margin:0;color:var(--text)}.b2b-pipeline-stages{display:flex;flex-wrap:wrap;gap:.5rem}.b2b-pipeline-stage{padding:.4rem .75rem;border:1px solid var(--border);border-radius:999px;background:var(--card-bg);color:var(--text);font:inherit;font-size:.82rem;cursor:pointer;transition:border-color .15s,background .15s}.b2b-pipeline-stage:hover:not(:disabled){border-color:var(--accent);background:var(--sidebar-active-bg)}.b2b-pipeline-stage.active{border-color:var(--accent);background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600}.b2b-pipeline-stage:disabled{opacity:.6;cursor:not-allowed}.b2b-events-page .kanban-board{margin-top:.75rem}.kanban-empty{padding:.5rem .25rem}.kanban-card-kind{margin-bottom:.15rem}.b2b-event-detail-page .back-link{display:inline-block;margin-bottom:.35rem;text-decoration:none}.b2b-event-detail-page .back-link:hover{color:var(--accent)}.client-detail-tabs{display:flex;gap:.25rem;margin-bottom:.75rem;border-bottom:1px solid var(--border)}.client-detail-tabs .tab{background:none;border:none;border-bottom:2px solid transparent;padding:.45rem .75rem;font-size:.85rem;cursor:pointer;color:var(--muted)}.client-detail-tabs .tab.active{color:var(--accent);border-bottom-color:var(--accent)}.client-detail-grid{display:flex;flex-direction:column;gap:1rem;max-width:42rem}.client-detail-page .client-create-form,.client-detail-page .custom-fields-form,.client-detail-page .client-profile-custom-fields{display:flex;flex-direction:column;gap:.75rem}.client-detail-page .client-profile-custom-fields{padding-top:.25rem}.client-detail-page .drawer-field{display:flex;flex-direction:column;gap:.35rem}.client-detail-page .drawer-field input:not([type=checkbox]):not([type=radio]),.client-detail-page .drawer-field select,.client-detail-page .drawer-field textarea{width:100%}.client-detail-page .drawer-field.checkbox-row,.client-detail-page label.checkbox-row.manual-broadcast-channel-item{display:inline-flex;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:.5rem;width:auto;cursor:pointer}.client-detail-page .drawer-field.checkbox-row>span,.client-detail-page .manual-broadcast-channel-item>span{font-size:inherit;font-weight:400;color:var(--text);line-height:1.35}.client-detail-page .drawer-field input[type=checkbox],.client-detail-page .manual-broadcast-channel-item input[type=checkbox]{width:1rem;min-width:1rem;flex-shrink:0}.client-detail-section-note{margin:0;font-size:.8125rem;line-height:1.45;color:var(--muted)}.client-detail-card-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.75rem}.client-detail-meta{margin:0}.client-detail-page .platform-user-id{display:inline-block;font-size:.8rem;padding:.25rem .5rem;border-radius:var(--radius-sm);background:var(--bg-subtle);border:1px solid var(--border)}.client-detail-page .membership-freeze-btn{margin-left:.5rem}.client-detail-page .membership-assign{margin-top:.75rem}.client-detail-page .deposit-actions{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}.client-custom-field-coach-picker{margin-top:.35rem}.client-custom-field-coach-picker>.muted.small{display:block;margin-bottom:.25rem}.manual-broadcast-channels{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:.5rem 0}.manual-broadcast-channel-item{margin:0}.client-detail-page .client-comment-card textarea{width:100%;margin-bottom:.5rem}.client-detail-page .clients-header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.client-detail-page .clients-header-actions .input,.client-detail-page .clients-header-actions select{flex:1 1 10rem;min-width:0}.client-progress-layout{display:flex;flex-direction:column;gap:.75rem;max-width:56rem}.client-progress-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.client-activity-card h2,.client-visits-card h2,.client-detail-page .card h2{margin:0 0 .75rem;font-size:1rem}.client-activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.client-activity-item{padding:.75rem .85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-header)}.client-activity-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.client-activity-time{margin-left:auto}.client-activity-subtitle{margin:.35rem 0 0}.client-activity-amount{margin:.25rem 0 0;font-weight:600;font-size:.875rem}.clients-layout{display:flex;flex-direction:column;gap:1rem}.clients-filters{padding:.65rem 1rem}.clients-filters-compact{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.15fr) minmax(0,2.2fr) minmax(0,1fr) auto;gap:.5rem .75rem;align-items:end;width:100%}.clients-filter-visit .clients-filter-visit-range{display:flex;align-items:center;gap:.35rem;width:100%}.clients-filter-visit .clients-filter-visit-range .input{flex:1 1 0;min-width:0}.clients-filter-visit-sep{flex-shrink:0;font-size:var(--font-caption);color:var(--muted);line-height:1}.clients-filters-reset{align-self:end;font-size:var(--font-body);padding:.5rem .15rem;white-space:nowrap}.clients-filters-rfm{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .65rem;margin-top:.55rem;padding-top:.55rem;border-top:1px solid var(--border);width:100%}.clients-filters-rfm-label{flex-shrink:0;font-size:var(--font-label);font-weight:500;color:var(--muted);line-height:1.2}.clients-filters-rfm .filter-chip-group{margin-top:0;flex:1 1 auto;min-width:0}@media(max-width:960px){.clients-filters-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.clients-filter-visit{grid-column:1 / -1}.clients-filters-reset{grid-column:1 / -1;justify-self:start;padding-left:0}}.clients-page .clients-table-wrap{overflow-x:auto;overflow-y:visible;max-height:none}.clients-main{min-width:0}.schedule-grid-area .waitlist-panel{flex:1;min-height:0;display:flex;flex-direction:column;gap:1rem;overflow:visible;padding:1rem 1.25rem}.waitlist-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.waitlist-header h2{margin:0 0 .15rem;font-size:1.1rem;font-weight:600}.waitlist-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem 1rem;align-items:end;padding-bottom:.25rem;border-bottom:1px solid var(--border)}.waitlist-form-notes{grid-column:1 / -1}.waitlist-form-submit{height:2.25rem;padding:0 .85rem;align-self:end}.waitlist-table-wrap{flex:1;min-height:0;overflow-x:auto;overflow-y:visible}.waitlist-status{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--bg-subtle);color:#475569}.waitlist-status-pending{background:#fef3c7;color:#92400e}.waitlist-status-notified{background:#dbeafe;color:#1d4ed8}.waitlist-status-fulfilled{background:#dcfce7;color:#166534}.waitlist-status-cancelled{background:var(--bg-subtle);color:var(--muted)}.waitlist-empty{padding:1rem 0}.portfolio-company-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.portfolio-company-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s}.portfolio-company-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.portfolio-company-card.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--card-bg))}.locations-view-tabs{display:inline-flex;gap:.25rem;padding:.2rem;border-radius:var(--radius-md);background:var(--surface-muted, color-mix(in srgb, var(--border) 40%, transparent))}.locations-view-tab{border:0;background:transparent;color:var(--text-muted);padding:.35rem .75rem;border-radius:calc(var(--radius-md) - 2px);cursor:pointer;font:inherit;font-size:.85rem}.locations-view-tab.is-active{background:var(--card-bg);color:var(--text);box-shadow:var(--shadow-sm)}.locations-section-title{margin:0;font-size:1rem;font-weight:600}.locations-companies-card,.locations-create-card{margin-bottom:1rem}.locations-card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1rem .75rem}.locations-inactive-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-muted);white-space:nowrap}.locations-create-card{padding:1rem}.locations-create-form .inline-form-row{margin:0}.locations-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.btn-text.danger{color:var(--danger)}.locations-table tr.is-inactive td{opacity:.72}.location-inactive-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--warning, #d97706) 10%,var(--card-bg));border:1px solid color-mix(in srgb,var(--warning, #d97706) 28%,var(--border))}.location-inactive-banner__text{min-width:0}.location-inactive-banner__text strong{display:block;margin-bottom:.15rem}.location-inactive-banner__text p{margin:0}.location-inactive-banner__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.locations-hub-card .btn-secondary{margin-top:.25rem}.locations-hub-text{margin:0 0 .75rem;max-width:42rem}.group-directions-page .back-link,.group-program-page .back-link{display:inline-block;margin-bottom:.35rem;text-decoration:none}.group-directions-page .back-link:hover,.group-program-page .back-link:hover{color:var(--accent)}.group-directions-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.group-directions-list-card .category-swatch{display:inline-block;width:.75rem;height:.75rem;border-radius:3px;margin-right:.5rem;vertical-align:middle}.group-directions-empty{padding:1rem 1.25rem}.group-directions-form{max-width:48rem}.group-directions-color-input{width:4rem;min-width:4rem;padding:.2rem;height:2.25rem}.group-directions-locations-fieldset{grid-column:1 / -1;margin:0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-header)}.group-directions-locations-fieldset>legend{font-size:var(--font-label);font-weight:600;padding:0 .25rem}.group-directions-locations-hint{margin:0 0 .5rem}.group-directions-locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.35rem .75rem}.group-directions-form-actions{grid-column:1 / -1;justify-content:flex-end}.group-program-page .card+.card{margin-top:.75rem}.group-program-page .page-header__main h1{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.group-program-title-swatch{width:.85rem;height:.85rem;border-radius:3px;flex-shrink:0}.group-program-schedule-hint,.group-program-enroll-hint{margin:0 0 .75rem;max-width:42rem}.group-program-schedule-saved{margin:0 0 .75rem;padding:.55rem .75rem;font-size:.8rem;line-height:1.45;color:var(--text);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md)}.group-program-schedule-unsaved{color:var(--warn);font-weight:600}.group-program-schedule-empty{margin:0 0 .75rem}.group-program-days-field{flex:1 1 auto;min-width:0}.group-program-schedule-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.group-program-form-actions{margin-top:0;flex-shrink:0}.group-program-enroll-row{margin-top:0}.group-program-enroll-row .input{min-width:12rem;flex:1 1 12rem;max-width:18rem}.group-program-sessions-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.group-program-sessions-hint{margin:0 0 .75rem;max-width:42rem}.group-program-sessions-filters{margin-bottom:.85rem;max-width:48rem}.group-program-sessions-table td:last-child{white-space:nowrap}.group-program-empty{padding:.25rem 0 .5rem}.location-programs-hint{margin:0 0 1rem;max-width:40rem}.location-free-visits-hint{margin:0 0 1rem;max-width:42rem}.free-visit-rule-list{list-style:none;margin:0 0 1.25rem;padding:0;display:flex;flex-direction:column;gap:.75rem}.free-visit-rule-list>li{padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg)}.free-visit-rule-list>li.is-inactive{opacity:.72}.free-visit-rule-form{display:grid;grid-template-columns:minmax(10rem,1.4fr) 6.5rem 6.5rem minmax(8rem,1fr) auto auto;gap:.65rem .75rem;align-items:end}.free-visit-rule-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.free-visit-rule-form--create{margin-top:.5rem}.free-visit-rule-active-control{display:flex;align-items:center;min-height:calc(1em + 1rem + 2px);padding:.5rem 0;box-sizing:border-box}.free-visit-create-block{padding-top:.5rem;border-top:1px solid var(--border)}@media(max-width:960px){.free-visit-rule-form{grid-template-columns:1fr 1fr}.free-visit-rule-notes,.free-visit-rule-active,.free-visit-rule-actions{grid-column:1 / -1}}.location-detail-page .category-swatch{display:inline-block;width:.75rem;height:.75rem;border-radius:3px;margin-right:.5rem;vertical-align:middle}.tournament-mode-hint{margin:0 0 1rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 8%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))}.tournaments-card{padding:0;overflow:hidden}.tournaments-card>h2{padding:1rem 1rem .75rem;margin:0}.tournaments-card>.muted{margin:0;padding:0 1rem 1rem}.tournaments-card .clients-table-wrap{margin:0}.tournaments-row-actions{white-space:nowrap}.tournament-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.tournament-list-item{border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem 1rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.35rem}.tournament-list-link{font-weight:600;text-decoration:none;color:var(--accent);line-height:1.3}.tournament-list-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.82rem;line-height:1.35}.tournament-list-sep{opacity:.55}.tournaments-create-form,.tournament-form-stack{display:flex;flex-direction:column;gap:.75rem;max-width:28rem}.tournament-form-stack--wide{max-width:40rem}.tournament-detail-page .card .tournament-form-stack+.tournament-form-stack,.tournament-detail-page .card .tournament-form-stack+.clients-table-wrap,.tournament-detail-page .card .clients-table-wrap+.form-actions{margin-top:1.25rem}.tournaments-create-actions{display:flex;justify-content:flex-start}.tournament-detail-page .inline-form input:not([type=checkbox]):not([type=radio]){width:4.5rem;max-width:none}.tournament-detail-page .space-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.tournament-detail-page .space-list li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tournament-round{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.tournament-round h3{margin:0 0 .5rem;font-size:.95rem}.tournament-match{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.tournament-match:last-child{border-bottom:none}.tournament-detail-page .inline-form{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:0}.tournament-detail-page .form-actions{margin-top:.25rem}.tournament-detail-page .card+.card{margin-top:0}.gift-cert-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.gift-cert-action-col h2{margin:0 0 .75rem;font-size:1rem}.gift-cert-action-row{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.gift-cert-field{flex:0 0 auto;width:auto;margin:0}.gift-cert-field select.input{width:9rem;min-width:9rem;max-width:9rem}.gift-cert-field input.input{width:11rem;min-width:11rem;max-width:11rem}.gift-cert-btn{flex-shrink:0;height:2.25rem;padding:0 .85rem;white-space:nowrap}.gift-cert-status-filter{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.gift-cert-status-label{font-size:var(--font-label);font-weight:500;color:var(--muted);white-space:nowrap}.gift-cert-status-filter select.input{width:auto;min-width:8.5rem;max-width:10rem;height:2rem;padding:.35rem .55rem}@media(max-width:768px){.gift-cert-actions-grid{grid-template-columns:1fr}}.guest-add-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;overflow:visible}.participants-block{overflow:visible}.participant-client-link{color:inherit;text-decoration:none}.participant-client-link:hover strong{color:var(--accent)}.guest-search-field{position:relative;z-index:2}.guest-add-form .client-search-hits{position:absolute;bottom:calc(100% + .25rem);top:auto;left:0;right:0;z-index:20;list-style:none;margin:0;padding:0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:min(240px,40vh);overflow-y:auto}.client-search-hit-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid var(--border)}.client-search-hit-row:last-child{border-bottom:none}.client-search-hit-main{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0}.client-search-hit-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.guest-search-status{margin:.35rem 0 0}.trainer-selected-name{font-weight:500}.trainer-search-picker{width:100%}.drawer-dl dd .trainer-search-picker{margin-top:.15rem}.catalog-picker-dropdown button.active{background:#eff6ff;font-weight:600}.catalog-picker-empty{padding:.5rem .75rem}.catalog-picker{position:relative;margin-top:.5rem}.catalog-picker-dropdown{position:absolute;top:100%;left:0;right:0;z-index:5;list-style:none;margin:.25rem 0 0;padding:0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:220px;overflow-y:auto}.catalog-picker-dropdown button{display:block;width:100%;padding:.5rem .75rem;border:none;background:none;text-align:left;cursor:pointer;font:inherit}.catalog-picker-dropdown button:hover:not(:disabled){background:var(--surface-header)}.catalog-picker-dropdown button:disabled{opacity:.5;cursor:not-allowed}.booking-nested-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;background:#0f172a59}.crm-confirm-overlay{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a73}.crm-confirm-dialog{width:min(420px,92vw);padding:1.25rem 1.5rem;margin:0}.crm-confirm-title{margin:0 0 .5rem;font-size:1.125rem}.crm-confirm-message{margin:0 0 1.25rem;color:var(--text-muted);line-height:1.45}.crm-confirm-actions{display:flex;justify-content:flex-end;gap:.5rem}.btn-danger{background:var(--danger, #dc2626);color:var(--text-on-accent);border:none;border-radius:var(--radius-md);padding:.625rem 1rem;cursor:pointer;font:inherit}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-danger.small{padding:.45rem .85rem;font-size:.875rem}.booking-staff-thread-compose{position:relative;border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem;background:var(--surface-header);gap:.625rem}.booking-staff-thread-compose textarea{border:1px solid var(--border);border-radius:8px;background:var(--card-bg);resize:vertical;min-height:4.5rem}.booking-staff-thread-send{align-self:flex-end;min-width:7.5rem}[data-theme=dark] .schedule-badge{background:#94a3b833;color:var(--text-on-pastel)}[data-theme=dark] .schedule-booking:not(.technical){color:var(--text-on-pastel);background:color-mix(in srgb,var(--booking-accent, var(--accent)) 28%,var(--card-bg))!important;box-shadow:inset 0 0 0 1px #94a3b81f}[data-theme=dark] .schedule-week-booking{color:var(--text-on-pastel);background:color-mix(in srgb,var(--booking-accent, var(--accent)) 28%,var(--card-bg))!important;box-shadow:inset 0 0 0 1px #94a3b81f}[data-theme=dark] .schedule-week-booking .muted{color:var(--text-on-pastel-muted)}[data-theme=dark] .schedule-badge.payment{background:#60a5fa40}[data-theme=dark] .schedule-badge.guests{background:#94a3b840}[data-theme=dark] .schedule-fill-bar{background:#94a3b833}[data-theme=dark] .drawer-backdrop{background:#0000008c}[data-theme=dark] .login-card,[data-theme=dark] .crm-confirm-dialog{box-shadow:var(--shadow-md)}[data-theme=dark] option{background:var(--card-bg);color:var(--text)}.products-page .products-intro{margin-bottom:.75rem}.products-page .products-section-head{margin-bottom:1rem}.products-page .products-section-head h2{margin:0 0 .25rem;font-size:1.05rem}.products-page .products-form{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.products-page .products-form-actions{display:flex;align-items:center;gap:.5rem;align-self:end;margin:0}.products-page .products-product-form{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.65rem;overflow-x:auto;padding-bottom:.15rem}.products-page .products-product-form .products-form-field{display:flex;flex-direction:column;gap:.3rem;flex:1 1 0;min-width:0;margin:0;font-size:var(--font-body)}.products-page .products-product-form .products-form-field-name{flex:1.6 1 8.5rem;min-width:8.5rem}.products-page .products-product-form .products-form-field-slug{flex:1 1 6rem;min-width:6rem}.products-page .products-product-form .products-form-field-service{flex:1.3 1 9rem;min-width:9rem}.products-page .products-product-form .products-form-field-format{flex:.85 1 5.5rem;min-width:5.5rem}.products-page .products-product-form .products-form-field-participants{flex:.75 1 5rem;min-width:5rem;max-width:6.5rem}.products-page .products-product-form .products-form-field-price{flex:.85 1 5.5rem;min-width:5.5rem;max-width:7rem}.products-page .products-product-form .products-form-field input,.products-page .products-product-form .products-form-field select{width:100%;min-width:0;height:2.25rem;padding:0 .55rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);font:inherit;color:var(--text);box-sizing:border-box}.products-page .products-product-form-actions{flex:0 0 auto;align-self:flex-end;white-space:nowrap}.products-page .table-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;white-space:nowrap}.products-page tr.is-inactive td{opacity:.65}.products-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:.75rem}.products-related-card{padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg)}.products-related-card h3{margin:0 0 .35rem;font-size:.95rem}.service-addons-page .service-addons-form-actions{display:flex;align-items:center;gap:.5rem;align-self:end;margin:0}.goods-page .goods-show-inactive,.service-addons-page .service-addons-show-inactive{display:inline-flex;align-items:center;gap:.5rem;margin:0;white-space:nowrap}.goods-page .page-header__actions,.service-addons-page .page-header__actions{align-self:center}.goods-page .goods-form{margin-bottom:.5rem}.goods-page .goods-form-inline{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.65rem;overflow-x:auto;padding-bottom:.15rem}.goods-page .goods-form-inline .goods-form-field{display:flex;flex-direction:column;gap:.3rem;flex:1 1 0;min-width:0;margin:0;font-size:var(--font-body)}.goods-page .goods-form-inline .goods-form-field-name{flex:1.5 1 8rem;min-width:8rem}.goods-page .goods-form-inline .goods-form-field-sku{flex:1 1 5.5rem;min-width:5.5rem}.goods-page .goods-form-inline .goods-form-field-kind{flex:.9 1 6.5rem;min-width:6.5rem}.goods-page .goods-form-inline .goods-form-field-price{flex:.8 1 5.5rem;min-width:5.5rem;max-width:7rem}.goods-page .goods-form-inline .goods-form-field-stock{flex:.7 1 5rem;min-width:5rem;max-width:6rem}.goods-page .goods-form-inline .goods-form-field-track{flex:1 1 8.5rem;min-width:8.5rem;flex-direction:row;align-items:center;align-self:flex-end;height:2.25rem;gap:.5rem;white-space:nowrap}.goods-page .goods-form-inline .goods-form-field-track>span{font-size:.8rem;line-height:1.2}.goods-page .goods-form-inline .goods-form-field input:not([type=checkbox]),.goods-page .goods-form-inline .goods-form-field select{width:100%;min-width:0;height:2.25rem;padding:0 .55rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);font:inherit;color:var(--text);box-sizing:border-box}.goods-page .goods-form-actions{display:flex;align-items:center;gap:.5rem;flex:0 0 auto;align-self:flex-end;margin:0;white-space:nowrap}.logs-settings-page{gap:1rem;max-width:72rem}.logs-settings-card{display:flex;flex-direction:column;gap:.85rem}.logs-settings-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem}.logs-settings-filters .drawer-field{min-width:10rem;margin:0}.logs-settings-booking-filter{min-width:14rem}.logs-settings-empty{margin:0}.logs-settings-page .clients-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.logs-settings-page .data-table th,.logs-settings-page .data-table td{padding:.55rem .75rem;vertical-align:top}.logs-settings-details{max-width:18rem;word-break:break-word}:root{color-scheme:light;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400}html{height:100%;overflow:hidden}*{box-sizing:border-box}body{margin:0;min-height:100vh;height:100%;overflow:hidden}#root{height:100%;overflow:hidden}button,input{font:inherit}.badge.ok{display:inline-block;background:#dcfce7;color:#166534;padding:.125rem .5rem;border-radius:999px;font-size:var(--font-caption);margin-right:.5rem}.pilot-card{margin-bottom:1rem;border-color:#93c5fd;background:#eff6ff}.pilot-card code{font-size:.85em}.page-header.row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.back-link{display:inline-block;margin-bottom:.5rem;color:var(--accent);text-decoration:none;font-size:var(--font-body)}.badge.role{background:#e0e7ff;color:#3730a3;padding:.25rem .625rem;border-radius:999px;font-size:var(--font-caption)}.table-wrap{overflow-x:auto;background:var(--card-bg);border:1px solid var(--border);border-radius:.75rem}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.data-table th{font-size:var(--font-caption);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.link{color:var(--accent);text-decoration:none}.small{font-size:.8125rem}.hint{margin-top:1rem}.inline-form{display:flex;gap:.5rem;margin-top:1rem}.inline-form input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.5rem}.inline-form button{background:var(--accent);color:var(--text-on-accent);border:none;border-radius:.5rem;padding:.5rem 1rem;cursor:pointer}.space-list{list-style:none;margin:0;padding:0}.space-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border)}.schedule-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:1rem;padding:1rem}.schedule-field{display:flex;flex-direction:column;gap:.25rem;min-width:220px}.schedule-field select,.schedule-date-nav input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:.5rem}.schedule-date-nav{display:flex;gap:.5rem;align-items:center}.schedule-date-column{display:flex;flex-direction:column;gap:.75rem}.schedule-mini-calendar{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);width:100%;box-sizing:border-box}.schedule-mini-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.schedule-mini-calendar-title{display:flex;gap:.35rem}.schedule-mini-calendar-title select{border:1px solid var(--border);border-radius:.35rem;padding:.2rem .35rem;font-size:var(--font-body);background:var(--card-bg);color:var(--text)}.schedule-mini-calendar-weekdays,.schedule-mini-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.2rem}.schedule-mini-calendar-weekday{text-align:center;font-size:.7rem;color:var(--muted)}.schedule-mini-calendar-day{border:none;background:transparent;border-radius:999px;width:2rem;height:2rem;margin:0 auto;cursor:pointer;font-size:.85rem;color:var(--text)}.schedule-mini-calendar-day.today{background:var(--accent);color:var(--text-on-accent)}.schedule-mini-calendar-day.selected:not(.today){outline:2px solid var(--accent);outline-offset:1px}.schedule-mini-calendar-day.empty{visibility:hidden;pointer-events:none}.waitlist-panel{padding:0}.schedule-grid-wrap{overflow:auto;padding:0}.schedule-grid{display:grid;min-width:max-content}.schedule-grid-header{display:contents}.schedule-corner{position:sticky;left:0;top:0;z-index:3;background:var(--surface-header);border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.schedule-space-header{position:sticky;top:0;z-index:2;background:var(--surface-header);border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:.5rem;text-align:center}.schedule-space-name{font-weight:600;font-size:var(--font-body)}.schedule-grid-body{display:contents}.schedule-time-col{position:sticky;left:0;z-index:1;background:var(--card-bg);border-right:1px solid var(--border)}.schedule-time-cell{display:flex;align-items:flex-start;justify-content:flex-end;padding:0 .35rem;font-size:var(--font-caption);color:var(--muted);border-bottom:1px solid var(--border)}.schedule-space-col{position:relative;border-right:1px solid var(--border);background:var(--card-bg)}.schedule-slot-cell{border-bottom:1px solid var(--border)}.schedule-slot-cell.interactive{cursor:crosshair}.schedule-slot-cell.interactive:hover{background:#2563eb0f}.schedule-selection{position:absolute;left:2px;right:2px;background:#2563eb2e;border:1px dashed var(--accent);border-radius:.25rem;pointer-events:none;z-index:1}.drawer-actions-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.5rem;padding:.5rem 1rem;border-bottom:1px solid var(--border, #e2e8f0)}.drawer-action-btn{min-height:2.25rem;justify-content:center;text-align:center}.drawer-action-btn--danger{color:var(--danger, #dc2626);border-color:#fecaca}.drawer-action-btn--danger:hover:not(:disabled){background:#fef2f2}.drawer-action-msg{padding:0 1rem .5rem}.schedule-booking.move-selected{outline:2px solid #2563eb;outline-offset:1px}.schedule-filter-summary{margin:.25rem 0 0}.schedule-hint{margin:0 0 .75rem}.schedule-booking{position:absolute;left:2px;right:2px;border-radius:.375rem;padding:.25rem .375rem;font-size:.7rem;overflow:hidden;border-left:3px solid var(--accent);background:#eff6ff;box-shadow:0 1px 2px #0f172a14;border-top:none;border-right:none;border-bottom:none;text-align:left;cursor:pointer;z-index:2;color:var(--text-on-pastel);font:inherit}.schedule-booking.channel-widget{border-left-color:#7c3aed;background:#f5f3ff}.schedule-booking.channel-desk{border-left-color:#2563eb;background:#eff6ff}.schedule-booking.channel-b2b_contract{border-left-color:#0d9488;background:#f0fdfa}.schedule-booking.channel-phone{border-left-color:#ea580c;background:#fff7ed}.schedule-booking-time{font-weight:600;white-space:nowrap}.schedule-booking-meta{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.125rem}.schedule-badge{background:#0f172a0f;border-radius:.25rem;padding:0 .25rem;white-space:nowrap}.schedule-badge.payment{background:#2563eb1f}.schedule-badge.guests{background:#0f172a1a}.schedule-fill-bar{height:4px;background:#0f172a14;border-radius:2px;margin-top:.25rem;overflow:hidden}.schedule-fill-bar>span{display:block;height:100%;border-radius:2px;transition:width .2s ease}.drawer-dl.compact dt{min-width:6.5rem}.financial-state-block{margin-top:.75rem}.fiscal-receipt-list{margin:.5rem 0 0;padding-left:1rem}.fiscal-receipt-list li{margin-bottom:.25rem}.drawer-backdrop{position:fixed;inset:0;background:#0f172a59;z-index:50;display:flex;justify-content:flex-end}.booking-drawer{width:min(630px,100vw);height:100%;background:var(--card-bg);box-shadow:-8px 0 24px #0f172a1f;display:flex;flex-direction:column}.drawer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.drawer-header h2{margin:0;font-size:1.125rem}.btn-icon{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--muted)}.drawer-tabs{display:flex;flex-wrap:nowrap;gap:.125rem;padding:.35rem 1rem 0;border-bottom:1px solid var(--border);overflow-x:auto}.drawer-tab{background:none;border:none;border-bottom:2px solid transparent;padding:.35rem .5rem;cursor:pointer;color:var(--muted);font-size:.8rem;white-space:nowrap;flex-shrink:0}.drawer-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.drawer-body{padding:1rem 1.25rem 1.5rem;overflow:auto;flex:1;scroll-padding-bottom:1rem;scroll-padding-top:.5rem}.drawer-form{display:flex;flex-direction:column;gap:.75rem}.drawer-banner{padding:.5rem .75rem;border-radius:.5rem;font-size:var(--font-body)}.drawer-banner.payment-unpaid{background:var(--bg-subtle);color:var(--muted)}.drawer-banner.technical{background:var(--banner-neutral-bg);color:var(--text)}.drawer-banner.payment-paid{background:var(--banner-paid-bg);color:var(--banner-paid-text)}.checkbox-row{flex-direction:row!important;align-items:center;justify-content:flex-start;gap:.5rem}.payment-block{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--payment-block-bg)}.session-attendance{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.payment-required{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;background:var(--banner-warn-bg);border-radius:.375rem;color:var(--banner-warn-text);font-size:var(--font-body)}.btn-primary.small{padding:.35rem .75rem;font-size:.8rem}.schedule-field.compact{min-width:140px}.schedule-booking.technical{background:repeating-linear-gradient(-45deg,var(--stripe-a),var(--stripe-a) 6px,var(--stripe-b) 6px,var(--stripe-b) 12px)!important;border-left-color:var(--muted)!important;color:var(--text)}.schedule-badge.payment-icon{font-weight:700;min-width:1rem;text-align:center}.schedule-badge.group{background:#0d948826}.coach-intervals-block{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--payment-block-bg)}.coach-intervals-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.coach-intervals-header h3{margin:0;font-size:.9rem}.coach-intervals-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.coach-interval-row{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.coach-interval-row input[type=time],.coach-interval-row select{font-size:.85rem;padding:.25rem .35rem}.clients-toolbar{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.clients-search{flex:1;min-width:200px;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem}.clients-table-wrap{overflow-x:auto;overflow-y:visible;border:1px solid var(--border);border-radius:.5rem}.clients-table{width:100%;border-collapse:collapse;font-size:var(--font-body)}.clients-table th,.clients-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid var(--border)}.clients-table th{background:var(--surface-header);font-weight:600}.client-category-badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:var(--font-caption);font-weight:600}.client-create-modal{width:min(420px,92vw);margin:10vh auto;max-height:85vh;overflow:auto}.client-create-form{display:flex;flex-direction:column;gap:.5rem}.messenger-icons{white-space:nowrap;display:inline-flex;align-items:center;gap:.35rem}.messenger-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.35rem;padding:0 .35rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.02em;line-height:1}.messenger-badge--telegram{color:#fff;background:#229ed9}.messenger-badge--whatsapp{color:#fff;background:#25d366}.messenger-badge--email{color:var(--text);background:color-mix(in srgb,var(--muted) 18%,var(--card-bg));border:1px solid var(--border)}.deposit-topup-form{max-width:24rem}.clients-page .clients-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.clients-header-actions{display:flex;gap:.5rem}.clients-layout{display:flex;flex-direction:column;gap:1rem;align-items:stretch}.clients-sidebar{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.sidebar-title{margin:0 0 .25rem;font-size:.95rem}.filter-chip-group{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.filter-chip{border:1px solid var(--border);background:var(--card-bg);border-radius:999px;padding:.25rem .6rem;font-size:var(--font-label);cursor:pointer}.filter-chip.active{border-color:var(--accent, #2563eb);background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.conflict-alternatives{padding:.75rem;margin-top:.5rem}.conflict-alternatives-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.conflict-alt-btn{width:100%;text-align:left}.planned-blocks-list{margin-bottom:1rem;padding:1rem}.planned-blocks-templates{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.planned-blocks-template-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.client-row-link{display:flex;align-items:center;gap:.65rem;color:inherit;text-decoration:none}.client-row-link:hover .client-name{color:var(--accent, #2563eb)}.client-avatar{width:2rem;height:2rem;border-radius:999px;background:var(--avatar-bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-caption);font-weight:700;overflow:hidden;flex-shrink:0}.client-avatar img{width:100%;height:100%;object-fit:cover}.location-thumb{width:2.75rem;height:2.75rem;border-radius:.5rem;background:var(--avatar-bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;overflow:hidden;flex-shrink:0}.location-thumb img{width:100%;height:100%;object-fit:cover}.locations-table td{vertical-align:middle}.goods-issue-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.stock-delta-input{width:4rem}.membership-badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:var(--font-caption);font-weight:600}.membership-badge.active{background:#dcfce7;color:#166534}.membership-badge.expired{background:var(--bg-subtle)}.empty-card{padding:1.5rem}.client-detail-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.client-detail-tabs .tab{border:1px solid var(--border);background:var(--card-bg);border-radius:.375rem;padding:.4rem .75rem;cursor:pointer}.client-detail-tabs .tab.active{background:#eff6ff;border-color:#93c5fd}.client-detail-grid{display:flex;flex-direction:column;gap:.75rem;max-width:40rem}.client-comment-card textarea{width:100%;margin-bottom:.5rem}.custom-fields-form{display:flex;flex-direction:column;gap:.75rem}.categories-create-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.client-search-results{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:.375rem;max-height:160px;overflow:auto}.client-search-results li button{width:100%;text-align:left;padding:.5rem .75rem;border:none;background:var(--card-bg);cursor:pointer}.client-search-results li button:hover{background:var(--surface-header)}.drawer-summary{margin:0;font-size:.9rem}.drawer-field textarea{padding:.5rem .75rem;border:1px solid var(--border);border-radius:.5rem}.drawer-dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0;font-size:var(--font-body)}.drawer-dl dt{color:var(--muted)}.drawer-dl dd{margin:0}.public-page{max-width:420px;margin:2rem auto;padding:0 1rem}.access-qr-card{text-align:center}.access-qr-code{font-family:ui-monospace,monospace;font-size:1.1rem;word-break:break-all;padding:1rem;background:var(--surface-2, #f4f4f5);border-radius:8px}.grant-payload{max-height:160px;overflow:auto;white-space:pre-wrap}.created-by{margin:0}.btn-danger-text{background:none;border:none;color:var(--danger);cursor:pointer;padding:0;align-self:flex-start}.audit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.audit-action{font-weight:500}.schedule-booking-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-booking-title.muted-title{font-weight:500;color:var(--text-on-pastel-muted);font-size:.65rem}.participants-block h3{margin:.5rem 0 .75rem;font-size:.95rem}.participants-list{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.participant-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .625rem;border:1px solid var(--border);border-radius:.5rem}.participant-actions{display:flex;align-items:center;gap:.35rem}.btn-checkin{background:var(--card-bg);border:1px solid var(--border);border-radius:.375rem;padding:.2rem .5rem;font-size:var(--font-caption);cursor:pointer}.btn-checkin.active{background:#dcfce7;border-color:#86efac;color:#166534}.btn-text-danger{background:none;border:none;color:var(--danger);cursor:pointer;font-size:1.1rem;line-height:1}.kanban-board{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;align-items:stretch;min-height:min(70vh,640px)}.kanban-column{flex:0 0 260px;min-width:260px;max-height:none;display:flex;flex-direction:column;gap:.5rem;overflow:hidden}.kanban-column-title{margin:0;font-size:.9rem;font-weight:600;flex-shrink:0}.kanban-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;flex:1;min-height:0;overflow-y:auto}.kanban-card{display:block;padding:.75rem;border:1px solid var(--border);border-radius:.5rem;text-decoration:none;color:inherit;background:var(--card-bg);transition:border-color .15s}.kanban-card:hover{border-color:var(--accent)}.kanban-card-title{font-weight:600;margin-bottom:.25rem}.kanban-card-stats{display:flex;justify-content:space-between;gap:.5rem;font-size:var(--font-caption);margin-top:.35rem}.debt{color:var(--danger);font-weight:600}.recurring-wizard{display:flex;flex-direction:column;gap:1rem}.recurring-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem 1rem}.time-range-row{display:flex;align-items:center;gap:.35rem}.weekday-picker{display:flex;flex-wrap:wrap;gap:.35rem}.weekday-chip{border:1px solid var(--border);background:var(--card-bg);border-radius:999px;padding:.35rem .75rem;font-size:.85rem;cursor:pointer}.weekday-chip.active{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.wizard-actions{display:flex;flex-wrap:wrap;gap:.5rem}.preview-block{border-top:1px solid var(--border);padding-top:1rem}.preview-list{list-style:none;margin:.5rem 0 0;padding:0;max-height:240px;overflow-y:auto;font-size:.85rem}.preview-list li{padding:.25rem 0}.preview-list li.conflict{color:var(--danger)}.payment-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.reconciliation-alerts ul{margin:.5rem 0 0;padding-left:1.25rem}.reconciliation-summary{display:flex;flex-wrap:wrap;gap:16px 24px;margin-bottom:12px}.reconciliation-table{margin-top:8px}.transactions-filters{margin-bottom:16px}.transactions-filter-row{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}.transactions-filter-row label{display:flex;flex-direction:column;gap:4px}.transactions-filter-row select,.transactions-filter-row input[type=date]{font:inherit;padding:6px 8px;border:1px solid var(--border);border-radius:8px}.act-period-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem}.act-period-row label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.channel-bars{display:flex;flex-direction:column;gap:.75rem}.channel-bar-row{display:grid;grid-template-columns:7rem 1fr 6rem;align-items:center;gap:.75rem}.channel-bar-track{height:.65rem;background:var(--bg-subtle);border-radius:4px;overflow:hidden}.channel-bar-fill{height:100%;border-radius:4px}.channel-amount{text-align:right;font-size:.85rem}.utilization-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-top:.75rem}.utilization-grid h3{font-size:.9rem;margin:0 0 .5rem}.load-chart{display:flex;align-items:flex-end;gap:6px;min-height:140px;height:auto;padding:.5rem 0 .25rem}.load-chart-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:120px}.load-chart-fill{width:100%;max-width:24px;background:#3b82f6;border-radius:3px 3px 0 0;min-height:2px}.load-chart-label{font-size:.65rem;color:var(--muted);margin-top:4px}.cohort-table-wrap{overflow:auto;max-height:none;min-height:12rem}.cohort-table th,.cohort-table td{font-size:var(--font-caption);padding:4px 6px;text-align:center}.cohort-cell{font-weight:600}.cohort-cell[data-level="5"],.cohort-cell[data-level="4"]{background:#bbf7d0;color:#14532d}.cohort-cell[data-level="3"]{background:#fef08a;color:#854d0e}.cohort-cell[data-level="2"],.cohort-cell[data-level="1"]{background:#fed7aa;color:#9a3412}.cohort-cell[data-level="0"]{background:var(--bg-subtle);color:var(--text-muted)}.occupancy-heatmap{display:flex;flex-direction:column;gap:4px;overflow-x:auto;margin-top:.5rem}.heatmap-note{margin:-.25rem 0 0}.heatmap-row{display:grid;grid-template-columns:2.5rem repeat(var(--heatmap-cols, 12),minmax(2.5rem,1fr));gap:4px;align-items:stretch;min-width:min(100%,calc(2.5rem + var(--heatmap-cols, 12) * 2.75rem))}.heatmap-header span{font-size:.65rem;color:var(--muted);text-align:center}.heatmap-hour-label,.heatmap-corner{display:flex;align-items:center;justify-content:center;min-height:1.75rem}.heatmap-day{display:flex;align-items:center;font-size:var(--font-caption);font-weight:600}.heatmap-cell{display:flex;align-items:center;justify-content:center;min-height:2rem;min-width:2.5rem;border-radius:4px;font-size:.68rem;font-weight:600;line-height:1.1;text-align:center;border:1px solid rgba(15,23,42,.06)}.heatmap-cell[data-level="0"]{background:var(--bg-subtle);color:#94a3b8}.heatmap-cell[data-level="1"]{background:#dbeafe;color:#1e3a8a}.heatmap-cell[data-level="2"]{background:#bfdbfe;color:#1e40af}.heatmap-cell[data-level="3"]{background:#93c5fd;color:#1e3a8a}.heatmap-cell[data-level="4"]{background:#3b82f6;color:#fff}.heatmap-cell[data-level="5"]{background:#1d4ed8;color:#fff}.heatmap-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #e2e8f0)}.heatmap-legend-label{font-size:var(--font-caption);color:var(--muted);font-weight:600}.heatmap-legend-item{display:inline-flex;align-items:center;gap:.35rem}.heatmap-legend-swatch{width:1.75rem;min-width:1.75rem;min-height:1.25rem;font-size:.6rem}.heatmap-legend-text{font-size:.7rem;color:var(--muted)}.review-page{max-width:480px;margin:0 auto;padding-top:48px}.review-card form{display:flex;flex-direction:column;gap:12px}.star-picker{display:flex;gap:8px}.star-picker .star{font-size:2rem;background:none;border:none;cursor:pointer;color:#cbd5e1}.star-picker .star.active{color:#f59e0b}.tag-chips{display:flex;flex-wrap:wrap;gap:8px}.tag-chips .chip{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);cursor:pointer;font-size:.85rem}.tag-chips .chip.active{background:var(--sidebar-active-bg);border-color:var(--accent);color:var(--sidebar-active-text)}.tag-list{margin:0 0 12px;padding-left:1.2rem}.churn-risk-banner{margin-bottom:16px;padding:12px 16px;border-radius:8px;border:1px solid transparent}.churn-risk-medium{background:#fffbeb;border-color:#f59e0b;color:#92400e}.churn-risk-high{background:#fef2f2;border-color:#ef4444;color:#991b1b}.churn-risk-reasons{margin:8px 0 0;padding-left:1.2rem;font-size:var(--font-body)}.client-activity-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.client-activity-list li+li{margin-top:12px}
