:root{--chc-navy:#1b3a57;--chc-navy-dark:#102639;--chc-teal:#1f8a7a;--chc-teal-dark:#166b5e;--chc-teal-light:#e6f4f1;--chc-sand:#f7f9fb;--chc-gold:#b8922e;--chc-text:#1e293b;--chc-muted:#64748b;--chc-border:#dbe4ec;color:var(--chc-text);background:var(--chc-sand);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Libre Franklin,Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}#root{min-height:100vh}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:linear-gradient(180deg, var(--chc-navy-dark) 0%, var(--chc-navy) 100%);color:#e2e8f0;padding:1.5rem}.brand{align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.brand-mark{background:linear-gradient(135deg, var(--chc-teal), var(--chc-teal-dark));letter-spacing:.04em;color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:.72rem;font-weight:700;display:grid}.brand strong{font-family:"Source Serif 4",Georgia,serif;font-size:.95rem;line-height:1.25;display:block}.brand p{color:#94b4c8;margin:.15rem 0 0;font-size:.72rem}nav{flex-direction:column;gap:.35rem;display:flex}.nav-link{color:#cbd5e1;border-radius:10px;padding:.65rem .85rem;text-decoration:none;transition:background .15s}.nav-link:hover,.nav-link.active{color:#fff;background:#ffffff1a}.nav-link.active{border-left:3px solid var(--chc-teal)}.main-content{padding:2rem}.page{max-width:1100px}.page-header{margin-bottom:1.5rem}.page-header h1{color:var(--chc-navy);margin:0 0 .35rem;font-family:"Source Serif 4",Georgia,serif;font-size:1.8rem}.page-header p{color:#64748b;margin:0}.dashboard-hero{background:#fff;border-radius:18px;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex;box-shadow:0 8px 24px #1026391f}.dashboard-logo{flex-shrink:0;width:min(280px,42vw);height:auto;display:block}.dashboard-hero h1{color:#000;margin:0 0 .35rem;font-family:"Source Serif 4",Georgia,serif;font-size:1.8rem}.dashboard-hero p{color:#000;margin:0}.page-header.row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:1rem;padding:1.25rem;box-shadow:0 1px 2px #0f172a0a}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.25rem}.stat-label{color:#64748b;font-size:.9rem;display:block}.stat-value{font-size:2rem;line-height:1.2}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.75rem .5rem}th{color:#64748b;font-size:.85rem;font-weight:600}.btn{color:#0f172a;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:.55rem 1rem}.btn.primary{background:var(--chc-teal);border-color:var(--chc-teal);color:#fff}.btn.primary:hover:not(:disabled){background:var(--chc-teal-dark);border-color:var(--chc-teal-dark)}.btn.danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.btn.secondary{color:#334155;background:#f8fafc;border-color:#94a3b8}.btn.small{padding:.35rem .65rem;font-size:.85rem}.btn.large{padding:.85rem 1.5rem;font-size:1rem}.btn:disabled{opacity:.6;cursor:not-allowed}.table-actions{flex-wrap:wrap;gap:.4rem;display:flex}tr.row-from-call{box-shadow:inset 4px 0 0 var(--chc-teal);background:linear-gradient(90deg,#1f8a7a29,#1f8a7a0a);animation:2s ease-in-out infinite rowCallPulse}tr.row-from-call td{font-weight:500}@keyframes rowCallPulse{0%,to{box-shadow:inset 4px 0 0 var(--chc-teal), 0 0 0 #1f8a7a00}50%{box-shadow:inset 4px 0 0 var(--chc-teal), 0 0 18px #1f8a7a2e}}.toast-stack{z-index:9999;gap:.75rem;width:min(380px,100vw - 2rem);display:grid;position:fixed;top:1rem;right:1rem}.toast{border:1px solid var(--chc-border);background:#fff;border-radius:14px;padding:.9rem 1rem;animation:.25s ease-out toastIn;box-shadow:0 12px 40px #1026392e}.toast-voice{border-color:#1f8a7a73;box-shadow:0 12px 40px #1026392e,0 0 0 1px #1f8a7a1f}.toast-header{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.toast-header strong{color:var(--chc-navy);flex:1}.toast-badge{letter-spacing:.04em;text-transform:uppercase;color:var(--chc-teal-dark);background:var(--chc-teal-light);border-radius:999px;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.toast p{color:var(--chc-text);margin:0;font-size:.92rem;line-height:1.45}.toast-close{color:var(--chc-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.2rem;line-height:1}.toast-close:hover{color:var(--chc-navy)}@keyframes toastIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-grid label{flex-direction:column;gap:.35rem;font-size:.9rem;display:flex}.form-grid .full-width{grid-column:1/-1}input,select,textarea{font:inherit;border:1px solid #cbd5e1;border-radius:10px;padding:.6rem .75rem}.search-input{width:100%;margin-bottom:1rem}.badge{text-transform:capitalize;border-radius:999px;padding:.2rem .55rem;font-size:.8rem;display:inline-block}.badge.scheduled{color:#1d4ed8;background:#dbeafe}.badge.cancelled{color:#b91c1c;background:#fee2e2}.badge.completed{color:#15803d;background:#dcfce7}.muted{color:#64748b}.error{color:#b91c1c}.success{color:#15803d}.list-row{border-bottom:1px solid #e2e8f0;padding:.75rem 0}.voice-panel{gap:1rem;display:grid}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.voice-actions{justify-content:center;display:flex}.voice-actions-row{flex-wrap:wrap;align-items:center;gap:.75rem}.chc-voice-badge{margin:.35rem 0 .75rem;font-size:.85rem}.voice-volume-control{border-top:1px solid var(--border,#ffffff14);margin-top:1.25rem;padding-top:1rem}.voice-volume-control label{color:var(--muted,#94a3b8);margin-bottom:.5rem;font-size:.85rem;display:block}.voice-volume-control input[type=range]{width:100%;accent-color:var(--primary,#3b82f6)}.debug-hint ol{margin:.5rem 0 0;padding-left:1.25rem}.debug-hint li{margin-bottom:.5rem}.transcript{background:#f8fafc;border-radius:12px;margin-top:1rem;padding:1rem}.log-list{max-height:280px;margin:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;list-style:none;overflow:auto}.log-list li{border-bottom:1px solid #f1f5f9;padding:.35rem 0}.tips ul{margin:0;padding-left:1.2rem}.error-banner{background:#fef2f2;border-color:#fecaca}.error-banner p{margin:.5rem 0 0}.chc-call-page{max-width:1080px}.chc-call-hero{background:linear-gradient(135deg, var(--chc-navy-dark) 0%, var(--chc-navy) 55%, var(--chc-teal-dark) 100%);color:#fff;border-radius:20px;margin-bottom:1.5rem;padding:2rem 2.25rem;position:relative;overflow:hidden}.chc-call-hero:after{content:"";pointer-events:none;background:#ffffff0f;border-radius:50%;width:280px;height:280px;position:absolute;top:-40%;right:-8%}.chc-call-hero-inner{z-index:1;position:relative}.chc-call-eyebrow{letter-spacing:.06em;text-transform:uppercase;background:#ffffff1f;border-radius:999px;margin:0 0 .75rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-block}.chc-call-hero h1{margin:0 0 .5rem;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2}.chc-call-hero .hero-tagline{color:#c8dde8;margin:0 0 1rem;font-size:1.05rem}.chc-call-hero .hero-intro{color:#dbeafe;max-width:640px;margin:0;line-height:1.65}.chc-call-layout{grid-template-columns:300px 1fr;align-items:start;gap:1.25rem;display:grid}.chc-clinic-info{gap:1rem;display:grid}.chc-info-card{border:1px solid var(--chc-border);background:#fff;border-radius:16px;padding:1.15rem 1.25rem}.chc-info-card h2{color:var(--chc-navy);margin:0 0 .75rem;font-family:"Source Serif 4",Georgia,serif;font-size:.95rem}.chc-info-card ul{margin:0;padding-left:1.1rem}.chc-info-card li{color:var(--chc-text);margin-bottom:.45rem;font-size:.9rem}.chc-info-card .location-name{color:var(--chc-navy);margin-bottom:.15rem;font-weight:600;display:block}.chc-info-card .location-address{color:var(--chc-muted);font-size:.85rem;display:block}.chc-phone-link{color:var(--chc-teal-dark);align-items:center;gap:.35rem;margin-top:.5rem;font-weight:600;text-decoration:none;display:inline-flex}.chc-phone-link:hover{text-decoration:underline}.chc-call-panel{gap:1rem;display:grid}.chc-call-card{border:1px solid var(--chc-border);text-align:center;background:#fff;border-radius:20px;padding:2rem 1.75rem;box-shadow:0 8px 30px #1026390f}.chc-agent-label{letter-spacing:.08em;text-transform:uppercase;color:var(--chc-teal-dark);margin:0 0 .35rem;font-size:.8rem;font-weight:600}.chc-agent-name{color:var(--chc-navy);margin:0 0 .25rem;font-family:"Source Serif 4",Georgia,serif;font-size:1.5rem}.chc-agent-role{color:var(--chc-muted);margin:0 0 1.5rem;font-size:.95rem}.voice-orb{color:#fff;background:linear-gradient(135deg, var(--chc-navy), var(--chc-navy-dark));border-radius:50%;place-items:center;width:140px;height:140px;margin:0 auto 1rem;font-size:.85rem;font-weight:600;display:grid;box-shadow:0 12px 32px #1b3a5740}.voice-orb.speaking{background:linear-gradient(135deg, var(--chc-teal), var(--chc-teal-dark));animation:1.5s infinite pulse}.voice-orb.listening{background:linear-gradient(135deg, #34a88a, var(--chc-teal));animation:1.5s infinite pulse}.chc-call-hint{background:var(--chc-teal-light);color:var(--chc-navy);text-align:left;border-radius:12px;margin:1rem 0 0;padding:.85rem 1rem;font-size:.9rem}.chc-call-hint strong{color:var(--chc-teal-dark)}.chc-tips-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.chc-tips-grid h3{color:var(--chc-navy);margin:0 0 .5rem;font-size:.95rem}.chc-dev-details{border:1px dashed var(--chc-border);background:#fafcfd;border-radius:14px;padding:.75rem 1rem}.chc-dev-details summary{cursor:pointer;color:var(--chc-muted);font-size:.9rem;font-weight:600}.chc-dev-details[open] summary{margin-bottom:.75rem}@media (width<=900px){.chc-call-layout,.chc-tips-grid{grid-template-columns:1fr}.chc-call-hero{padding:1.5rem}.app-shell{grid-template-columns:1fr}.sidebar{padding-bottom:1rem}nav{flex-flow:wrap}.dashboard-hero{text-align:left;flex-direction:column;align-items:flex-start}.dashboard-logo{width:min(240px,100%)}.stats-grid,.form-grid{grid-template-columns:1fr}}
