:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172033;background:#f6f8fc;font-synthesis:none;text-rendering:optimizeLegibility;--navy: #0b1739;--navy-elevated: #111f46;--primary: #2563eb;--primary-hover: #1d4ed8;--surface: #ffffff;--workspace: #f6f8fc;--text: #172033;--muted: #667085;--border: #e5eaf2;--success: #16a34a;--warning: #f59e0b;--danger: #dc2626;--info: #0ea5e9;--shadow: 0 10px 30px rgba(15, 23, 42, .06)}*{box-sizing:border-box}html{min-width:320px;background:var(--workspace)}body{margin:0;min-width:320px;min-height:100vh;background:var(--workspace)}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover)}button,input,select{font:inherit}button,a,input,select{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{box-shadow:0 0 0 3px #2563eb40}.app-shell{display:grid;grid-template-columns:254px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;display:flex;flex-direction:column;padding:24px 16px 18px;background:linear-gradient(180deg,#081531,#0b2445);color:#fff;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:5px 12px 24px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);box-shadow:0 8px 22px #2563eb59}.brand div{display:flex;flex-direction:column;gap:2px}.brand strong{font-size:17px;letter-spacing:0;line-height:1.2}.brand small{color:#b8c3dc;font-size:12px}.sidebar nav{display:flex;flex-direction:column;gap:7px;margin-top:24px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;color:#d6def0;border-radius:11px;font-weight:600;font-size:14px;transition:.18s ease}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item.active{color:#fff;background:linear-gradient(135deg,#2345bd,#315dd6);box-shadow:0 8px 20px #2563eb33}.sidebar-status{display:flex;gap:10px;align-items:flex-start;margin-top:auto;padding:14px;border:1px solid rgba(111,211,154,.22);background:#16a34a17;border-radius:12px}.sidebar-status div,.sidebar-user div:not(.avatar){display:flex;flex-direction:column;gap:3px}.sidebar-status strong{font-size:12px}.sidebar-status small,.sidebar-user small{font-size:11px;color:#b8c3dc}.status-dot{display:inline-block;width:8px;height:8px;margin-top:5px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px #22c55e21;flex:0 0 auto}.sidebar-user{display:flex;align-items:center;gap:10px;margin-top:12px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0a}.sidebar-user strong{font-size:12px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#0b1739;background:#fff;font-size:12px;font-weight:800}.main-workspace{grid-column:2;min-width:0;padding:28px 32px 42px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-header>div{min-width:0}.page-header h1{margin:0;font-size:28px;letter-spacing:0}.page-header p{max-width:100%;margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.45;overflow-wrap:anywhere}.page-actions{display:flex;align-items:center;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:9px;padding:10px 16px;font-weight:700;font-size:13px;cursor:pointer;transition:.18s ease}.button.primary{color:#fff;background:linear-gradient(135deg,#2457d6,#2f61df);box-shadow:0 7px 16px #2563eb33}.button.primary:hover{color:#fff;background:var(--primary-hover);transform:translateY(-1px)}.button.secondary{border:1px solid #cfd9ee;color:#2448aa;background:#fff}.button.secondary:hover{background:#f4f7ff}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.full-width{width:100%}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric-card{display:flex;gap:14px;min-height:128px;padding:20px;border:1px solid var(--border);background:var(--surface);border-radius:14px;box-shadow:var(--shadow)}.metric-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#fff;flex:0 0 auto}.tone-blue{background:linear-gradient(135deg,#2549c7,#315ee2)}.tone-green{background:linear-gradient(135deg,#0f9f52,#18b967)}.tone-amber{background:linear-gradient(135deg,#e88b0b,#f5a524)}.tone-red{background:linear-gradient(135deg,#de334c,#f0445f)}.metric-copy{display:flex;flex-direction:column;min-width:0}.metric-copy span{color:#32405d;font-size:13px}.metric-copy strong{margin-top:4px;font-size:29px;letter-spacing:0}.metric-copy small{margin-top:auto;color:var(--muted);font-size:11px}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-bottom:18px}.lower-grid{grid-template-columns:1fr 1fr}.panel,.physician-card,.appointment-summary{border:1px solid var(--border);background:var(--surface);border-radius:14px;box-shadow:var(--shadow)}.panel{padding:18px;min-width:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-head h2{margin:0;font-size:16px;letter-spacing:0}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.panel-head>svg{color:#5470b8}.panel-head a{font-size:12px;font-weight:700}.chart-layout{display:grid;grid-template-columns:1fr 190px;align-items:center}.donut-wrap{position:relative;min-width:0}.donut-center{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.donut-center strong{font-size:28px}.donut-center span{font-size:11px;color:var(--muted)}.legend-list{display:flex;flex-direction:column;gap:12px}.legend-list>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:12px;color:#475467}.legend-dot{width:8px;height:8px;border-radius:2px}.legend-list strong{color:#172033}.system-banner{display:flex;gap:11px;align-items:flex-start;padding:14px;margin-bottom:12px;border-radius:10px;color:#13723b;background:linear-gradient(135deg,#eaf9ef,#edf8f2);border:1px solid #d5efdf}.system-banner.warning{color:#915b09;background:#fff7e8;border-color:#f0dfbc}.system-banner div{display:flex;flex-direction:column;gap:3px}.system-banner strong{font-size:13px}.system-banner span{color:#53705d;font-size:11px}.system-row{display:grid;grid-template-columns:14px 1fr auto;align-items:center;gap:8px;padding:9px 4px;border-bottom:1px solid #edf0f5;font-size:12px}.system-row .status-dot{margin-top:0;width:7px;height:7px}.system-row .status-dot.pending{background:var(--warning);box-shadow:0 0 0 4px #f59e0b24}.system-row .status-dot.error{background:var(--danger);box-shadow:0 0 0 4px #dc26261f}.system-row>span:not(.status-dot){display:flex;flex-direction:column;gap:2px;min-width:0}.system-row .system-name{color:#26344f;font-size:12px}.system-row small{color:var(--muted);font-size:10px;line-height:1.35}.system-row .status-label{font-size:11px;white-space:nowrap}.system-row .status-label.ok{color:var(--success)}.system-row .status-label.pending{color:#b66b00}.system-row .status-label.error{color:var(--danger)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:11px 12px;border-bottom:1px solid var(--border);color:#778197;text-align:left;text-transform:uppercase;letter-spacing:0;font-size:10px;white-space:nowrap}td{padding:13px 12px;border-bottom:1px solid #edf0f5;color:#27344e;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fafbfe}td a{font-weight:700}.cell-subtitle{display:block;margin-top:3px;color:var(--muted);font-size:10px}.wide-cell{min-width:300px}code{padding:3px 6px;border-radius:5px;background:#f1f4f9;color:#42526d;font-size:10px}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.status-scheduled,.status-accepted{color:#087a39;background:#eaf8ef;border:1px solid #ccefd9}.status-redirected{color:#a35c00;background:#fff5df;border:1px solid #f7dfaa}.status-abandoned{color:#9d5e00;background:#fff7e7;border:1px solid #f2ddb7}.status-failed,.status-rejected{color:#b42335;background:#fff0f2;border:1px solid #f5cdd4}.status-in_progress,.status-in-progress{color:#175cd3;background:#eff5ff;border:1px solid #cfe0ff}.exceptions-panel{margin-bottom:18px}.exception-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.exception-grid article{padding:14px;border:1px solid var(--border);border-radius:10px;background:#fbfcfe}.exception-grid strong{display:block;margin-top:10px;font-size:12px}.exception-grid p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.filter-panel{display:flex;gap:12px;margin-bottom:16px;padding:14px}.search-field{display:flex;align-items:center;gap:8px;flex:1;min-width:220px;padding:0 12px;border:1px solid #d9e0ec;border-radius:9px;background:#fff;color:#7a869a}.search-field input{width:100%;padding:10px 0;border:0;background:transparent;color:var(--text)}select,input{min-height:40px;padding:8px 10px;border:1px solid #d9e0ec;border-radius:8px;background:#fff;color:var(--text)}.filter-panel select{min-width:170px}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:16px;color:#526581;font-size:12px;font-weight:700}.detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px}.detail-main,.detail-sidebar{display:flex;flex-direction:column;gap:18px;min-width:0}.appointment-summary{padding:20px;border-color:#cbd9ff;background:linear-gradient(135deg,#fff,#f7f9ff)}.appointment-summary h3{margin:0 0 16px;color:#1f4cc7}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.summary-grid>div{display:grid;grid-template-columns:20px 1fr;column-gap:8px;row-gap:3px;align-items:center;padding:12px;border:1px solid #e1e8f8;border-radius:10px;background:#fffc}.summary-grid svg{grid-row:span 2;color:#3562d2}.summary-grid span{color:var(--muted);font-size:10px}.summary-grid strong{font-size:12px}.timeline{display:flex;flex-direction:column}.timeline-item{position:relative;display:grid;grid-template-columns:24px 1fr;gap:8px}.timeline-item:not(:last-child):before{content:"";position:absolute;left:8px;top:17px;bottom:-4px;width:1px;background:#dce3ee}.timeline-dot{position:relative;z-index:1;width:17px;height:17px;border-radius:50%;margin-top:12px;border:4px solid #dbe8ff;background:var(--primary)}.speaker-human .timeline-dot{border-color:#def4e5;background:var(--success)}.timeline-card{margin-bottom:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fbfcfe}.timeline-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.timeline-meta strong{color:#30405d}.timeline-card p{margin:8px 0 0;font-size:12px;line-height:1.55}.detail-list{margin:0}.detail-list>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #edf0f5}.detail-list dt{color:var(--muted);font-size:11px}.detail-list dd{margin:0;text-align:right;font-size:11px;font-weight:700}.routing-list{display:flex;flex-direction:column;gap:10px}.routing-item{padding:12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfe}.routing-item-head{display:flex;justify-content:space-between;gap:10px}.routing-item-head>div{display:flex;flex-direction:column;gap:3px}.routing-item strong{font-size:11px}.routing-item small{color:var(--muted);text-transform:capitalize;font-size:9px}.routing-item p{margin:8px 0 0;color:#55627a;font-size:10px;line-height:1.5}.alert-box{margin-top:12px;padding:11px;border-radius:9px;font-size:11px}.alert-box strong{display:block}.alert-box p{margin:5px 0 0;line-height:1.5}.alert-box.error{color:#9f2738;background:#fff1f3;border:1px solid #f6d2d8}.alert-box.warning{color:#915b09;background:#fff7e8;border:1px solid #f0dfbc}.physician-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.physician-card{padding:18px}.physician-head{display:flex;gap:12px;align-items:center}.doctor-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2c56c9,#4074ed);font-weight:800}.physician-head h2{margin:0 0 5px;font-size:14px}.accepts-new,.returning-only{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800}.accepts-new{color:#087a39;background:#eaf8ef}.returning-only{color:#9d5e00;background:#fff5df}.location-list{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:15px 0;padding-bottom:13px;border-bottom:1px solid #edf0f5;color:#5f6e84;font-size:10px}.capability-groups{display:flex;flex-direction:column;gap:11px}.capability-groups strong{display:block;margin-bottom:6px;font-size:11px}.capability-chip{display:inline-flex;margin:0 5px 5px 0;padding:4px 7px;border-radius:6px;color:#3155a9;background:#eef3ff;border:1px solid #d9e4ff;font-size:9px;font-weight:700}.simulator-banner{display:flex;gap:12px;align-items:center;padding:13px 16px;margin-bottom:16px;border:1px solid #cbd9ff;border-radius:11px;color:#274590;background:#f2f6ff}.simulator-banner div{display:flex;flex-direction:column;gap:3px}.simulator-banner strong{font-size:12px}.simulator-banner span{font-size:10px;color:#5a6e9d}.simulator-grid{display:grid;grid-template-columns:minmax(390px,.8fr) minmax(0,1.2fr);gap:18px;margin-bottom:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.form-grid label{display:flex;flex-direction:column;gap:6px;color:#4b5870;font-size:10px;font-weight:700}.form-grid label:last-child{grid-column:1 / -1}.simulator-placeholder{min-height:350px;display:grid;place-items:center;align-content:center;text-align:center;color:#8090aa}.simulator-placeholder h3{margin:12px 0 4px;color:#41516b}.simulator-placeholder p{max-width:380px;margin:0;font-size:11px;line-height:1.5}.routing-summary{display:flex;gap:10px;align-items:flex-start;padding:12px;margin-bottom:12px;border:1px solid #cfe9d8;border-radius:10px;color:#17643a;background:#eef9f2}.routing-summary p{margin:0;font-size:11px;line-height:1.55}.rejection-card{padding:12px;margin-bottom:12px;border:1px solid #f2cdd3;border-radius:10px;background:#fff3f5}.rejection-card strong{font-size:11px;color:#a83243}.rejection-card p{margin:5px 0 0;color:#7a4350;font-size:10px;line-height:1.5}.recommendation-card{display:flex;justify-content:space-between;gap:14px;padding:14px;margin-bottom:10px;border:1px solid #dce4f3;border-radius:10px;background:#fbfcff}.recommendation-card span{color:var(--primary);font-size:9px;font-weight:800;text-transform:uppercase}.recommendation-card h3{margin:4px 0;font-size:13px}.recommendation-card p{margin:0;color:var(--muted);font-size:10px}.slot-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.slot-buttons .button{padding:8px 10px;font-size:10px}.state-panel{min-height:320px;display:grid;place-items:center;align-content:center;gap:7px;color:#7c8aa2;text-align:center}.state-panel h3{margin:6px 0 0;color:#3a4862}.state-panel p{margin:0;font-size:12px}.state-error{color:var(--danger)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.metrics-grid,.physician-grid,.summary-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.detail-grid,.simulator-grid{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{display:block}.sidebar{position:static;width:100%;min-height:auto;padding:12px}.sidebar nav{flex-direction:row;overflow-x:auto;margin-top:12px}.nav-item{white-space:nowrap}.sidebar-status,.sidebar-user{display:none}.brand{padding-bottom:12px}.main-workspace{padding:20px 16px 32px}.page-header{align-items:flex-start}.metrics-grid,.lower-grid,.physician-grid,.exception-grid,.form-grid{grid-template-columns:1fr}.form-grid label:last-child{grid-column:auto}.chart-layout{grid-template-columns:1fr}.legend-list{padding:0 20px 16px}}@media(max-width:560px){.page-header{flex-direction:column}.page-header,.page-actions{width:100%}.metrics-grid{grid-template-columns:1fr}.filter-panel{flex-direction:column}.summary-grid{grid-template-columns:1fr}.recommendation-card{flex-direction:column}.slot-buttons{justify-content:flex-start}}
