:root{--crm-color-page:#edf5f6;--crm-color-surface:#fff;--crm-color-surface-muted:#f4f9f9;--crm-color-text:#0f2027;--crm-color-text-muted:#547078;--crm-color-border:#c4d7db;--crm-color-border-muted:#d9e8eb;--crm-color-sidebar:#0d1a22;--crm-color-sidebar-raised:#14313a;--crm-color-sidebar-text:#f8fafc;--crm-color-sidebar-muted:#b3c6cb;--crm-color-accent:#2ec4b6;--crm-color-accent-strong:#11998d;--crm-color-accent-bg:#d8f5f1;--crm-color-accent-text:#063c38;--crm-color-info-bg:#e7f0fb;--crm-color-info-border:#78a6d6;--crm-color-info-text:#173c63;--crm-color-warning-bg:#fff5d6;--crm-color-warning-border:#dfbf67;--crm-color-warning-text:#5a4511;--crm-color-danger-bg:#fce7e7;--crm-color-danger-border:#d89898;--crm-color-danger-text:#5d2323;--crm-font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--crm-font-size-xs:12px;--crm-font-size-sm:13px;--crm-font-size-md:14px;--crm-font-size-lg:18px;--crm-font-size-xl:30px;--crm-font-weight-strong:700;--crm-space-1:4px;--crm-space-2:6px;--crm-space-3:8px;--crm-space-4:10px;--crm-space-5:12px;--crm-space-6:14px;--crm-space-7:16px;--crm-space-8:20px;--crm-space-9:24px;--crm-space-10:28px;--crm-radius-sm:6px;--crm-radius-md:8px;--crm-border-width:1px;--crm-shadow-sm:0 1px 2px #0c252c12;--crm-shadow-md:0 10px 28px #0c252c1c;--crm-shadow-lg:0 24px 60px #0c252c2e;--crm-focus-ring:0 0 0 3px #2ab0a04d;color:var(--crm-color-text);background:var(--crm-color-page);font-family:var(--crm-font-sans)}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{box-shadow:var(--crm-focus-ring);outline:none}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:var(--crm-font-size-xl);letter-spacing:0;margin-bottom:0}h2{margin-bottom:var(--crm-space-4);font-size:var(--crm-font-size-lg);letter-spacing:0}h3{margin-bottom:var(--crm-space-4);font-size:var(--crm-font-size-md);letter-spacing:0}.app-shell{background:linear-gradient(180deg, #ffffff94, #fff0 260px), var(--crm-color-page);grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{height:100vh;color:var(--crm-color-sidebar-text);background:linear-gradient(180deg, #0b1720 0%, var(--crm-color-sidebar) 58%, #102832 100%);flex-direction:column;gap:22px;padding:22px 16px;display:flex;position:sticky;top:0;overflow:auto;box-shadow:inset -1px 0 #ffffff12}.brand{align-items:center;gap:var(--crm-space-5);font-size:17px;font-weight:var(--crm-font-weight-strong);display:flex}.brand-mark{border:var(--crm-border-width) solid #6de6d76b;border-radius:var(--crm-radius-md);background:linear-gradient(135deg, #2ab0a06b, #2f84c647), var(--crm-color-sidebar-raised);width:38px;height:38px;font-size:var(--crm-font-size-xs);place-items:center;display:grid;box-shadow:0 12px 32px #0000002e}.nav-groups{gap:18px;display:grid}.nav-group{gap:var(--crm-space-2);display:grid}.nav-group-label{padding:0 var(--crm-space-4);color:#b7c9ceb8;font-size:11px;font-weight:var(--crm-font-weight-strong);letter-spacing:0;text-transform:uppercase;margin:0}.nav-group-items{gap:var(--crm-space-2);display:grid}.nav-group-items>a,.nav-group-items>button{border:var(--crm-border-width) solid transparent;border-radius:var(--crm-radius-md);min-width:0;min-height:42px;color:var(--crm-color-sidebar-muted);font:inherit;text-align:left;background:0 0;align-items:center;gap:10px;padding:9px 12px;display:flex;position:relative}.nav-group-items>a:hover,.nav-group-items>button:hover{color:var(--crm-color-sidebar-text);background:#ffffff12;border-color:#ffffff14}.nav-group-items>a[aria-current=page],.nav-group-items>button[aria-current=page]{color:#fff;background:linear-gradient(90deg,#26bdb0,#35cfc3);border-color:#4ee7d86b;box-shadow:0 14px 30px #0000002e}.nav-group-items>a[aria-current=page]:before,.nav-group-items>button[aria-current=page]:before{content:"";background:#fff;border-radius:999px;width:3px;position:absolute;top:8px;bottom:8px;left:-1px}.nav-icon{width:22px;height:22px;color:inherit;flex:0 0 22px;place-items:center;display:inline-grid}.nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace{min-width:0;padding:34px clamp(24px,3vw,40px)}.topbar{justify-content:space-between;align-items:center;gap:var(--crm-space-7);margin-bottom:var(--crm-space-9);padding-bottom:var(--crm-space-7);border-bottom:var(--crm-border-width) solid #c8d8dcbd;display:flex}.eyebrow{margin:0 0 var(--crm-space-2);color:#54706a;font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);letter-spacing:0;text-transform:uppercase}.status{min-height:34px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-accent-strong);border-radius:var(--crm-radius-md);color:#264035;background:var(--crm-color-accent-bg);font-size:var(--crm-font-size-md);font-weight:var(--crm-font-weight-strong);align-items:center;display:inline-flex}.status--warning{border-color:var(--crm-color-warning-border);color:var(--crm-color-warning-text);background:var(--crm-color-warning-bg)}.status--danger{border-color:var(--crm-color-danger-border);color:var(--crm-color-danger-text);background:var(--crm-color-danger-bg)}.status--success{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.status--neutral{border-color:var(--crm-color-border);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.content-grid,.metric-grid,.hierarchy-grid,.auth-grid,.client-toolbar,.scheduling-toolbar,.scheduling-grid,.clients-grid,.client-list,.client-form,.client-actions{gap:var(--crm-space-5);display:grid}.content-grid{gap:var(--crm-space-7);grid-template-columns:repeat(2,minmax(0,1fr))}.panel{min-height:150px;padding:var(--crm-space-8);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);box-shadow:var(--crm-shadow-sm)}.panel.wide{grid-column:1/-1}.panel p:last-child{color:#445760;margin-bottom:0}.panel-heading{justify-content:space-between;align-items:start;gap:var(--crm-space-5);display:flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{min-height:72px;padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);flex-direction:column;justify-content:space-between;display:flex;box-shadow:inset 0 1px #ffffffb8}.metric span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.metric strong{color:var(--crm-color-text);font-size:28px}.auth-grid input,.client-toolbar input,.client-toolbar select,.client-form input,.client-form select,.client-form textarea,.scheduling-toolbar input,.scheduling-toolbar select,.tool-panel input,.tool-panel select,.tool-panel textarea,.ui-field input,.ui-field select,.ui-field textarea{min-width:0;min-height:40px;padding:9px var(--crm-space-4);border:var(--crm-border-width) solid #b9c8cd;border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font:inherit}.tool-panel textarea,.client-form textarea,.ui-field textarea{resize:vertical;min-height:88px}.auth-grid button,.client-list button,.client-actions button,.scheduling-toolbar button,.tool-panel button,.ui-button{min-height:40px;padding:9px var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-accent-strong);border-radius:var(--crm-radius-md);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);font:inherit;font-weight:var(--crm-font-weight-strong);transition:border-color .16s,background-color .16s,color .16s,box-shadow .16s}.auth-grid button:hover,.client-list button:hover,.client-actions button:hover,.scheduling-toolbar button:hover,.tool-panel button:hover,.ui-button:hover{border-color:var(--crm-color-accent);background:color-mix(in srgb, var(--crm-color-accent-bg) 76%, #fff)}.ui-button--secondary{border-color:var(--crm-color-border);color:var(--crm-color-text);background:var(--crm-color-surface)}.ui-button--ghost{color:var(--crm-color-text-muted);background:0 0;border-color:#0000}.ui-button--danger{border-color:var(--crm-color-danger-border);color:var(--crm-color-danger-text);background:var(--crm-color-danger-bg)}.ui-button--sm{min-height:32px;padding:var(--crm-space-2) var(--crm-space-4);font-size:var(--crm-font-size-sm)}.ui-field{gap:var(--crm-space-2);color:var(--crm-color-text);font-size:var(--crm-font-size-md);font-weight:var(--crm-font-weight-strong);display:grid}.ui-field small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:400}.ui-toolbar{gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.tool-panel{align-content:start;gap:var(--crm-space-4);min-height:280px;padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid;box-shadow:inset 0 1px #ffffffb3}.compact-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.compact-list li{padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);color:#344850;font-size:var(--crm-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-state{min-height:120px;padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.empty-state.small{min-height:auto;font-size:var(--crm-font-size-sm);margin-bottom:0}.context-list{min-height:120px;padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted)}@media (width<=920px){.app-shell{grid-template-columns:1fr}.sidebar{gap:var(--crm-space-7);height:auto;position:static}.nav-groups{gap:var(--crm-space-4)}.nav-group-items{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.content-grid,.metric-grid,.hierarchy-grid,.clients-grid,.scheduling-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}.hierarchy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-workspace{gap:var(--crm-space-4)}.inventory-toolbar{align-items:end;gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.inventory-toolbar label,.inventory-form label{color:var(--crm-muted);gap:var(--crm-space-1);font-size:.82rem;font-weight:700;display:grid}.inventory-toolbar select,.inventory-form input,.inventory-form select{background:var(--crm-surface);border:1px solid var(--crm-border);color:var(--crm-text);min-height:38px;padding:0 var(--crm-space-3);border-radius:8px}.inventory-metrics{gap:var(--crm-space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.inventory-metric{gap:var(--crm-space-2)}.inventory-metric span{color:var(--crm-muted);font-size:.82rem;font-weight:700}.inventory-metric strong{font-size:1.35rem;line-height:1.2}.inventory-grid{gap:var(--crm-space-4);grid-template-columns:minmax(260px,.8fr) minmax(420px,1.2fr);display:grid}.inventory-form{gap:var(--crm-space-3);display:grid}.inventory-document-form{max-width:520px}.inventory-table-wrap{overflow-x:auto}.inventory-table{border-collapse:collapse;width:100%;min-width:620px}.inventory-table th,.inventory-table td{border-bottom:1px solid var(--crm-border);padding:var(--crm-space-2) var(--crm-space-3);text-align:left;white-space:nowrap}.inventory-table th{color:var(--crm-muted);text-transform:uppercase;font-size:.76rem}.inventory-settings dl{gap:var(--crm-space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.inventory-settings dt{color:var(--crm-muted);font-size:.8rem;font-weight:700}.inventory-settings dd{margin:0}@media (width<=920px){.inventory-grid{grid-template-columns:1fr}}.auth-grid,.onboarding-form-grid{gap:var(--crm-space-5);grid-template-columns:minmax(0,1fr) auto;display:grid}.client-toolbar{gap:var(--crm-space-4);grid-template-columns:minmax(180px,.8fr) minmax(160px,.6fr) minmax(220px,1fr);display:grid}.client-toolbar select,.client-toolbar input{min-width:0}.clients-grid{gap:var(--crm-space-5);margin-top:var(--crm-space-6);grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:start;display:grid}.client-list-panel{top:var(--crm-space-5);gap:var(--crm-space-3);min-height:0;max-height:calc(100dvh - 160px);display:grid;position:sticky}.client-list{align-content:start;gap:var(--crm-space-3);min-height:0;max-height:min(640px,100dvh - 300px);padding-right:2px;display:grid;overflow:auto}.client-list button{min-height:50px;padding:8px var(--crm-space-4);border-color:var(--crm-color-border-muted);color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left;justify-content:stretch;gap:2px;display:grid}.client-list button span,.client-list small{overflow-wrap:anywhere;min-width:0}.client-list button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.client-list button[aria-pressed=true] small{color:var(--crm-color-accent-text)}.client-list small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs)}.client-pagination{justify-content:space-between;align-items:center;gap:var(--crm-space-3);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);display:flex}.client-pagination div{gap:var(--crm-space-2);display:inline-flex}.client-pagination button{min-height:32px;padding:5px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-sm);color:var(--crm-color-text);background:var(--crm-color-surface);font-weight:var(--crm-font-weight-strong)}.client-form{gap:var(--crm-space-4);padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.client-actions{gap:var(--crm-space-3);flex-wrap:wrap;align-items:center;display:flex}.client-actions button{flex:150px}.clinical-filterbar{gap:var(--crm-space-4);margin-bottom:var(--crm-space-6);grid-template-columns:minmax(180px,.9fr) minmax(130px,.45fr) minmax(130px,.45fr) minmax(150px,.55fr) minmax(170px,.7fr) minmax(220px,1fr);display:grid}.clinical-filterbar label,.clinical-result-form label{gap:var(--crm-space-2);min-width:0;display:grid}.clinical-filterbar span,.clinical-result-form span,.clinical-appointment-facts dt{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.clinical-filterbar select,.clinical-filterbar input,.clinical-result-form textarea{min-width:0}.clinical-layout{gap:var(--crm-space-5);grid-template-columns:minmax(320px,430px) minmax(0,1fr);align-items:start;display:grid}.clinical-list-panel{top:var(--crm-space-5);gap:var(--crm-space-3);min-height:0;max-height:calc(100dvh - 170px);display:grid;position:sticky}.clinical-worklist{align-content:start;gap:var(--crm-space-3);min-height:0;max-height:min(660px,100dvh - 330px);padding-right:2px;display:grid;overflow:auto}.clinical-worklist button{min-height:86px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left;justify-content:stretch;gap:3px;display:grid;position:relative}.clinical-worklist button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.clinical-worklist strong,.clinical-worklist small{overflow-wrap:anywhere;min-width:0;padding-right:112px}.clinical-worklist small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs)}.clinical-row__time{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);font-weight:var(--crm-font-weight-strong)}.clinical-result-badge{min-height:26px;padding:3px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);justify-self:start;align-items:center;display:inline-grid}.clinical-worklist .clinical-result-badge{top:var(--crm-space-3);right:var(--crm-space-3);position:absolute}.clinical-result-badge.completed,.clinical-result-badge.published{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.clinical-result-badge.draft{border-color:var(--crm-color-border);color:var(--crm-color-text);background:var(--crm-color-surface)}.clinical-detail-card{top:var(--crm-space-5);gap:var(--crm-space-5);max-height:calc(100dvh - 170px);padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;position:sticky;overflow:auto}.clinical-detail-heading{justify-content:space-between;align-items:start;gap:var(--crm-space-4);display:flex}.clinical-detail-heading p{color:var(--crm-color-text-muted);margin:0}.clinical-appointment-facts{gap:var(--crm-space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.clinical-appointment-facts div{padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface-muted);gap:2px;display:grid}.clinical-appointment-facts dd{overflow-wrap:anywhere;margin:0}.clinical-dental-context{gap:var(--crm-space-3);min-width:0;padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid}.clinical-dental-context__heading{justify-content:space-between;align-items:start;gap:var(--crm-space-3);display:flex}.clinical-dental-context__heading h4{margin:var(--crm-space-1) 0 0;font-size:1rem}.clinical-dental-context .dental-chart-board{max-width:100%}.clinical-result-form{gap:var(--crm-space-4);display:grid}.clinical-result-form textarea{resize:vertical;min-height:86px}.clinical-result-form label:first-of-type textarea{min-height:112px}.clinical-result-form small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-normal);text-transform:none;margin-top:2px;display:block}.clinical-form-actions{padding-top:var(--crm-space-4);background:linear-gradient(180deg, transparent, var(--crm-color-surface) 28%);justify-content:flex-end;display:flex;position:sticky;bottom:0}.clinical-form-actions button{min-width:min(240px,100%);min-height:44px}.finance-tabs{gap:var(--crm-space-2);padding:var(--crm-space-2);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);margin-bottom:var(--crm-space-5);flex-wrap:wrap;display:flex}.finance-tabs button{min-height:38px;padding:0 var(--crm-space-4);background:0 0;border-color:#0000}.finance-tabs button.active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.finance-overview{gap:var(--crm-space-5);display:grid}.finance-overview-filterbar{gap:var(--crm-space-4);grid-template-columns:minmax(220px,1fr) minmax(210px,.8fr) 150px 150px auto;align-items:end;display:grid}.finance-filterbar{gap:var(--crm-space-4);margin-bottom:var(--crm-space-5);grid-template-columns:minmax(180px,.9fr) minmax(130px,.42fr) minmax(130px,.42fr) minmax(210px,.7fr) minmax(170px,.6fr) minmax(240px,1fr) auto;display:grid}.finance-filterbar label,.finance-overview-filterbar label,.finance-filterbar__period,.finance-action-panel label{gap:var(--crm-space-2);min-width:0;display:grid}.finance-filterbar span,.finance-overview-filterbar span,.finance-filterbar__period span,.finance-action-panel span,.finance-appointment-facts dt,.finance-payment-facts dt,.finance-summary-card span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.finance-filterbar select,.finance-filterbar input,.finance-overview-filterbar select,.finance-overview-filterbar input,.finance-action-panel input,.finance-action-panel select,.finance-action-panel textarea{min-width:0}.finance-filterbar button{align-self:end;min-height:40px}.finance-overview-filterbar button{min-height:40px}.finance-period-tabs{gap:var(--crm-space-2);align-items:center;display:inline-flex}.finance-period-tabs button{padding:9px var(--crm-space-4);border-color:var(--crm-color-border-muted);color:var(--crm-color-text);background:var(--crm-color-surface)}.finance-period-tabs button.active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.finance-clinical-link{justify-self:start}.finance-overview-heading,.finance-cashier-heading{justify-content:space-between;align-items:end;gap:var(--crm-space-4);display:flex}.finance-overview-heading h3,.finance-cashier-heading h3{margin:0}.finance-summary-grid{gap:var(--crm-space-3);margin-bottom:var(--crm-space-5);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.finance-overview-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:0}.finance-summary-card{gap:var(--crm-space-2);min-height:92px;padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.finance-summary-card--button{color:inherit;text-align:left;cursor:pointer;justify-content:stretch}.finance-summary-card--button:hover,.finance-summary-card--button:focus-visible{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.finance-summary-card strong{color:var(--crm-color-text);font-size:var(--crm-font-size-lg)}.finance-summary-card small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs)}.finance-overview-controls{gap:var(--crm-space-4);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;display:grid}.finance-overview-controls label,.finance-action-card label{gap:var(--crm-space-2);min-width:0;display:grid}.finance-overview-controls span,.finance-action-card span,.finance-ledger-row small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.finance-overview-controls select,.finance-action-card input,.finance-action-card select,.finance-action-card textarea{min-width:0}.finance-tab-view{gap:var(--crm-space-5);display:grid}.finance-toolbar-actions{gap:var(--crm-space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.finance-status-tabs{gap:var(--crm-space-2);flex-wrap:wrap;display:inline-flex}.finance-status-tabs button{min-height:36px;padding:0 var(--crm-space-4);border-color:var(--crm-color-border-muted);background:var(--crm-color-surface)}.finance-status-tabs button.active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.finance-management-actions{gap:var(--crm-space-4);grid-template-columns:minmax(0,1.15fr) minmax(0,1.15fr) minmax(260px,.7fr);align-items:start;display:grid}.finance-action-card{gap:var(--crm-space-4);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.finance-action-card h4,.finance-ledger-row h4,.finance-section-heading h3{margin:0}.finance-action-grid{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finance-action-card--compact .finance-action-grid{grid-template-columns:1fr}.finance-management-grid{gap:var(--crm-space-4);grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;display:grid}.finance-ledger-panel{gap:var(--crm-space-3);min-width:0;display:grid}.finance-section-heading{justify-content:space-between;gap:var(--crm-space-4);align-items:end;display:flex}.finance-ledger-list{gap:var(--crm-space-3);display:grid}.finance-ledger-row{gap:var(--crm-space-4);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);grid-template-columns:minmax(0,1fr) minmax(150px,auto);align-items:start;display:grid}.finance-ledger-row p{margin:var(--crm-space-2) 0 0;overflow-wrap:anywhere}.finance-row-actions{gap:var(--crm-space-2);text-align:right;justify-items:end;display:grid}.finance-row-actions button{min-height:34px;padding-inline:var(--crm-space-3)}.finance-amount{color:var(--crm-color-text);font-size:var(--crm-font-size-md);white-space:nowrap}.finance-amount.income{color:var(--crm-color-accent-text)}.finance-amount.expense{color:var(--crm-color-text)}.finance-quick-links{gap:var(--crm-space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.finance-quick-links button{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg);text-align:left;justify-content:flex-start;min-height:64px}.finance-category-grid{gap:var(--crm-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finance-category-column{gap:var(--crm-space-3);min-width:0;display:grid}.finance-category-column h4{margin:0}.finance-category-row{justify-content:space-between;align-items:center;gap:var(--crm-space-3);padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:flex}.finance-category-row span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.finance-modal-backdrop{z-index:50;padding:var(--crm-space-5);background:#0b18205c;place-items:center;display:grid;position:fixed;inset:0}.finance-modal{gap:var(--crm-space-5);width:min(760px,100%);max-height:min(720px,100dvh - 48px);padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);box-shadow:var(--crm-shadow-lg);display:grid;overflow:auto}.finance-modal-heading{justify-content:space-between;align-items:center;gap:var(--crm-space-4);display:flex}.finance-modal-heading h3{margin:0}.finance-modal-form{gap:var(--crm-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finance-modal-form--single{grid-template-columns:1fr}.finance-modal-form label{gap:var(--crm-space-2);min-width:0;display:grid}.finance-modal-form span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.finance-modal-form input,.finance-modal-form select,.finance-modal-form textarea{min-width:0}.finance-modal-form__wide,.finance-modal-actions{grid-column:1/-1}.finance-modal-actions{gap:var(--crm-space-3);justify-content:flex-end;display:flex}.finance-layout{gap:var(--crm-space-5);grid-template-columns:minmax(320px,430px) minmax(0,1fr);align-items:start;display:grid}.finance-list-panel{top:var(--crm-space-5);gap:var(--crm-space-3);min-height:0;max-height:calc(100dvh - 170px);display:grid;position:sticky}.finance-worklist{align-content:start;gap:var(--crm-space-3);min-height:0;max-height:min(660px,100dvh - 330px);padding-right:2px;display:grid;overflow:auto}.finance-worklist button{min-height:94px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left;justify-content:stretch;gap:3px;display:grid;position:relative}.finance-worklist button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.finance-worklist strong,.finance-worklist small{overflow-wrap:anywhere;min-width:0;padding-right:132px}.finance-worklist small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs)}.finance-row__time{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);font-weight:var(--crm-font-weight-strong)}.finance-payment-badge{min-height:26px;padding:3px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);justify-self:start;align-items:center;display:inline-grid}.finance-worklist .finance-payment-badge{top:var(--crm-space-3);right:var(--crm-space-3);position:absolute}.finance-payment-badge.confirmed{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.finance-payment-badge.needs_artifact,.finance-payment-badge.needs_confirmation{border-color:var(--crm-color-border);color:var(--crm-color-text);background:var(--crm-color-surface)}.finance-payment-badge.voided{color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.finance-detail-card{top:var(--crm-space-5);gap:var(--crm-space-5);max-height:calc(100dvh - 170px);padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;position:sticky;overflow:auto}.finance-detail-heading{justify-content:space-between;align-items:start;gap:var(--crm-space-4);display:flex}.finance-detail-heading h3{margin:0 0 var(--crm-space-2)}.finance-detail-heading p{color:var(--crm-color-text-muted);margin:0}.finance-appointment-facts,.finance-payment-facts{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.finance-appointment-facts div,.finance-payment-facts div{padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface-muted);gap:2px;display:grid}.finance-appointment-facts dd,.finance-payment-facts dd{overflow-wrap:anywhere;min-width:0;color:var(--crm-color-text);font-weight:var(--crm-font-weight-strong);margin:0}.finance-action-panel{gap:var(--crm-space-4);display:grid}.finance-action-panel button{min-height:42px}.finance-action-row{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finance-checkbox{align-items:center;gap:var(--crm-space-3);display:flex!important}.finance-checkbox input{width:auto}.payroll-shell{gap:var(--crm-space-5);display:grid}.payroll-tabs{gap:var(--crm-space-2);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);flex-wrap:wrap;padding:4px;display:flex}.payroll-tabs button{min-height:38px;padding:0 var(--crm-space-4);background:0 0;border-color:#0000}.payroll-tabs button.active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.payroll-tab-panel{gap:var(--crm-space-5);display:grid}.payroll-filters{grid-template-columns:minmax(180px,.9fr) minmax(180px,.8fr) minmax(150px,.6fr) minmax(260px,1fr) auto;margin-bottom:0}.payroll-history-filter-panel{gap:var(--crm-space-3);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.payroll-history-controlbar{gap:var(--crm-space-3);grid-template-columns:minmax(220px,.8fr) minmax(360px,1.4fr) auto auto auto;align-items:end;display:grid}.payroll-history-search,.payroll-history-advanced label{gap:var(--crm-space-1);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase;display:grid}.payroll-history-search input,.payroll-history-advanced input,.payroll-history-advanced select{min-width:0}.payroll-period-tabs{gap:var(--crm-space-2);flex-wrap:wrap;display:flex}.payroll-period-tabs button,.secondary,.text-button{border-color:var(--crm-color-border-muted);background:var(--crm-color-surface);min-height:38px}.payroll-period-tabs button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.icon-button{width:42px;padding-inline:0}.text-button{min-height:30px;color:var(--crm-color-accent-text);background:0 0;border-color:#0000;padding-inline:0}.payroll-active-filters{gap:var(--crm-space-2);flex-wrap:wrap;align-items:center;display:flex}.payroll-filter-chip{min-height:28px;padding:3px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);color:var(--crm-color-text);background:var(--crm-color-surface);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);align-items:center;display:inline-flex}.payroll-history-advanced{gap:var(--crm-space-3);grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(150px,.55fr) 150px 150px;align-items:end;display:grid}.payroll-actions-row{gap:var(--crm-space-3);flex-wrap:wrap;align-items:center;display:flex}.payroll-summary-grid,.payroll-history-summary-grid{gap:var(--crm-space-3);display:grid}.payroll-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.payroll-history-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.summary-card{gap:var(--crm-space-2);min-height:82px;padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.summary-card span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.summary-card strong{color:var(--crm-color-text);font-size:var(--crm-font-size-lg)}.payroll-workbench{gap:var(--crm-space-5);grid-template-columns:minmax(360px,480px) minmax(0,1fr);align-items:start;display:grid}.payroll-list-panel,.payroll-detail-panel{top:var(--crm-space-5);gap:var(--crm-space-3);max-height:calc(100dvh - 180px);display:grid;position:sticky}.payroll-list-panel,.payroll-detail-panel,.payroll-setting-card,.payroll-payout-row{padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface)}.payroll-detail-panel{overflow:auto}.payroll-employee-list{gap:var(--crm-space-2);max-height:min(620px,100dvh - 360px);padding-right:2px;display:grid;overflow:auto}.payroll-employee-list button{gap:var(--crm-space-3);min-height:62px;padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left;grid-template-columns:minmax(0,1fr) auto auto;justify-content:stretch;align-items:center;display:grid}.payroll-employee-list button.selected{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.payroll-employee-list small,.payroll-detail-heading p,.payroll-setting-card small,.muted{color:var(--crm-color-text-muted)}.payroll-employee-list small,.payroll-setting-card small{font-size:var(--crm-font-size-xs);overflow-wrap:anywhere;margin-top:3px;display:block}.payroll-detail-heading{justify-content:space-between;gap:var(--crm-space-4);display:flex}.payroll-detail-heading h3{margin:0}.payroll-detail-grid{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fact-row{padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface-muted);gap:2px;display:grid}.fact-row span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.fact-row strong{overflow-wrap:anywhere}.role-chip-row{gap:var(--crm-space-2);flex-wrap:wrap;display:flex}.role-chip{min-height:28px;padding:4px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);align-items:center;display:inline-flex}.payroll-adjustment-panel{gap:var(--crm-space-3);display:grid}.payroll-adjustment-panel h4{margin:0}.payroll-settings-header{justify-content:space-between;align-items:end;gap:var(--crm-space-4);display:flex}.payroll-default-rate{gap:var(--crm-space-3);grid-template-columns:minmax(180px,260px) auto;align-items:end;display:grid}.payroll-default-rate label,.payroll-setting-card label{gap:var(--crm-space-2);display:grid}.payroll-settings-list{gap:var(--crm-space-3);display:grid}.payroll-setting-card{gap:var(--crm-space-3);grid-template-columns:minmax(260px,1fr) 150px 160px auto auto;align-items:end;display:grid}.checkbox-row{align-items:center;gap:var(--crm-space-2);display:flex!important}.checkbox-row input{width:auto}.payroll-payout-list{gap:var(--crm-space-3);display:grid}.payroll-history-list-panel{gap:var(--crm-space-3);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid}.payroll-history-section-heading{gap:var(--crm-space-3);flex-wrap:wrap;justify-content:space-between;align-items:start;display:flex}.payroll-history-section-heading h3,.payroll-history-section-heading h4{margin:0}.payroll-payout-row{gap:var(--crm-space-4);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.payroll-history-row{grid-template-columns:minmax(190px,1.1fr) minmax(150px,.8fr) minmax(180px,.9fr) auto auto}.payroll-history-row small,.payroll-history-employee-row small,.payroll-history-detail-row small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);overflow-wrap:anywhere;margin-top:3px;display:block}.payroll-history-employee-table,.payroll-history-detail-list{gap:var(--crm-space-2);display:grid}.payroll-history-employee-header,.payroll-history-employee-row{gap:var(--crm-space-3);grid-template-columns:minmax(220px,1.35fr) minmax(110px,.5fr) minmax(80px,.35fr) minmax(90px,.4fr) minmax(150px,.65fr) minmax(150px,.65fr);align-items:center;display:grid}.payroll-history-employee-header{padding:0 var(--crm-space-3);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.payroll-history-employee-group{gap:var(--crm-space-2);display:grid}.payroll-history-employee-row{width:100%;padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left}.payroll-history-employee-row.selected{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.payroll-history-detail-panel{gap:var(--crm-space-3);margin-left:var(--crm-space-4);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.payroll-history-detail-row{gap:var(--crm-space-3);padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface);grid-template-columns:minmax(220px,1.15fr) minmax(180px,.9fr) auto auto minmax(140px,.65fr);align-items:center;display:grid}.pagination-bar{justify-content:space-between;align-items:center;gap:var(--crm-space-3);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);display:flex}.empty-state{padding:var(--crm-space-5);border:var(--crm-border-width) dashed var(--crm-color-border-muted);border-radius:var(--crm-radius-md);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.dashboard-workspace{gap:var(--crm-space-6);display:grid}.dashboard-scope{margin-top:var(--crm-space-2)}.dashboard-toolbar{gap:var(--crm-space-3);grid-template-columns:minmax(220px,1fr) 170px auto auto;align-items:center;display:grid}.dashboard-toolbar select,.dashboard-toolbar input{min-width:0;min-height:40px;padding:9px var(--crm-space-4);border:var(--crm-border-width) solid #b9c8cd;border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font:inherit}.dashboard-toolbar>button,.dashboard-period-tabs button{min-height:40px;padding:9px var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-accent-strong);border-radius:var(--crm-radius-md);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);font:inherit;font-weight:var(--crm-font-weight-strong)}.dashboard-period-tabs{gap:var(--crm-space-2);align-items:center;display:inline-flex}.dashboard-period-tabs button{border-color:var(--crm-color-border-muted);color:var(--crm-color-text);background:var(--crm-color-surface)}.dashboard-period-tabs button.active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.dashboard-summary-grid{gap:var(--crm-space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.dashboard-summary-card,.dashboard-attention-card,.dashboard-quick-link{gap:var(--crm-space-2);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);width:100%;color:var(--crm-color-text);background:var(--crm-color-surface);text-align:left;display:grid}.dashboard-summary-card{min-height:112px;padding:var(--crm-space-5);align-content:space-between}button.dashboard-summary-card,button.dashboard-attention-card,.dashboard-quick-link{cursor:pointer}.dashboard-summary-card span,.dashboard-attention-card span,.dashboard-quick-link span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.dashboard-summary-card strong{font-size:30px;line-height:1}.dashboard-summary-card small,.dashboard-attention-card small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs)}.dashboard-card--success{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.dashboard-card--warning{border-color:var(--crm-color-warning-border);background:var(--crm-color-warning-bg)}.dashboard-card--danger{border-color:var(--crm-color-danger-border);background:var(--crm-color-danger-bg)}.tasks-workspace{gap:var(--crm-space-6);grid-column:1/-1;display:grid}.tasks-topbar,.tasks-toolbar{justify-content:space-between;align-items:center;gap:var(--crm-space-5);display:flex}.tasks-summary{gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.tasks-toolbar{padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface)}.tasks-toolbar label{gap:var(--crm-space-2);min-width:180px;color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase;display:grid}.tasks-toolbar input,.tasks-toolbar select{min-height:36px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface)}.tasks-status{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.tasks-kanban{gap:var(--crm-space-5);grid-template-columns:repeat(3,minmax(0,1fr));min-height:520px;display:grid}.tasks-column{align-content:start;gap:var(--crm-space-4);min-width:0;padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.tasks-column.over{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.tasks-column-heading{justify-content:space-between;align-items:center;gap:var(--crm-space-4);display:flex}.tasks-column-heading h3{margin:0}.tasks-column-heading span{border-radius:var(--crm-radius-md);min-width:28px;min-height:28px;color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);font-weight:var(--crm-font-weight-strong);place-items:center;display:inline-grid}.tasks-column-list{gap:var(--crm-space-4);display:grid}.task-card{gap:var(--crm-space-3);padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;box-shadow:0 8px 22px #1f313b14}.task-card.dragging{opacity:.82;z-index:5}.task-card-heading{gap:var(--crm-space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.task-card-heading strong,.task-card p,.task-card small,.task-card-meta dd{overflow-wrap:anywhere}.task-card-heading span{padding:2px var(--crm-space-3);border-radius:var(--crm-radius-md);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);align-self:start}.task-card p,.task-card small{color:var(--crm-color-text-muted);margin:0}.task-card-meta{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.task-card-meta dt{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.task-card-meta dd{margin:0}.task-card-actions{gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.task-card-actions a,.task-card-actions button{min-height:30px;padding:var(--crm-space-2) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font-size:var(--crm-font-size-sm)}.dashboard-layout{gap:var(--crm-space-5);grid-template-columns:minmax(280px,1.1fr) minmax(240px,.9fr) minmax(260px,.9fr);align-items:start;display:grid}.dashboard-section{background:var(--crm-color-surface-muted);min-height:0}.section-heading{justify-content:space-between;align-items:center;gap:var(--crm-space-3);display:flex}.dashboard-attention-list,.dashboard-quick-links,.dashboard-audit-list{gap:var(--crm-space-3);margin:0;padding:0;display:grid}.dashboard-attention-card,.dashboard-quick-link{min-height:76px;padding:var(--crm-space-4)}.dashboard-quick-link{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.dashboard-audit-list{list-style:none}.dashboard-audit-list li{gap:var(--crm-space-3);min-height:42px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);grid-template-columns:80px minmax(0,1fr);align-items:center;display:grid}.dashboard-audit-list li span{color:var(--crm-color-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-card{top:var(--crm-space-5);gap:var(--crm-space-5);max-height:calc(100dvh - 160px);padding:var(--crm-space-6);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;position:sticky;overflow:auto}.client-card__header,.client-card-list div,.client-card-list button,.client-facts div{justify-content:space-between;align-items:center;gap:var(--crm-space-4);display:flex}.client-card-tabs{gap:var(--crm-space-2);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);flex-wrap:wrap;align-items:center;padding:4px;display:flex}.client-card-tabs button{min-width:0;min-height:36px;padding:7px var(--crm-space-4);border:var(--crm-border-width) solid transparent;border-radius:var(--crm-radius-sm);color:var(--crm-color-text);overflow-wrap:anywhere;white-space:normal;background:0 0;flex:0 auto;line-height:1.2}.client-card-tabs button[aria-current=page]{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.client-status{padding:var(--crm-space-2) var(--crm-space-3);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface-muted);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.client-card-list,.client-facts,.client-readonly{gap:var(--crm-space-3);display:grid}.client-card-list div,.client-card-list button,.client-facts div{min-height:44px;padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);color:var(--crm-color-text);text-align:left}.client-card-list button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent)}.client-card-list .timeline-item{justify-content:stretch;align-items:start;display:grid}.timeline-item small{color:var(--crm-color-text-muted)}.timeline-clinical-content{gap:var(--crm-space-2);display:grid}.timeline-clinical-content>strong{color:var(--crm-color-text)}.timeline-lock{padding:var(--crm-space-2) 0}.client-medical-form label,.client-appointment-text-block,.client-appointment-sublist{gap:var(--crm-space-2);display:grid}.client-medical-form textarea{resize:vertical;min-height:86px}.client-dental-tab{gap:var(--crm-space-4);display:grid}.client-dental-layout{gap:var(--crm-space-4);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.dental-chart-board,.dental-detail-panel{gap:var(--crm-space-3);min-width:0;display:grid}.dental-chart-board{padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);overflow-x:auto}.dental-tooth-row{grid-template-columns:repeat(16,minmax(34px,1fr));gap:5px;min-width:640px;display:grid}.dental-midline{background:var(--crm-color-border-muted);min-width:640px;height:1px}.dental-tooth{border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);min-width:34px;min-height:46px;color:var(--crm-color-text);background:var(--crm-color-surface);place-items:center;gap:1px;padding:4px 2px;line-height:1.05;display:grid}.dental-tooth span{font-weight:var(--crm-font-weight-strong)}.dental-tooth small{color:var(--crm-color-text-muted);font-size:10px}.dental-tooth[aria-pressed=true]{border-color:var(--crm-color-accent-strong);box-shadow:inset 0 0 0 2px var(--crm-color-accent)}.dental-tooth--healthy{background:#eefbf4}.dental-tooth--watch,.dental-tooth--planned_treatment{background:#fff7e6}.dental-tooth--caries,.dental-tooth--root_canal{background:#fff1f2}.dental-tooth--restored,.dental-tooth--crown,.dental-tooth--implant{background:#eff6ff}.dental-tooth--missing{color:var(--crm-color-text-muted);background:#f4f5f7;border-style:dashed}.dental-tooth--completed_treatment{background:#ecfeff}.dental-detail-panel{padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);align-items:start}.dental-detail-heading,.dental-section-heading,.dental-treatment-item,.dental-history-event{gap:var(--crm-space-3);justify-content:space-between;align-items:center;display:flex}.dental-detail-heading h4,.dental-section-heading h5{margin:0}.dental-detail-heading,.dental-notes-field,.dental-treatment-panel,.dental-history-list{grid-column:1/-1}.dental-status-field{grid-column:1}.dental-detail-panel .dental-surfaces{grid-column:2}.dental-detail-panel>.client-actions{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);justify-content:start}.dental-status-chip{min-height:28px;padding:3px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);align-items:center;display:inline-flex}.dental-detail-panel label,.dental-plan-form{gap:var(--crm-space-2);display:grid}.dental-detail-panel textarea{resize:vertical;min-height:80px}.dental-surfaces{gap:var(--crm-space-2);padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);flex-wrap:wrap;margin:0;display:flex}.dental-surfaces legend{padding:0 var(--crm-space-2);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.dental-surfaces label{align-items:center;gap:var(--crm-space-2);display:inline-flex}.dental-surfaces input{width:auto}.dental-treatment-panel,.dental-history-list,.dental-treatment-list{gap:var(--crm-space-3);display:grid}.dental-treatment-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.dental-treatment-item,.dental-history-event{padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface)}.dental-treatment-item small,.dental-history-event small{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);margin-top:2px;display:block}.dental-treatment-actions{gap:var(--crm-space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.dental-treatment-actions button{min-height:30px;padding:4px var(--crm-space-2)}.dental-plan-form{grid-template-columns:minmax(140px,.75fr) minmax(180px,1fr) minmax(120px,.6fr) minmax(100px,.5fr) auto}.client-file-upload{gap:var(--crm-space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.client-appointment-detail{gap:var(--crm-space-4);padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:grid}.client-appointment-detail__header{gap:var(--crm-space-4);justify-content:space-between;align-items:flex-start;display:flex}.client-appointment-sections{gap:var(--crm-space-3);display:grid}.client-appointment-text-block,.client-appointment-sublist{padding:var(--crm-space-3) var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface)}.client-appointment-text-block p{color:var(--crm-color-text-muted);margin:0}.client-mini-calendar{gap:var(--crm-space-3);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid}.client-mini-calendar__header{gap:var(--crm-space-3);text-align:center;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;display:grid}.client-mini-calendar__header button{min-width:0;min-height:36px;padding:0}.client-mini-calendar__weekdays,.client-mini-calendar__days{gap:var(--crm-space-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.client-mini-calendar__weekdays span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-align:center;text-transform:uppercase}.client-mini-calendar__days button{min-width:0;min-height:34px;padding:0}.client-mini-calendar__days button.outside{color:var(--crm-color-text-muted);opacity:.55}.client-mini-calendar__days button[aria-pressed=true]{color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.client-appointment-time-row{gap:var(--crm-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.client-appointment-time-row label{gap:var(--crm-space-2);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase;display:grid}.client-facts{margin:0}.client-facts dt{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.client-facts dd{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:70%;margin:0;overflow:hidden}.platform-entry{background:var(--crm-color-page);grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);min-height:100vh;display:grid}.platform-entry__hero,.platform-entry__auth{align-content:center;gap:var(--crm-space-7);padding:clamp(32px,6vw,80px);display:grid}.platform-entry__hero{color:var(--crm-color-sidebar-text);background:var(--crm-color-sidebar)}.platform-entry__hero p{max-width:720px;color:var(--crm-color-sidebar-muted);font-size:var(--crm-font-size-lg)}.platform-entry__facts{gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.platform-entry__facts span{padding:var(--crm-space-3) var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-accent-strong);border-radius:var(--crm-radius-md);background:var(--crm-color-sidebar-raised);font-size:var(--crm-font-size-sm)}.platform-entry__auth{background:var(--crm-color-surface)}.home-actions{gap:var(--crm-space-5);display:grid}.button-row{gap:var(--crm-space-3);flex-wrap:wrap;display:flex}.session-actions{align-items:center;gap:var(--crm-space-3);display:flex}.locale-toggle{border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);display:inline-flex;overflow:hidden}.locale-toggle button{background:var(--crm-color-surface);border:0;border-radius:0;min-width:42px}.locale-toggle button[aria-pressed=true]{color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.team-toolbar{gap:var(--crm-space-4);margin-top:var(--crm-space-5);grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;display:grid}.team-filterbar{gap:var(--crm-space-4);margin-top:var(--crm-space-5);grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;display:grid}.team-list{gap:var(--crm-space-5);margin-top:var(--crm-space-5);grid-template-columns:minmax(0,1fr);display:grid}.team-card{gap:var(--crm-space-4);display:grid}.team-card.inactive{color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.team-card-header,.team-pagination{justify-content:space-between;align-items:center;gap:var(--crm-space-4);display:flex}.team-status,.team-role-chip{align-items:center;gap:var(--crm-space-2);min-height:34px;padding:6px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font-weight:var(--crm-font-weight-strong);display:inline-flex}.team-status--active{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.team-status--inactive{border-color:var(--crm-color-border-muted);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted)}.team-status--invited{background:#fff7df;border-color:#d4b36a}.team-role-chip button{border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);width:22px;height:22px;color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);font:inherit;place-items:center;padding:0;line-height:1;display:inline-grid}.team-role-draft{gap:var(--crm-space-3);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto;align-items:end;display:grid}.team-pagination{margin-top:var(--crm-space-5);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.team-muted{color:var(--crm-color-text-muted)}.role-chip-list{gap:var(--crm-space-2);flex-wrap:wrap;display:flex}.scheduling-toolbar{margin-bottom:var(--crm-space-6);grid-template-columns:minmax(0,1fr) 180px auto minmax(180px,240px)}.segmented-control{gap:var(--crm-space-2);grid-template-columns:repeat(2,minmax(72px,1fr));display:inline-grid}.segmented-control button[aria-pressed=true]{color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.request-filter-toolbar{margin-top:calc(-1 * var(--crm-space-4));grid-template-columns:minmax(0,1fr) auto}.request-filter-toolbar .segmented-control{grid-template-columns:repeat(3,minmax(72px,1fr))}.request-filter-summary{min-width:0;color:var(--crm-color-text-muted);font-weight:var(--crm-font-weight-strong);align-self:center}.scheduling-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.scheduling-grid--calendar-only{grid-template-columns:minmax(320px,1.2fr) minmax(280px,.8fr)}.scheduling-workbench{align-items:start;gap:var(--crm-space-5);grid-template-columns:minmax(520px,1fr) minmax(320px,420px);display:grid}.scheduling-calendar-column{min-width:0}.scheduling-side-rail{top:var(--crm-space-5);align-content:start;gap:var(--crm-space-4);overscroll-behavior:contain;min-width:0;max-height:calc(100dvh - 112px);padding-right:2px;display:grid;position:sticky;overflow:auto}.resource-toolbar{margin-bottom:var(--crm-space-4);grid-template-columns:minmax(0,1fr);display:grid}.resources-workspace>.segmented-control{margin-bottom:var(--crm-space-5);grid-template-columns:repeat(4,minmax(100px,1fr))}.resources-grid{align-items:start;gap:var(--crm-space-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.resources-grid textarea{resize:vertical;min-height:88px}.scheduling-calendar-wrap{position:relative}.scheduling-calendar-panel{overflow-x:auto}.calendar-selection-popover{top:72px;right:var(--crm-space-5);z-index:20;gap:var(--crm-space-4);overscroll-behavior:contain;width:min(360px,100vw - 24px);max-height:min(520px,100dvh - 24px);padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;position:fixed;overflow:auto;box-shadow:0 18px 44px #1d313738}.calendar-selection-drawer{z-index:24;border-left:var(--crm-border-width) solid var(--crm-color-border);background:var(--crm-color-surface);overscroll-behavior:contain;width:min(500px,100vw - 280px);min-width:380px;position:fixed;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-18px 0 44px #1d313738}.calendar-selection-drawer:focus{outline:none}.calendar-selection-popover h3{padding-right:34px}.calendar-selection-popover button:not(.calendar-popover-close){min-height:40px;padding:9px var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-accent-strong);border-radius:var(--crm-radius-md);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);font:inherit;font-weight:var(--crm-font-weight-strong)}.calendar-popover-close{top:var(--crm-space-3);right:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);width:28px;height:28px;color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);font-weight:var(--crm-font-weight-strong);place-items:center;padding:0;line-height:1;display:inline-grid;position:absolute}.calendar-selection-drawer .calendar-popover-close{flex:none;position:static}.calendar-selection-drawer button:not(.calendar-popover-close){min-width:0;min-height:36px;padding:8px var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font:inherit;font-size:var(--crm-font-size-sm);font-weight:var(--crm-font-weight-strong)}.calendar-selection-drawer button:not(.calendar-popover-close):not(:disabled){cursor:pointer}.calendar-selection-drawer button:disabled{cursor:default;opacity:.66}.schedule-drawer-frame{background:var(--crm-color-surface);grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;min-height:100%;display:grid}.schedule-drawer-header{gap:var(--crm-space-4);padding:var(--crm-space-6) var(--crm-space-6) var(--crm-space-4);border-bottom:var(--crm-border-width) solid var(--crm-color-border-muted);background:var(--crm-color-surface-muted);display:grid}.schedule-drawer-title-row,.schedule-drawer-heading-row{justify-content:space-between;align-items:start;gap:var(--crm-space-4);min-width:0;display:flex}.schedule-drawer-heading-row{align-items:center}.schedule-drawer-heading-row h3{overflow-wrap:anywhere;min-width:0;margin:0}.schedule-drawer-status{padding:4px var(--crm-space-3);border:var(--crm-border-width) solid #8fb5a0;color:#173f2a;font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);background:#dcefe5;border-radius:999px;flex:none}.schedule-drawer-status[data-status=draft],.schedule-drawer-status[data-status=scheduled]{color:#27465d;background:#e7eef7;border-color:#8aa3b8}.schedule-drawer-status[data-status=cancelled],.schedule-drawer-status[data-status=no-show]{color:#693035;background:#f7e5e7;border-color:#d49aa0}.schedule-drawer-status[data-status=completed],.schedule-drawer-status[data-status=rescheduled]{color:#35484f;background:#eef2f3;border-color:#bdc8ce}.schedule-drawer-metrics{gap:var(--crm-space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.schedule-drawer-metrics div{min-width:0;padding:var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);gap:2px;display:grid}.schedule-drawer-metrics strong{color:var(--crm-color-text);font-size:var(--crm-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-drawer-tabs{gap:var(--crm-space-2);min-width:0;padding:var(--crm-space-3) var(--crm-space-6);border-bottom:var(--crm-border-width) solid var(--crm-color-border-muted);background:var(--crm-color-surface);display:flex;overflow-x:auto}.schedule-drawer-tabs button{min-height:34px;padding:7px var(--crm-space-3);white-space:nowrap;flex:none}.schedule-drawer-tabs button[aria-selected=true]{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.schedule-drawer-tabs button[aria-disabled=true]{color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);border-style:dashed}.schedule-drawer-body{min-height:0;padding:var(--crm-space-5) var(--crm-space-6);overflow:auto}.schedule-drawer-tab-panel{gap:var(--crm-space-4);display:grid}.schedule-drawer-footer{padding:var(--crm-space-4) var(--crm-space-6);border-top:var(--crm-border-width) solid var(--crm-color-border-muted);background:var(--crm-color-surface);box-shadow:0 -10px 24px #1d313714}.schedule-drawer-footer .calendar-action-menu{position:static}.schedule-drawer-footer .calendar-action-row,.schedule-drawer-footer .calendar-action-menu{background:0 0;margin:0;padding:0}.schedule-drawer-footer .calendar-action-row button:first-child,.schedule-drawer-footer .calendar-action-menu button:first-of-type,.calendar-selection-drawer .appointment-new-client-fields button{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.calendar-selection-drawer .calendar-danger-action{color:#fff;background:#c94c57;border-color:#c94c57}.schedule-medical-bridge p{margin:0}.schedule-visit-status-grid{gap:var(--crm-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-visit-status-grid button{border-color:var(--crm-color-border-muted);color:var(--crm-color-text-muted);background:var(--crm-color-surface-muted);justify-content:center}.schedule-visit-status-grid button[aria-pressed=true]{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg);opacity:1}.calendar-heading{justify-content:space-between;align-items:start;gap:var(--crm-space-4);display:flex}.calendar-range{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);margin:0}.calendar-status-legend{gap:var(--crm-space-2) var(--crm-space-3);margin-bottom:var(--crm-space-3);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);flex-wrap:wrap;display:flex}.calendar-status-legend-item{align-items:center;gap:6px;min-width:0;display:inline-flex}.calendar-status-legend-item>span{border:var(--crm-border-width) solid currentColor;background:currentColor;border-radius:999px;width:10px;height:10px}.calendar-grid{border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);min-width:720px;display:grid}.calendar-corner,.calendar-day-heading{min-height:58px;padding:var(--crm-space-3) var(--crm-space-4);border-bottom:var(--crm-border-width) solid var(--crm-color-border-muted);background:var(--crm-color-surface-muted)}.calendar-day-heading{justify-content:space-between;align-items:start;gap:var(--crm-space-3);border-left:var(--crm-border-width) solid var(--crm-color-border-muted);display:flex}.calendar-day-heading div{gap:2px;min-width:0;display:grid}.calendar-day-heading strong,.calendar-day-heading span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-day-heading span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.calendar-working-time-button{min-height:28px;padding:4px var(--crm-space-3);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-sm);color:var(--crm-color-text-muted);background:var(--crm-color-surface);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);flex:none}.calendar-time-axis,.calendar-day-column{min-height:672px;position:relative}.calendar-time-axis{border-right:var(--crm-border-width) solid var(--crm-color-border-muted);background:var(--crm-color-surface-muted)}.calendar-time-axis span{right:var(--crm-space-3);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);position:absolute;transform:translateY(-50%)}.calendar-day-column{border-left:var(--crm-border-width) solid var(--crm-color-border-muted)}.calendar-slot{border:0;border-bottom:var(--crm-border-width) solid var(--crm-color-border-muted);cursor:default;background:0 0;border-radius:0;padding:0;position:absolute;left:0;right:0}.calendar-slot:nth-child(2n){background:color-mix(in srgb, var(--crm-color-surface-muted) 34%, transparent)}.calendar-slot.creatable{cursor:crosshair}.calendar-slot.creatable:hover,.calendar-slot.creatable:focus-visible,.calendar-slot.over{background:var(--crm-color-accent-bg)}.calendar-slot.selected{background:color-mix(in srgb, var(--crm-color-accent-bg) 78%, #fff);box-shadow:inset 3px 0 0 var(--crm-color-accent)}.calendar-slot.read-only,.calendar-slot:disabled{cursor:default;opacity:1}.tool-panel .calendar-appointment{right:var(--crm-space-2);left:var(--crm-space-2);min-height:26px;padding:4px 30px 4px var(--crm-space-3);border-radius:var(--crm-radius-md);color:var(--crm-color-text);font-size:var(--crm-font-size-xs);text-align:left;touch-action:none;white-space:normal;z-index:2;background:#e8f1ef;border-color:#5f7c85;border-left-width:4px;align-content:center;gap:3px;line-height:1.2;display:grid;position:absolute;overflow:hidden;box-shadow:0 6px 16px #1d313724}.calendar-status-legend-item.status-scheduled,.calendar-status-legend-item.status-confirmed,.calendar-status-legend-item.status-completed,.calendar-status-legend-item.status-cancelled,.calendar-status-legend-item.status-no-show,.calendar-status-legend-item.status-rescheduled{background:0 0}.tool-panel .calendar-appointment.status-rescheduled{border-style:dashed}.calendar-appointment-grip{top:50%;right:var(--crm-space-2);border-radius:var(--crm-radius-sm);color:#4c626a;cursor:grab;width:18px;height:22px;font-size:12px;font-weight:var(--crm-font-weight-strong);opacity:.72;place-items:center;line-height:1;display:grid;position:absolute;transform:translateY(-50%)}.calendar-appointment-grip:hover,.calendar-appointment-grip:focus-visible{opacity:1;background:#ffffff94}.calendar-appointment-main{align-items:center;gap:var(--crm-space-2);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid}.calendar-appointment strong,.calendar-appointment span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-appointment-time,.calendar-appointment-service{color:#4c626a}.calendar-appointment-time{font-size:10px;font-weight:var(--crm-font-weight-strong)}.calendar-appointment-service{font-size:11px}.calendar-appointment.compact{padding-top:4px;padding-bottom:4px}.calendar-appointment.compact .calendar-appointment-service{display:none}.calendar-appointment.draggable{cursor:grab}.calendar-appointment.dragging{cursor:grabbing;opacity:.82;z-index:5}.tool-panel .calendar-appointment.selected{outline:2px solid var(--crm-color-accent);outline-offset:1px}.tool-panel .calendar-appointment.read-only,.tool-panel .calendar-appointment:disabled{box-shadow:none;cursor:pointer;opacity:1}.calendar-detail-list{gap:var(--crm-space-3);margin:0 0 var(--crm-space-4);display:grid}.calendar-detail-list div{gap:2px;display:grid}.calendar-detail-list dt{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.calendar-detail-list dd{overflow-wrap:anywhere;margin:0}.schedule-drawer-patient{gap:var(--crm-space-4);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);margin-bottom:var(--crm-space-4);grid-template-columns:46px minmax(0,1fr);align-items:center;display:grid}.schedule-drawer-patient.compact{background:0 0;border:0;grid-template-columns:52px minmax(0,1fr);width:100%;margin-bottom:0;padding:0}.schedule-drawer-avatar{width:46px;height:46px;color:var(--crm-color-accent-text);background:var(--crm-color-accent);font-weight:var(--crm-font-weight-strong);border-radius:999px;place-items:center;display:grid}.schedule-drawer-patient.compact .schedule-drawer-avatar{width:52px;height:52px;color:var(--crm-color-accent);background:#dff3ef}.schedule-drawer-patient div:last-child{gap:2px;min-width:0;display:grid}.schedule-drawer-patient strong,.schedule-drawer-patient span{overflow-wrap:anywhere}.schedule-drawer-patient span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm)}.schedule-drawer-patient.compact span:first-child{font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.appointment-draft-fields{gap:var(--crm-space-3);margin-bottom:var(--crm-space-4);display:grid}.appointment-draft-fields label{gap:var(--crm-space-2);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase;display:grid}.appointment-client-mode{gap:var(--crm-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.appointment-new-client-fields{gap:var(--crm-space-3);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid}.calendar-selection-popover .appointment-draft-fields input,.calendar-selection-popover .appointment-draft-fields select,.calendar-selection-drawer .appointment-draft-fields input,.calendar-selection-drawer .appointment-draft-fields select{min-width:0;min-height:40px;padding:9px var(--crm-space-4);border:var(--crm-border-width) solid #b9c8cd;border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font:inherit;font-size:var(--crm-font-size-md);text-transform:none;font-weight:400}.calendar-appointment-detail-shell{gap:var(--crm-space-4);grid-template-columns:minmax(0,1fr) 116px;align-items:start;display:grid}.calendar-selection-drawer .calendar-appointment-detail-shell{grid-template-columns:minmax(0,1fr)}.schedule-drawer-linked-panel{gap:var(--crm-space-3);margin-top:var(--crm-space-4);padding:var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-sm);background:var(--crm-color-surface-muted);display:grid}.schedule-drawer-linked-panel h4{font-size:var(--crm-font-size-md);margin:0;line-height:1.25}.schedule-drawer-inline-form{gap:var(--crm-space-3);display:grid}.schedule-drawer-inline-form label{gap:var(--crm-space-1);display:grid}.schedule-drawer-inline-form label span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:600}.schedule-drawer-inline-form input,.schedule-drawer-inline-form select{width:100%;min-width:0;min-height:38px;padding:8px var(--crm-space-3);border:var(--crm-border-width) solid #b9c8cd;border-radius:var(--crm-radius-sm);color:var(--crm-color-text);background:var(--crm-color-surface);font:inherit;font-size:var(--crm-font-size-sm)}.schedule-drawer-inline-form button{width:100%}.calendar-action-menu,.calendar-action-row{gap:var(--crm-space-2);display:grid}.calendar-action-menu{position:sticky;top:0}.calendar-action-row{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-action-row.single{grid-template-columns:minmax(0,1fr)}.calendar-selection-popover .calendar-action-row{margin-bottom:calc(-1 * var(--crm-space-2));padding-top:var(--crm-space-3);padding-bottom:var(--crm-space-2);background:var(--crm-color-surface);position:sticky;bottom:0}.calendar-selection-popover .calendar-action-menu button,.calendar-selection-popover .calendar-action-row button,.calendar-selection-drawer .calendar-action-menu button,.calendar-selection-drawer .calendar-action-row button,.tool-panel .calendar-action-menu button,.tool-panel .calendar-action-row button{width:100%;min-height:34px;padding:7px var(--crm-space-3);font-size:var(--crm-font-size-sm)}.calendar-selection-popover .calendar-secondary-action,.calendar-selection-drawer .calendar-secondary-action,.tool-panel .calendar-secondary-action{border-color:var(--crm-color-border);color:var(--crm-color-text);background:var(--crm-color-surface)}.schedule-modal-backdrop{z-index:30;padding:var(--crm-space-8);background:#11181d6b;place-items:center;display:grid;position:fixed;inset:0}.schedule-working-time-modal{gap:var(--crm-space-5);width:min(760px,100%);max-height:min(680px,100dvh - 48px);padding:var(--crm-space-8);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);background:var(--crm-color-surface);display:grid;overflow:auto;box-shadow:0 24px 60px #1d313742}.schedule-modal-heading,.schedule-breaks-heading,.schedule-modal-actions{justify-content:space-between;align-items:start;gap:var(--crm-space-4);display:flex}.schedule-modal-heading h3,.schedule-breaks-heading h4{margin:0}.schedule-modal-heading p{margin:var(--crm-space-2) 0 0;color:var(--crm-color-text-muted)}.schedule-modal-heading button,.schedule-breaks-heading button,.schedule-modal-actions button,.schedule-break-row button{min-height:38px;padding:7px var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface);font-weight:var(--crm-font-weight-strong)}.schedule-working-time-grid,.schedule-break-row{gap:var(--crm-space-4);display:grid}.schedule-working-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-working-time-grid label{gap:var(--crm-space-2);display:grid}.schedule-working-time-grid span{color:var(--crm-color-text-muted);font-size:var(--crm-font-size-xs);font-weight:var(--crm-font-weight-strong);text-transform:uppercase}.schedule-working-time-grid input,.schedule-break-row input{min-width:0;min-height:42px;padding:9px var(--crm-space-4);border:var(--crm-border-width) solid var(--crm-color-border);border-radius:var(--crm-radius-md);color:var(--crm-color-text);background:var(--crm-color-surface)}.schedule-breaks{gap:var(--crm-space-3);display:grid}.schedule-break-row{grid-template-columns:minmax(180px,1fr) 120px 120px auto;align-items:center}.schedule-modal-actions{justify-content:flex-end}.schedule-modal-actions button:last-child{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.modules-grid,.workspace-onboarding-grid,.package-presets-grid{gap:var(--crm-space-5);margin-top:var(--crm-space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.workspace-onboarding-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-step-strip{gap:var(--crm-space-3);margin-top:var(--crm-space-5);flex-wrap:wrap;display:flex}.onboarding-concierge-layout{gap:var(--crm-space-5);margin-top:var(--crm-space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.onboarding-concierge-layout--focused{grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr)}.onboarding-active-step{min-height:360px}.onboarding-option-grid{gap:var(--crm-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.onboarding-option{white-space:normal;min-height:48px}.onboarding-option[aria-pressed=true]{color:var(--crm-color-accent-text);background:var(--crm-color-accent)}.onboarding-review{grid-column:span 2}.onboarding-review summary{margin-bottom:var(--crm-space-4);color:var(--crm-color-text-muted);font-size:var(--crm-font-size-sm);font-weight:var(--crm-font-weight-strong)}.modules-actions,.package-presets-actions{gap:var(--crm-space-4);display:grid}.growth-composer-grid{margin-top:var(--crm-space-5)}.tutorial-progress{justify-content:space-between;align-items:center;gap:var(--crm-space-5);margin-bottom:var(--crm-space-5);padding:var(--crm-space-5);border:var(--crm-border-width) solid var(--crm-color-border-muted);border-radius:var(--crm-radius-md);background:var(--crm-color-surface-muted);display:flex}.tutorial-progress span{color:var(--crm-color-text-muted)}.tutorial-task-grid{gap:var(--crm-space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tutorial-task{min-height:220px}.content-grid>.panel.wide,.dashboard-section,.clinical-detail-card,.finance-detail-card,.payroll-detail-panel,.client-card,.tasks-toolbar,.tasks-column,.modules-grid>.tool-panel,.workspace-onboarding-grid>.tool-panel,.package-presets-grid>.tool-panel{box-shadow:var(--crm-shadow-sm)}.session-actions{flex-wrap:wrap;justify-content:flex-end;max-width:min(720px,100%)}.segmented-control,.finance-tabs,.payroll-tabs,.client-card-tabs{border-color:color-mix(in srgb, var(--crm-color-border-muted) 82%, var(--crm-color-accent));box-shadow:inset 0 1px #ffffffb8}.segmented-control button,.finance-tabs button,.payroll-tabs button,.client-card-tabs button{transition:border-color .16s,background-color .16s,color .16s}.segmented-control button[aria-pressed=true],.finance-tabs button.active,.payroll-tabs button.active,.client-card-tabs button[aria-current=page]{border-color:var(--crm-color-accent-strong);background:linear-gradient(180deg, #e9fbf8, var(--crm-color-accent-bg))}.dashboard-quick-link,.finance-summary-card--button,.client-list button,.clinical-worklist button,.finance-worklist button,.payroll-employee-list button,.task-card{transition:border-color .16s,background-color .16s,box-shadow .16s}.dashboard-quick-link:hover,.finance-summary-card--button:hover,.client-list button:hover,.clinical-worklist button:hover,.finance-worklist button:hover,.payroll-employee-list button:hover,.task-card:hover{border-color:var(--crm-color-accent-strong);box-shadow:var(--crm-shadow-md)}.tasks-column{background:linear-gradient(180deg, #ffffff9e, #fff0 120px), var(--crm-color-surface-muted)}.tasks-column-heading span,.task-card-heading span,.clinical-result-badge.completed,.clinical-result-badge.published,.finance-payment-badge.confirmed,.payroll-filter-chip{border-color:var(--crm-color-accent-strong);background:var(--crm-color-accent-bg)}.calendar-grid{box-shadow:var(--crm-shadow-sm)}.calendar-day-heading,.calendar-corner{background:linear-gradient(180deg, #fff, var(--crm-color-surface-muted))}.tool-panel .calendar-appointment.status-confirmed,.calendar-status-legend-item.status-confirmed{border-color:var(--crm-color-accent-strong);color:var(--crm-color-accent-text);background:var(--crm-color-accent-bg)}.tool-panel .calendar-appointment.status-cancelled,.calendar-status-legend-item.status-cancelled{border-color:var(--crm-color-danger-border);color:var(--crm-color-danger-text);background:var(--crm-color-danger-bg)}.tool-panel .calendar-appointment.status-no-show,.calendar-status-legend-item.status-no-show{border-color:var(--crm-color-warning-border);color:var(--crm-color-warning-text);background:var(--crm-color-warning-bg)}.scheduling-panel{background:linear-gradient(180deg, #ffffffe0, #fff0 220px), var(--crm-color-surface);border-color:#c8dadd;padding:20px;box-shadow:0 14px 40px #0c252c17}.scheduling-panel>.panel-heading{border-bottom:var(--crm-border-width) solid #d4e3e6;align-items:center;margin-bottom:16px;padding-bottom:16px}.scheduling-panel>.panel-heading h2{color:#0e2027;margin:0;font-size:20px;line-height:1.2}.scheduling-panel>.panel-heading .status,.calendar-interaction-status{border-radius:999px;min-height:30px;font-size:12px}.scheduling-main-toolbar{border:var(--crm-border-width) solid #d9e8eb;border-radius:var(--crm-radius-md);background:#f8fcfc;grid-template-columns:minmax(220px,1fr) 168px auto minmax(170px,220px);align-items:center;gap:10px;margin-bottom:10px;padding:12px}.scheduling-toolbar input,.scheduling-toolbar select{background:#fff;border-color:#c7dadd;min-height:42px;box-shadow:inset 0 1px #ffffffdb}.scheduling-toolbar input:hover,.scheduling-toolbar select:hover,.calendar-selection-drawer input:hover,.calendar-selection-drawer select:hover{border-color:#9fc9cd}.scheduling-view-toggle,.scheduling-toolbar .segmented-control{border:var(--crm-border-width) solid #d4e4e7;border-radius:var(--crm-radius-md);background:#eef6f6;align-items:center;gap:3px;padding:3px}.scheduling-toolbar .segmented-control button{border-radius:var(--crm-radius-sm);color:#4f6870;background:0 0;border:0;min-height:34px;padding:6px 12px;font-size:13px}.scheduling-toolbar .segmented-control button:hover{background:#ffffffb8}.scheduling-toolbar .segmented-control button[aria-pressed=true]{color:#fff;background:linear-gradient(#31c9bc,#19a79b);box-shadow:0 8px 18px #11998d38}.schedule-date-strip{border:var(--crm-border-width) solid #d9e8eb;border-radius:var(--crm-radius-md);background:#fff;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0 0 12px;padding:8px;display:grid}.schedule-date-strip button{border:var(--crm-border-width) solid transparent;border-radius:var(--crm-radius-md);color:#657c83;min-width:0;min-height:54px;font-weight:var(--crm-font-weight-strong);background:#f7fbfb;place-items:center;gap:2px;padding:6px 4px;display:grid}.schedule-date-strip button:hover{color:#15343b;background:#eefafa;border-color:#b8dfe0}.schedule-date-strip button[aria-pressed=true]{color:#fff;background:linear-gradient(#31c9bc,#19a79b);border-color:#17a99c;box-shadow:0 10px 22px #11998d38}.schedule-date-strip span{font-size:11px}.schedule-date-strip strong{font-size:16px;line-height:1}.request-filter-toolbar{grid-template-columns:minmax(0,1fr) auto;margin:0 0 12px;padding:0 2px}.request-filter-summary{color:#4a626b;font-size:13px}.scheduling-workbench{grid-template-columns:minmax(680px,1fr) minmax(280px,360px);gap:12px}.scheduling-calendar-panel{background:#fff;border-color:#d5e5e8;gap:0;min-height:0;padding:0;overflow:hidden;box-shadow:0 10px 28px #0c252c14}.scheduling-calendar-panel .calendar-heading{border-bottom:var(--crm-border-width) solid #dfebed;background:#fff;align-items:center;padding:14px 16px 10px}.scheduling-calendar-panel .calendar-heading h3{color:#0f2027;margin:0;font-size:16px;line-height:1.2}.calendar-range{color:#59727a;margin-top:2px;font-size:12px}.calendar-interaction-status{color:#0b5952;text-transform:lowercase;background:#e3f7f4;border-color:#8fcfc8}.calendar-interaction-status.is-readonly{color:#586c74;background:#f1f6f6;border-color:#c7d5d8}.calendar-status-legend{border-bottom:var(--crm-border-width) solid #e2ecef;background:#f8fcfc;gap:8px 12px;margin:0;padding:10px 16px;font-size:11px}.calendar-status-legend-item>span{width:8px;height:8px}.calendar-grid{min-width:760px;box-shadow:none;background:#fff;border:0;border-radius:0}.calendar-corner,.calendar-day-heading{background:#fff;border-color:#dce9eb;min-height:62px;padding:10px 12px}.calendar-corner{background:#f8fcfc;position:relative}.calendar-corner span{color:#6c8087;font-size:11px;font-weight:var(--crm-font-weight-strong);position:absolute;bottom:12px;right:12px}.calendar-day-heading{align-items:center}.calendar-day-heading--doctor{grid-template-columns:34px minmax(0,1fr) auto;display:grid}.calendar-day-heading--date{display:flex}.calendar-day-heading--date .calendar-doctor-avatar{display:none}.calendar-doctor-avatar{border:var(--crm-border-width) solid #b9dddf;color:#118d84;width:32px;height:32px;font-size:11px;font-weight:var(--crm-font-weight-strong);background:#e2f5f2;border-radius:999px;place-items:center;display:grid}.calendar-day-heading-copy{min-width:0}.calendar-day-heading-copy strong{color:#26363d;font-size:12px;line-height:1.2}.calendar-day-heading-copy span{color:#70848b;font-size:11px}.calendar-working-time-button{color:#0f6760;background:#ebfaf7;border-color:#9ccbc7;min-height:28px;padding:4px 9px}.calendar-time-axis,.calendar-day-column{min-height:672px}.calendar-time-axis{background:#f8fcfc;border-right-color:#dce9eb}.calendar-time-axis span{color:#687f86;font-size:11px;font-weight:700;right:10px}.calendar-day-column{background:linear-gradient(90deg,#11998d08,#0000 1px),#fff;border-left-color:#e1ecee}.scheduling-calendar-panel .calendar-slot{border:0;border-bottom:var(--crm-border-width) solid #e1ecee;color:#0000;min-height:28px;box-shadow:none;background:0 0;border-bottom-color:#e1ecee;border-radius:0;padding:0}.scheduling-calendar-panel .calendar-slot:nth-child(2n){background:#fbfdfd}.scheduling-calendar-panel .calendar-slot.creatable:hover,.scheduling-calendar-panel .calendar-slot.creatable:focus-visible,.scheduling-calendar-panel .calendar-slot.over{background:#e7f8f5;box-shadow:inset 0 0 0 1px #93d9d2}.scheduling-calendar-panel .calendar-slot.selected{background:#dff5f1;box-shadow:inset 3px 0 #19a79b}.tool-panel .calendar-appointment{border-width:var(--crm-border-width);border-left-width:4px;border-radius:8px;gap:2px;min-height:28px;padding:5px 26px 5px 9px;font-size:12px;line-height:1.16;left:6px;right:6px;box-shadow:0 8px 16px #0c252c1f}.calendar-appointment-main{grid-template-columns:minmax(0,1fr);gap:1px}.calendar-appointment-main strong{color:inherit;grid-row:2;font-size:12px;font-weight:800}.calendar-appointment-time{color:currentColor;opacity:.82;grid-row:1;font-size:10px}.calendar-appointment-service{color:currentColor;opacity:.72;font-size:10px;font-style:italic}.calendar-appointment-grip{color:currentColor;opacity:.58;width:16px;height:20px;right:5px}.tool-panel .calendar-appointment.selected{outline-offset:1px;outline:2px solid #18b2a6;box-shadow:0 10px 24px #11998d2e}.tool-panel .calendar-appointment.status-scheduled,.calendar-status-legend-item.status-scheduled{color:#123f6c;background:#e8f2ff;border-color:#2d79b7}.tool-panel .calendar-appointment.status-confirmed,.calendar-status-legend-item.status-confirmed{color:#0f594e;background:#d9f5ee;border-color:#16a085}.tool-panel .calendar-appointment.status-completed,.calendar-status-legend-item.status-completed{color:#314952;background:#eef4f5;border-color:#6f8790}.tool-panel .calendar-appointment.status-cancelled,.calendar-status-legend-item.status-cancelled{color:#7b2329;background:#fde9eb;border-color:#d5535d}.tool-panel .calendar-appointment.status-no-show,.calendar-status-legend-item.status-no-show{color:#734e08;background:#fff2d4;border-color:#d89b22}.tool-panel .calendar-appointment.status-rescheduled,.calendar-status-legend-item.status-rescheduled{color:#33464f;background:#edf3f5;border-color:#627581}.scheduling-side-rail .tool-panel{box-shadow:var(--crm-shadow-sm);background:#fff;border-color:#d5e5e8}.calendar-selection-drawer{background:#fff;border-left-color:#d6e5e8;width:min(540px,100vw - 252px);min-width:420px;box-shadow:-20px 0 54px #0c252c2e}.schedule-drawer-frame{background:#fff}.schedule-drawer-header{background:#fff;border-bottom-color:#dce9eb;gap:14px;padding:18px 18px 14px}.schedule-drawer-title-row,.schedule-drawer-heading-row{gap:12px}.schedule-drawer-patient.compact{grid-template-columns:52px minmax(0,1fr);gap:10px}.schedule-drawer-avatar{color:#159f94;background:#e0f5f2;font-size:17px}.schedule-drawer-patient.compact .schedule-drawer-avatar{color:#18a79d;background:#e0f5f2;width:52px;height:52px}.schedule-drawer-patient.compact span:first-child{color:#43636b;letter-spacing:0;font-size:10px}.schedule-drawer-patient strong{color:#0d2028;font-size:16px;line-height:1.18}.schedule-drawer-patient span{font-size:12px}.calendar-selection-drawer .calendar-popover-close{color:#496169;background:#f8fcfc;border-color:#d3e1e4;width:30px;height:30px}.schedule-drawer-heading-row h3{color:#102128;font-size:15px;line-height:1.2}.schedule-drawer-status{border-radius:999px;min-height:28px;padding:4px 10px;font-size:12px}.schedule-drawer-status[data-status=confirmed]{color:#0d683a;background:#ddf4e5;border-color:#7ccf9c}.schedule-drawer-metrics{gap:8px}.schedule-drawer-metrics div{background:#f8fcfc;border-color:#d7e6e8;min-height:70px;padding:10px}.schedule-drawer-metrics span,.schedule-drawer-metrics small{color:#657c83;font-size:11px}.schedule-drawer-metrics strong{color:#12272f;font-size:14px;line-height:1.22}.schedule-drawer-tabs{background:#fff;border-bottom-color:#dce9eb;gap:6px;padding:0 18px}.schedule-drawer-tabs button{color:#637982;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;min-height:42px;padding:10px 9px}.schedule-drawer-tabs button:hover{color:#143238;background:#f7fbfb}.schedule-drawer-tabs button[aria-selected=true]{color:#0d3f3a;background:#edfafa;border-color:#17a99c}.schedule-drawer-tabs button[aria-disabled=true]{color:#9baab0;background:0 0;border-bottom-style:dashed}.schedule-drawer-body{background:#fff;padding:16px 18px}.schedule-drawer-tab-panel{gap:12px}.calendar-detail-list{gap:10px;margin-bottom:0}.calendar-detail-list div{gap:3px}.calendar-detail-list dt{color:#526c74;letter-spacing:0;font-size:11px}.calendar-detail-list dd{color:#10242c;font-size:14px;line-height:1.35}.schedule-visit-status-grid{gap:8px}.schedule-visit-status-grid button{color:#506870;background:#fff;border-color:#d3e2e5;min-height:36px}.schedule-visit-status-grid button[aria-pressed=true]{color:#0d4f49;background:#d9f5f1;border-color:#17a99c;box-shadow:inset 0 0 0 1px #17a99c3d}.appointment-client-mode{border:var(--crm-border-width) solid #d5e5e8;border-radius:var(--crm-radius-md);background:#f3f9f9;gap:8px;padding:3px}.appointment-client-mode button{background:0 0;border:0}.appointment-client-mode button[aria-pressed=true]{color:#fff;background:#19a79b}.calendar-selection-drawer .appointment-draft-fields input,.calendar-selection-drawer .appointment-draft-fields select{background:#f9fcfc;border-color:#cfe0e4;min-height:42px}.appointment-draft-fields label{color:#526c74;letter-spacing:0;font-size:11px}.appointment-new-client-fields{background:#f8fcfc;border-color:#d7e6e8}.schedule-drawer-footer{background:linear-gradient(#ffffffd1,#fff);border-top-color:#dce9eb;padding:14px 18px;box-shadow:0 -12px 26px #0c252c14}.calendar-selection-drawer .calendar-action-menu button,.calendar-selection-drawer .calendar-action-row button{border-radius:var(--crm-radius-md);min-height:36px}.schedule-drawer-footer .calendar-action-row button:first-child,.schedule-drawer-footer .calendar-action-menu button:first-of-type,.calendar-selection-drawer .appointment-new-client-fields button{color:#073f3b;background:#d8f5f1;border-color:#17a99c}.schedule-medical-bridge{border:var(--crm-border-width) solid #d7e6e8;border-radius:var(--crm-radius-md);background:#f8fcfc;padding:12px}.schedule-medical-bridge p{color:#324950;line-height:1.45}.modules-grid>.tool-panel,.workspace-onboarding-grid>.tool-panel,.package-presets-grid>.tool-panel{background:linear-gradient(180deg, #ffffffbd, #fff0 120px), var(--crm-color-surface-muted);min-height:230px}.modules-actions button:disabled,.package-presets-actions button:disabled{border-style:dashed}@media (width<=920px){.auth-grid,.client-toolbar,.clinical-appointment-facts,.clinical-filterbar,.clinical-layout,.dashboard-layout,.dashboard-toolbar,.finance-appointment-facts,.finance-action-row,.finance-action-grid,.finance-filterbar,.finance-layout,.finance-category-grid,.finance-management-actions,.finance-management-grid,.finance-modal-form,.finance-overview-controls,.finance-payment-facts,.finance-overview-filterbar,.finance-quick-links,.finance-ledger-row,.finance-summary-grid,.payroll-default-rate,.payroll-detail-grid,.payroll-filters,.payroll-history-advanced,.payroll-history-controlbar,.payroll-history-detail-row,.payroll-history-employee-row,.payroll-history-summary-grid,.payroll-setting-card,.payroll-summary-grid,.dashboard-summary-grid,.payroll-workbench,.client-appointment-time-row,.client-appointment-detail__header,.client-actions,.client-card-tabs,.client-dental-layout,.dental-detail-panel,.client-file-upload,.dental-plan-form,.clients-grid,.onboarding-form-grid,.onboarding-concierge-layout,.onboarding-option-grid,.team-list,.team-filterbar,.team-role-draft,.team-toolbar,.resources-grid,.resources-workspace>.segmented-control,.scheduling-grid--calendar-only,.scheduling-workbench,.scheduling-toolbar,.schedule-working-time-grid,.schedule-break-row,.modules-grid,.workspace-onboarding-grid,.package-presets-grid,.platform-entry,.tutorial-task-grid{grid-template-columns:1fr}.client-list-panel,.clinical-list-panel,.clinical-detail-card,.finance-list-panel,.finance-detail-card,.payroll-list-panel,.payroll-detail-panel,.client-card{max-height:none;position:static}.scheduling-side-rail{max-height:none;padding-right:0;position:static;overflow:visible}.calendar-selection-drawer{border-top:0;border-left:0;border-radius:0;width:100vw;min-width:0;height:100dvh;inset:0}.schedule-drawer-header{padding:var(--crm-space-4)}.schedule-drawer-tabs{padding:var(--crm-space-3) var(--crm-space-4)}.schedule-drawer-body{padding:var(--crm-space-4)}.schedule-drawer-footer{padding:var(--crm-space-3) var(--crm-space-4)}.schedule-drawer-metrics{grid-template-columns:1fr}.schedule-modal-backdrop{padding:var(--crm-space-4)}.payroll-history-employee-header{display:none}.payroll-history-detail-panel{margin-left:0}.client-list,.clinical-worklist,.finance-worklist,.payroll-employee-list{max-height:none;overflow:visible}}
