:root{color:#17202a;background:#f4f7f6;font-family:Inter,Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--surface: #ffffff;--surface-soft: #edf5f3;--ink: #17202a;--muted: #647175;--line: #d9e2e0;--primary: #0f766e;--primary-strong: #115e59;--accent: #b45309;--danger: #b42318;--danger-soft: #fef3f2;--sidebar: #173b3a;--shadow: 0 18px 48px rgba(20, 52, 48, .12)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}#dialogs,#calendar,#notifications,#analytics,#settings{scroll-margin-top:24px}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.15}h2{font-size:18px}h3{font-size:15px}.auth-layout{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(135deg,#0f766e1a,#b4530914),#f4f7f6}.login-panel{display:grid;width:min(440px,100%);gap:18px;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.loading-mark{display:grid;width:54px;height:54px;place-items:center;border-radius:8px;color:var(--primary);background:var(--surface);box-shadow:var(--shadow)}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:28px;padding:24px;color:#f7fbfa;background:var(--sidebar)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:8px;color:inherit;background:#ffffff1a}.brand.compact .brand-mark{color:var(--primary);border-color:var(--line);background:var(--surface-soft)}.brand-title,.brand-subtitle,.metric-label,.metric-trend{display:block}.brand-title{font-size:17px;font-weight:700}.brand-subtitle{margin-top:2px;color:#b9d8d4;font-size:13px}.brand.compact .brand-subtitle{color:var(--muted)}.nav-list{display:grid;gap:8px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 12px;color:#d8e8e5;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left}.nav-item:hover,.nav-item:focus-visible,.nav-item.active{color:#fff;border-color:#ffffff2e;background:#ffffff1a;outline:none}.workspace{display:flex;flex-direction:column;gap:24px;min-width:0;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar-actions{display:flex;align-items:center;gap:10px}.eyebrow{margin:0 0 4px;color:var(--primary);font-size:13px;font-weight:700;text-transform:uppercase}.status-pill,.mode-badge,.status-tag{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:7px 10px;border:1px solid #b9d8d4;border-radius:999px;color:var(--primary-strong);background:var(--surface-soft);white-space:nowrap}.status-pill{min-height:38px;padding:8px 12px}.mode-badge{color:var(--accent);border-color:#fed7aa;background:#fff7ed;font-size:13px}.status-tag{min-height:28px;font-size:12px;font-weight:700}.status-tag.needs_human,.status-tag.failed{color:var(--danger);border-color:#fecdca;background:var(--danger-soft)}.status-tag.handoff-reason{color:var(--accent);border-color:#fed7aa;background:#fff7ed}.status-tag.test-data{color:#9a4b00;border-color:#fed7aa;background:#fff7ed}.status-tag.pending{color:var(--accent);border-color:#fed7aa;background:#fff7ed}.status-tag.sent,.status-tag.active{color:var(--primary-strong);border-color:#b9d8d4;background:var(--surface-soft)}.status-tag.paused{color:#8a4b08;border-color:#f1cf9a;background:#fff7e8}.status-tag.archived{color:#526166;border-color:#ccd5d7;background:#f3f6f6}.status-tag.processing{color:#175cd3;border-color:#b2ccff;background:#eff4ff}.status-tag.cancelled{color:var(--muted);border-color:var(--line);background:#f8faf9}.status-tag.confirmed,.status-tag.rescheduled{color:#175cd3;border-color:#b2ccff;background:#eff4ff}.status-tag.cancelled_by_client,.status-tag.cancelled_by_doctor{color:var(--danger);border-color:#fecdca;background:var(--danger-soft)}.status-tag.pending_contact{color:var(--accent);border-color:#fed7aa;background:#fff7ed}.icon-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px}.icon-button{width:38px;height:38px;color:var(--primary-strong);border:1px solid var(--line);background:var(--surface)}.icon-button:hover,.icon-button:focus-visible,.primary-button:hover,.primary-button:focus-visible{outline:2px solid rgba(15,118,110,.25);outline-offset:2px}.primary-button{min-height:44px;padding:10px 14px;color:#fff;border:1px solid var(--primary-strong);background:var(--primary);font-weight:700}.primary-button:disabled{cursor:not-allowed;opacity:.65}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;color:var(--primary-strong);border:1px solid var(--line);border-radius:8px;background:var(--surface);font-weight:700}.secondary-button:disabled{cursor:not-allowed;opacity:.55}.alert{padding:12px 14px;border-radius:8px;font-size:14px;line-height:1.4}.alert.danger{color:var(--danger);border:1px solid #fecdca;background:var(--danger-soft)}.alert.success{color:#126447;border:1px solid #a9d8c4;background:#edf8f2}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card,.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.metric-card{display:flex;gap:12px;min-height:112px;padding:18px}.metric-icon{display:grid;flex:0 0 40px;height:40px;place-items:center;border-radius:8px;color:var(--primary);background:var(--surface-soft)}.metric-label,.metric-trend{color:var(--muted);font-size:13px}.metric-card strong{display:block;margin:7px 0 5px;font-size:28px}.work-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:16px}.calendar-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:16px}.side-stack{display:grid;align-content:start;gap:16px}.panel{min-width:0;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 0}.panel-subtitle{display:block;margin-top:5px;color:var(--muted);font-size:13px}.analytics-panel{display:grid;gap:16px}.analytics-header{align-items:end}.analytics-controls{display:grid;grid-template-columns:repeat(2,142px) auto;gap:10px;align-items:end}.analytics-body{display:grid;gap:16px;padding:0 18px 18px}.analytics-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.analytics-kpis>div{min-height:74px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.analytics-kpis span,.analytics-row-main span,.analytics-day span{color:var(--muted);font-size:13px}.analytics-kpis strong{display:block;margin-top:6px;font-size:24px}.analytics-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;align-items:start}.analytics-listing-list,.analytics-days{display:grid;gap:8px}.analytics-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.34fr);gap:12px;align-items:center;min-height:62px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.analytics-row-main{display:grid;gap:5px;min-width:0}.analytics-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-bar{height:10px;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.analytics-bar span{display:block;max-width:100%;height:100%;border-radius:inherit;background:var(--primary)}.analytics-day{display:grid;grid-template-columns:54px minmax(0,1fr) 34px;gap:8px;align-items:center;min-height:34px}.analytics-day strong{text-align:right;font-size:13px}.dialog-list,.composer-body,.compact-list{display:grid;gap:10px;padding:18px}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-height:104px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.dialog-main{min-width:0}.row-title,.row-meta{display:flex;align-items:center;gap:10px;min-width:0}.row-title{justify-content:space-between;flex-wrap:wrap}.row-title h3,.row-meta span,.compact-row p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row p{margin-top:8px;overflow-wrap:anywhere;color:var(--muted);line-height:1.45}.row-meta{margin-top:10px;color:var(--muted);font-size:12px}.mode-control{display:inline-grid;grid-template-columns:repeat(3,1fr);width:214px;min-height:36px;overflow:hidden;border:1px solid var(--line);border-radius:8px}.mode-control button{min-width:0;padding:8px;color:var(--muted);border:0;border-right:1px solid var(--line);background:var(--surface);font-size:13px}.mode-control button:last-child{border-right:0}.mode-control button.active{color:#fff;background:var(--primary)}.mode-control button:disabled{cursor:not-allowed;opacity:.48}.dialog-row.selected{border-color:#83bbb4;box-shadow:inset 3px 0 0 var(--primary)}.dialog-row-controls{display:grid;justify-items:end;gap:9px}.open-dialog-button{min-height:36px;padding:7px 11px;font-size:13px}.dialog-workspace{border-top:1px solid var(--line);background:#f8fbfa}.dialog-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.dialog-workspace-header h2{margin-top:4px;font-size:20px}.dialog-workspace-actions,.conversation-meta,.message-meta,.client-profile-heading,.listing-link{display:flex;align-items:center}.dialog-workspace-actions{gap:8px}.mode-badge.real{color:var(--primary-strong);border-color:#b9d8d4;background:var(--surface-soft)}.dialog-loading{display:flex;min-height:180px;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.dialog-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.4fr);min-width:0}.conversation-column{min-width:0;padding:18px}.conversation-meta{flex-wrap:wrap;gap:9px;margin-bottom:14px;color:var(--muted);font-size:13px}.message-history{display:grid;max-height:540px;gap:10px;overflow-y:auto;padding-right:4px}.message-item{display:grid;gap:7px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff}.message-item.incoming{margin-right:48px}.message-item.outgoing{margin-left:48px;border-color:#b9d8d4;background:#edf7f5}.message-item p{overflow-wrap:anywhere;line-height:1.5}.message-meta{justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.message-meta strong{color:var(--ink);font-size:13px}.attachment-list{display:grid;gap:6px}.attachment-list a,.attachment-unavailable{display:flex;min-width:0;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--primary-strong);background:#fff;font-size:13px;text-decoration:none}.attachment-list a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-list a small{margin-left:auto;color:var(--muted);white-space:nowrap}.attachment-unavailable{color:var(--muted)}.manual-reply-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.manual-reply-form textarea{min-height:86px;resize:vertical}.client-profile{min-width:0;padding:18px;border-left:1px solid var(--line);background:#fff}.client-profile-heading{gap:10px}.client-profile-heading svg{color:var(--primary)}.client-profile-heading span,.client-profile-heading strong{display:block}.client-profile-heading span,.client-facts dt,.muted-copy{color:var(--muted);font-size:12px}.client-profile-heading strong{margin-top:2px}.client-facts{display:grid;gap:10px;margin:18px 0}.client-facts div{display:grid;gap:4px}.client-facts dd{display:flex;min-width:0;align-items:center;gap:6px;margin:0;overflow-wrap:anywhere;font-size:13px;font-weight:700}.client-appointments{display:grid;gap:9px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.client-appointments h3{font-size:15px}.client-appointment{display:grid;gap:8px;padding:10px 0}.client-appointment+.client-appointment{border-top:1px solid var(--line)}.client-appointment div,.client-appointment strong,.client-appointment span{min-width:0}.client-appointment div>span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.client-appointment .status-tag{justify-self:start}.listing-link{gap:8px;margin:16px 0;color:var(--primary-strong);font-size:13px;font-weight:700;text-decoration:none}.danger-button{width:100%;color:var(--danger);border-color:#fecdca;background:var(--danger-soft)}.field-label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.input-wrap{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 12px;color:var(--muted);border:1px solid var(--line);border-radius:8px;background:#fff}.input-wrap input,select,textarea{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}.input-wrap input{min-height:40px;padding:0;border:0;outline:none}select{min-height:42px;padding:8px 10px}textarea{min-height:104px;padding:10px;resize:vertical}.plain-input{width:100%;min-width:0;min-height:42px;padding:8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}select:focus-visible,textarea:focus-visible,.plain-input:focus-visible,.input-wrap:focus-within{border-color:var(--primary);outline:2px solid rgba(15,118,110,.16);outline-offset:1px}.calendar-body{display:grid;gap:14px;padding:18px}.calendar-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:8px;min-height:44px}.slot-grid button{min-height:38px;padding:8px;color:var(--primary-strong);border:1px solid var(--line);border-radius:8px;background:var(--surface);font-weight:700}.slot-grid button.active{color:#fff;border-color:var(--primary-strong);background:var(--primary)}.slot-empty{display:inline-flex;align-items:center;min-height:38px;color:var(--muted);font-size:13px}.calendar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hold-status{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 12px;color:#126447;border:1px solid #a9d8c4;border-radius:8px;background:#edf8f2;font-size:13px;font-weight:700}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.95fr) minmax(360px,1fr);gap:16px;align-items:start}.settings-panel{display:flex;flex-direction:column}.readiness-list{align-content:start}.readiness-summary,.readiness-checks>div{display:flex;align-items:center;gap:9px}.readiness-summary{min-height:48px;padding:11px 12px;border:1px solid var(--line);border-radius:8px}.readiness-summary.ready,.readiness-checks .ready{color:#126447}.readiness-summary.ready{border-color:#a9d8c4;background:#edf8f2}.readiness-summary.blocked,.readiness-checks .missing{color:var(--danger)}.readiness-summary.blocked{border-color:#fecdca;background:var(--danger-soft)}.readiness-checks{display:grid;gap:9px}.readiness-checks>div{min-height:30px;font-size:13px;font-weight:700}.assistant-default-mode{display:grid;gap:8px;padding-top:4px;border-top:1px solid var(--line)}.assistant-default-mode .mode-control{width:100%}.file-input{padding:7px}.file-input::file-selector-button{min-height:30px;margin-right:10px;padding:5px 9px;color:var(--primary-strong);border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);font-weight:700}.import-actions,.template-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.template-actions .secondary-button{min-height:38px}.listing-list{padding-top:14px}.listing-fields{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:10px}.settings-form,.settings-list,.hours-list,.faq-list{display:grid;gap:10px;padding:18px}.settings-form{padding-bottom:14px;border-bottom:1px solid var(--line)}.password-settings-form{border-bottom:0}.inline-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.settings-row,.faq-row{display:grid;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.settings-row-main{display:grid;gap:10px;min-width:0}.settings-row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.settings-row-actions .secondary-button,.faq-actions .secondary-button{min-height:38px;padding:8px 10px}.hours-list{padding-bottom:12px}.hours-row{display:grid;grid-template-columns:76px repeat(2,minmax(0,1fr));gap:8px;align-items:center}.schedule-settings-panel>.secondary-button{margin:0 18px 18px}.break-editor{display:grid;grid-template-columns:minmax(120px,1fr) repeat(2,96px) auto;gap:10px;align-items:end;padding:0 18px 12px}.break-list{display:grid;gap:8px;padding:0 18px 12px}.exception-editor{display:grid;grid-template-columns:minmax(132px,1fr) auto repeat(2,92px) minmax(120px,1fr) auto;gap:10px;align-items:end;padding:0 18px 12px}.exception-toggle{min-height:42px;align-self:end}.exception-list{display:grid;gap:8px;padding:0 18px 12px}.day-off-row,.block-row{display:grid;gap:8px;align-items:center}.day-off-row{grid-template-columns:minmax(122px,1fr) 34px repeat(2,88px) minmax(116px,1fr) 38px 38px}.block-row{grid-template-columns:minmax(122px,1fr) repeat(2,88px) minmax(116px,1fr) 38px 38px}.break-row{display:grid;grid-template-columns:minmax(118px,1fr) repeat(2,92px) 34px 38px;gap:8px;align-items:center}.compact-toggle{justify-content:center;min-height:34px}.compact-toggle input{margin:0}.faq-list{padding-top:14px}.faq-category{min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:13px}.faq-actions{grid-template-columns:minmax(0,1fr) auto auto;align-items:end}.small-empty{min-height:140px}.toggle-row{display:inline-flex;align-items:center;gap:10px;min-height:40px;color:var(--ink)}.toggle-row input{width:18px;height:18px;accent-color:var(--primary)}.toggle-row span{display:inline-flex;align-items:center;gap:8px}.compact-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:54px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.compact-row p{color:var(--muted);font-size:13px}.outbox-content{display:grid;min-width:0;gap:4px}.outbox-content .notification-error{overflow-wrap:anywhere;font-size:12px}.notification-row{align-items:start}.notification-content{display:grid;gap:4px;min-width:0}.notification-content strong{color:var(--ink);font-size:12px}.notification-content p{overflow:visible;overflow-wrap:anywhere;white-space:normal}.notification-row>.row-meta{margin-top:0}.appointment-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.appointment-summary{display:grid;gap:3px;min-width:0}.appointment-summary strong,.appointment-summary span{overflow-wrap:break-word}.appointment-summary span{color:var(--muted);font-size:12px}.appointment-summary .appointment-reason{color:var(--danger)}.appointment-actions,.appointment-editor-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%}.appointment-actions{grid-column:1 / -1}.appointment-actions .row-action,.appointment-editor-actions button{flex:1}.appointment-editor{display:grid;grid-column:1 / -1;grid-template-columns:minmax(0,1fr);gap:10px;align-items:end;width:100%;padding-top:12px;border-top:1px solid var(--line)}.appointment-editor-actions .primary-button,.appointment-editor-actions .secondary-button{min-height:42px}.row-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:58px;min-height:34px;padding:7px 9px;color:#fff;border:1px solid var(--primary-strong);border-radius:8px;background:var(--primary);font-size:12px;font-weight:700}.row-action:disabled{cursor:not-allowed;opacity:.65}.row-action.secondary{color:var(--primary-strong);border-color:var(--line);background:#fff}.row-action.danger{color:var(--danger);border-color:#fecdca;background:var(--danger-soft)}.notification-error{color:var(--danger);font-weight:700}.empty-state{display:grid;min-height:210px;place-items:center;align-content:center;padding:28px;color:var(--muted);text-align:center}.compact-empty{min-height:260px}.empty-state h3{margin-top:12px;color:var(--ink)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1120px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;justify-content:space-between;width:100%;min-width:0;padding:16px}.nav-list{display:flex;min-width:0;max-width:100%;overflow-x:auto}.nav-item{width:auto;flex:0 0 auto}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid,.calendar-grid,.settings-grid,.analytics-split{grid-template-columns:1fr}}@media(max-width:1320px)and (min-width:1121px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-settings-panel{grid-column:1 / -1}.dialog-detail-grid{grid-template-columns:1fr}.client-profile{border-top:1px solid var(--line);border-left:0}}@media(max-width:720px){.auth-layout{align-items:stretch;place-items:stretch}.login-panel{align-self:center}.sidebar,.topbar,.panel-header{align-items:flex-start;flex-direction:column}.nav-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow-x:visible}.nav-item{width:100%}.panel-header.compact-panel-header{flex-direction:row;align-items:center}.workspace{padding:18px}.topbar-actions{width:100%}.status-pill{flex:1;min-width:0}.metrics-grid,.list-row,.notification-row,.appointment-row,.appointment-editor{grid-template-columns:1fr}.appointment-actions,.appointment-editor-actions{width:100%}.appointment-actions .row-action,.appointment-editor-actions button{flex:1}.mode-control,.dialog-row-controls,.open-dialog-button{width:100%}.dialog-row-controls{justify-items:stretch}.dialog-workspace-header{align-items:flex-start}.dialog-detail-grid,.manual-reply-form{grid-template-columns:1fr}.message-item.incoming,.message-item.outgoing{margin-right:0;margin-left:0}.manual-reply-form .primary-button{width:100%}.client-profile{border-top:1px solid var(--line);border-left:0}.calendar-controls,.calendar-actions,.inline-fields,.analytics-controls,.analytics-kpis,.hours-row,.break-editor,.break-row,.exception-editor,.day-off-row,.block-row,.faq-actions,.analytics-row{grid-template-columns:1fr}.break-row .icon-button,.day-off-row .icon-button,.block-row .icon-button{width:100%}.row-title,.row-meta{align-items:flex-start;flex-direction:column}}:root{color-scheme:dark;color:#f2f4f3;background:#0a0c0d;--surface: #121517;--surface-soft: #191d1f;--surface-raised: #1e2326;--ink: #f2f4f3;--muted: #929b9f;--line: #293034;--line-strong: #3a4348;--primary: #45bf74;--primary-strong: #70d596;--accent: #e6ad47;--danger: #ee6b68;--danger-soft: #2a1819;--info: #77a8ff;--sidebar: #0d1011;--shadow: 0 10px 30px rgba(0, 0, 0, .22)}html{background:#0a0c0d}body{color:var(--ink);background:#0a0c0d}button,input,select,textarea{letter-spacing:0}button:focus-visible,a:focus-visible{outline:2px solid var(--info);outline-offset:2px}.auth-layout{background:#0a0c0d}.login-panel,.loading-mark{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow)}.brand.compact{color:var(--ink)}.brand.compact .brand-mark,.brand-mark{color:var(--primary-strong);border-color:var(--line-strong);background:var(--surface-soft)}.brand.compact .brand-subtitle,.brand-subtitle{color:var(--muted)}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;background:#0a0c0d}.sidebar{position:sticky;top:0;z-index:30;height:100vh;gap:30px;padding:22px 16px;color:var(--ink);border-right:1px solid var(--line);background:var(--sidebar)}.sidebar .brand{padding:0 8px}.sidebar .brand-mark{width:38px;height:38px}.nav-list{gap:4px}.nav-item{min-height:40px;padding:9px 10px;color:#aeb5b8;border-color:transparent;border-radius:6px}.nav-item:hover,.nav-item:focus-visible{color:var(--ink);border-color:var(--line);background:var(--surface-soft)}.nav-item.active{color:#fff;border-color:#30383c;background:#1c2124;box-shadow:inset 2px 0 0 var(--primary)}.nav-item.active svg{color:var(--primary-strong)}.workspace{width:100%;max-width:1680px;gap:18px;padding:0 26px 34px}.topbar{position:sticky;top:0;z-index:20;min-height:74px;padding:12px 0;border-bottom:1px solid var(--line);background:#0a0c0df5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-heading{display:flex;min-width:190px;align-items:center;gap:10px}.topbar h1{font-size:23px;line-height:1.2}.breadcrumbs,.panel-subtitle{color:var(--muted);font-size:12px}.breadcrumbs{margin-bottom:3px}.topbar-actions{min-width:0}.global-search{display:flex;width:min(340px,34vw);min-height:38px;align-items:center;gap:8px;padding:0 11px;color:var(--muted);border:1px solid var(--line);border-radius:6px;background:#101315}.global-search:focus-within{border-color:var(--info);box-shadow:0 0 0 2px #77a8ff1f}.global-search input{width:100%;min-width:0;min-height:34px;padding:0;color:var(--ink);border:0;outline:0;background:transparent}.global-search input::placeholder{color:#697277}.integration-pill,.status-pill,.mode-badge,.status-tag{color:var(--primary-strong);border-color:#45bf7457;background:#45bf7417}.integration-pill{min-height:36px;font-size:12px}.user-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;color:#fff;background:#252b2e;font-size:11px;font-weight:800}.mobile-menu-button{display:none}.icon-button,.secondary-button,.text-button,.row-action.secondary{color:#d8dcde;border-color:var(--line-strong);background:#171b1d}.icon-button:hover,.secondary-button:hover,.text-button:hover,.row-action.secondary:hover{color:#fff;border-color:#566167;background:#202528}.primary-button,.row-action,.slot-grid button.active,.mode-control button.active,.segmented-control button.active{color:#07140c;border-color:var(--primary);background:var(--primary)}.primary-button:hover,.row-action:hover{color:#06110a;border-color:#62d28c;background:#62d28c}.danger-button,.row-action.danger{color:#ff8d89;border-color:#ee6b6861;background:var(--danger-soft)}.alert.danger{color:#ff9996;border-color:#ee6b686b;background:var(--danger-soft)}.alert.success,.hold-status{color:#83dfa5;border-color:#45bf7457;background:#45bf7414}.metric-card,.panel,.calendar-workspace{border:1px solid var(--line);border-radius:7px;background:var(--surface);box-shadow:none}.metrics-grid{gap:12px}.metric-card{min-height:102px;align-items:flex-start;padding:16px}.metric-icon{width:36px;height:36px;flex-basis:36px;color:var(--primary-strong);background:#45bf7417}.metric-card strong{margin:4px 0 3px;color:#fff;font-size:25px}.metric-label,.metric-trend{color:var(--muted);font-size:12px}.metric-trend{color:#6f797d}.panel-header{padding:16px 16px 0}.panel-header h2{color:#f7f8f8;font-size:16px}.panel-header>svg{color:var(--muted)}.overview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.65fr);gap:12px}.overview-primary{grid-row:span 2}.overview-appointments,.attention-list,.activity-feed{display:grid;padding:12px 16px 16px}.overview-appointment,.attention-row,.activity-item{display:grid;min-width:0;align-items:center;gap:12px;padding:12px 0;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}.overview-appointment:last-child,.attention-row:last-child,.activity-item:last-child{border-bottom:0}.overview-appointment{grid-template-columns:54px minmax(0,1fr) auto}.overview-appointment>div,.attention-row>span:last-child,.activity-item>div{display:grid;min-width:0;gap:3px}.overview-appointment span,.attention-row small,.activity-item p,.activity-item time{color:var(--muted);font-size:12px}.overview-time{color:var(--info)!important;font-weight:700}.attention-row,.activity-item{grid-template-columns:auto minmax(0,1fr) auto}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}.status-dot.success{background:var(--primary);box-shadow:0 0 0 3px #45bf741a}.status-dot.danger{background:var(--danger);box-shadow:0 0 0 3px #ee6b681a}.status-dot.warning{background:var(--accent)}.empty-inline,.calendar-day-empty{color:#717b80}.work-grid,.calendar-grid,.settings-grid,.analytics-split{gap:12px}.app-shell .list-row,.app-shell .analytics-row,.app-shell .analytics-kpis>div,.app-shell .message-item,.app-shell .client-profile,.app-shell .dialog-workspace,.app-shell .attachment-list a,.app-shell .attachment-unavailable,.app-shell .compact-row,.app-shell .settings-row,.app-shell .faq-row{border-color:var(--line);background:#15191b}.app-shell .message-item.outgoing{border-color:#45bf7452;background:#45bf7412}.dialog-row.selected{border-color:#77a8ff85;box-shadow:inset 3px 0 0 var(--info)}.mode-control,.segmented-control{border-color:var(--line-strong);background:#101315}.mode-control button,.segmented-control button{color:var(--muted);border-color:var(--line);background:transparent}.mode-control button.active,.segmented-control button.active{color:#f4fff7;background:#1c5d37}.input-wrap,.app-shell select,.app-shell textarea,.app-shell .plain-input{color:var(--ink);border-color:var(--line-strong);background:#101315}.input-wrap input{color:var(--ink);background:transparent}.app-shell select:focus-visible,.app-shell textarea:focus-visible,.app-shell .plain-input:focus-visible,.input-wrap:focus-within{border-color:var(--info);outline:2px solid rgba(119,168,255,.12)}.status-tag.needs_human,.status-tag.failed,.status-tag.cancelled_by_client,.status-tag.cancelled_by_doctor,.status-tag.no_show{color:#ff8d89;border-color:#ee6b6861;background:#ee6b6817}.app-shell .status-tag.handoff-reason,.app-shell .status-tag.test-data,.app-shell .status-tag.paused,.app-shell .status-tag.pending_contact,.status-tag.pending,.status-tag.processing,.mode-badge{color:#f1c46f;border-color:#e6ad4761;background:#e6ad4717}.app-shell .status-tag.processing,.app-shell .status-tag.rescheduled{color:#9abfff;border-color:#77a8ff61;background:#77a8ff17}.app-shell .status-tag.archived,.app-shell .status-tag.cancelled{color:#aab2b6;border-color:var(--line-strong);background:#1b2022}.status-tag.confirmed,.status-tag.completed,.status-tag.sent,.status-tag.appointment_confirmed{color:#79d99d}.calendar-workspace{overflow:hidden}.calendar-toolbar{display:flex;min-height:64px;align-items:end;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--line)}.compact-field{width:168px}.segmented-control{display:inline-grid;grid-auto-flow:column;overflow:hidden;border:1px solid var(--line-strong);border-radius:6px}.segmented-control button{min-height:36px;padding:7px 14px;border:0;border-right:1px solid var(--line)}.segmented-control button:last-child{border-right:0}.calendar-board{position:relative;display:grid;min-width:0;background:#0f1213}.calendar-board-day{grid-template-columns:minmax(0,1fr);min-height:460px}.calendar-board-week{grid-template-columns:repeat(7,minmax(126px,1fr));min-height:460px;overflow-x:auto}.calendar-board-month{grid-template-columns:repeat(7,minmax(116px,1fr));grid-template-rows:repeat(6,minmax(126px,1fr));overflow-x:auto}.calendar-day{min-width:0;min-height:126px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#121517}.calendar-board-week .calendar-day{min-width:126px}.calendar-board-month .calendar-day{min-width:116px}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside-month{color:#646d71;background:#0f1213}.calendar-day.today{box-shadow:inset 0 2px 0 var(--info)}.calendar-day-header{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;color:var(--muted);border-bottom:1px solid rgba(41,48,52,.7);font-size:11px}.calendar-day-header strong{color:#dce0e1;font-size:13px}.calendar-day-events{display:grid;align-content:start;gap:5px;padding:8px}.calendar-event{display:grid;min-width:0;gap:2px;padding:6px 7px;overflow:hidden;color:#dfe4e5;border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:4px;background:#191d1f;text-align:left}.calendar-event span,.calendar-event small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event span{font-size:11px;font-weight:750}.calendar-event small{color:var(--muted);font-size:10px}.calendar-event.appointment{width:100%;border-left-color:var(--primary)}.calendar-event.appointment:hover{border-color:var(--primary);border-left-color:var(--primary);background:#45bf7414}.calendar-event.appointment.cancelled_by_client,.calendar-event.appointment.cancelled_by_doctor,.calendar-event.appointment.no_show{border-left-color:var(--danger)}.calendar-event.hold,.calendar-event.break{border-left-color:var(--accent)}.calendar-event.block,.calendar-event.day-off{border-left-color:#757e83;opacity:.78}.calendar-more,.calendar-day-empty{padding:3px 4px;font-size:10px}.calendar-more{color:var(--info)}.calendar-board-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#dce1e2;background:#0a0c0dbd;font-size:13px}.page-segmented{display:flex;justify-content:flex-start}.clients-workspace{display:grid;grid-template-columns:minmax(520px,1.15fr) minmax(360px,.85fr);gap:12px;align-items:start}.client-create-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;padding:14px 16px;border-bottom:1px solid var(--line)}.client-table{display:grid;padding:0 16px 16px}.client-table-head,.client-table-row{display:grid;grid-template-columns:minmax(220px,1fr) 92px 64px 64px;gap:10px;align-items:center;min-height:48px;padding:8px 10px}.client-table-head{color:var(--muted);border-bottom:1px solid var(--line);font-size:11px;text-transform:uppercase}.client-table-row{width:100%;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}.client-table-row:hover,.client-table-row.selected{background:#191e20}.client-table-row.selected{box-shadow:inset 2px 0 0 var(--info)}.client-main-cell{display:flex;min-width:0;align-items:center;gap:10px}.client-main-cell>span:last-child{display:grid;min-width:0;gap:2px}.client-main-cell small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.client-avatar{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:50%;color:#dce8ff;background:#77a8ff21;font-size:10px;font-weight:800}.source-badge{justify-self:start;padding:4px 7px;color:#b3bbc0;border:1px solid var(--line-strong);border-radius:999px;font-size:10px;text-transform:uppercase}.source-badge.avito{color:#9fc0ff;border-color:#77a8ff57}.source-badge.manual{color:#efc471;border-color:#e6ad4757}.client-detail-panel{position:sticky;top:92px}.client-detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:16px}.client-detail-facts div{min-width:0}.client-detail-facts dt{color:var(--muted);font-size:11px}.client-detail-facts dd{margin:5px 0 0;overflow-wrap:anywhere;font-size:12px;font-weight:700}.consent-switch,.client-detail-actions,.merge-control,.client-history-grid{margin:0 16px 16px}.switch-control{display:flex;align-items:center;gap:9px;color:#cbd0d2;font-size:12px}.switch-control input,.recipient-row input{accent-color:var(--primary)}.client-detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.merge-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding-top:14px;border-top:1px solid var(--line)}.client-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:14px;border-top:1px solid var(--line)}.client-history-grid h3{margin-bottom:8px}.data-list{display:grid}.data-row,.template-row,.recipient-row,.notification-page-row{color:var(--ink);border-bottom:1px solid var(--line)}.data-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:44px;padding:9px 0}.data-row>span:first-child{display:grid;min-width:0;gap:2px}.data-row small,.data-row time,.notification-page-row p,.notification-page-row time{color:var(--muted);font-size:11px}.data-row.interactive{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}.outreach-workspace{display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(360px,.9fr);gap:12px;align-items:start}.outreach-segment-panel{grid-row:span 2}.outreach-log-panel{grid-column:1 / -1}.outreach-filters{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;gap:9px;align-items:end;padding:14px 16px}.recipient-list,.settings-form,.outreach-template-panel>.data-list,.outreach-log-panel>.data-list,.notification-page-panel>.data-list{padding:12px 16px 16px}.recipient-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:52px}.recipient-row>span:nth-child(2){display:grid;gap:2px}.recipient-row small{color:var(--muted)}.settings-form{display:grid;gap:10px}.template-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0}.template-row>div:first-child{display:grid;min-width:0;gap:4px}.template-row>div:first-child span{color:var(--muted);font-size:12px}.notifications-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.notification-page-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto 120px;gap:10px;align-items:start;padding:12px 0}.notification-page-row>div{display:grid;gap:4px}.funnel-panel{display:grid;gap:14px}.funnel-panel>.panel-header,.funnel-stage-grid,.funnel-details-grid{padding-right:16px;padding-left:16px}.funnel-stage-grid{display:grid;grid-template-columns:repeat(8,minmax(118px,1fr));gap:8px;overflow-x:auto}.funnel-stage{display:grid;min-width:110px;gap:5px;padding:12px;border:1px solid var(--line);border-top:2px solid var(--info);border-radius:5px;background:#15191b}.funnel-stage span,.funnel-stage small{color:var(--muted);font-size:11px}.funnel-stage strong{font-size:22px}.funnel-stage-heading{display:flex;min-width:0;align-items:center;gap:7px}.funnel-stage-heading>span{color:var(--info);font-size:10px;font-weight:800}.funnel-stage-heading>strong{overflow:hidden;color:#dce1e2;font-size:11px;line-height:1.25;text-overflow:ellipsis}.funnel-progress{height:4px;overflow:hidden;border-radius:999px;background:#242a2d}.funnel-progress span{display:block;height:100%;background:var(--info)}.funnel-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-bottom:16px}.funnel-details-grid h3{margin-bottom:8px}.empty-state{color:var(--muted)}.empty-state h3{color:var(--ink)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:18px;background:#040506c7}.confirm-dialog{display:grid;grid-template-columns:auto minmax(0,1fr);width:min(460px,100%);gap:14px;padding:20px;border:1px solid var(--line-strong);border-radius:8px;background:#15191b;box-shadow:0 24px 70px #00000080}.confirm-dialog-icon{display:grid;width:40px;height:40px;place-items:center;color:var(--accent);border:1px solid rgba(230,173,71,.35);border-radius:50%;background:#e6ad4714}.confirm-dialog h2{margin-bottom:7px;font-size:18px}.confirm-dialog p{color:var(--muted);font-size:13px;line-height:1.55}.confirm-dialog-actions{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:8px;padding-top:6px}.confirm-danger{color:#fff;border-color:var(--danger);background:#b84745}.confirm-danger:hover{color:#fff;border-color:#e16360;background:#d35855}@media(max-width:1180px){.app-shell{grid-template-columns:204px minmax(0,1fr)}.workspace{padding-right:18px;padding-left:18px}.integration-pill span{display:none}.clients-workspace,.outreach-workspace{grid-template-columns:1fr}.client-detail-panel{position:static}.outreach-segment-panel{grid-row:auto}.outreach-log-panel{grid-column:auto}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1120px){.app-shell{display:block}.sidebar{position:fixed;inset:0 auto 0 0;flex-direction:column;align-items:stretch;justify-content:flex-start;width:232px;height:100vh;padding:22px 16px;transform:translate(-100%);transition:transform .18s ease;box-shadow:18px 0 40px #0006}.sidebar .nav-list{display:grid;width:100%;overflow:visible}.sidebar .nav-item{width:100%}.sidebar.open{transform:translate(0)}.mobile-menu-button{display:inline-grid}.workspace{max-width:none}.global-search{width:min(300px,38vw)}.overview-grid,.work-grid,.calendar-grid,.analytics-split,.notifications-workspace,.funnel-details-grid{grid-template-columns:1fr}.overview-primary{grid-row:auto}.calendar-board-week,.calendar-board-month{grid-template-columns:repeat(7,minmax(142px,1fr))}}@media(max-width:640px){.workspace{gap:14px;padding:0 12px 24px}.topbar{min-height:auto;align-items:stretch;flex-direction:column;padding:10px 0 12px}.topbar-actions{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,auto);width:100%}.global-search{width:100%}.integration-pill{display:none}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:92px;padding:13px}.metric-icon{display:none}.overview-appointment{grid-template-columns:46px minmax(0,1fr)}.overview-appointment .status-tag{grid-column:2;justify-self:start}.calendar-toolbar,.client-create-form,.outreach-filters,.client-detail-actions,.merge-control,.client-history-grid,.settings-grid{grid-template-columns:1fr}.calendar-toolbar{display:grid;align-items:stretch}.compact-field,.segmented-control{width:100%}.segmented-control{grid-auto-flow:initial;grid-template-columns:repeat(3,minmax(0,1fr))}.page-segmented .segmented-control{grid-template-columns:repeat(2,minmax(0,1fr))}.client-table{overflow:visible}.client-table-head{display:none}.client-table-row{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;gap:8px;padding:12px 8px}.client-table-row .client-main-cell{grid-column:1 / -1}.client-table-row>strong{color:var(--muted);font-size:11px}.client-table-row>strong:nth-child(3):before{content:"Диалоги: "}.client-table-row>strong:nth-child(4):before{content:"Записи: "}.client-table>.empty-state{width:100%;min-height:180px;justify-self:start}.client-detail-facts{grid-template-columns:1fr}.notification-page-row{grid-template-columns:auto minmax(0,1fr)}.notification-page-row .status-tag,.notification-page-row time{grid-column:2;justify-self:start}.funnel-stage-grid{grid-template-columns:repeat(8,minmax(132px,1fr))}}
