:root{color-scheme:light dark;--color-background:#fbf9f6;--color-surface:#ffffff;--color-surface-subtle:#f6f1f8;--color-surface-elevated:#ffffff;--color-surface-strong:#241d30;--color-primary:#6b4dcb;--color-primary-hover:#5b3fba;--color-primary-strong:#493198;--color-primary-soft:#eee8ff;--color-primary-softer:#f7f3ff;--color-secondary:#c45a99;--color-accent:#eaa44e;--color-accent-soft:#fff2dd;--color-positive:#248a61;--color-positive-soft:#e9f7f0;--color-warning:#b77916;--color-warning-soft:#fff5de;--color-negative:#c94b5b;--color-negative-soft:#fff0f2;--color-info:#4267c9;--color-info-soft:#edf2ff;--color-text:#1d1b2f;--color-text-secondary:#59576b;--color-text-muted:#858396;--color-text-inverse:#ffffff;--color-border:#e7e4ec;--color-border-soft:#efedf3;--color-border-strong:#d5d1df;--color-overlay:rgb(22 18 43/44%);--color-header-background:rgb(246 245 248/92%);--color-focus:#6b4dcb;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:26px;--radius-pill:999px;--shadow-sm:0 1px 2px rgb(29 27 47/4%);--shadow-md:0 14px 38px rgb(38 31 76/9%);--shadow-lg:0 24px 70px rgb(38 31 76/15%);--shadow-primary-sm:0 8px 20px rgb(109 74 255/19%);--shadow-primary-md:0 9px 24px rgb(109 74 255/23%);--shadow-primary-lg:0 8px 22px rgb(109 74 255/24%);--sidebar-width:258px;--sidebar-collapsed-width:88px;--header-height:92px;--content-max-width:1680px;--transition-fast:160ms ease;font-family:Segoe UI Variable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-background);color:var(--color-text);font-synthesis:none}:root[data-theme=dark]{color-scheme:dark;--color-background:#17131f;--color-surface:#241d30;--color-surface-subtle:#2a2236;--color-surface-elevated:#30263d;--color-surface-strong:#f8f5fa;--color-primary:#8b70e8;--color-primary-hover:#9c84ee;--color-primary-strong:#b3a0f4;--color-primary-soft:#34284c;--color-primary-softer:#2c233b;--color-secondary:#c45a99;--color-accent:#eaa44e;--color-accent-soft:#443321;--color-positive:#60c69a;--color-positive-soft:#1d3b31;--color-warning:#f1bd66;--color-warning-soft:#46351d;--color-negative:#f0808c;--color-negative-soft:#49262d;--color-info:#8fa8f0;--color-info-soft:#263250;--color-text:#f8f5fa;--color-text-secondary:#d6cedd;--color-text-muted:#b9afc3;--color-text-inverse:#17131f;--color-border:#43374f;--color-border-soft:#382e45;--color-border-strong:#5a4b68;--color-overlay:rgb(6 4 10/72%);--color-header-background:rgb(23 19 31/92%);--color-focus:#eaa44e;--shadow-sm:0 1px 2px rgb(0 0 0/20%);--shadow-md:0 14px 38px rgb(0 0 0/24%);--shadow-lg:0 24px 70px rgb(0 0 0/34%)}*{box-sizing:border-box}html{min-width:320px}body,html{background:var(--color-background)}body{min-height:100vh;margin:0;color:var(--color-text);font-size:14px;line-height:1.5;text-rendering:optimizeLegibility}body.has-open-drawer{overflow:hidden}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}ol,ul{padding:0;list-style:none}dd,dl,h1,h2,h3,ol,p,ul{margin:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}button:disabled,input:disabled{cursor:not-allowed;opacity:.48}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh}.app-shell__content{width:calc(100% - var(--sidebar-width));min-height:100vh;margin-left:var(--sidebar-width)}.dashboard-main{width:min(100%,var(--content-max-width));margin:0 auto;padding:var(--space-6) var(--space-7) var(--space-9)}.app-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:flex;width:var(--sidebar-width);flex-direction:column;overflow-y:auto;border-right:1px solid var(--color-border);background:var(--color-surface);padding:var(--space-5) var(--space-4)}.brand-mark{display:flex;min-height:52px;align-items:center;gap:var(--space-3);margin:0 var(--space-2) var(--space-6);border-radius:var(--radius-md)}.brand-mark__symbol{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:13px;background:transparent;color:var(--color-text-inverse);box-shadow:var(--shadow-primary-lg)}.auth-brand img,.brand-mark__symbol img{display:block}.theme-preference__choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.theme-preference__choices [aria-checked=true]{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 2px var(--color-focus)}.whatsapp-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin:var(--space-5) 0}.whatsapp-provider-grid .settings-hub__card{align-items:flex-start}.whatsapp-provider-grid small{color:var(--color-text-muted)}.brand-mark__copy{display:flex;min-width:0;flex-direction:column;line-height:1.1}.brand-mark__copy strong{font-size:17px;letter-spacing:-.02em}.brand-mark__copy small{margin-top:4px;color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.sidebar-navigation{flex:1 1}.sidebar-navigation__group+.sidebar-navigation__group{margin-top:var(--space-6)}.sidebar-navigation__label{margin:0 var(--space-3) var(--space-2);color:var(--color-text-muted);font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.sidebar-link{display:flex;min-height:44px;align-items:center;gap:var(--space-3);margin-bottom:3px;border-radius:var(--radius-pill);color:var(--color-text-secondary);padding:0 var(--space-4);font-size:13px;font-weight:600;transition:color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.sidebar-link svg{flex:0 0 auto}.sidebar-link:hover{background:var(--color-surface-subtle);color:var(--color-primary);transform:translateX(2px)}.sidebar-link--active{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-primary-md)}.sidebar-link--active:hover{background:var(--color-primary-hover);color:var(--color-text-inverse)}.sidebar-footer{margin-top:var(--space-6);border-top:1px solid var(--color-border-soft);padding-top:var(--space-4)}.top-header{position:sticky;z-index:20;top:0;min-height:var(--header-height);justify-content:space-between;gap:var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-header-background);padding:var(--space-4) var(--space-7);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.top-header,.top-header__title{display:flex;align-items:center}.top-header__title{min-width:220px;gap:var(--space-3)}.top-header__title h1{font-size:clamp(19px,2vw,24px);line-height:1.15;letter-spacing:-.03em}.top-header__title p{max-width:440px;margin-top:5px;color:var(--color-text-secondary);font-size:12px}.icon-button.top-header__menu{display:none}.top-header__actions{justify-content:flex-end}.header-search,.table-search,.top-header__actions{display:flex;align-items:center;gap:var(--space-2)}.header-search,.table-search{min-height:42px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);padding:0 var(--space-3);transition:border var(--transition-fast),box-shadow var(--transition-fast)}.header-search{width:clamp(150px,15vw,220px)}.header-search:focus-within,.table-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.header-search input,.table-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--color-text)}.header-search input::placeholder,.table-search input::placeholder{color:var(--color-text-muted)}.icon-button{position:relative;display:inline-grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);cursor:pointer;transition:color var(--transition-fast),border var(--transition-fast),background var(--transition-fast)}.icon-button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-primary-soft);color:var(--color-primary)}.icon-button--small{width:32px;height:32px}.notification-button__dot{position:absolute;top:8px;right:8px;width:7px;height:7px;border:2px solid var(--color-surface);border-radius:50%;background:var(--color-negative)}.period-selector{display:inline-flex;min-height:42px;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);padding:0 var(--space-4);color:var(--color-text-secondary);font-size:12px;font-weight:650;cursor:pointer}.period-selector:hover{border-color:var(--color-primary);color:var(--color-primary)}.period-selector--compact{min-height:36px;background:var(--color-surface-subtle);padding:0 var(--space-3)}.user-menu{display:flex;min-height:46px;min-width:0;align-items:center;gap:10px;border:0;border-radius:var(--radius-pill);background:transparent;padding:4px 8px 4px 4px;cursor:pointer}.user-menu:hover{background:var(--color-surface-subtle)}.user-menu__avatar{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary-strong);font-size:11px;font-weight:800}.user-menu__copy{display:flex;min-width:0;flex-direction:column;text-align:left}.user-menu__copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.user-menu__copy small{font-size:10px}.user-menu__chevron,.user-menu__copy small{color:var(--color-text-muted)}.user-menu--sidebar{width:100%;margin-top:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);padding:8px}.ui-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-pill);padding:0 var(--space-4);font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),border var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button--primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-primary-sm)}.ui-button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.ui-button--secondary{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text-secondary)}.ui-button--secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.ui-button--ghost{background:transparent;color:var(--color-primary)}.ui-button--ghost:hover:not(:disabled){background:var(--color-primary-soft)}.ui-button--full{width:100%}.text-button,.ui-button__icon{display:inline-flex}.text-button{align-items:center;gap:5px;padding:var(--space-2);font-size:11px;font-weight:700}.text-button:hover{color:var(--color-primary-hover)}.dashboard-page{display:grid;gap:var(--space-6)}.dashboard-card,.metric-card{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.dashboard-card{padding:var(--space-5)}.dashboard-card__header{display:flex;min-height:48px;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.dashboard-card__header h2,.whatsapp-card__heading h2{font-size:15px;letter-spacing:-.015em}.dashboard-card__header p,.whatsapp-card__heading p{margin-top:4px;color:var(--color-text-muted);font-size:11px}.dashboard-card__action{flex:0 0 auto}.status-badge{display:inline-flex;min-height:25px;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:3px 9px;font-size:10px;font-weight:750;line-height:1;white-space:nowrap}.status-badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.status-badge--positive{background:var(--color-positive-soft);color:var(--color-positive)}.status-badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.status-badge--negative{background:var(--color-negative-soft);color:var(--color-negative)}.status-badge--neutral{background:var(--color-surface-subtle);color:var(--color-text-secondary)}.status-badge--info{background:var(--color-info-soft);color:var(--color-info)}.trend-indicator{display:inline-flex;align-items:center;margin-top:var(--space-2);font-size:10px;font-weight:650}.trend-indicator--positive{color:var(--color-positive)}.trend-indicator--negative{color:var(--color-negative)}.trend-indicator--neutral{color:var(--color-text-muted)}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.metric-card{position:relative;min-height:170px;overflow:hidden;padding:var(--space-5)}.metric-card__topline{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.metric-card__icon{display:grid;width:40px;height:40px;place-items:center;border-radius:13px;background:var(--color-primary-soft);color:var(--color-primary)}.metric-card__title{margin-top:var(--space-4);color:var(--color-text-secondary);font-size:11px;font-weight:650}.metric-card__value{display:block;margin-top:2px;font-size:clamp(23px,2.4vw,30px);line-height:1.2;letter-spacing:-.04em}.metric-card--contrast{border-color:var(--color-surface-strong);background:var(--color-surface-strong);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.metric-card--contrast .metric-card__icon{background:var(--color-primary);color:var(--color-text-inverse)}.metric-card--contrast .metric-card__title{color:var(--color-border-strong)}.metric-card--contrast .trend-indicator--positive{color:var(--color-positive-soft)}.metric-sparkline{width:76px;height:32px;color:var(--color-primary)}.metric-sparkline polyline{stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}.metric-card--contrast .metric-sparkline{color:var(--color-accent)}.dashboard-grid{display:grid;gap:var(--space-4)}.dashboard-grid--primary{grid-template-columns:minmax(0,1.5fr) minmax(320px,.85fr);grid-template-rows:auto auto}.revenue-card{grid-row:1/span 2}.dashboard-grid--secondary{grid-template-columns:repeat(4,minmax(0,1fr))}.chart-container{width:100%;min-width:0}.chart-container--revenue{height:290px}.chart-container--services{height:210px}.revenue-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);margin-bottom:var(--space-3);border-bottom:1px solid var(--color-border-soft);padding-bottom:var(--space-4)}.revenue-summary>div{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:7px}.revenue-summary small{color:var(--color-text-muted);font-size:10px}.revenue-summary strong{grid-column:2;margin-top:2px;font-size:13px}.revenue-summary__total{margin-left:auto;text-align:right}.revenue-summary__total small,.revenue-summary__total strong{grid-column:1}.revenue-summary__total strong{font-size:18px;letter-spacing:-.02em}.legend-dot{grid-row:1/span 2;width:8px;height:8px;border-radius:50%}.legend-dot--primary{background:var(--color-primary)}.legend-dot--accent{background:var(--color-accent)}.schedule-timeline li{display:grid;grid-template-columns:42px 14px 1fr;gap:var(--space-2);min-height:76px}.schedule-timeline time{color:var(--color-text-secondary);font-size:11px;font-weight:750}.schedule-timeline__marker{position:relative;width:9px;height:9px;margin-top:4px;border:2px solid var(--color-surface);border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-soft)}.schedule-timeline__marker:after{position:absolute;top:12px;left:2px;width:1px;height:55px;background:var(--color-border);content:""}.schedule-timeline li:last-child .schedule-timeline__marker:after{display:none}.schedule-timeline__content{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-3)}.schedule-timeline__content strong{display:block;font-size:12px}.schedule-timeline__content p{margin-top:3px;color:var(--color-text-muted);font-size:10px}.schedule-timeline__meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.schedule-timeline__meta>span:not(.status-badge){display:inline-flex;align-items:center;gap:4px;color:var(--color-text-muted);font-size:9px}.whatsapp-card__heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3)}.whatsapp-card__icon{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:var(--color-positive-soft);color:var(--color-positive)}.whatsapp-card__stats{display:grid;gap:var(--space-2);margin:var(--space-5) 0}.whatsapp-card__stats>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-bottom:1px solid var(--color-border-soft);padding-bottom:var(--space-2)}.whatsapp-card__stats dt{color:var(--color-text-muted);font-size:10px}.whatsapp-card__stats dd{font-size:12px;font-weight:750}.whatsapp-card__note{margin-bottom:var(--space-4);color:var(--color-text-muted);font-size:10px}.card-count-badge{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--color-negative-soft);color:var(--color-negative);font-size:11px;font-weight:800}.activity-list,.compact-list,.reminders-list{display:grid;gap:var(--space-3)}.activity-list li,.compact-list li,.reminders-list li{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3)}.activity-list li>div,.compact-list li>div,.reminders-list li>div{display:flex;min-width:0;flex:1 1;flex-direction:column}.activity-list strong,.compact-list strong,.reminders-list strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.activity-list small,.compact-list small,.reminders-list small{margin-top:2px;color:var(--color-text-muted);font-size:9px}.activity-list li>span,.compact-list__icon,.reminders-list li>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:11px;background:var(--color-primary-soft);color:var(--color-primary)}.compact-list__icon{background:var(--color-warning-soft);color:var(--color-warning)}.reminders-list li>span{background:var(--color-accent-soft);color:var(--color-warning)}.dashboard-card__empty{color:var(--color-text-muted);font-size:13px}.inline-icon-label{display:inline-flex;align-items:center;gap:var(--space-2)}.module-action-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.table-search{width:min(100%,320px);min-height:40px}.table-toolbar>div{display:flex;gap:var(--space-2)}.table-scroll{width:100%;overflow-x:auto;border:1px solid var(--color-border-soft);border-radius:var(--radius-md)}table{width:100%;min-width:840px;border-collapse:collapse;text-align:left}td,th{border-bottom:1px solid var(--color-border-soft);padding:13px 14px;white-space:nowrap}th{background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}td{color:var(--color-text-secondary);font-size:11px}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:var(--color-primary-softer)}tbody tr:last-child td{border-bottom:0}.client-cell{display:flex;align-items:center;gap:var(--space-2)}.client-cell>span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary);font-size:9px;font-weight:800}.client-cell strong{color:var(--color-text);font-size:11px}.financial-value{color:var(--color-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:750}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-4);color:var(--color-text-muted);font-size:10px}.table-pagination>div{display:flex;align-items:center;gap:5px}.pagination-page{display:grid;width:31px;height:31px;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--color-text-secondary);font-size:10px;cursor:pointer}.pagination-page:hover{background:var(--color-primary-soft);color:var(--color-primary)}.pagination-page--active{background:var(--color-primary);color:var(--color-text-inverse)}.module-page{display:grid;gap:var(--space-5)}.module-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-5);border-radius:var(--radius-xl);background:var(--color-primary-softer);padding:clamp(24px,4vw,42px)}.module-hero h2{margin-top:var(--space-4);font-size:clamp(25px,4vw,38px);letter-spacing:-.04em}.module-hero p{max-width:620px;margin-top:var(--space-2);color:var(--color-text-secondary)}.module-placeholder-card{display:grid;min-height:420px;place-items:center}.empty-state{display:grid;max-width:480px;justify-items:center;gap:var(--space-4);text-align:center}.empty-state__icon{display:grid;width:64px;height:64px;place-items:center;border-radius:22px;background:var(--color-primary-soft);color:var(--color-primary)}.empty-state h2{font-size:20px;letter-spacing:-.02em}.empty-state p{margin-top:var(--space-2);color:var(--color-text-secondary)}.module-placeholder-card__note{display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface-subtle);color:var(--color-text-muted);padding:8px 12px;font-size:10px;font-weight:650}.mobile-drawer{position:fixed;z-index:100;inset:0}.mobile-drawer__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:var(--color-overlay)}.mobile-drawer__panel{position:relative;width:min(88vw,310px);height:100%;box-shadow:var(--shadow-lg);animation:drawer-in .18s ease-out}.mobile-drawer__close{position:absolute;z-index:2;top:18px;right:14px}.app-sidebar--mobile{position:static;width:100%;height:100%;padding-right:var(--space-5)}@keyframes drawer-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@media (max-width:1380px){.dashboard-grid--secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.top-header__actions>.user-menu,.top-header__actions>.user-menu-wrapper{display:none}}@media (max-width:1180px){.app-shell__content{width:calc(100% - var(--sidebar-collapsed-width));margin-left:var(--sidebar-collapsed-width)}.app-sidebar:not(.app-sidebar--mobile){width:var(--sidebar-collapsed-width);align-items:center;padding-inline:var(--space-3);overflow-x:hidden}.app-sidebar:not(.app-sidebar--mobile) .brand-mark{margin-inline:0}.app-sidebar:not(.app-sidebar--mobile) .brand-mark__copy,.app-sidebar:not(.app-sidebar--mobile) .sidebar-link span,.app-sidebar:not(.app-sidebar--mobile) .sidebar-navigation__label,.app-sidebar:not(.app-sidebar--mobile) .user-menu__chevron,.app-sidebar:not(.app-sidebar--mobile) .user-menu__copy{display:none}.app-sidebar:not(.app-sidebar--mobile) .sidebar-footer,.app-sidebar:not(.app-sidebar--mobile) .sidebar-navigation{width:100%}.app-sidebar:not(.app-sidebar--mobile) .sidebar-link{justify-content:center;padding:0}.app-sidebar:not(.app-sidebar--mobile) .user-menu--sidebar{justify-content:center;border:0;padding:4px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-search{display:none}}@media (max-width:980px){.dashboard-main{padding:var(--space-5)}.top-header{padding-inline:var(--space-5)}.top-header__title p{max-width:300px}.dashboard-grid--primary{grid-template-columns:1fr;grid-template-rows:auto}.revenue-card{grid-row:auto}.schedule-card,.services-chart-card{min-height:auto}}@media (max-width:760px){:root{--header-height:76px}.app-shell__content{width:100%;margin-left:0}.app-sidebar:not(.app-sidebar--mobile){display:none}.top-header{min-height:var(--header-height);align-items:center;padding:var(--space-3) var(--space-4)}.icon-button.top-header__menu{display:inline-grid}.top-header__title{min-width:0}.header-primary-action span:not(.ui-button__icon),.top-header__actions .notification-button,.top-header__actions .period-selector,.top-header__title p{display:none}.header-primary-action{width:42px;padding:0}.dashboard-main{padding:var(--space-4)}.dashboard-page{gap:var(--space-4)}.dashboard-grid--secondary,.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:154px}.dashboard-card{padding:var(--space-4)}.chart-container--revenue{height:250px}.schedule-timeline__content{display:block}.schedule-timeline__meta{justify-content:flex-start;margin-top:var(--space-2)}.table-toolbar{align-items:stretch;flex-direction:column}.table-search{width:100%}.table-toolbar>div{justify-content:flex-end}.module-hero,.table-pagination{align-items:flex-start;flex-direction:column}.module-placeholder-card{min-height:340px}}@media (max-width:480px){.top-header__actions{gap:5px}.top-header__title h1{max-width:118px;overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.metrics-grid{gap:var(--space-3)}.metric-card{min-height:148px;padding:var(--space-4)}.dashboard-card__header{align-items:flex-start}.revenue-summary{gap:var(--space-3)}.revenue-summary__total{width:100%;margin-left:0;text-align:left}.revenue-summary__total small,.revenue-summary__total strong{text-align:left}.whatsapp-card__heading{grid-template-columns:auto 1fr}.whatsapp-card__heading .status-badge{grid-column:1/-1;justify-self:start}.table-toolbar .ui-button span:not(.ui-button__icon){display:none}.table-toolbar .ui-button{width:42px;padding:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.auth-page{display:grid;min-height:100vh;grid-template-columns:minmax(420px,.92fr) minmax(460px,1.08fr);background:var(--color-surface)}.auth-panel{display:flex;width:min(100%,620px);flex-direction:column;justify-content:center;justify-self:end;padding:var(--space-8) clamp(32px,6vw,88px)}.auth-brand{display:inline-flex;width:fit-content;align-items:center;gap:var(--space-3);margin-bottom:var(--space-8);font-size:15px}.auth-brand span{display:grid;width:42px;height:42px;place-items:center;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-inverse)}.auth-panel__intro{margin-bottom:var(--space-6)}.auth-eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.account-access-card h1,.auth-panel__intro h1,.legal-page h1,.onboarding-card h1,.session-recovery h1{margin:0;font-size:clamp(28px,3vw,40px);letter-spacing:-.045em;line-height:1.08}.account-access-card>p,.auth-panel__intro>p:last-child,.legal-page>p,.onboarding-card>p,.session-recovery>p{margin:var(--space-3) 0 0;color:var(--color-text-secondary)}.auth-aside{display:flex;min-height:calc(100vh - 32px);flex-direction:column;justify-content:space-between;margin:var(--space-4);border-radius:var(--radius-xl);background:var(--color-surface-strong);color:var(--color-text-inverse);padding:clamp(40px,8vw,112px);overflow:hidden}.auth-aside>div{max-width:520px;margin:auto 0}.auth-aside__badge{display:inline-flex;border:1px solid var(--color-primary);border-radius:var(--radius-pill);padding:7px var(--space-3);color:var(--color-primary-soft);font-size:11px;font-weight:700}.auth-aside h2{max-width:500px;margin:var(--space-6) 0 var(--space-4);font-size:clamp(34px,4vw,62px);letter-spacing:-.055em;line-height:1.02}.auth-aside p{max-width:470px;color:var(--color-border-strong);font-size:15px}.auth-aside small{color:var(--color-text-muted)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.form-field{display:flex;min-width:0;flex-direction:column;gap:7px;color:var(--color-text);font-size:12px;font-weight:700}.form-field input,.tenant-selector select{width:100%;min-height:46px;border:1px solid var(--color-border);border-radius:var(--radius-md);outline:0;background:var(--color-surface);padding:0 var(--space-4);color:var(--color-text);font-size:13px;font-weight:500;transition:border var(--transition-fast),box-shadow var(--transition-fast)}.form-field input:focus,.tenant-selector select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.form-field input[aria-invalid=true]{border-color:var(--color-negative)}.form-field input:read-only{background:var(--color-surface-subtle);color:var(--color-text-secondary)}.form-field__error,.form-field__hint{font-size:10px;font-weight:550}.form-field__hint{color:var(--color-text-muted)}.checkbox-field small,.form-field__error{color:var(--color-negative)}.checkbox-field{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--color-text-secondary);font-size:11px}.checkbox-field input{width:17px;height:17px;margin:1px 0 0;accent-color:var(--color-primary)}.checkbox-field span{display:block}.checkbox-field small{display:block;margin-top:2px}.account-banner a,.auth-form__support a,.auth-switch a,.checkbox-field a,.form-feedback a,.legal-page a{color:var(--color-primary);font-weight:700}.auth-secondary,.auth-submit{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border-radius:var(--radius-pill);padding:0 var(--space-5);font-size:12px;font-weight:800;cursor:pointer}.auth-submit{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-primary-sm)}.auth-submit:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.auth-secondary{border:1px solid var(--color-border);background:var(--color-surface)}.auth-secondary:disabled,.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-submit--link{width:100%}.auth-form__split-actions,.auth-form__support{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.auth-form__split-actions .auth-submit{flex:1 1}.auth-form__support{font-size:11px}.auth-switch{margin:var(--space-5) 0 0;color:var(--color-text-secondary);font-size:12px;text-align:center}.auth-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2);margin-bottom:var(--space-5)}.auth-steps li{border-bottom:3px solid var(--color-border);padding-bottom:var(--space-2);color:var(--color-text-muted);font-size:10px;font-weight:750}.auth-steps li.auth-steps__active{border-color:var(--color-primary);color:var(--color-primary)}.form-feedback{margin:0;border-radius:var(--radius-md);padding:var(--space-3);font-size:11px}.form-feedback--error{background:var(--color-negative-soft);color:var(--color-negative)}.form-feedback--success{background:var(--color-positive-soft);color:var(--color-positive)}.account-access-page,.onboarding-page,.session-recovery{display:grid;min-height:100vh;place-items:center;padding:var(--space-5)}.account-access-card,.onboarding-card{width:min(100%,560px);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-md);padding:clamp(28px,5vw,52px)}.onboarding-card{display:flex;flex-direction:column;gap:var(--space-4)}.account-access-card{text-align:center}.account-access-card__icon{display:grid;width:56px;height:56px;place-items:center;margin:0 auto var(--space-4);border-radius:var(--radius-lg);background:var(--color-primary-soft);color:var(--color-primary)}.account-access-card .tenant-selector{width:min(100%,340px);margin:var(--space-6) auto 0}.session-recovery{align-content:center;text-align:center}.session-recovery h1{font-size:28px}.session-recovery__spinner{width:40px;height:40px;margin-bottom:var(--space-4);border:4px solid var(--color-primary-soft);border-top-color:var(--color-primary);border-radius:50%;animation:session-spin .8s linear infinite}@keyframes session-spin{to{transform:rotate(1turn)}}.legal-page{width:min(calc(100% - 32px),760px);margin:10vh auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);padding:clamp(28px,6vw,64px)}.legal-page a{display:inline-flex;margin-top:var(--space-6)}.business-module{display:flex;flex-direction:column;gap:var(--space-5)}.module-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.module-panel,.module-summary__card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.module-summary__card{display:flex;min-height:132px;flex-direction:column;border-radius:var(--radius-lg);padding:var(--space-5)}.module-summary__card small,.module-summary__card span{color:var(--color-text-muted);font-size:11px;font-weight:650}.module-summary__card strong{margin:var(--space-2) 0 2px;font-size:30px;line-height:1;letter-spacing:-.04em}.module-panel{overflow:hidden;border-radius:var(--radius-lg)}.module-toolbar{display:flex;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-border-soft);padding:var(--space-4)}.module-toolbar select{width:auto;min-width:158px}.module-search{display:flex;min-width:240px;flex:1 1;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-subtle);padding:0 var(--space-3);color:var(--color-text-muted)}.module-search input{min-height:42px;flex:1 1;border:0;outline:0;background:transparent}.module-panel>.form-feedback{margin:var(--space-4)}.module-empty,.module-loading{padding:var(--space-8);color:var(--color-text-muted);text-align:center}.module-empty{display:flex;min-height:220px;align-items:center;flex-direction:column;justify-content:center}.module-empty strong{color:var(--color-text);font-size:16px}.module-empty p{max-width:420px;margin-top:var(--space-2);font-size:12px}.module-table-wrap{width:100%;min-width:0;max-width:100%;contain:inline-size paint;overflow-x:auto}.module-table{width:100%;min-width:840px;border-collapse:collapse}.module-table td,.module-table th{border-bottom:1px solid var(--color-border-soft);padding:var(--space-3) var(--space-4);text-align:left;vertical-align:middle}.module-table th{background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:10px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.module-table td{color:var(--color-text-secondary);font-size:12px}.module-table tbody tr:hover{background:var(--color-primary-softer)}.module-record-link{display:flex;min-width:220px;align-items:center;gap:var(--space-3);border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.module-contact,.module-record-link>span:last-child{display:flex;min-width:0;flex-direction:column}.module-contact,.module-record-link small,.module-record-link strong{overflow:hidden;max-width:280px;text-overflow:ellipsis;white-space:nowrap}.module-record-link strong{color:var(--color-text)}.module-record-link small,.module-table td>small{color:var(--color-text-muted);font-size:10px}.module-record-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary)}.tag-list{display:flex;flex-wrap:wrap;gap:5px}.modality-pill,.status-pill,.tag-pill{display:inline-flex;width:fit-content;min-height:24px;align-items:center;border-radius:var(--radius-pill);padding:2px var(--space-2);font-size:10px;font-weight:750;white-space:nowrap}.tag-pill{gap:5px;border:1px solid var(--color-border);background:var(--color-surface)}.tag-pill i,.tag-selector i{width:8px;height:8px;border-radius:50%}.modality-pill{background:var(--color-info-soft);color:var(--color-info)}.status-pill--active{background:var(--color-positive-soft);color:var(--color-positive)}.status-pill--inactive{background:var(--color-warning-soft);color:var(--color-warning)}.status-pill--archived{background:var(--color-border-soft);color:var(--color-text-muted)}.module-pagination{display:flex;min-height:64px;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);color:var(--color-text-muted);font-size:11px}.module-pagination>div{display:flex;align-items:center;gap:var(--space-2)}.module-dialog-backdrop{position:fixed;z-index:80;inset:0;display:grid;overflow-y:auto;place-items:center;background:var(--color-overlay);padding:var(--space-5)}.module-dialog{width:min(100%,560px);max-height:calc(100vh - 40px);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg)}.module-dialog--wide{width:min(100%,760px)}.module-dialog__header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--color-border-soft);background:var(--color-surface);padding:var(--space-5)}.module-dialog__header h2{font-size:20px;letter-spacing:-.02em}.module-dialog__header p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:11px}.module-dialog__content{padding:var(--space-5)}.module-detail,.module-form,.tag-manager{display:flex;flex-direction:column;gap:var(--space-5)}.module-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.module-form label,.tag-manager__form label{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--color-text-secondary);font-size:11px;font-weight:700}.module-form__wide{grid-column:1/-1}.module-form textarea{resize:vertical}.module-form label small{color:var(--color-text-muted);font-weight:500}.module-checkbox{align-items:center;align-self:end;flex-direction:row!important;min-height:42px}.module-checkbox input,.tag-selector input{width:16px;min-height:16px}.module-form__actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.module-form__actions--wrap,.tag-selector{flex-wrap:wrap}.tag-selector{display:flex;gap:var(--space-2);margin:0;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.tag-selector legend{padding:0 var(--space-1);color:var(--color-text-secondary);font-size:11px;font-weight:700}.tag-selector label{align-items:center;flex-direction:row;border:1px solid var(--color-border-soft);border-radius:var(--radius-pill);padding:5px var(--space-2)}.module-detail__status{display:flex;gap:var(--space-2)}.module-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.module-detail dl div{border-radius:var(--radius-md);background:var(--color-surface-subtle);padding:var(--space-3)}.module-detail dt,.module-detail h3{color:var(--color-text-muted);font-size:10px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.module-detail dd{margin-top:var(--space-1);color:var(--color-text);font-size:12px;font-weight:650}.module-detail__notes{margin-top:var(--space-2);border-left:3px solid var(--color-primary-soft);padding-left:var(--space-3);color:var(--color-text-secondary);font-size:12px;white-space:pre-wrap}.duplicate-warning{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid color-mix(in srgb,var(--color-warning) 30%,transparent);border-radius:var(--radius-md);background:var(--color-warning-soft);padding:var(--space-4);color:var(--color-text-secondary);font-size:11px}.duplicate-warning>strong{color:var(--color-warning);font-size:13px}.duplicate-warning ul{display:flex;flex-direction:column;gap:var(--space-2)}.duplicate-warning li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-top:1px solid color-mix(in srgb,var(--color-warning) 18%,transparent);padding-top:var(--space-2)}.duplicate-warning li>span{display:flex;flex-direction:column}.duplicate-warning li>span:last-child{color:var(--color-warning);font-size:10px;font-weight:750;text-align:right}.tag-manager__form{display:grid;grid-template-columns:minmax(0,1fr) 80px auto auto;align-items:end;gap:var(--space-2)}.tag-manager__form input[type=color]{padding:5px}.tag-manager__list{display:flex;flex-direction:column;gap:var(--space-2)}.tag-manager__list li{display:grid;grid-template-columns:minmax(100px,1fr) auto auto auto;align-items:center;gap:var(--space-2);border-top:1px solid var(--color-border-soft);padding-top:var(--space-2)}.tag-manager__list small{color:var(--color-text-muted)}.text-button{border:0;background:transparent;color:var(--color-primary);font-size:10px;font-weight:750;cursor:pointer}.text-button--danger{color:var(--color-negative)}.tenant-selector{display:block;width:180px}.tenant-selector select{min-height:42px;border-radius:var(--radius-pill);padding-right:var(--space-7);font-size:11px;font-weight:700}.account-banners{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.account-banner{display:flex;min-height:38px;align-items:center;gap:var(--space-2);margin:0;border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:11px;font-weight:650}.account-banner--trial{background:var(--color-primary-soft);color:var(--color-primary-strong)}.account-banner--verification{background:var(--color-warning-soft);color:var(--color-warning)}.user-menu-wrapper{position:relative}.user-menu-wrapper--sidebar{width:100%}.user-menu-popover{position:absolute;z-index:60;top:calc(100% + 8px);right:0;display:flex;width:240px;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);padding:var(--space-3)}.user-menu-wrapper--sidebar .user-menu-popover{right:auto;bottom:calc(100% + 8px);left:0;top:auto}.user-menu-popover small{overflow:hidden;margin:3px 0 var(--space-3);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap}.user-menu-popover button{display:flex;min-height:38px;align-items:center;gap:var(--space-2);border:0;border-radius:var(--radius-sm);background:var(--color-negative-soft);padding:0 var(--space-3);color:var(--color-negative);font-size:11px;font-weight:700;cursor:pointer}@media (max-width:1080px){.module-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.module-toolbar{align-items:stretch;flex-wrap:wrap}.module-search{flex-basis:100%}.auth-page{grid-template-columns:minmax(390px,1fr) minmax(360px,.8fr)}.auth-aside{padding:var(--space-7)}.auth-aside h2{font-size:40px}}@media (max-width:820px){.auth-page{display:block;background:var(--color-background);padding:var(--space-4)}.auth-panel{width:min(100%,620px);min-height:calc(100vh - 32px);margin:0 auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);padding:clamp(24px,7vw,54px)}.auth-aside{display:none}}@media (max-width:760px){.module-table-wrap{overflow:visible;padding:var(--space-3)}.module-table,.module-table tbody{display:block;min-width:0}.module-table thead{display:none}.module-table tbody{display:grid;gap:var(--space-3)}.module-table tbody tr{display:block;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}.module-table td{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-border-soft);padding:var(--space-3)}.module-table td:before{content:attr(data-label);color:var(--color-text-muted);font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.module-table td:last-child{border-bottom:0}.module-record-link{min-width:0}.module-contact,.module-record-link small,.module-record-link strong{max-width:100%}.duplicate-warning li{align-items:flex-start;flex-direction:column}.duplicate-warning li>span:last-child{text-align:left}.top-header__actions .tenant-selector,.top-header__actions>.user-menu-wrapper{display:none}.account-banner{align-items:flex-start;flex-wrap:wrap}}@media (max-width:520px){.module-summary{grid-template-columns:1fr}.module-summary__card{min-height:108px}.module-toolbar>.ui-button,.module-toolbar>select{width:100%}.module-pagination,.module-pagination>div{align-items:stretch;flex-direction:column}.module-dialog-backdrop{padding:0}.module-dialog{min-height:100vh;max-height:none;border:0;border-radius:0}.module-detail dl,.module-form__grid,.tag-manager__form,.tag-manager__list li{grid-template-columns:1fr}.module-form__actions .ui-button{flex:1 1}.public-booking-review,.public-booking-steps{grid-template-columns:1fr}.public-booking-link-card{align-items:flex-start;flex-direction:column}.public-booking-card,.public-booking-hero{padding:var(--space-5)}.auth-page{padding:0}.auth-panel{min-height:100vh;border:0;border-radius:0;padding:var(--space-6) var(--space-4)}.auth-brand{margin-bottom:var(--space-7)}.form-grid{grid-template-columns:1fr}.auth-form__split-actions{align-items:stretch;flex-direction:column-reverse}}.availability-page,.schedule-form-page,.schedule-page{display:flex;min-width:0;flex-direction:column;gap:var(--space-4)}.appointment-detail-card,.availability-section,.schedule-filters,.schedule-toolbar{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.schedule-toolbar{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4)}.appointment-actions,.appointment-resource-links,.schedule-date-navigation,.schedule-filters,.schedule-toolbar__primary,.schedule-view-switch{display:flex;align-items:center;gap:var(--space-2)}.appointment-resource-links a,.schedule-back-link,.schedule-settings-link{display:inline-flex;min-height:40px;align-items:center;gap:var(--space-2);color:var(--color-primary);font-size:11px;font-weight:750}.schedule-date-navigation strong{min-width:180px;color:var(--color-text);font-size:12px;text-align:center}.schedule-view-switch{border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:3px}.schedule-view-switch button{min-height:34px;border:0;border-radius:var(--radius-pill);background:transparent;padding:0 var(--space-3);color:var(--color-text-secondary);font-size:10px;font-weight:750;cursor:pointer}.schedule-view-switch button.is-active{background:var(--color-primary);color:var(--color-text-inverse)}.schedule-filters{flex-wrap:wrap;padding:var(--space-3) var(--space-4)}.schedule-filters select{width:auto;min-width:180px}.schedule-timezone{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--color-text-muted);font-size:10px;font-weight:650}.calendar-grid{display:grid;min-width:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-border-soft);gap:1px;box-shadow:var(--shadow-sm)}.calendar-grid--week{grid-template-columns:repeat(7,minmax(120px,1fr))}.calendar-grid--month{grid-template-columns:repeat(7,minmax(110px,1fr))}.calendar-grid--day{grid-template-columns:minmax(0,1fr)}.calendar-day{min-width:0;min-height:190px;background:var(--color-surface);padding:var(--space-3)}.calendar-grid--month .calendar-day{min-height:138px}.calendar-day>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:9px;text-transform:uppercase}.calendar-day>header strong{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:var(--color-text);font-size:11px}.appointment-list,.calendar-day__events{display:flex;min-width:0;flex-direction:column;gap:6px}.appointment-list{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4)}.appointment-card{display:grid;min-width:0;border:1px solid var(--color-border-soft);border-left:3px solid var(--color-info);border-radius:var(--radius-sm);background:var(--color-info-soft);padding:7px 8px;color:var(--color-text-secondary);font-size:9px}.appointment-card span,.appointment-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-card strong{color:var(--color-text);font-size:10px}.appointment-card time{color:var(--color-primary-strong);font-weight:800}.appointment-card small{margin-top:3px;color:var(--color-text-muted)}.appointment-card--confirmed{border-left-color:var(--color-positive);background:var(--color-positive-soft)}.appointment-card--canceled,.appointment-card--no_show{border-left-color:var(--color-negative);background:var(--color-negative-soft)}.appointment-card--completed{border-left-color:var(--color-text-muted);background:var(--color-surface-subtle)}.schedule-form-page{width:min(100%,920px);margin:0 auto}.schedule-form-card{padding:var(--space-5)}.schedule-form-card>header{margin-bottom:var(--space-5)}.availability-section>header p,.schedule-form-card>header p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:11px}.slot-selector{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.slot-selector legend{padding:0 var(--space-1);color:var(--color-text-secondary);font-size:11px;font-weight:700}.slot-selector label{display:inline-flex;min-height:36px;align-items:center;flex-direction:row;gap:6px;border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:0 var(--space-3);cursor:pointer}.slot-selector label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-strong)}.privacy-note{border-radius:var(--radius-sm);background:var(--color-warning-soft);padding:var(--space-2);color:var(--color-warning)!important;line-height:1.5}.appointment-summary-box{display:flex;flex-direction:column;gap:3px;border:1px solid var(--color-primary-soft);border-radius:var(--radius-md);background:var(--color-primary-softer);padding:var(--space-4);color:var(--color-text-secondary);font-size:11px}.appointment-summary-box strong{color:var(--color-primary-strong);font-size:13px}.appointment-detail-card{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5)}.appointment-detail-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);padding-bottom:var(--space-4)}.appointment-detail-card>header time{color:var(--color-text-secondary);font-size:12px;font-weight:700}.appointment-detail-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.appointment-detail-card dl div{border-radius:var(--radius-md);background:var(--color-surface-subtle);padding:var(--space-3)}.appointment-detail-card dt{color:var(--color-text-muted);font-size:9px;font-weight:750;text-transform:uppercase}.appointment-detail-card dd{margin-top:3px;color:var(--color-text);font-size:11px;font-weight:650}.appointment-status,.exception-type{display:inline-flex;width:fit-content;border-radius:var(--radius-pill);padding:4px var(--space-2);background:var(--color-info-soft);color:var(--color-info);font-size:9px;font-weight:800;text-transform:uppercase}.appointment-status--confirmed,.exception-type--available{background:var(--color-positive-soft);color:var(--color-positive)}.appointment-status--canceled,.appointment-status--no_show,.exception-type--blocked{background:var(--color-negative-soft);color:var(--color-negative)}.appointment-status--completed{background:var(--color-border-soft);color:var(--color-text-muted)}.appointment-notes{display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text-secondary);font-size:11px;font-weight:700}.appointment-resource-editor{padding-top:var(--space-2)}.appointment-resource-editor label{display:flex;flex-direction:column;gap:5px;color:var(--color-text-secondary);font-size:10px;font-weight:700}.appointment-actions{flex-wrap:wrap;justify-content:flex-end}.reschedule-panel{display:flex;flex-direction:column;gap:var(--space-3);border:1px solid var(--color-primary-soft);border-radius:var(--radius-md);background:var(--color-primary-softer);padding:var(--space-4)}.cancellation-reason{border-left:3px solid var(--color-negative);padding-left:var(--space-3);color:var(--color-text-secondary);font-size:11px}.availability-section{overflow:hidden}.availability-section>header{border-bottom:1px solid var(--color-border-soft);padding:var(--space-5)}.weekly-availability{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-availability>article{min-width:0;border-right:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);padding:var(--space-4)}.weekly-availability h3{margin-bottom:var(--space-3);font-size:12px}.availability-rules{display:flex;flex-direction:column;gap:var(--space-2)}.availability-rule-form{display:grid;grid-template-columns:minmax(90px,1fr) minmax(90px,1fr) auto auto;gap:var(--space-2)}.availability-add-button{display:inline-flex;width:fit-content;min-height:34px;align-items:center;gap:var(--space-1);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:transparent;padding:0 var(--space-3);color:var(--color-primary);font-size:10px;font-weight:750;cursor:pointer}.exception-form,.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:var(--space-3);padding:var(--space-5)}.exception-form label,.settings-grid label{display:flex;flex-direction:column;gap:5px;color:var(--color-text-secondary);font-size:10px;font-weight:700}.exception-form{grid-template-columns:repeat(5,minmax(110px,1fr)) auto;border-bottom:1px solid var(--color-border-soft)}.exception-list{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4)}.exception-item{display:grid;grid-template-columns:auto minmax(140px,1fr) auto auto auto auto;align-items:center;gap:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);padding:var(--space-2);color:var(--color-text-secondary);font-size:10px}.dashboard-empty-schedule{display:flex;min-height:210px;align-items:center;flex-direction:column;justify-content:center;gap:var(--space-2);color:var(--color-text-muted);font-size:11px}@media (max-width:1280px){.schedule-toolbar{align-items:stretch;flex-wrap:wrap}.calendar-grid--month,.calendar-grid--week{grid-template-columns:repeat(4,minmax(120px,1fr))}.exception-form{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media (max-width:768px){.schedule-date-navigation,.schedule-filters,.schedule-toolbar{align-items:stretch;flex-direction:column}.schedule-toolbar__primary,.schedule-view-switch{justify-content:center}.schedule-date-navigation{display:grid;grid-template-columns:auto 1fr auto}.schedule-date-navigation strong{grid-column:1/-1}.schedule-filters select{width:100%}.schedule-timezone{margin-left:0}.calendar-grid--month,.calendar-grid--week{grid-template-columns:1fr}.calendar-grid--week .calendar-day:empty{display:none}.exception-form,.settings-grid,.weekly-availability{grid-template-columns:1fr}.appointment-detail-card>header{flex-direction:column}.appointment-detail-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.exception-item{grid-template-columns:1fr auto auto}.exception-item input{grid-column:1/-1}}@media (max-width:390px){.public-booking-page{padding-inline:var(--space-3)}.public-booking-service,.public-slot{width:100%}.public-booking-step .module-form__actions{flex-direction:column-reverse}.public-booking-step .module-form__actions .ui-button{width:100%}.appointment-actions,.schedule-toolbar__primary{align-items:stretch;flex-direction:column}.schedule-view-switch{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:var(--radius-lg);gap:3px}.schedule-view-switch button{width:100%}.appointment-detail-card dl,.availability-rule-form{grid-template-columns:1fr}.appointment-actions .ui-button{width:100%}}.settings-hub__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);padding:var(--space-5)}.public-booking-link-card,.settings-hub__card{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4)}.module-panel__header,.public-booking-header{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-5)}.public-booking-header__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:flex-start}.public-booking-link-card{margin:0 var(--space-5) var(--space-5);flex-direction:row;align-items:flex-start}.public-booking-settings .module-table td small{display:block;color:var(--color-text-muted)}.is-disabled-link{pointer-events:none;opacity:.48}.public-booking-page{display:grid;gap:var(--space-5);width:min(100%,920px);margin:0 auto;padding:var(--space-8) var(--space-4) var(--space-9)}.public-booking-page--loading{min-height:50vh;place-items:center}.public-booking-card,.public-booking-hero{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-md);padding:var(--space-6)}.public-booking-note{margin-top:var(--space-4);border-radius:var(--radius-md);background:var(--color-primary-softer);padding:var(--space-4)}.public-booking-meta{color:var(--color-text-secondary);font-size:12px}.public-booking-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-5)}.public-booking-steps li{border-radius:var(--radius-pill);background:var(--color-surface-subtle);padding:var(--space-2) var(--space-3);color:var(--color-text-muted);text-align:center}.public-booking-steps li.is-current{background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:700}.public-booking-service-list,.public-booking-slots{display:grid;gap:var(--space-3)}.public-booking-service,.public-slot{min-height:52px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);text-align:left;cursor:pointer}.public-booking-service--active,.public-slot--active{border-color:var(--color-primary);background:var(--color-primary-softer)}.public-booking-step{display:grid;gap:var(--space-4)}.public-booking-field{display:flex;flex-direction:column;gap:6px}.public-booking-field-error{color:var(--color-negative);font-size:11px;font-weight:650}.public-booking-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.public-booking-review div{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);padding:var(--space-3)}.public-booking-success{justify-items:center;text-align:center}.public-booking-muted{color:var(--color-text-muted)}.public-booking-link-card p,.public-booking-review dd{overflow-wrap:anywhere}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.whatsapp-settings{width:min(100%,980px);margin:0 auto}.whatsapp-settings__hero .module-panel__header{align-items:flex-start}.whatsapp-settings__hero .module-panel__header>div{max-width:660px}.whatsapp-settings__empty,.whatsapp-settings__qr-card,.whatsapp-settings__status-card{display:grid;gap:var(--space-4);padding:var(--space-5)}.whatsapp-settings__empty{min-height:260px;place-items:center;align-content:center;text-align:center}.whatsapp-settings__empty>div:nth-child(2){max-width:520px}.whatsapp-settings__empty h2,.whatsapp-settings__qr-card h2,.whatsapp-settings__status-card h2{font-size:18px;letter-spacing:-.02em}.whatsapp-settings__empty p,.whatsapp-settings__notice p,.whatsapp-settings__qr-card p,.whatsapp-settings__status-card p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:12px}.whatsapp-settings__icon{display:grid;width:54px;height:54px;place-items:center;border-radius:18px;background:var(--color-primary-soft);color:var(--color-primary)}.whatsapp-settings__content{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--color-border-soft)}.whatsapp-settings__status-heading{display:flex;align-items:center;gap:var(--space-3)}.whatsapp-settings__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.whatsapp-settings__details>div{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-subtle);padding:var(--space-3)}.whatsapp-settings__details dt,.whatsapp-settings__pairing span{color:var(--color-text-muted);font-size:10px;font-weight:700}.whatsapp-settings__details dd{margin-top:4px;font-size:12px;font-weight:700}.whatsapp-settings__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.whatsapp-settings__qr-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;border-top:1px solid var(--color-border-soft);background:radial-gradient(circle at 85% 20%,var(--color-primary-soft),transparent 32%),var(--color-surface-subtle)}.whatsapp-settings__qr-frame{display:grid;width:284px;height:284px;place-items:center;grid-row:1/span 3;grid-column:2;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;padding:12px;box-shadow:var(--shadow-sm)}.whatsapp-settings__qr-frame img{width:100%;height:100%;object-fit:contain}.whatsapp-settings__pairing,.whatsapp-settings__pairing-code{width:fit-content;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3)}.whatsapp-settings__pairing{display:flex;flex-direction:column;gap:5px}.whatsapp-settings__pairing code,.whatsapp-settings__pairing-code{color:var(--color-text);font-size:14px;font-weight:750;letter-spacing:.08em;overflow-wrap:anywhere}.whatsapp-settings__polling{display:flex;align-items:center;gap:var(--space-2)}.whatsapp-settings__polling svg{animation:whatsapp-polling-spin 1.2s linear infinite}.whatsapp-settings__notice{display:flex;align-items:flex-start;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4);color:var(--color-primary);box-shadow:var(--shadow-sm)}.whatsapp-settings__notice strong{color:var(--color-text);font-size:12px}.whatsapp-settings__retry{padding:0 var(--space-5) var(--space-5)}@keyframes whatsapp-polling-spin{to{transform:rotate(1turn)}}@media (max-width:768px){.whatsapp-settings__hero .module-panel__header,.whatsapp-settings__status-heading{align-items:flex-start}.whatsapp-settings__hero .module-panel__header{flex-direction:column}.whatsapp-settings__qr-card{grid-template-columns:1fr}.whatsapp-settings__qr-frame{width:min(100%,284px);height:auto;aspect-ratio:1;grid-row:auto;grid-column:auto;justify-self:center}.whatsapp-settings__actions{align-items:stretch;flex-direction:column}.whatsapp-settings__actions .ui-button{width:100%}}@media (max-width:390px){.whatsapp-settings__details{grid-template-columns:1fr}}