html{background:#f7f9fb}body{letter-spacing:0;color:#17212b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f9fb;min-width:320px;min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#root{min-height:100vh}:root{--accent:#078b88;--bg:#f7f9fb;--surface:#fff;--surface-2:#f2f5f7;--surface-3:color-mix(in srgb, var(--accent) 9%, #fff);--line:#dfe6ec;--line-strong:#cbd5df;--text:#17212b;--muted:#657382;--quiet:#8b98a6;--danger:#c53b3b;--warning:#b7791f;--success:#1f8a4c;--shadow:0 18px 42px #1c2d3c14}*{box-sizing:border-box}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{background:var(--bg);min-height:100vh;color:var(--text);grid-template-columns:184px minmax(0,1fr);display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:18px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.brand-lockup{align-items:center;gap:8px;min-height:32px;display:flex}.brand-lockup span{color:var(--accent);letter-spacing:0;font-size:20px;font-weight:850}.brand-lockup strong{letter-spacing:0;font-size:15px}.nav-list{gap:4px;display:grid}.nav-list button,.panel-toolbar button,.channel-strip button,.tab-row button,.reply-tabs button,.entity-tabs button,.density-toggle button{color:var(--muted);background:0 0;border:0}.nav-list button{text-align:left;border-radius:7px;grid-template-columns:18px 1fr auto;align-items:center;gap:10px;min-height:36px;padding:0 10px;font-size:13px;display:grid}.nav-list button:hover{background:var(--surface-2);color:var(--text)}.nav-list button.selected{background:var(--accent);color:#fff;box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 22%, transparent)}.nav-list b,.unread,.has-badge span{background:var(--accent);color:#fff;border-radius:6px;place-items:center;min-width:22px;height:22px;font-size:12px;font-weight:700;display:inline-grid}.nav-list button.selected b{color:var(--accent);background:#fff}.clinic-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:6px;margin-top:auto;padding:12px;font-size:12px;display:grid}.clinic-card strong{font-size:12px}.clinic-card span{color:var(--muted)}.clinic-card div{border-top:1px solid var(--line);align-items:center;gap:7px;padding-top:7px;display:flex}.workspace{grid-template-rows:auto auto minmax(580px,1fr) auto;min-width:0;display:grid}.topbar{background:var(--surface);border-bottom:1px solid var(--line);grid-template-columns:minmax(260px,1fr) auto auto 204px;align-items:center;gap:12px;min-height:58px;padding:10px 14px;display:grid}.search-box{border:1px solid var(--line);background:var(--surface);height:38px;color:var(--quiet);border-radius:7px;align-items:center;gap:9px;padding:0 12px;display:flex}.search-box input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:13px}kbd{border:1px solid var(--line);color:var(--quiet);background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:11px}.date-button,.secondary-button,.primary-button,.icon-button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--text);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;display:inline-flex}.secondary-button:hover,.date-button:hover,.icon-button:hover{border-color:var(--line-strong);background:var(--surface-2)}.primary-button{border-color:var(--accent);background:var(--accent);color:#fff}.primary-button:disabled{cursor:not-allowed;border-color:var(--line);background:var(--line);color:var(--quiet)}.secondary-button.small{min-height:30px;padding:0 10px}.top-actions{align-items:center;gap:8px;display:flex}.icon-button{width:36px;padding:0}.has-badge{position:relative}.has-badge span{border:2px solid var(--surface);background:var(--danger);min-width:18px;height:18px;font-size:10px;position:absolute;top:-7px;right:-5px}.role-switcher{min-width:0;color:var(--muted);grid-template-columns:auto 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.role-switcher select{border:1px solid var(--line);background:var(--surface);min-width:0;height:36px;color:var(--text);border-radius:7px;padding:0 8px;font-size:13px}.channel-strip{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:4px;min-width:0;padding:8px 14px;display:flex;overflow-x:auto}.channel-strip button{white-space:nowrap;border:1px solid #0000;border-radius:7px;align-items:center;gap:7px;height:32px;padding:0 10px;font-size:12px;display:inline-flex}.channel-strip button.active{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 18%, transparent);background:var(--surface-3)}.channel-mark{background:var(--surface-2);width:23px;height:23px;color:var(--accent);border-radius:6px;place-items:center;font-size:10px;font-weight:800;display:inline-grid}.channel-mark.all{width:auto;padding:0 5px}.channel-strip b{color:var(--text)}.main-grid{grid-template-columns:270px minmax(360px,1fr) 540px;min-width:0;min-height:0;display:grid}.panel{background:var(--surface);border-right:1px solid var(--line);min-width:0}.panel:last-child{border-right:0}.panel-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:43px;padding:0 10px;display:flex}.panel-toolbar button{align-items:center;gap:6px;font-size:12px;display:inline-flex}.conversation-list{display:grid}.conversation{border:0;border-bottom:1px solid var(--line);background:var(--surface);text-align:left;width:100%;min-height:82px;color:var(--text);grid-template-columns:38px 1fr auto;gap:10px;padding:12px 10px;display:grid;position:relative}.conversation:hover{background:var(--surface-2)}.conversation.selected{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 12%, transparent), color-mix(in srgb, var(--accent) 3.5%, transparent))}.conversation.selected:before{content:"";background:var(--accent);width:3px;position:absolute;inset:0 auto 0 0}.avatar,.patient-avatar{background:var(--surface-3);color:var(--accent);border-radius:50%;place-items:center;font-weight:800;display:grid}.avatar{width:38px;height:38px;font-size:12px}.conversation-main{gap:4px;min-width:0;display:grid}.conversation-top,.conversation-meta{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.conversation-top b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.conversation-top small,.conversation-summary,.conversation-meta{color:var(--muted);font-size:12px}.conversation-summary{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.source-name{color:var(--accent);font-weight:650}.priority{background:var(--surface-2);border-radius:5px;padding:2px 5px;font-size:10px;font-style:normal;font-weight:800}.priority.new{color:#fff;background:var(--danger)}.priority.pending{color:#fff;background:var(--warning)}.priority.risk{color:#fff;background:var(--danger)}.unread{align-self:end;min-width:18px;height:18px;font-size:10px}.conversation-panel{grid-template-rows:auto minmax(300px,1fr) auto auto;min-height:0;display:grid}.conversation-header{border-bottom:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;min-height:64px;padding:10px 14px;display:grid}.channel-square{background:var(--accent);color:#fff;border:0;border-radius:8px;place-items:center;width:40px;height:40px;font-size:12px;font-weight:850;display:grid}.conversation-header h1,.patient-summary h2,.section-heading h2{color:var(--text);letter-spacing:0;margin:0;line-height:1.15}.conversation-header h1{font-size:18px}.conversation-header span,.patient-summary span,.section-heading span{color:var(--muted);font-size:12px}.star-icon{color:var(--warning)}.status-chip{background:var(--surface-3);border-radius:7px;align-items:center;height:28px;padding:0 10px;font-weight:750;display:inline-flex;color:var(--accent)!important}.message-stack{background:linear-gradient(var(--surface), #ffffffe0), radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 6%, transparent), transparent 40%);align-content:start;gap:12px;min-height:0;padding:18px 28px;display:grid;overflow:auto}.message-bubble{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:7px;max-width:min(480px,92%);padding:12px 14px;display:grid;box-shadow:0 10px 24px #1c2d3c0d}.message-bubble.ai{border-color:color-mix(in srgb, var(--accent) 20%, transparent);background:var(--surface-3);justify-self:end}.message-bubble.outbound{background:var(--accent);color:#fff;justify-self:end}.message-bubble.approved{border-color:#1f8a4c42}.message-label{color:var(--accent);font-size:11px;font-weight:760}.message-bubble.outbound .message-label,.message-bubble.outbound time{color:#ffffffd1}.message-bubble p{margin:0;font-size:14px;line-height:1.65}.translation{color:var(--muted);border-top:1px solid var(--line);align-items:flex-start;gap:7px;padding-top:5px;display:flex}.message-bubble time{color:var(--quiet);justify-self:end;font-size:11px}.draft-controls{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.draft-controls div{min-width:240px;color:var(--muted);flex:100%;align-items:center;gap:7px;margin-right:0;font-size:12px;display:flex}.draft-controls button{border:1px solid var(--line);background:var(--surface);height:32px;color:var(--muted);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:6px;font-size:12px;display:inline-flex}.draft-controls .primary-button{color:#fff;background:var(--accent);border-color:var(--accent)}.draft-controls .primary-button:disabled{color:var(--quiet);background:var(--line);border-color:var(--line)}.reply-box{padding:12px 14px 14px}.reply-tabs,.tab-row,.entity-tabs,.density-toggle{align-items:center;gap:4px;display:flex}.reply-tabs button,.tab-row button,.entity-tabs button,.density-toggle button{border-radius:7px;height:30px;padding:0 10px;font-size:12px}.reply-tabs .active,.tab-row .active,.entity-tabs .active,.density-toggle .active{background:var(--surface-3);color:var(--accent);font-weight:760}.reply-box label{grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:8px;display:grid}.reply-box input{border:1px solid var(--line);border-radius:7px;outline:0;height:38px;padding:0 12px}.patient-panel{flex-direction:column;min-height:0;padding:14px;display:flex;overflow:auto}.patient-summary{grid-template-columns:64px 1fr auto;align-items:center;gap:12px;display:grid}.patient-avatar{width:64px;height:64px;font-size:18px}.patient-summary h2{font-size:20px}.patient-summary p{color:var(--text);margin:7px 0 0;font-size:13px}.contact-actions{color:var(--muted);gap:10px;display:grid}.patient-stats{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:16px 0 8px;display:grid;overflow:hidden}.stat{background:var(--surface);gap:5px;min-height:58px;padding:10px;display:grid}.stat span{color:var(--muted);font-size:11px}.stat strong{overflow-wrap:anywhere;font-size:12px;line-height:1.25}.stat.accent strong{color:var(--accent)}.tab-row{border-bottom:1px solid var(--line);margin-top:6px}.timeline-list{gap:10px;margin-top:12px;display:grid}.timeline-item{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:16px 102px 1fr;gap:8px;padding:9px;display:grid}.timeline-dot{background:var(--success);border-radius:50%;width:10px;height:10px;margin-top:4px}.timeline-dot.upcoming{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent)}.timeline-item time,.timeline-item span,.timeline-item p{color:var(--muted);font-size:12px}.timeline-item strong{margin-bottom:3px;font-size:13px;display:block}.timeline-item p{margin:4px 0 0;line-height:1.45}.photo-row{gap:6px;margin-top:8px;display:flex}.photo-row span{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), #17212b14), var(--surface-2);width:48px;height:34px;color:var(--accent);border-radius:7px;place-items:center;font-size:10px;font-weight:780;display:inline-grid}.detail-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.detail-columns section{border:1px solid var(--line);border-radius:8px;align-content:start;gap:8px;min-width:0;padding:10px;display:grid}.detail-columns h3,.analytics-card h3,.permission-list h3,.audit-list h3{color:var(--text);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.task-row{color:var(--text);grid-template-columns:auto 1fr;gap:7px;font-size:12px;display:grid}.task-row small{color:var(--muted);grid-column:2}.detail-columns p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.bottom-grid{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 360px;min-width:0;display:grid}.analytics-panel{background:var(--line);grid-column:1/-1;grid-template-columns:1.15fr 1fr .85fr 1.2fr 1fr;gap:1px;display:grid}.import-panel{border-right:1px solid var(--line)}.analytics-card{background:var(--surface);align-content:start;gap:8px;min-width:0;min-height:196px;padding:14px;display:grid}.analytics-card strong{color:var(--text);font-size:25px}.analytics-card span,.analytics-card small,.analytics-card p{color:var(--muted);font-size:12px}.lead-source{grid-template-columns:96px 1fr;align-items:center}.donut{background:conic-gradient(var(--accent) var(--value), var(--surface-2) 0);border-radius:50%;place-items:center;width:88px;height:88px;display:grid;position:relative}.donut:after{content:"";background:var(--surface);border-radius:50%;width:58px;height:58px;position:absolute}.donut strong,.donut span{z-index:1;position:relative}.donut strong{font-size:19px}.donut span{margin-top:24px;font-size:11px}.lead-source p,.revenue p{grid-template-columns:1fr auto auto;gap:8px;margin:0;display:grid}.bar-stack{gap:8px;margin-top:8px;display:grid}.bar-stack i,.revenue i{background:var(--accent);border-radius:999px;height:8px;display:block}.bar-stack i:first-child{opacity:.16}.bar-stack i:nth-child(2){opacity:.72}.bar-stack i:nth-child(3){opacity:.42}.risk-ring{background:conic-gradient(var(--danger) 0 44deg, var(--warning) 44deg 148deg, var(--surface-2) 148deg);border-radius:50%;place-items:center;width:72px;height:72px;display:grid}.risk-ring b{background:var(--surface);border-radius:50%;place-items:center;width:48px;height:48px;font-size:16px;display:grid}.revenue p{grid-template-columns:48px minmax(60px,1fr) auto;align-items:center}.revenue b{color:var(--muted);font-size:11px}.forecast svg{width:100%;height:70px}.forecast polyline{fill:none;stroke:var(--accent);stroke-width:3px}.forecast polyline:nth-child(2){opacity:.28;stroke-dasharray:3 4}.import-panel,.governance-panel{align-content:start;gap:12px;padding:14px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2{font-size:15px}.entity-tabs{overflow-x:auto}.entity-tabs button{flex:none}.import-panel textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:112px;color:var(--text);background:var(--surface);border-radius:8px;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5}.import-actions{align-items:center;gap:8px;display:flex}.import-actions input{display:none}.csv-report{background:var(--surface-3);min-height:34px;color:var(--accent);border-radius:7px;margin:0;padding:8px 10px;font-size:12px;line-height:1.4}.theme-row{align-items:center;gap:8px;display:flex}.swatch{border:2px solid var(--surface);width:28px;height:28px;box-shadow:0 0 0 1px var(--line);border-radius:7px}.swatch.selected{box-shadow:0 0 0 2px var(--text)}.theme-row input{border:1px solid var(--line);background:var(--surface);border-radius:7px;width:42px;height:30px}.permission-list,.audit-list{border-top:1px solid var(--line);gap:8px;padding-top:10px;display:grid}.permission-list p,.audit-list p{min-width:0;color:var(--muted);grid-template-columns:auto auto 1fr;align-items:center;gap:7px;margin:0;font-size:12px;display:grid}.permission-list p{grid-template-columns:auto 1fr}.permission-list svg{color:var(--accent)}.audit-list b{color:var(--text);font-size:12px}.audit-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compact .conversation{min-height:68px;padding-block:8px}.compact .message-stack{gap:8px;padding-block:12px}.compact .patient-stats .stat{min-height:48px;padding:7px 9px}@media (width<=1240px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.brand-lockup strong,.nav-list span,.clinic-card{display:none}.nav-list button{grid-template-columns:1fr;justify-items:center;padding:0}.nav-list b{display:none}.main-grid{grid-template-columns:250px minmax(360px,1fr)}.patient-panel{border-top:1px solid var(--line);grid-column:1/-1}.bottom-grid{grid-template-columns:1fr}.analytics-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;height:auto;position:relative;overflow-x:auto}.brand-lockup strong,.nav-list span{display:inline}.nav-list{display:flex}.nav-list button{grid-template-columns:18px auto;width:max-content;padding:0 10px}.topbar{grid-template-columns:1fr}.top-actions{overflow-x:auto}.main-grid,.analytics-panel{display:block}.conversation-panel{min-height:620px}.patient-stats,.detail-columns{grid-template-columns:1fr 1fr}}
