.robocall-metrics-page{padding:20px;max-width:1400px;margin:0 auto}.metrics-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.metrics-header h1{margin:0;font-size:22px}.metrics-header-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.date-range-picker{display:flex;align-items:center;gap:8px}.date-range-picker label{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:500;color:#374151}.date-range-picker input[type=date]{padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px}.time-view-tabs{display:flex;border:1px solid #ddd;border-radius:6px;overflow:hidden}.time-view-tab{padding:6px 12px;border:none;background:#fff;font-size:12px;font-weight:500;cursor:pointer;color:#6b7280;border-right:1px solid #ddd;transition:all .15s}.time-view-tab:last-child{border-right:none}.time-view-tab:hover{background:#f9fafb}.time-view-tab.active{background:#4f46e5;color:#fff}.pipeline-select{padding:6px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;min-width:220px}.metrics-chart-section{margin-bottom:16px}.metrics-chart-title{margin:0 0 6px;font-size:15px;font-weight:600;color:#374151}.metrics-toggles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.toggle-btn{padding:4px 10px;border:2px solid #ddd;border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.toggle-btn:hover{opacity:.85}.toggle-btn.toggle-all{border-color:#6b7280;color:#6b7280}.toggle-btn.toggle-all.active{background-color:#6b7280;color:#fff}.metrics-chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px;min-height:200px;display:flex;align-items:center;justify-content:center}.metrics-loading,.metrics-empty{color:#9ca3af;font-size:15px}.custom-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px;font-size:13px;line-height:1.5}.custom-tooltip .tooltip-label{margin:0 0 4px;font-weight:600;color:#374151}.custom-tooltip p{margin:2px 0}.custom-tooltip .tooltip-total{margin-top:4px;font-weight:600;color:#374151;border-top:1px solid #e5e7eb;padding-top:4px}.conversion-subtitle{margin:0 0 12px;font-size:12px;color:#9ca3af}.conversion-funnel{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px}.funnel-row{display:flex;align-items:center;gap:10px}.funnel-label{width:160px;flex-shrink:0;font-size:12px;font-weight:500;color:#374151;text-align:right}.funnel-bar-track{flex:1;display:flex;align-items:center;gap:8px}.funnel-bar{height:30px;border-radius:5px;display:flex;align-items:center;justify-content:flex-end;padding:0 8px;min-width:40px;transition:width .4s ease}.funnel-bar-value{font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);white-space:nowrap}.funnel-drop{font-size:11px;font-weight:600;color:#ef4444;white-space:nowrap}.funnel-conv{font-size:10px;color:#9ca3af;white-space:nowrap}.summary-tables-section{margin-top:24px;padding-top:16px;border-top:2px solid #e5e7eb}.summary-table-wrapper{margin-bottom:16px}.summary-subtitle{margin:0 0 6px;font-size:14px;font-weight:600;color:#4b5563}.summary-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;font-size:13px}.summary-table th{background:#f9fafb;padding:8px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.summary-table td{padding:7px 12px;border-bottom:1px solid #f3f4f6;color:#4b5563}.summary-table tbody tr:last-child td{border-bottom:none}.summary-table .summary-total-row td{font-weight:600;background:#f0fdf4;color:#166534}.appointments-page{min-height:100vh}.appointments-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:20px;text-align:center}.appointments-header h1{margin:0 0 8px;font-size:28px}.appointments-header p{margin:0;opacity:.9}.appointments-content{padding:20px;max-width:1400px;margin:0 auto}.appointments-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;flex-wrap:wrap}.toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.view-toggle{display:flex;border:1px solid #d1d5db;border-radius:6px;overflow:hidden}.view-btn{padding:7px 16px;border:none;background:#fff;color:#4b5563;font-size:13px;cursor:pointer;transition:all .15s}.view-btn:not(:last-child){border-right:1px solid #d1d5db}.view-btn:hover{background:#f3f4f6}.view-btn.active{background:#6366f1;color:#fff}.week-nav{display:flex;gap:8px}.week-nav button{padding:7px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;color:#374151;transition:all .15s}.refresh-btn{padding:7px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:13px;cursor:pointer}.refresh-btn:hover{background:#f3f4f6}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.appointments-empty{text-align:center;padding:40px 20px;color:#6b7280;font-size:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.cal-section{margin-bottom:28px}.cal-env-label{font-size:16px;font-weight:700;margin:0 0 10px;padding:6px 14px;border-radius:6px;display:inline-block}.cal-env-label.dev{background:#dbeafe;color:#1e40af}.cal-env-label.prod{background:#fce7f3;color:#9d174d}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e5e7eb;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.cal-day{background:#fff;min-height:120px;display:flex;flex-direction:column}.cal-day.today{background:#fefce8}.cal-day-header{padding:8px 10px;font-size:12px;font-weight:600;color:#374151;background:#f9fafb;border-bottom:1px solid #f3f4f6;text-align:center}.cal-day.today .cal-day-header{background:#fef08a;color:#854d0e}.cal-day-body{flex:1;padding:6px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:300px}.cal-empty{text-align:center;color:#d1d5db;font-size:13px;padding:12px 0}.cal-appt{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:6px 8px;font-size:12px;position:relative}.cal-appt.cancelled{background:#f9fafb;border-color:#e5e7eb;opacity:.5}.cal-appt-time{font-weight:700;color:#15803d;font-size:12px;margin-bottom:2px}.cal-appt-patient{font-weight:600;color:#1f2937;font-size:12px}.cal-appt-specialist{color:#6b7280;font-size:11px;text-transform:capitalize}.cal-appt-reason{color:#9ca3af;font-size:11px;font-style:italic}.cal-appt-meta{display:flex;gap:8px;align-items:center;margin-top:3px}.cal-portal-badge{font-size:10px;font-weight:700}.cal-call-link{font-size:10px;color:#6366f1;text-decoration:none}.cal-call-link:hover{text-decoration:underline}.cal-cancel-btn{position:absolute;top:4px;right:4px;padding:1px 6px;border:1px solid #fca5a5;border-radius:3px;background:#fef2f2;color:#dc2626;font-size:10px;cursor:pointer;opacity:0;transition:opacity .15s}.cal-appt:hover .cal-cancel-btn{opacity:1}.cal-cancel-btn:hover{background:#fee2e2}.cal-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.cal-no-appts{text-align:center;color:#9ca3af;font-size:13px;padding:10px 0}.appointments-table-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.table-filters{display:flex;gap:6px;padding:12px 14px;border-bottom:1px solid #f3f4f6}.filter-btn{padding:5px 14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#4b5563;font-size:13px;cursor:pointer;transition:all .15s}.filter-btn:hover{background:#f3f4f6}.filter-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.table-search{padding:5px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;min-width:220px;outline:none;transition:border-color .15s}.table-search:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.appointments-table-wrapper{overflow-x:auto}.appointments-table{width:100%;border-collapse:collapse;font-size:13px}.appointments-table th{text-align:left;padding:10px 12px;background:#f9fafb;color:#374151;font-weight:600;font-size:12px;border-bottom:2px solid #e5e7eb;white-space:nowrap}.appointments-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.appointments-table th.sortable:hover{background:#f3f4f6}.appointments-table td{padding:10px 12px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:top}.appointments-table tbody tr:hover{background:#f9fafb}.appointments-table tbody tr.row-cancelled{opacity:.5}.table-empty{text-align:center;padding:24px;color:#9ca3af}.env-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase}.env-badge.dev{background:#dbeafe;color:#1e40af}.env-badge.prod{background:#fce7f3;color:#9d174d}.patient-cell{display:flex;flex-direction:column;gap:2px}.patient-name{font-weight:500}.patient-id-cell{font-size:12px;color:#6b7280;font-family:monospace}.notes-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6b7280;font-size:12px}.status-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.status-badge.status-confirmed{background:#d1fae5;color:#065f46}.status-badge.status-pending{background:#fef3c7;color:#92400e}.status-badge.status-cancelled{background:#f3f4f6;color:#6b7280}.date-cell{white-space:nowrap;font-size:12px;display:flex;flex-direction:column;gap:4px}.call-link{font-size:11px;color:#6366f1;text-decoration:none}.call-link:hover{text-decoration:underline}.action-btn{padding:4px 10px;border:1px solid;border-radius:4px;font-size:12px;cursor:pointer;font-weight:500;transition:opacity .15s;white-space:nowrap}.action-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background:#dc2626;color:#000;border-color:#dc2626}.availability-page{max-width:1200px;margin:0 auto;padding:20px}.availability-header{background:linear-gradient(135deg,#4f46e5,#7c3aed);padding:24px 32px;border-radius:12px;color:#fff;margin-bottom:24px}.availability-header h1{margin:0 0 4px;font-size:1.5rem}.availability-header p{margin:0;opacity:.85;font-size:.9rem}.availability-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.availability-controls{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.control-group{display:flex;flex-direction:column;gap:4px;min-width:200px}.control-group label{font-size:.8rem;font-weight:600;color:#374151}.control-group select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;background:#fff}.week-nav{display:flex;gap:8px;margin-left:auto}.week-nav button{padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-size:.85rem;color:#374151;transition:all .15s}.week-nav button:hover{background:#f3f4f6;border-color:#9ca3af}.availability-empty{text-align:center;padding:48px 20px;color:#6b7280;font-size:.95rem}.availability-legend{display:flex;gap:20px;margin-bottom:12px;font-size:.8rem;color:#6b7280}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:14px;height:14px;border-radius:3px;display:inline-block}.legend-dot.available{background:#d1fae5;border:1px solid #6ee7b7}.legend-dot.blocked{background:#fee2e2;border:1px solid #fca5a5}.legend-dot.booked{background:#dbeafe;border:1px solid #93c5fd}.availability-grid-wrapper{overflow-x:auto}.availability-grid{width:100%;border-collapse:collapse;table-layout:fixed}.availability-grid.dragging{user-select:none;-webkit-user-select:none}.availability-grid.dragging .slot-cell.clickable{cursor:crosshair}.availability-grid th,.availability-grid td{text-align:center;padding:0;border:1px solid #e5e7eb}.availability-grid th{padding:10px 8px;font-size:.8rem;font-weight:600;color:#374151;background:#f9fafb}.availability-grid .time-col{width:90px;text-align:right;padding-right:12px;font-size:.8rem;color:#6b7280;background:#f9fafb;font-weight:500}.slot-cell{height:40px;transition:background .15s;position:relative}.slot-cell.off{background:#f3f4f6}.slot-cell.available{background:#d1fae5}.slot-cell.blocked{background:#fee2e2}.slot-cell.booked{background:#dbeafe}.slot-cell.clickable{cursor:pointer}.slot-cell.clickable:hover{opacity:.7}.booked-label{font-size:.7rem;color:#3b82f6;font-weight:600}.slot-cell.pending{animation:pulse-pending 1.2s ease-in-out infinite;outline:2px solid #f59e0b;outline-offset:-2px}@keyframes pulse-pending{0%,to{opacity:1}50%{opacity:.6}}.availability-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.pending-count{font-size:.85rem;color:#92400e;background:#fef3c7;padding:4px 12px;border-radius:12px;font-weight:500;margin-right:auto}.btn-save{padding:8px 20px;background:#4f46e5;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-save:hover:not(:disabled){background:#4338ca}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-discard{padding:8px 16px;background:#fff;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .15s}.btn-discard:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-discard:disabled{opacity:.6;cursor:not-allowed}.action-items-page{padding:24px;max-width:1400px;margin:0 auto}.action-items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.action-items-header h1{margin:0;font-size:24px}.action-items-filters{display:flex;gap:8px}.filter-btn{padding:6px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;font-weight:500;color:#6b7280}.filter-btn.active{background:#4f46e5;color:#fff;border-color:#4f46e5}.action-items-loading,.action-items-empty{color:#9ca3af;font-size:16px;text-align:center;padding:48px}.action-items-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.action-items-table th{background:#f9fafb;padding:10px 12px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;border-bottom:1px solid #e5e7eb}.action-items-table td{padding:10px 12px;font-size:14px;border-bottom:1px solid #f3f4f6;vertical-align:top}.action-items-table tr.status-resolved td{opacity:.5}.action-items-table tr.status-dismissed td{opacity:.4}.col-time{white-space:nowrap;color:#6b7280;font-size:13px}.col-desc{max-width:400px}.col-actions{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}.type-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500;background:#eff6ff;color:#3b82f6;white-space:nowrap}.status-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;color:#fff;white-space:nowrap}.portal-link{margin-left:6px;font-size:12px;color:#6366f1;text-decoration:none}.portal-link:hover{text-decoration:underline}.action-link{font-size:13px;color:#6366f1;text-decoration:none;white-space:nowrap}.action-link:hover{text-decoration:underline}.resolve-btn,.dismiss-btn{padding:4px 10px;border:1px solid;border-radius:4px;font-size:12px;cursor:pointer;white-space:nowrap}.resolve-btn{background:#dcfce7;border-color:#22c55e;color:#15803d}.dismiss-btn{background:#f3f4f6;border-color:#d1d5db;color:#6b7280}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f5f5;color:#333}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.form-group input[type=tel],.form-group input[type=text],.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:16px}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}button:hover:not(:disabled){background:#5a6fd6}button:disabled{background:#ccc;cursor:not-allowed}.error-message{background:#fee;color:#c00;padding:10px;border-radius:4px;margin-top:12px;font-size:14px}.success-message{background:#efe;color:#080;padding:10px;border-radius:4px;margin-top:12px;font-size:14px}.radio-group{display:flex;gap:16px;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:14px}.radio-label input{cursor:pointer}.toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.toggle-label span:first-child{font-weight:500;font-size:14px}.toggle-label input{display:none}.toggle-switch{width:48px;height:26px;background:#ccc;border-radius:13px;position:relative;transition:background .2s}.toggle-switch:after{content:"";position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .2s;box-shadow:0 1px 3px #0003}.toggle-label input:checked+.toggle-switch{background:#667eea}.toggle-label input:checked+.toggle-switch:after{transform:translate(22px)}.toggle-label.small{display:inline-flex;gap:0}.toggle-switch.small{width:36px;height:20px}.toggle-switch.small:after{width:16px;height:16px}.toggle-label input:checked+.toggle-switch.small:after{transform:translate(16px)}.search-box{display:flex;align-items:center;position:relative}.search-input{padding:8px 32px 8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:200px}.search-input:focus{outline:none;border-color:#667eea}.clear-search-btn{position:absolute;right:4px;background:#999;color:#fff;border:none;width:20px;height:20px;border-radius:50%;font-size:14px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;line-height:1}.clear-search-btn:hover{background:#666}.env-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.env-badge.dev{background:#fef3c7;color:#92400e}.env-badge.prod{background:#fee2e2;color:#991b1b}.agent-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;background:#e0e7ff;color:#3730a3}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;color:#fff;text-transform:uppercase}.ended-by-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:500;color:#666;background-color:#e8e8e8;text-transform:capitalize}.tool-toggles{display:flex;flex-wrap:wrap;gap:8px}.tool-toggle{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.tool-toggle:hover{background:#e8e8e8}.tool-toggle input[type=checkbox]{margin:0;cursor:pointer}.tool-toggle span{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px}.app-container{min-height:100vh;display:flex;flex-direction:column}.app-content{flex:1}.app-nav{display:flex;background:linear-gradient(135deg,#667eea,#764ba2);padding:0 20px}.app-nav-tab{background:transparent;border:none;color:#ffffffb3;padding:16px 24px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;text-decoration:none;display:inline-block}.app-nav-tab:hover{color:#fff;background:#ffffff1a}.app-nav-tab.active{color:#fff;border-bottom-color:#fff;background:#ffffff26}.app-nav-tab.prod-tab{border-left:2px solid #dc2626}.app-nav-tab.manage-tab{margin-left:auto;border-left:1px solid rgba(255,255,255,.2)}.tab-env-indicator{display:inline-block;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase;margin-left:8px;vertical-align:middle}.tab-env-indicator.dev{background:#f59e0b33;color:#f59e0b}.tab-env-indicator.prod{background:#dc262633;color:#fca5a5}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;text-align:center}.app-header h1{margin:0 0 8px;font-size:28px}.app-header p{margin:0;opacity:.9}.main-content{display:flex;max-width:1400px;margin:0 auto;padding:20px;gap:20px}.left-panel{flex:1;min-width:400px;max-width:500px}.right-panel{flex:2;min-width:500px}.panel-tabs{display:flex;gap:0;margin-bottom:16px;background:#e5e7eb;border-radius:8px;padding:4px}.panel-tab{flex:1;padding:10px 16px;font-size:14px;font-weight:500;background:transparent;color:#666;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.panel-tab:hover{color:#333;background:#ffffff80}.panel-tab.active{background:#fff;color:#667eea;box-shadow:0 1px 3px #0000001a}.no-selection{background:#fff;border-radius:8px;padding:60px 20px;text-align:center;color:#666;box-shadow:0 2px 4px #0000001a}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media(max-width:900px){.main-content{flex-direction:column}.left-panel,.right-panel{min-width:100%;max-width:100%}}.call-initiator{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.call-initiator h2{margin:0 0 16px;font-size:18px}.prompt-section{margin-bottom:16px}.toggle-prompt{background:transparent;color:#667eea;padding:8px 0;font-size:14px;border:none;cursor:pointer}.toggle-prompt:hover{color:#5a6fd6;background:transparent}.prompt-form{background:#f8f9fa;border-radius:6px;padding:16px;margin-top:12px}.prompt-form textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:monospace;resize:vertical;min-height:300px}.prompt-form textarea:focus{outline:none;border-color:#667eea}.prompt-hint{margin:8px 0 0;font-size:12px;color:#666}.prompt-form select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.prompt-form select:focus{outline:none;border-color:#667eea}.prompt-actions{display:flex;gap:10px;margin-top:12px;margin-bottom:8px}.save-prompt-btn{padding:8px 16px;font-size:13px}.delete-prompt-btn{background:#dc2626;padding:8px 16px;font-size:13px}.delete-prompt-btn:hover:not(:disabled){background:#b91c1c}.copy-agent-btn{background:#2563eb;padding:8px 16px;font-size:13px;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .15s}.copy-agent-btn:hover:not(:disabled){background:#1d4ed8}.copy-agent-btn:disabled{opacity:.6;cursor:not-allowed}.save-message{margin:8px 0;font-size:13px;color:#059669}.variables-subsection{margin-top:20px;padding-top:16px;border-top:1px solid #ddd}.variables-subsection>label{display:block;font-weight:600;font-size:14px;margin-bottom:4px}.variables-hint{font-size:12px;color:#666;margin:0 0 12px}.custom-variable-row{display:flex;gap:8px;margin-bottom:10px;align-items:center}.variable-key-input{flex:1;font-family:monospace}.variable-value-input{flex:2}.remove-variable-btn{background:#dc2626;color:#fff;border:none;width:32px;height:32px;border-radius:4px;font-size:18px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.remove-variable-btn:hover:not(:disabled){background:#b91c1c}.add-variable-btn{background:#059669;padding:8px 16px;font-size:13px;margin-top:8px}.add-variable-btn:hover:not(:disabled){background:#047857}.prompt-filter{background:#fff;border-radius:8px;padding:12px 16px;margin-bottom:16px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:12px}.prompt-filter label{font-size:14px;font-weight:500;color:#555;white-space:nowrap}.prompt-filter select{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.prompt-filter select:focus{outline:none;border-color:#667eea}.call-list{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.call-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.call-list h2{margin:0;font-size:18px}.call-list-filters{display:flex;align-items:center;gap:12px}.call-type-filter{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.call-type-filter:focus{outline:none;border-color:#667eea}.no-results{text-align:center;padding:40px 20px;color:#666;font-size:14px}.call-list.empty{text-align:center;color:#666;padding:40px 20px}.call-list table{width:100%;border-collapse:collapse}.call-list th{text-align:left;padding:8px;border-bottom:2px solid #eee;font-size:12px;text-transform:uppercase;color:#666}.call-list th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.call-list th.sortable:hover{background:#f0f0f0}.sort-indicator{margin-left:4px;color:#ccc;font-size:10px}.sort-indicator.active{color:#667eea}.call-list td{padding:12px 8px;border-bottom:1px solid #eee;font-size:14px}.call-list tr{cursor:pointer;transition:background .2s}.call-list tbody tr:hover{background:#f8f9fa}.call-list tr.selected{background:#667eea11}.annotation-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.annotation-badge.pending{background:#eee;color:#666}.annotation-badge.annotated{background:#e0e7ff;color:#4338ca}.annotation-badge.success,.annotation-badge.human,.annotation-badge.engaged{background:#d1fae5;color:#065f46}.annotation-badge.not-engaged{background:#e5e7eb;color:#4b5563}.annotation-badge.voicemail{background:#fef3c7;color:#92400e}.annotation-badge.info{background:#dbeafe;color:#1e40af}.annotation-badge.transfer-requested{background:#dc2626;color:#fff;font-weight:600}.annotation-badge.voicemail-full{background:#fecaca;color:#7c2d12}.result-badges{display:flex;flex-direction:column;gap:4px}.ai-badge{display:inline-block;padding:3px 6px;border-radius:4px;font-size:10px;font-weight:600}.ai-badge.voicemail{background:#fef3c7;color:#92400e}.ai-badge.human,.ai-badge.engaged{background:#d1fae5;color:#065f46}.ai-badge.not-engaged{background:#e5e7eb;color:#4b5563}.ai-badge.voicemail-full{background:#fecaca;color:#7c2d12}.ai-badge.transfer-requested{background:#dc2626;color:#fff;animation:pulse-badge 1.5s ease-in-out infinite}.ai-badge.reschedule{background:#7c3aed;color:#fff}.ai-badge.emergency{background:#dc2626;color:#fff;animation:pulse-badge 1.5s ease-in-out infinite}.ai-badge.cease{background:#b91c1c;color:#fff}.annotation-badge.reschedule{background:#ede9fe;color:#6d28d9}.annotation-badge.emergency{background:#dc2626;color:#fff;font-weight:600}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.call-detail{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.alert-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:6px;margin-bottom:16px;font-weight:600;font-size:15px}.alert-banner .alert-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-weight:700;font-size:16px}.transfer-requested-banner{background:#dc2626;color:#fff;animation:pulse-banner 2s ease-in-out infinite}.transfer-requested-banner .alert-icon{background:#fff;color:#dc2626}.reschedule-banner{background:#7c3aed;color:#fff}.reschedule-banner .alert-icon{background:transparent}.emergency-banner{background:#dc2626;color:#fff;animation:pulse-banner 2s ease-in-out infinite}.emergency-banner .alert-icon{background:transparent}@keyframes pulse-banner{0%,to{opacity:1}50%{opacity:.85}}.call-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.call-detail-header h2{margin:0;font-size:18px}.call-detail-header-actions{display:flex;gap:8px;align-items:center}.copy-link-btn{padding:6px 12px;font-size:12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;color:#374151;transition:background .15s}.copy-link-btn:hover{background:#e5e7eb}.refresh-btn{padding:8px 16px;font-size:13px}.call-detail-page{max-width:800px;margin:0 auto;padding:20px}.call-detail-page .back-link{display:inline-block;margin-bottom:16px;color:#2563eb;text-decoration:none;font-size:14px}.call-detail-page .back-link:hover{text-decoration:underline}.call-detail-page-error{color:#dc2626;font-size:15px}.call-metadata{background:#f8f9fa;border-radius:6px;padding:16px;margin-bottom:20px}.metadata-row{display:flex;margin-bottom:8px}.metadata-row:last-child{margin-bottom:0}.metadata-row .label{min-width:120px;flex-shrink:0;font-weight:500;color:#666;font-size:14px;margin-right:8px}.metadata-row .value{flex:1;font-size:14px;min-width:0;word-break:break-word}.metadata-row .value.mono{font-family:monospace;font-size:12px}.metadata-row .value.status-completed{color:#059669}.metadata-row .value.status-calling{color:#d97706}.metadata-row .value.status-failed{color:#dc2626}.audio-section{margin-bottom:20px}.audio-section h3{margin:0 0 16px;font-size:16px}.audio-player-group{display:flex;flex-direction:column;gap:16px}.audio-player{background:#f8f9fa;border-radius:6px;padding:12px;margin-bottom:8px}.audio-player:last-child{margin-bottom:0}.audio-player label{display:block;font-weight:500;font-size:13px;margin-bottom:8px;color:#555}.audio-player audio{width:100%}.audio-player .audio-error{color:#999;font-size:13px;margin:0;padding:8px 0}.prompt-display-section{margin-bottom:20px}.prompt-display-section h3{margin:0 0 12px;font-size:16px}.prompt-display{background:#f8f9fa;border-radius:6px;padding:16px;font-size:13px;line-height:1.6;white-space:pre-wrap;max-height:200px;overflow-y:auto;font-family:monospace;border:1px solid #e5e7eb}.transcript-section{margin-bottom:20px}.transcript-section h3{margin:0 0 12px;font-size:16px}.transcript{background:#f8f9fa;border-radius:6px;padding:16px;font-size:13px;line-height:1.6;white-space:pre-wrap;max-height:200px;overflow-y:auto}.ai-evaluation-section{margin-bottom:20px}.ai-evaluation-section h3{margin:0 0 12px;font-size:16px}.ai-evaluation-content{background:linear-gradient(135deg,#667eea11,#764ba211);border:1px solid #667eea33;border-radius:6px;padding:16px}.ai-eval-row{display:flex;margin-bottom:8px}.ai-eval-label{width:140px;font-weight:500;color:#555;font-size:14px}.ai-eval-value{font-size:14px;font-weight:600}.ai-eval-value.voicemail{color:#d97706}.ai-eval-value.human,.ai-eval-value.engaged{color:#059669}.ai-eval-reasoning{margin-top:12px;padding-top:12px;border-top:1px solid #667eea22}.ai-eval-reasoning .ai-eval-label{display:block;margin-bottom:6px}.ai-eval-reasoning p{margin:0;font-size:13px;color:#444;line-height:1.5}.ended-by-agent{color:#2563eb}.ended-by-patient{color:#059669}.ended-by-voicemail{color:#d97706}.ended-by-system{color:#6b7280}.tool-calls-section{margin-bottom:20px}.tool-calls-section h3{margin:0 0 12px;font-size:16px}.tool-calls-list{background:#f8f9fa;border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:8px}.tool-call-item{display:flex;align-items:center;gap:12px;padding:6px 10px;background:#fff;border-radius:4px;font-size:13px}.tool-call-name{font-weight:600;color:#1f2937;min-width:140px}.tool-call-result{font-weight:500;font-size:12px;padding:2px 8px;border-radius:10px}.tool-result-executed{background:#d1fae5;color:#065f46}.tool-result-failed{background:#fee2e2;color:#991b1b}.tool-result-ignored{background:#fef3c7;color:#92400e}.tool-result-pending{background:#e5e7eb;color:#374151}.tool-call-time{color:#6b7280;font-size:12px;margin-left:auto}.annotation-form{border-top:1px solid #eee;padding-top:20px}.annotation-form h3{margin:0 0 16px;font-size:16px}.patient-id-link{color:#6366f1;text-decoration:none}.patient-id-link:hover{text-decoration:underline}.stats-panel{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.stats-panel h2{margin:0 0 16px;font-size:18px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-card{background:#f8f9fa;border-radius:6px;padding:12px;text-align:center}.stat-card.highlight{background:linear-gradient(135deg,#667eea22,#764ba222)}.stat-card.human,.stat-card.engaged{background:#d1fae5}.stat-card.human .stat-value,.stat-card.engaged .stat-value{color:#065f46}.stat-card.not-engaged{background:#e5e7eb}.stat-card.not-engaged .stat-value{color:#4b5563}.stat-card.voicemail{background:#fef3c7}.stat-card.voicemail .stat-value{color:#92400e}.stat-card.voicemail-full{background:#fee2e2}.stat-card.voicemail-full .stat-value{color:#991b1b}.stat-card.transfer{background:#fce7f3}.stat-card.transfer .stat-value{color:#9d174d}.stat-card.reschedule{background:#ede9fe}.stat-card.reschedule .stat-value{color:#6d28d9}.stat-card.emergency{background:#fecaca}.stat-card.emergency .stat-value{color:#dc2626}.stat-card.success{background:#dcfce7}.stat-card.success .stat-value{color:#166534}.stat-value{font-size:24px;font-weight:700;color:#333}.stat-label{font-size:11px;color:#666;margin-top:4px;text-transform:uppercase}@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.voicemail-tester{min-height:100vh}.automatic-pipeline{min-height:calc(100vh - 56px);background:#f5f5f5}.pipeline-content{display:flex;max-width:1600px;margin:0 auto;padding:20px;gap:20px}.pipeline-loading{padding:40px;text-align:center;color:#666}.pipeline-error-page{padding:60px 20px;text-align:center;color:#666;background:#fff;margin:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.pipeline-error-page p{margin:8px 0}.pipeline-config-panel{width:320px;flex-shrink:0;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;align-self:flex-start}.back-to-pipelines{display:inline-block;color:#667eea;text-decoration:none;font-size:14px;margin-bottom:16px}.back-to-pipelines:hover{text-decoration:underline}.pipeline-config-panel h2{margin:0 0 8px;font-size:18px}.unsaved-changes-banner{display:flex;justify-content:space-between;align-items:center;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:10px 12px;margin-bottom:16px}.unsaved-changes-banner span{font-size:13px;font-weight:500;color:#92400e}.unsaved-actions{display:flex;gap:8px}.discard-btn{background:#6b7280;padding:6px 12px;font-size:12px}.discard-btn:hover:not(:disabled){background:#4b5563}.save-config-btn{background:#059669;padding:6px 12px;font-size:12px}.save-config-btn:hover:not(:disabled){background:#047857}.pipeline-status-card{padding:16px;border-radius:8px;margin-bottom:20px;border:2px solid}.pipeline-status-card.enabled{background:#d1fae5;border-color:#059669}.pipeline-status-card.disabled{background:#fee2e2;border-color:#dc2626}.pipeline-status-card .status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pipeline-status-card .status-label{font-weight:600;font-size:14px;color:#333}.pipeline-status-card .status-value{font-weight:700;font-size:14px;padding:4px 12px;border-radius:4px}.pipeline-status-card .status-value.on{background:#059669;color:#fff}.pipeline-status-card .status-value.off{background:#dc2626;color:#fff}.pipeline-status-card .toggle-label span:first-child{font-size:13px;color:#666}.config-section{margin-bottom:20px}.config-section>label{display:block;font-weight:500;font-size:14px;margin-bottom:8px;color:#333}.config-section input[type=text],.config-section input[type=number],.config-section select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.config-section input:focus,.config-section select:focus{outline:none;border-color:#667eea}.config-hint{margin:6px 0 0;font-size:12px;color:#666}.threshold-control{display:flex;align-items:center;gap:8px}.threshold-input{width:70px;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;text-align:right}.threshold-input:focus{outline:none;border-color:#667eea}.threshold-percent{font-size:14px;color:#666}.threshold-control input[type=range]{flex:1;height:6px;-webkit-appearance:none;background:#ddd;border-radius:3px;outline:none}.threshold-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#667eea;border-radius:50%;cursor:pointer}.threshold-value{font-weight:600;font-size:14px;color:#667eea;min-width:50px}.time-range-control{display:flex;align-items:center;gap:8px}.time-range-control select{flex:1;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.time-separator{color:#666;font-size:14px}.pipeline-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid #eee}.preview-btn{background:#6b7280;width:100%}.preview-btn:hover:not(:disabled){background:#4b5563}.run-btn{background:#059669;width:100%}.run-btn:hover:not(:disabled){background:#047857}.cancel-btn{background:#dc2626;width:100%}.cancel-btn:hover:not(:disabled){background:#b91c1c}.last-run-info{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:10px;background:#f8f9fa;border-radius:4px;font-size:12px;color:#666}.env-info{display:flex;align-items:center;gap:12px}.api-path{font-family:monospace;font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipeline-warning-banner{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:12px}.pipeline-warning-banner a{color:#664d03;font-weight:600}.field-mapping-summary{font-size:12px}.field-mapping-summary>label{font-weight:600;font-size:13px;margin-bottom:8px;display:block}.mapping-details,.mapping-vars,.mapping-cols{margin-bottom:8px}.mapping-row,.mapping-var-row{display:flex;align-items:center;gap:6px;padding:2px 0;color:#555}.mapping-label{font-weight:500;color:#333;min-width:70px}.mapping-var-row code{background:#f0f0f0;padding:1px 5px;border-radius:3px;font-size:11px;color:#7c3aed}.mapping-arrow-small{color:#999;font-size:11px}.mapping-cols{display:flex;gap:6px;align-items:baseline;color:#555}.pipeline-patients-panel{flex:1;min-width:0;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column}.patients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.patients-header h2{margin:0;font-size:18px}.patient-filters{display:flex;align-items:center;gap:12px}.patient-filters select,.patient-filters .date-filter-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.pipeline-error{background:#fee;color:#c00;padding:12px;border-radius:4px;margin-bottom:16px;font-size:14px}.patients-loading,.patients-empty{text-align:center;padding:60px 20px;color:#666;font-size:14px}.patients-table-container{flex:1;overflow-y:auto;max-height:calc(100vh - 250px)}.patients-table{width:100%;border-collapse:collapse}.patients-table th{text-align:left;padding:10px 12px;border-bottom:2px solid #eee;font-size:12px;text-transform:uppercase;color:#666;background:#fff;position:sticky;top:0}.patients-table td{padding:10px 12px;border-bottom:1px solid #eee;font-size:14px}.patients-table tr.excluded{opacity:.6}.patients-table tbody tr:hover{background:#f8f9fa}.patients-table tbody tr.clickable{cursor:pointer}.patients-table tbody tr.clickable:hover{background:#eef2ff}.patients-table tbody tr.selected{background:#dbeafe}.patients-table tbody tr.selected:hover{background:#bfdbfe}.patients-table th.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none}.patients-table th.sortable-header:hover{background:#f0f0f0}.hash-cell{font-family:monospace;font-size:12px}.hash-pass{color:#059669}.hash-fail{color:#dc2626}.filter-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.filter-badge.pass{background:#d1fae5;color:#065f46}.filter-badge.fail{background:#fee2e2;color:#991b1b}.filter-badge.already-called{background:#dbeafe;color:#1e40af}.call-status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.call-status-badge.pending{background:#e5e7eb;color:#4b5563}.call-status-badge.calling{background:#fef3c7;color:#92400e}.call-status-badge.completed{background:#d1fae5;color:#065f46}.call-status-badge.failed{background:#fee2e2;color:#991b1b}.call-status-badge.excluded{background:#f3f4f6;color:#6b7280}.call-status-badge.already_called{background:#dbeafe;color:#1e40af}.pipeline-history-panel{width:340px;flex-shrink:0;display:flex;flex-direction:column;gap:20px}.pipeline-history-panel .stats-panel{margin-bottom:0;padding:16px}.pipeline-history-panel .stats-panel h2{font-size:16px;margin-bottom:12px}.pipeline-history-panel .stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}.pipeline-history-panel .stat-card{padding:8px}.pipeline-history-panel .stat-value{font-size:18px}.pipeline-history-panel .stat-label{font-size:10px}.current-run-section,.run-history-section{background:#fff;border-radius:8px;padding:16px;box-shadow:0 2px 4px #0000001a}.current-run-section h3,.run-history-section h3{margin:0 0 16px;font-size:16px}.run-progress{margin-bottom:16px}.progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:#667eea;transition:width .3s ease}.progress-stats{margin-top:8px;font-size:13px;color:#666;text-align:center}.run-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.run-stat{text-align:center;padding:12px;background:#f8f9fa;border-radius:4px}.run-stat .stat-value{display:block;font-size:24px;font-weight:700;color:#333}.run-stat .stat-label{font-size:11px;color:#666;text-transform:uppercase}.run-status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.run-status-badge.running{background:#fef3c7;color:#92400e}.run-status-badge.completed{background:#d1fae5;color:#065f46}.run-status-badge.failed{background:#fee2e2;color:#991b1b}.run-status-badge.cancelled{background:#e5e7eb;color:#4b5563}.history-empty{text-align:center;padding:20px;color:#666;font-size:14px}.history-hint{margin:0 0 12px;font-size:12px;color:#888}.history-item.clickable{cursor:pointer;transition:all .2s;border:2px solid transparent}.history-item.clickable:hover{background:#eef2ff;border-color:#c7d2fe}.history-item.clickable.selected{background:#eef2ff;border-color:#667eea}.viewing-run{font-size:14px;font-weight:400;color:#667eea}.clear-selection-btn{background:#6b7280;padding:6px 12px;font-size:12px}.clear-selection-btn:hover{background:#4b5563}.export-csv-btn{background:#059669;padding:6px 12px;font-size:12px;color:#fff;border:none;border-radius:4px;cursor:pointer}.export-csv-btn:hover{background:#047857}.pipeline-call-detail{margin-top:20px;border-top:2px solid #667eea;padding-top:20px}.pipeline-call-detail.loading{text-align:center;color:#666;padding:40px}.call-detail-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.call-detail-header-bar h3{margin:0;font-size:18px;color:#667eea}.call-detail-header-bar-actions{display:flex;gap:8px;align-items:center}.close-detail-btn{background:#6b7280;padding:6px 12px;font-size:12px}.close-detail-btn:hover{background:#4b5563}.pipeline-call-detail .call-detail{box-shadow:none;padding:0}.pipeline-call-detail .call-detail-header{display:none}.history-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.history-item{padding:12px;background:#f8f9fa;border-radius:6px}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.history-date{font-size:12px;color:#666}.history-stats{display:flex;gap:12px;font-size:12px;color:#666}.history-error{margin-top:8px;padding:8px;background:#fee2e2;color:#991b1b;border-radius:4px;font-size:12px}.ai-result-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500}.ai-result-badge.human,.ai-result-badge.engaged,.ai-result-badge.no{background:#d1fae5;color:#065f46}.ai-result-badge.not_engaged{background:#e5e7eb;color:#4b5563}.ai-result-badge.voicemail,.ai-result-badge.yes{background:#fef3c7;color:#92400e}.ai-result-badge.voicemail_full{background:#fee2e2;color:#991b1b}.ai-result-badge.transfer_requested{background:#fce7f3;color:#9d174d}.result-cell-wrapper{display:inline-flex;align-items:center;gap:4px}.problematic-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#dc2626;color:#fff;font-size:11px;font-weight:700;cursor:help;flex-shrink:0}.annotation-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600}.annotation-badge.yes{background:#d1fae5;color:#065f46}.annotation-badge.no{background:#fee2e2;color:#991b1b}.annotation-badge.partial{background:#fef3c7;color:#92400e}.call-history-section{margin-bottom:16px}.view-all-calls-btn{width:100%;padding:10px 16px;background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;color:#0369a1;font-weight:500;cursor:pointer;transition:all .2s}.view-all-calls-btn:hover{background:#e0f2fe}.view-all-calls-btn.active{background:#0ea5e9;color:#fff}.patient-link{color:#2563eb;text-decoration:none;font-family:monospace;font-size:10px}.patient-link:hover{text-decoration:underline}.pipeline-confirm-modal{background:#fff;border-radius:12px;width:90%;max-width:440px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.confirm-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#059669,#047857);color:#fff}.confirm-modal-header h3{margin:0;font-size:16px;font-weight:600}.confirm-modal-body{padding:20px}.confirm-modal-body p{margin:0 0 16px;font-size:14px;color:#374151;line-height:1.5}.confirm-details{display:flex;flex-direction:column;gap:10px;background:#f9fafb;border-radius:8px;padding:14px}.confirm-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.confirm-label{color:#6b7280;font-weight:500}.confirm-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e5e7eb}.confirm-cancel-btn{padding:8px 16px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.confirm-cancel-btn:hover{background:#e5e7eb}.confirm-run-btn{padding:8px 20px;background:#059669;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.confirm-run-btn:hover{background:#047857}@media(max-width:1200px){.pipeline-content{flex-direction:column}.pipeline-config-panel,.pipeline-history-panel{width:100%}.patients-table-container{max-height:400px}}.pipeline-manager{min-height:calc(100vh - 56px);background:#f5f5f5;padding:20px}.pipeline-manager-content{max-width:1200px;margin:0 auto}.manager-header{margin-bottom:24px}.manager-header h1{margin:0 0 8px;font-size:24px;color:#333}.manager-header p{margin:0;color:#666;font-size:14px}.manager-error{display:flex;justify-content:space-between;align-items:center;background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px}.dismiss-error{background:transparent;color:#991b1b;padding:4px 12px;font-size:12px;border:1px solid #991b1b}.dismiss-error:hover{background:#991b1b;color:#fff}.manager-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.manager-section h2{margin:0 0 8px;font-size:18px}.section-description{margin:0 0 16px;color:#666;font-size:14px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.env-switches-inline{display:flex;gap:32px;align-items:center}.env-toggle-inline{display:flex;align-items:center;gap:12px}.env-toggle-label{font-weight:500;font-size:14px;padding:4px 10px;border-radius:4px}.env-toggle-label.dev{background:#fef3c7;color:#92400e}.env-toggle-label.prod{background:#fee2e2;color:#991b1b}.env-switches{display:flex;gap:20px;margin-bottom:32px}.env-switch-card{flex:1;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.env-switch-card h3{margin:0 0 8px;font-size:16px;color:#333;display:flex;align-items:center;gap:8px}.env-switch-card p{margin:0 0 16px;font-size:13px;color:#666}.env-switch-card.dev{border-left:4px solid #f59e0b}.env-switch-card.prod{border-left:4px solid #dc2626}.add-type-btn{background:#059669;padding:10px 20px;font-size:14px}.add-type-btn:hover:not(:disabled){background:#047857}.loading-message,.empty-message{text-align:center;padding:40px;color:#666;font-size:14px}.pipeline-types-table{width:100%;border-collapse:collapse}.pipeline-types-table th{text-align:left;padding:12px;border-bottom:2px solid #eee;font-size:12px;text-transform:uppercase;color:#666;background:#fafafa}.pipeline-types-table td{padding:12px;border-bottom:1px solid #eee;font-size:14px;vertical-align:middle}.pipeline-types-table tbody tr:hover{background:#f8f9fa}.pipeline-types-table tr.disabled-row{opacity:.7}.pipeline-types-table .name-cell{font-weight:500;padding:0}.pipeline-name-link{display:block;background:#f0f4ff;border:none;color:#333;font-weight:600;font-size:14px;padding:16px 20px;cursor:pointer;text-decoration:none;text-align:left;width:100%;height:100%;transition:background .2s}.pipeline-name-link:hover{background:#e0e7ff;color:#333;text-decoration:none}.pipeline-types-table .prompt-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipeline-types-table .hours-cell{white-space:nowrap}.pipeline-types-table .api-path-cell{font-family:monospace;font-size:12px;color:#666;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipeline-types-table .actions-cell{text-align:right;white-space:nowrap}.pipeline-types-table .actions-cell button{padding:6px 12px;font-size:12px;margin-left:8px}.edit-btn{background:#6b7280}.edit-btn:hover:not(:disabled){background:#4b5563}.delete-type-btn{background:#dc2626}.delete-type-btn:hover:not(:disabled){background:#b91c1c}.pipeline-types-empty{text-align:center;padding:40px;color:#666}.pipeline-modal{background:#fff;border-radius:12px;width:90%;max-width:520px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column}.pipeline-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pipeline-modal-header h2{margin:0;font-size:18px;font-weight:600}.modal-close-btn{background:#fff3;color:#fff;border:none;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.modal-close-btn:hover{background:#ffffff4d}.pipeline-modal-body{padding:24px;overflow-y:auto;flex:1}.modal-section{margin-bottom:24px}.modal-section:last-child{margin-bottom:0}.modal-section h3{font-size:13px;font-weight:600;color:#667eea;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #eee}.modal-field{margin-bottom:16px}.modal-field:last-child{margin-bottom:0}.modal-field label{display:block;font-size:13px;font-weight:500;color:#444;margin-bottom:6px}.modal-field label .optional{font-weight:400;color:#999}.modal-field input,.modal-field select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.modal-field input:focus,.modal-field select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-field input.mono-input{font-family:monospace;font-size:13px}.field-hint{display:block;font-size:11px;color:#888;margin-top:4px}.modal-field-row{display:flex;gap:16px}.modal-field-row .modal-field{flex:1}.status-toggle{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:500}.status-toggle.enabled{background:#d1fae5;color:#059669}.status-toggle.disabled{background:#fee2e2;color:#dc2626}.toggle-label.compact{margin-left:8px}.threshold-input-group{display:flex;align-items:center;gap:8px}.threshold-input-group input{width:80px;text-align:right}.threshold-input-group span{color:#666;font-size:14px}.time-select-group{display:flex;align-items:center;gap:8px}.time-select-group select{flex:1}.time-select-group span{color:#666;font-size:13px}.weekday-checkboxes{display:flex;gap:4px;flex-wrap:wrap}.weekday-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:14px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid #d1d5db;background:#f9fafb;color:#6b7280;transition:all .15s;-webkit-user-select:none;user-select:none}.weekday-chip input[type=checkbox]{display:none}.weekday-chip.active{background:#dbeafe;border-color:#3b82f6;color:#1d4ed8}.weekday-chip:hover{border-color:#9ca3af}.weekday-chip.active:hover{border-color:#2563eb}.days-cell{font-size:12px;white-space:nowrap}.modal-success{background:#d1fae5;color:#059669;padding:12px;border-radius:6px;font-size:14px;text-align:center;margin-top:16px}.pipeline-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:#f8f9fa;border-top:1px solid #eee}.btn-cancel{background:#fff;color:#666;border:1px solid #ddd;padding:10px 20px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f5f5f5;border-color:#ccc}.btn-save{background:#667eea;color:#fff;border:none;padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-save:hover:not(:disabled){background:#5a6fd6}.btn-save:disabled{background:#ccc;cursor:not-allowed}.field-mapping-toggle{margin-bottom:16px}.field-mapping-toggle .toggle-label{display:flex;align-items:center;gap:8px;font-size:14px}.field-mapping-toggle .field-hint{display:block;margin-top:4px;margin-left:0}.fetch-sample-section{display:flex;align-items:center;gap:12px;margin-bottom:16px}.fetch-sample-btn{background:#4f46e5;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s}.fetch-sample-btn:hover:not(:disabled){background:#4338ca}.fetch-sample-btn:disabled{background:#ccc;cursor:not-allowed}.sample-error{color:#dc2626;font-size:12px}.sample-fields-table{margin-bottom:16px;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;max-height:200px;overflow-y:auto}.sample-fields-table table{width:100%;border-collapse:collapse;font-size:12px}.sample-fields-table th{background:#f3f4f6;padding:6px 10px;text-align:left;font-size:11px;text-transform:uppercase;color:#6b7280;position:sticky;top:0}.sample-fields-table td{padding:5px 10px;border-top:1px solid #f3f4f6}.sample-fields-table .field-name{font-family:monospace;font-weight:500;color:#4f46e5}.sample-fields-table .field-value{color:#374151;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-fields-table .field-type{color:#9ca3af;font-size:11px}.structural-fields{margin-bottom:16px}.structural-fields h4,.variable-mappings h4,.display-columns h4{font-size:12px;font-weight:600;color:#555;margin:0 0 8px}.structural-field-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.structural-field-row label{width:100px;font-size:12px;font-weight:500;color:#555;flex-shrink:0}.structural-field-row select,.structural-field-row input{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px}.variable-mappings{margin-bottom:16px}.variable-mappings>.field-hint{margin-bottom:10px}.variable-mapping-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.var-name-input,.api-field-input{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:monospace}.api-field-select{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px}.mapping-arrow{color:#9ca3af;font-size:14px;flex-shrink:0}.remove-mapping-btn{background:#fee2e2;color:#dc2626;border:none;width:28px;height:28px;border-radius:4px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s;padding:0}.remove-mapping-btn:hover{background:#fca5a5}.optional-checkbox{display:flex;align-items:center;gap:4px;font-size:12px;color:#6b7280;white-space:nowrap;cursor:pointer}.optional-checkbox input[type=checkbox]{margin:0}.optional-tag{font-size:11px;color:#9ca3af;font-style:italic}.add-mapping-btn{background:#f0f4ff;color:#4f46e5;border:1px dashed #a5b4fc;padding:6px 14px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.add-mapping-btn:hover{background:#e0e7ff;border-color:#818cf8}.display-columns{margin-bottom:8px}.display-columns>.field-hint{margin-bottom:10px}.display-columns-grid{display:flex;flex-wrap:wrap;gap:6px}.display-column-checkbox{display:flex;align-items:center;gap:4px;font-size:12px;padding:4px 8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;transition:all .2s}.display-column-checkbox:hover{background:#f0f4ff;border-color:#a5b4fc}.display-column-checkbox input[type=checkbox]{width:auto;margin:0}.display-column-checkbox span{font-family:monospace;color:#374151}@media(max-width:900px){.env-switches{flex-direction:column}.env-switches-inline{flex-direction:column;gap:16px;align-items:flex-start}.pipeline-types-table{font-size:12px}.pipeline-types-table th,.pipeline-types-table td{padding:8px}.pipeline-types-table .api-path-cell{display:none}}.openai-calls-page{min-height:100vh}.openai-calls-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:20px;text-align:center}.openai-calls-header h1{margin:0 0 8px;font-size:28px}.openai-calls-header p{margin:0;opacity:.9}.openai-call-form{background:#fff;border-radius:8px;padding:20px;margin-bottom:16px;box-shadow:0 2px 4px #0000001a}.openai-call-form .form-row{display:flex;gap:12px}.openai-call-form .form-row .form-group{flex:1}.openai-call-form h3{margin:0 0 16px;font-size:16px;color:#059669}.openai-call-form .form-group{margin-bottom:12px}.openai-call-form .form-group label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:4px}.openai-call-form .form-group input,.openai-call-form .form-group textarea,.openai-call-form .form-group select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;box-sizing:border-box}.openai-call-form .form-group textarea{resize:vertical}.openai-call-form .form-group input:focus,.openai-call-form .form-group textarea:focus,.openai-call-form .form-group select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 2px #10b98133}.openai-call-form .form-error{background:#fef2f2;color:#dc2626;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:12px}.openai-call-form .make-call-btn{width:100%;padding:12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.openai-call-form .make-call-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.openai-call-form .make-call-btn:disabled{opacity:.6;cursor:not-allowed}.appt-config-panel{margin-top:8px;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.appt-config-panel .form-row{display:flex;gap:12px}.appt-config-panel .form-group{flex:1;margin-bottom:8px}.schedule-grid-wrapper{overflow-x:auto;margin:0 -12px;padding:0 12px}.schedule-grid-table{display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;-webkit-user-select:none;user-select:none;min-width:640px}.schedule-grid-header,.schedule-grid-row{display:flex}.schedule-grid-corner{width:40px;min-width:40px;height:24px;background:#f9fafb;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.schedule-grid-col-header{flex:1;min-width:28px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:600;color:#6b7280;background:#f9fafb;border-right:1px solid #f3f4f6;border-bottom:1px solid #e5e7eb}.schedule-grid-col-header:last-child{border-right:none}.schedule-grid-row-header{width:40px;min-width:40px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:#374151;background:#f9fafb;border-right:1px solid #e5e7eb;border-bottom:1px solid #f3f4f6;cursor:pointer}.schedule-grid-row-header:hover{background:#e5e7eb}.schedule-grid-row:last-child .schedule-grid-row-header,.schedule-grid-row:last-child .schedule-grid-cell{border-bottom:none}.schedule-grid-cell{flex:1;min-width:28px;height:28px;background:#fff;border-right:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .05s}.schedule-grid-cell:last-child{border-right:none}.schedule-grid-cell:hover{background:#f0fdf4}.schedule-grid-cell.active{background:#86efac}.schedule-grid-cell.active:hover{background:#6ee7b7}.select-all-btn{padding:3px 10px;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:.75rem;cursor:pointer;color:#374151}.select-all-btn:hover{background:#f3f4f6}.settings-page{min-height:100vh}.settings-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:20px;text-align:center}.settings-header h1{margin:0 0 8px;font-size:28px}.settings-header p{margin:0;opacity:.9}.settings-content{padding:20px;max-width:800px;margin:0 auto}.settings-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.settings-card h3{margin:0 0 8px;font-size:18px;color:#374151}.settings-description{font-size:14px;color:#6b7280;margin:0 0 16px;line-height:1.5}.settings-card textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;resize:vertical}.settings-card textarea:focus{outline:none;border-color:#6366f1}.settings-actions{display:flex;gap:12px}.settings-loading{padding:20px;text-align:center;color:#6b7280}.settings-message{margin-top:12px;padding:10px 14px;border-radius:6px;font-size:14px}.settings-message-success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.settings-message-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.architecture-page{max-width:960px;margin:0 auto;padding:24px 16px}.architecture-page h2{margin:0 0 16px;font-size:22px;font-weight:600}.arch-view-toggle{display:flex;gap:0;margin-bottom:20px;border:1px solid #ddd;border-radius:6px;overflow:hidden;width:fit-content}.arch-toggle-btn{padding:8px 20px;border:none;background:#fff;font-size:14px;font-weight:500;cursor:pointer;color:#666;transition:background .15s,color .15s}.arch-toggle-btn:not(:last-child){border-right:1px solid #ddd}.arch-toggle-btn.active{background:#667eea;color:#fff}.arch-toggle-btn:hover:not(.active){background:#f0f0f0}.arch-diagram{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.arch-description{margin:0 0 16px;font-size:14px;color:#555;line-height:1.5}.arch-description code{background:#f1f5f9;padding:2px 5px;border-radius:3px;font-size:13px;color:#333}.arch-svg{width:100%;height:auto}.arch-box-label{font-size:12px;font-weight:600;fill:#333}.arch-box-sub{font-size:9.5px;fill:#777}.arch-note{font-size:9px;fill:#999}.arch-path-label{font-size:11px;font-weight:600}.arch-path-label.manual{fill:#667eea}.arch-path-label.auto{fill:#f6993f}.arch-group-label{font-size:11px;font-weight:600;fill:#48bb78}.arch-section-label{font-size:13px;font-weight:600;fill:#333}.arch-phase-label{font-size:11px;font-weight:700;fill:#555}.arch-legend{font-size:10px;fill:#555}.arch-transition{font-size:9.5px;font-weight:600;fill:#555}.arch-transition-r{font-size:9.5px;font-weight:600;fill:#555;text-anchor:end}.arch-note-r{font-size:9px;fill:#999;text-anchor:end}
