:root{--brand-500:#667eea;--brand-600:#5568d3;--brand-700:#764ba2;--brand-gradient:linear-gradient(135deg,#667eea,#764ba2);--brand-tint:#667eea1a;--brand-tint-strong:#667eea2e;--admin-accent:#2196f3;--admin-accent-dark:#1976d2;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--dark-500:#2d3148;--dark-700:#1a1f36;--dark-900:#0f1419;--success:#10b981;--success-strong:#047857;--success-bg:#d1fae5;--success-border:#a7f3d0;--success-text:#065f46;--warning:#f59e0b;--warning-strong:#b45309;--warning-bg:#fef3c7;--warning-border:#fde68a;--warning-text:#92400e;--danger:#ef4444;--danger-strong:#dc2626;--danger-stronger:#b91c1c;--danger-bg:#fee2e2;--danger-border:#fecaca;--danger-text:#991b1b;--info:#3b82f6;--info-strong:#1d4ed8;--info-bg:#dbeafe;--info-border:#bfdbfe;--info-text:#1e40af;--page-bg:#f5f7fa;--surface:#fff;--surface-sunken:var(--gray-50);--border:var(--gray-200);--border-strong:var(--gray-300);--text:var(--gray-800);--text-muted:var(--gray-500);--text-subtle:var(--gray-400);--text-inverse:#fff;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-mono:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace;--text-xs:11px;--text-sm:12px;--text-md:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:28px;--text-5xl:32px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-0.011em;--tracking-wide:0.04em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-xs:0 1px 2px #1018280d;--shadow-sm:0 1px 2px #1018280f,0 1px 3px #1018281a;--shadow-md:0 2px 4px #1018280f,0 4px 12px #10182814;--shadow-lg:0 4px 8px #1018280f,0 12px 28px #1018281f;--shadow-brand:0 4px 14px #667eea59;--transition-fast:120ms cubic-bezier(0.4,0,0.2,1);--transition-base:180ms cubic-bezier(0.4,0,0.2,1);--focus-ring:0 0 0 3px #667eea73;--focus-ring-danger:0 0 0 3px #ef444466;--sidebar-width:260px;--content-max:1600px}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0ms;--transition-base:0ms}}:focus-visible{border-radius:var(--radius-sm);box-shadow:var(--focus-ring);outline:none}.page-container{max-width:var(--content-max)}.page-header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.page-title{color:var(--text);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);margin:0}.page-subtitle{color:var(--text-muted);font-size:var(--text-base);margin:var(--space-1) 0 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6)}.btn,.btn-add,.btn-cancel,.btn-danger,.btn-delete,.btn-primary,.btn-save,.btn-secondary,.btn-submit{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--text-base);font-weight:var(--font-semibold);gap:var(--space-2);justify-content:center;line-height:1.2;padding:10px var(--space-5);transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);white-space:nowrap}.btn-add,.btn-primary,.btn-save,.btn-submit{background:var(--brand-gradient);color:var(--text-inverse)}.btn-add:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-save:hover:not(:disabled),.btn-submit:hover:not(:disabled){box-shadow:var(--shadow-brand);transform:translateY(-1px)}.btn-add:active:not(:disabled),.btn-cancel:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-delete:active:not(:disabled),.btn-primary:active:not(:disabled),.btn-save:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-submit:active:not(:disabled),.btn:active:not(:disabled){box-shadow:var(--shadow-xs);transform:translateY(0)}.sa-shell .btn-add,.sa-shell .btn-primary{background:var(--admin-accent)}.sa-shell .btn-add:hover:not(:disabled),.sa-shell .btn-primary:hover:not(:disabled){background:var(--admin-accent-dark);box-shadow:var(--shadow-md)}.btn-cancel,.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--gray-700);font-weight:var(--font-medium)}.btn-cancel:hover:not(:disabled),.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.btn-danger,.btn-delete{background:var(--danger);color:var(--text-inverse)}.btn-danger:hover:not(:disabled),.btn-delete:hover:not(:disabled){background:var(--danger-strong)}.btn-danger:focus-visible,.btn-delete:focus-visible{box-shadow:var(--focus-ring-danger)}.btn-add:disabled,.btn-cancel:disabled,.btn-danger:disabled,.btn-delete:disabled,.btn-primary:disabled,.btn-save:disabled,.btn-secondary:disabled,.btn-submit:disabled,.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.55;transform:none}.btn-sm{padding:6px var(--space-3)}.btn-lg{font-size:var(--text-lg);padding:var(--space-3) var(--space-6)}.form-group{margin-bottom:var(--space-5)}.form-label{color:var(--gray-700);display:block;font-size:var(--text-base);font-weight:var(--font-medium);margin-bottom:6px}.form-input,.form-select,.form-textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:var(--text-base);padding:10px var(--space-3);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--gray-100);color:var(--text-subtle);cursor:not-allowed}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--danger)}.form-error-message{color:var(--danger-text);font-size:var(--text-md);margin-top:6px}.data-table{background:var(--surface);border-collapse:collapse;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;width:100%}.data-table thead{background:var(--surface-sunken)}.data-table th{border-bottom:1px solid var(--border);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide)}.data-table td,.data-table th{padding:var(--space-3) var(--space-4)}.data-table td{color:var(--text)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--surface-sunken)}.badge,.status-badge{align-items:center;border-radius:var(--radius-pill);display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:6px;line-height:1.4;padding:4px 10px;white-space:nowrap}.badge-success,.status-badge.active,.status-badge.online{background:var(--success-bg);color:var(--success-text)}.badge-warning,.status-badge.paused{background:var(--warning-bg);color:var(--warning-text)}.badge-danger,.status-badge.inactive,.status-badge.offline{background:var(--danger-bg);color:var(--danger-text)}.badge-neutral{background:var(--gray-100);color:var(--gray-600)}.error-banner{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-sm);color:var(--danger-text)}.error-banner,.success-banner{font-size:var(--text-base);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.success-banner{background:var(--success-bg);border:1px solid var(--success-border);border-radius:var(--radius-sm);color:var(--success-text)}.loading{padding:var(--space-10)}.empty-state,.loading{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-base);justify-content:center}.empty-state{background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);flex-direction:column;gap:var(--space-2);padding:var(--space-12) var(--space-6);text-align:center}body{font-feature-settings:"tnum";background:var(--page-bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);font-variant-numeric:tabular-nums;line-height:var(--leading-normal)}code{font-family:var(--font-mono)}h1,h2,h3,h4{letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}.pbx-confirm-overlay,.pbx-toast-viewport{--pbx-radius:8px;--pbx-text:#1e293b;--pbx-text-muted:#475569;--pbx-surface:#fff;--pbx-border:#cbd5e1;--pbx-shadow:0 8px 24px #0f172a29;--pbx-neutral:#1e293b;--pbx-neutral-hover:#0f172a;--pbx-danger:#dc2626;--pbx-danger-hover:#b91c1c;--pbx-focus-ring:0 0 0 3px #1e293b59;font-family:inherit}.pbx-toast-viewport{pointer-events:none;position:fixed;right:16px;top:16px;width:min(400px,calc(100vw - 32px));z-index:11000}.pbx-toast-region,.pbx-toast-viewport{display:flex;flex-direction:column;gap:10px}.pbx-toast{align-items:flex-start;animation:pbx-toast-in .16s ease-out;background:var(--pbx-surface);border:1px solid;border-left:4px solid;border-radius:var(--pbx-radius);box-shadow:var(--pbx-shadow);display:flex;gap:10px;padding:12px 12px 12px 14px;pointer-events:auto}.pbx-toast__icon{display:flex;flex-shrink:0;padding-top:1px}.pbx-toast__body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.pbx-toast__label{font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pbx-toast__message{color:var(--pbx-text);font-size:.875rem;line-height:1.45;overflow-wrap:anywhere;white-space:pre-line}.pbx-toast__close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--pbx-text-muted);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;width:24px}.pbx-toast__close:hover{background:#0f172a14;color:var(--pbx-text)}.pbx-toast__close:focus-visible{box-shadow:var(--pbx-focus-ring);outline:none}.pbx-toast--success{background:#ecfdf5;border-color:#a7f3d0}.pbx-toast--success .pbx-toast__icon,.pbx-toast--success .pbx-toast__label{color:#047857}.pbx-toast--error{background:#fef2f2;border-color:#fecaca}.pbx-toast--error .pbx-toast__icon,.pbx-toast--error .pbx-toast__label{color:#b91c1c}.pbx-toast--info{background:#f8fafc;border-color:var(--pbx-border)}.pbx-toast--info .pbx-toast__icon,.pbx-toast--info .pbx-toast__label{color:var(--pbx-text-muted)}@keyframes pbx-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.pbx-confirm-overlay{align-items:center;animation:pbx-fade-in .12s ease-out;background:#0f172a80;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10900}.pbx-confirm{animation:pbx-confirm-in .14s ease-out;background:var(--pbx-surface);border-radius:var(--pbx-radius);box-shadow:var(--pbx-shadow);padding:20px;width:min(440px,100%)}.pbx-confirm__header{align-items:flex-start;display:flex;gap:10px}.pbx-confirm__icon{color:var(--pbx-text-muted);display:flex;flex-shrink:0;padding-top:1px}.pbx-confirm--destructive .pbx-confirm__icon{color:var(--pbx-danger)}.pbx-confirm__title{color:var(--pbx-text);font-size:1.0625rem;font-weight:600;line-height:1.35;margin:0}.pbx-confirm__message{color:var(--pbx-text-muted);font-size:.875rem;line-height:1.5;margin:10px 0 0 32px;overflow-wrap:anywhere;white-space:pre-line}.pbx-confirm__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.pbx-confirm__cancel,.pbx-confirm__confirm{border-radius:6px;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:8px 16px}.pbx-confirm__cancel{background:var(--pbx-surface);border:1px solid var(--pbx-border);color:var(--pbx-text-muted)}.pbx-confirm__cancel:hover{background:#f1f5f9;color:var(--pbx-text)}.pbx-confirm__confirm{background:var(--pbx-neutral);border:1px solid #0000;color:#fff}.pbx-confirm__confirm:hover{background:var(--pbx-neutral-hover)}.pbx-confirm--destructive .pbx-confirm__confirm{background:var(--pbx-danger)}.pbx-confirm--destructive .pbx-confirm__confirm:hover{background:var(--pbx-danger-hover)}.pbx-confirm__cancel:focus-visible,.pbx-confirm__confirm:focus-visible{box-shadow:var(--pbx-focus-ring);outline:none}.pbx-confirm--destructive .pbx-confirm__confirm:focus-visible{box-shadow:0 0 0 3px #dc262666}@keyframes pbx-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pbx-confirm-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pbx-confirm,.pbx-confirm-overlay,.pbx-toast{animation:none}}@media (max-width:640px){.pbx-toast-viewport{left:12px;right:12px;top:12px;width:auto}}.login-container{align-items:center;background:var(--brand-gradient);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-box{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-width:420px;padding:40px;width:100%}.login-logo{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:32px}.logo-icon{height:56px;width:56px}.logo-brand,.logo-icon{font-size:var(--text-3xl)}.logo-brand{-webkit-text-fill-color:#0000;background:var(--brand-gradient);-webkit-background-clip:text;background-clip:text}.logo-subtitle{font-size:var(--text-md);font-weight:600;letter-spacing:.5px}.login-subtitle{margin-bottom:32px}.login-form{display:flex;flex-direction:column;gap:20px}.form-group input{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:12px;transition:border-color .3s}.form-group input:focus{border-color:var(--brand-500)}.form-group input:disabled{background:var(--gray-100);cursor:not-allowed}.demo-credentials{border-top:1px solid var(--gray-100);color:var(--text-muted);font-size:var(--text-md);margin-top:30px;padding-top:20px;text-align:center}.demo-credentials p{margin:5px 0}.demo-credentials strong{color:var(--gray-700)}.sidebar{background:linear-gradient(180deg,var(--dark-700) 0,var(--dark-900) 100%);border-right:1px solid #ffffff1a;box-shadow:2px 0 10px #0000004d;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:1000}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:24px 20px}.sidebar-logo{align-items:center;display:flex;gap:12px}.logo-icon{border-radius:var(--radius-md);box-shadow:var(--shadow-brand);height:42px;letter-spacing:-.5px;width:42px}.logo-text{gap:2px}.logo-brand{color:#fff;font-size:var(--text-xl);letter-spacing:-.5px}.logo-subtitle{color:#fff9;font-size:var(--text-xs);font-weight:500;letter-spacing:1px;text-transform:uppercase}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--radius-sm)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.nav-section{margin-bottom:24px}.nav-section-title{color:#ffffff80;font-size:var(--text-xs);font-weight:600;letter-spacing:1px;margin-bottom:4px;padding:8px 20px;text-transform:uppercase}.nav-item{align-items:center;background:#0000;border:none;color:#ffffffb3;cursor:pointer;display:flex;font-size:var(--text-base);font-weight:500;gap:12px;padding:12px 20px;position:relative;text-align:left;transition:all .2s ease;width:100%}.nav-item:before{background:var(--brand-gradient);border-radius:0 3px 3px 0;content:"";height:0;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:height .2s ease;width:3px}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item:hover:before{height:70%}.nav-item.active{background:var(--brand-tint-strong);color:#fff}.nav-item.active:before{height:100%}.nav-icon{flex-shrink:0;font-size:var(--text-xl);text-align:center;width:20px}.nav-label{flex:1 1}.sidebar-footer{border-top:1px solid #ffffff1a;padding:16px 0}.logout-btn{color:#ff6464cc}.logout-btn:hover{background:#ff64641a;color:#ff6464}.logout-btn:hover:before{background:#ff6464}@media (max-width:768px){.sidebar{width:220px}.logo-brand{font-size:var(--text-lg)}.nav-item{font-size:var(--text-md);padding:10px 16px}}.layout{background:var(--page-bg)}.layout,.layout-main{display:flex;min-height:100vh}.layout-main{flex:1 1;flex-direction:column;margin-left:260px}.layout-header{align-items:center;background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:0 1px 3px #0000000d;display:flex;justify-content:flex-end;padding:16px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-user-info{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.user-name{color:var(--gray-800);font-size:var(--text-base);font-weight:600}.user-email{color:var(--gray-500);font-size:var(--text-sm)}.user-tenant{color:var(--gray-400);font-family:monospace;font-size:var(--text-xs)}.layout-content{flex:1 1;margin:0 auto;max-width:1600px;padding:32px;width:100%}@media (max-width:768px){.layout-main{margin-left:220px}.layout-content{padding:20px}.layout-header{padding:12px 20px}}@media (max-width:480px){.layout-main{margin-left:0}.layout-content{padding:16px}}.trunk-list{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:hidden}.trunk-table{border-collapse:collapse;width:100%}.trunk-table thead{background:var(--gray-50)}.trunk-table th{border-bottom:2px solid var(--gray-300);color:var(--gray-600);font-weight:600;text-align:left}.trunk-table td,.trunk-table th{font-size:var(--text-base);padding:12px 16px}.trunk-table td{border-bottom:1px solid var(--gray-100)}.trunk-table tbody tr:hover{background:var(--gray-50)}.trunk-table tbody tr:last-child td{border-bottom:none}.trunk-name{color:var(--gray-700);font-weight:600}.transport-badge{background:var(--info-bg);border-radius:var(--radius-sm);color:var(--admin-accent-dark);display:inline-block;font-size:var(--text-sm);font-weight:600;padding:4px 8px}.status-badge{align-items:center;display:inline-flex;gap:6px}.registration-status{align-items:center;display:flex;gap:8px}.status-registered{background:var(--success-bg);color:var(--success-text)}.status-unregistered{background:var(--danger-bg);color:var(--danger-text)}.status-loading{background:var(--info-bg);color:var(--admin-accent-dark)}.status-dot{animation:pulse 2s ease-in-out infinite;display:inline-block;height:8px;width:8px}.dot-green{background:var(--success)}.dot-red{background:var(--danger)}.expires-timer{background:var(--gray-100);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-xs);font-weight:500;padding:2px 6px}.btn-delete:active,.btn-edit:active{transform:scale(.95)}@media (max-width:768px){.trunk-table{font-size:var(--text-sm)}.trunk-table td,.trunk-table th{padding:8px}}.trunk-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.trunk-form-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;padding:30px;width:100%}.trunk-form-container h2{color:var(--gray-700);font-size:var(--text-3xl);margin:0 0 25px}.trunk-form{display:flex;flex-direction:column;gap:20px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.form-row .form-group-small{grid-column:span 1}.trunk-form-container{padding:20px}}.page-container{width:100%}.page-header{padding-bottom:16px}@media (max-width:768px){.content-header,.header-content{align-items:flex-start;flex-direction:column;gap:15px}.page-content{padding:20px 15px}}.extension-list{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:visible}.extension-table{border-collapse:collapse;width:100%}.extension-table thead{background:var(--gray-50)}.extension-table th{border-bottom:2px solid var(--gray-300);color:var(--gray-600);font-weight:600;text-align:left}.extension-table td,.extension-table th{font-size:var(--text-base);padding:12px 16px}.extension-table td{border-bottom:1px solid var(--gray-100)}.extension-table tbody tr:hover{background:var(--gray-50)}.extension-table tbody tr:last-child td{border-bottom:none}.extension-number{color:var(--gray-700);font-size:var(--text-lg);font-weight:600}.status-active{color:var(--success-text)}.status-inactive{color:var(--danger-text)}.btn-provision{background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-lg);padding:6px 12px;transition:transform .2s,opacity .2s}.btn-provision:hover{transform:scale(1.1)}.btn-provision:active{transform:scale(.95)}.btn-delete,.btn-edit{background:none;font-size:var(--text-lg);transition:transform .2s,opacity .2s}.btn-edit:hover{transform:scale(1.1)}.btn-delete:active,.btn-edit:active,.btn-rules:active{transform:scale(.95)}.btn-rules{background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-lg);padding:6px 12px;transition:transform .2s,opacity .2s}.btn-rules:hover{transform:scale(1.1)}.presence-dropdown{display:inline-block;position:relative}.presence-trigger{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:var(--text-md);gap:6px;min-width:140px;padding:6px 12px;transition:border-color .2s,box-shadow .2s}.presence-trigger:hover{border-color:var(--gray-400)}.presence-trigger:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.presence-trigger:disabled{cursor:not-allowed;opacity:.6}.presence-indicator{font-size:var(--text-xs);line-height:1}.presence-label{flex:1 1;text-align:left}.presence-arrow{color:var(--gray-500);font-size:8px}.presence-menu{background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;min-width:160px;padding:4px 0;position:fixed;z-index:9999}.presence-option{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:var(--text-md);gap:8px;padding:8px 12px;text-align:left;transition:background-color .15s;width:100%}.presence-option:hover{background-color:var(--gray-50)}.presence-option.active{background-color:var(--gray-200);font-weight:600}.presence-option:disabled{cursor:not-allowed;opacity:.6}.devices-cell{text-align:center}.devices-loading{color:var(--text-subtle)}.devices-button{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;gap:4px;padding:4px 8px;transition:border-color .2s,background-color .2s}.devices-button:hover{background-color:var(--gray-50);border-color:var(--brand-500)}.devices-button.devices-none{border-style:dashed;color:var(--text-subtle)}.devices-button.devices-none:hover{border-color:var(--brand-500);color:var(--brand-500)}.device-icon-group{align-items:center;display:inline-flex;gap:2px}.device-icon{font-size:var(--text-lg)}.device-count{background:var(--gray-200);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);font-weight:600;padding:1px 4px}.empty-state p{font-size:var(--text-lg);margin:10px 0}.empty-state-hint{color:var(--text-subtle)}.prov-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.prov-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 32px #0003;max-height:85vh;max-width:90vw;overflow-y:auto;width:560px}.prov-modal-header{align-items:center;border-bottom:1px solid var(--gray-300);display:flex;justify-content:space-between;padding:16px 20px}.prov-modal-header h3{color:var(--gray-700);font-size:var(--text-xl);margin:0}.prov-modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-3xl);line-height:1;padding:0 4px}.prov-modal-close:hover{color:var(--gray-700)}.prov-modal-body{padding:20px}.prov-url-info{background:var(--gray-50);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:var(--text-md);margin-bottom:20px;padding:10px 14px}.prov-url-info code{color:var(--brand-500);display:block;font-size:var(--text-sm);margin-top:4px;word-break:break-all}.prov-form{margin-bottom:24px}.prov-form-row{margin-bottom:12px}.prov-form-row label{color:var(--gray-600);display:block;font-size:var(--text-md);font-weight:600;margin-bottom:4px}.prov-form-row input,.prov-form-row select{border:1px solid var(--gray-300);border-radius:var(--radius-sm);box-sizing:border-box;font-size:var(--text-base);padding:8px 12px;width:100%}.prov-form-row input:focus,.prov-form-row select:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.prov-error{background:var(--danger-bg);border-radius:var(--radius-sm);color:var(--danger-text);font-size:var(--text-md);margin-bottom:12px;padding:8px 12px}.prov-submit{background:var(--brand-500);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:600;padding:10px;transition:background-color .2s;width:100%}.prov-submit:hover{background:var(--brand-600)}.prov-submit:disabled{background:var(--gray-500);cursor:not-allowed}.prov-devices-list h4{border-top:1px solid var(--gray-300);color:var(--gray-700);font-size:var(--text-lg);margin:0 0 12px;padding-top:16px}.prov-empty,.prov-loading{color:var(--text-subtle);font-size:var(--text-md);padding:12px;text-align:center}.prov-devices-table{border-collapse:collapse;font-size:var(--text-md);width:100%}.prov-devices-table th{border-bottom:1px solid var(--gray-300);color:var(--gray-600);font-size:var(--text-sm);font-weight:600;padding:8px;text-align:left}.prov-devices-table td{border-bottom:1px solid var(--gray-100);padding:8px}.prov-mac{font-family:monospace;font-size:var(--text-sm)}.prov-delete-btn{background:none;border:none;cursor:pointer;font-size:var(--text-base);padding:2px 6px;transition:transform .2s}.prov-delete-btn:hover{transform:scale(1.2)}.prov-url-info span{color:var(--gray-600);display:block;line-height:1.5;margin-top:4px}.prov-url-cell{max-width:260px}.prov-url-value{color:var(--brand-500);display:block;font-family:monospace;font-size:var(--text-xs);word-break:break-all}.prov-copy-btn,.prov-rotate-btn{background:none;border:1px solid var(--gray-300);border-radius:var(--radius-sm);color:var(--gray-600);cursor:pointer;font-size:var(--text-xs);margin-top:4px;padding:2px 8px;transition:border-color .2s,color .2s}.prov-copy-btn:hover,.prov-rotate-btn:hover{border-color:var(--brand-500);color:var(--brand-500)}.prov-rotate-btn{font-size:var(--text-md);margin-right:4px}.prov-url-hidden{color:var(--text-subtle)}.prov-denied{color:var(--danger-text);font-size:var(--text-xs);margin-top:2px}@media (max-width:768px){.extension-table{font-size:var(--text-sm)}.extension-table td,.extension-table th{padding:8px}}.extension-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.extension-form-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;padding:30px;width:100%}.extension-form-container h2{color:var(--gray-700);font-size:var(--text-3xl);margin:0 0 25px}.extension-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:15px;gap:15px}.form-row .form-group-small{grid-column:span 1}.form-group input,.form-group select{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:10px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:var(--brand-500);outline:none}.form-group input:disabled,.form-group select:disabled{background:var(--gray-100)}.checkbox-group{align-items:center;flex-direction:row;gap:8px}.checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:8px}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-actions{margin-top:10px}.btn-secondary:disabled{opacity:.6}.error-message{padding:12px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.form-row .form-group-small{grid-column:span 1}.extension-form-container{padding:20px}}.modal-header{padding:16px 20px}.modal-header h2{font-size:var(--text-xl)}.modal-close{align-items:center;color:var(--gray-500);display:flex;font-size:var(--text-3xl);justify-content:center;transition:color .2s}.modal-close:hover{color:#000}.modal-body{padding:20px}.modal-footer{border-top:1px solid var(--gray-200);padding:16px 20px}.presence-rules-modal{max-width:600px;width:90%}.rules-description{color:var(--text-muted);font-size:var(--text-base);line-height:1.5;margin-bottom:20px}.presence-rules-list{display:flex;flex-direction:column;gap:16px}.rule-card{background:var(--gray-50);border:1px solid var(--gray-300);border-radius:var(--radius-md);padding:16px;transition:border-color .2s,box-shadow .2s}.rule-card.editing{border-color:var(--brand-500);box-shadow:var(--focus-ring)}.rule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.presence-badge{border-radius:var(--radius-lg);display:inline-block;font-size:var(--text-md);font-weight:600;padding:4px 12px}.presence-dnd{background:var(--danger-bg);color:var(--danger-text)}.presence-away{background:var(--warning-bg);color:var(--warning-text)}.presence-busy{background:#ffe5d0;color:#c45012}.presence-offline{background:var(--gray-200);color:var(--gray-700)}.rule-actions{display:flex;gap:8px}.btn-delete-rule,.btn-edit-rule{border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);padding:6px 14px;transition:background-color .2s}.btn-edit-rule{background:var(--brand-500);border:none;color:#fff}.btn-edit-rule:hover{background:var(--brand-600)}.btn-delete-rule{background:#fff;border:1px solid var(--danger);color:var(--danger)}.btn-delete-rule:hover{background:var(--danger);color:#fff}.btn-delete-rule:disabled,.btn-edit-rule:disabled{cursor:not-allowed;opacity:.6}.rule-content{padding:8px 0}.rule-destination{color:var(--gray-700);font-size:var(--text-base)}.rule-not-configured{color:var(--text-subtle);font-size:var(--text-base);font-style:italic}.rule-form{background:#fff;border-radius:var(--radius-sm);margin-top:8px;padding:16px}.rule-form .form-group{margin-bottom:16px}.rule-form .form-group:last-of-type{margin-bottom:20px}.rule-form label{color:var(--gray-600);display:block;font-size:var(--text-md);font-weight:600;margin-bottom:6px}.rule-form select{background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);padding:10px 12px;width:100%}.rule-form select:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.form-actions{gap:10px;padding-top:8px}.btn-cancel:disabled,.btn-save:disabled{opacity:.6}.modal-footer .btn-close{background:var(--gray-500);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-base);padding:10px 24px;transition:background-color .2s}.modal-footer .btn-close:hover{background:var(--gray-600)}.error-message{font-size:var(--text-base);margin-bottom:16px}.device-modal{max-width:700px;width:90%}.modal-tabs{border-bottom:2px solid var(--gray-300);display:flex;gap:0;margin-bottom:20px}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:var(--text-base);font-weight:500;margin-bottom:-2px;padding:12px 24px;transition:color .2s,border-color .2s}.tab-button:hover{color:var(--gray-700)}.tab-button.active{border-bottom-color:var(--brand-500);color:var(--brand-500)}.devices-tab{min-height:300px}.no-devices{color:var(--text-muted);padding:40px 20px;text-align:center}.no-devices p{margin:8px 0}.no-devices .hint{color:var(--text-subtle);font-size:var(--text-md)}.device-count-label{color:var(--gray-700);font-weight:500;margin-bottom:16px}.device-list{display:flex;flex-direction:column;gap:12px}.device-card{align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);display:flex;gap:16px;padding:16px}.device-icon-large{flex-shrink:0;font-size:var(--text-5xl)}.device-info{flex:1 1;min-width:0}.device-type-label{color:var(--gray-700);font-size:var(--text-lg);font-weight:600;margin-bottom:8px}.device-details{display:flex;flex-direction:column;gap:4px}.device-detail{display:flex;font-size:var(--text-md);gap:8px}.detail-label{color:var(--text-muted);flex-shrink:0}.detail-value{color:var(--gray-700);word-break:break-all}.device-status{border-radius:var(--radius-lg);flex-shrink:0;font-size:var(--text-sm);font-weight:600;padding:6px 12px}.device-status.registered{background:var(--success-bg);color:var(--success-text)}.device-status.unreachable{background:var(--danger-bg);color:var(--danger-text)}.strategy-tab{display:flex;flex-direction:column;gap:20px}.form-input:focus,.form-select:focus{outline:none}.form-hint{color:var(--text-muted);margin:0}.ring-order-section{border-top:1px solid var(--gray-300);margin-top:8px;padding-top:16px}.ring-order-section h3{color:var(--gray-700);font-size:var(--text-lg);font-weight:600;margin:0 0 8px}.section-hint{color:var(--text-muted);font-size:var(--text-md);margin:0 0 16px}.ring-order-list{display:flex;flex-direction:column;gap:12px}.ring-order-item{align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);display:flex;gap:16px;justify-content:space-between;padding:12px}.ring-order-item.no-devices{opacity:.6}.ring-order-device{align-items:center;display:flex;gap:8px;min-width:150px}.device-icon-small{font-size:var(--text-2xl)}.device-type-name{color:var(--gray-700);font-weight:500}.no-device-label{color:var(--text-subtle);font-size:var(--text-xs);font-style:italic}.ring-order-controls{align-items:center;display:flex;gap:16px}.control-group{align-items:center;display:flex;gap:6px}.control-group label{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);gap:4px}.priority-input,.timeout-input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:var(--text-md);padding:6px 8px;text-align:center;width:60px}.priority-input:focus,.timeout-input:focus{border-color:var(--brand-500);outline:none}.input-suffix{color:var(--text-muted);font-size:var(--text-sm)}.control-group input[type=checkbox]{height:16px;width:16px}.modal-footer{border-top:1px solid var(--gray-300);display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.btn-save:disabled{opacity:.6}.modal-error,.modal-loading{color:var(--text-muted);padding:40px 20px;text-align:center}.modal-error{color:var(--danger)}@media (max-width:600px){.device-modal{width:95%}.device-card{flex-direction:column;text-align:center}.device-info{width:100%}.ring-order-item{align-items:stretch;flex-direction:column;gap:12px}.ring-order-controls,.ring-order-device{justify-content:center}.ring-order-controls{flex-wrap:wrap}}.btn-logout{background:#fff;border:1px solid var(--border);font-weight:600;padding:10px 24px;transition:background .2s}.btn-logout:hover{background:var(--gray-50)}.content-header h2{color:var(--gray-700);font-size:22px}.btn-add:disabled{opacity:.6}.usage-info{display:flex;gap:30px;margin-top:15px}.usage-item{align-items:center;gap:10px}.usage-label{color:var(--text-muted);font-weight:600}.usage-label,.usage-value{font-size:var(--text-base)}.usage-value{color:var(--gray-700);font-family:monospace;font-weight:700}.usage-bar-container{background:var(--gray-100);border-radius:var(--radius-sm);height:8px;overflow:hidden;width:120px}.usage-bar-fill{border-radius:var(--radius-sm);height:100%;transition:width .3s ease,background-color .3s ease}.limit-warning{align-items:center;background:var(--warning-bg);border:1px solid var(--warning);border-radius:var(--radius-sm);color:var(--warning-text);display:flex;font-size:var(--text-base);font-weight:600;gap:10px;margin-bottom:20px;padding:12px 16px}.limit-warning:before{content:"⚠️";font-size:var(--text-xl)}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:15px}.header-actions{flex-direction:column;gap:10px;width:100%}.header-nav{width:100%}.btn-nav{flex:1 1}.content-header{align-items:flex-start;flex-direction:column;gap:15px}.page-content{padding:20px 15px}}.inbound-route-list{margin-top:20px}.inbound-route-table{background:#fff;border-collapse:collapse;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:hidden;width:100%}.inbound-route-table thead{background:var(--gray-50)}.inbound-route-table th{border-bottom:2px solid var(--gray-300);color:var(--gray-600);font-weight:600;padding:12px 16px;text-align:left}.inbound-route-table td{border-bottom:1px solid var(--gray-300);padding:12px 16px}.inbound-route-table tbody tr:hover{background:var(--gray-50)}.did-number{color:var(--brand-500);font-weight:600}.alternate-destination{color:var(--gray-500);font-style:italic;margin-top:4px}.time-condition-badge{background:var(--info-bg);color:var(--brand-600);font-size:var(--text-md);font-weight:500;padding:4px 8px}.no-time-condition{color:var(--gray-500);font-size:var(--text-md)}.form-section-title{border-bottom:2px solid var(--gray-200);color:var(--gray-600);font-size:var(--text-lg);font-weight:600;margin:24px 0 12px;padding-bottom:8px}.outbound-route-list{margin-top:20px}.outbound-route-table{background:#fff;border-collapse:collapse;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:hidden;width:100%}.outbound-route-table thead{background:var(--gray-50)}.outbound-route-table th{border-bottom:2px solid var(--gray-300);color:var(--gray-600);font-weight:600;padding:12px 16px;text-align:left}.outbound-route-table td{border-bottom:1px solid var(--gray-300);padding:12px 16px}.outbound-route-table tbody tr:hover{background:var(--gray-50)}.route-name{color:var(--brand-500);font-weight:600}.route-description{color:var(--gray-500);font-size:var(--text-sm);font-weight:400;margin-top:4px}.dial-pattern{color:var(--gray-600);font-family:monospace}.btn-delete,.btn-edit{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);padding:6px 12px;transition:all .2s}.btn-edit{background:var(--brand-500);color:#fff}.btn-edit:hover{background:var(--brand-600)}.empty-state-hint{font-size:var(--text-base);margin-top:8px}.form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.form-container{box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.form-header{align-items:center;border-bottom:1px solid var(--gray-300);display:flex;justify-content:space-between;padding:20px}.form-header h2{color:var(--gray-800);font-size:var(--text-3xl);margin:0}.btn-close{height:32px;width:32px}.btn-close:hover{color:var(--gray-800)}form{padding:20px}.form-error{margin-bottom:20px;padding:12px}.form-row{margin-bottom:16px}.form-row:has(textarea){grid-template-columns:1fr}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--gray-300);padding:10px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:var(--focus-ring)}.form-group input:disabled,.form-group select:disabled{background:var(--gray-200);cursor:not-allowed}.form-hint{font-size:var(--text-sm);margin-top:4px}.checkbox-label input[type=checkbox]{margin-right:8px}.form-actions{border-top:1px solid var(--gray-300)}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6}.page-container{background:var(--gray-50)}.header-content{max-width:1400px}.header-content h1{color:var(--gray-800);font-size:var(--text-4xl);margin:0}.header-subtitle{color:var(--gray-500);margin:4px 0 0}.header-nav{gap:8px}.btn-nav{background:#0000;border:1px solid var(--gray-300);color:var(--gray-600);transition:all .2s}.btn-nav:hover{color:var(--brand-500)}.btn-nav-active{background:var(--brand-500);border-color:var(--brand-500)}.btn-nav-active:hover{background:var(--brand-600);border-color:var(--brand-600)}.btn-logout{background:var(--danger);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-base);padding:8px 16px;transition:all .2s}.btn-logout:hover{background:var(--danger-stronger)}.page-content{max-width:1400px;padding:40px}.content-header h2{color:var(--gray-800);font-size:var(--text-3xl);margin:0}.error-message{padding:12px 16px}.time-conditions-page{padding:20px}.page-header h1{color:var(--dark-700);font-size:var(--text-3xl)}.empty-state p:first-child{font-weight:600}.conditions-table{background:#fff;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000001a;overflow:hidden}.conditions-table table{border-collapse:collapse;width:100%}.conditions-table thead{background:var(--gray-50)}.conditions-table th{border-bottom:1px solid var(--gray-200);color:var(--dark-700);font-size:var(--text-base);font-weight:600;padding:12px 16px;text-align:left}.conditions-table td{border-bottom:1px solid var(--gray-100);padding:16px}.conditions-table tbody tr:hover{background:var(--gray-50)}.condition-name{color:var(--dark-700);font-weight:600;margin-bottom:4px}.condition-desc{color:var(--text-muted);font-size:var(--text-md)}.badge-inactive{background:var(--danger-bg);color:var(--danger-text)}.actions button{font-size:var(--text-base);padding:6px 12px}.modal-content{border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026;width:90%}.modal-header{padding:20px}.modal-header h2{color:var(--dark-700);font-size:var(--text-2xl)}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-4xl);height:32px;line-height:1;padding:0;width:32px}.modal-close:hover{color:var(--gray-700)}.modal-content form{padding:20px}.form-group label{color:var(--dark-700)}.form-group input[type=date],.form-group input[type=text],.form-group input[type=time],.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:10px;width:100%}.form-group small{margin-top:4px}.day-checkboxes{display:flex;flex-wrap:wrap;gap:12px}.checkbox-label{font-weight:400;gap:6px}.checkbox-label input[type=checkbox]{height:18px;width:18px}.form-row{grid-gap:16px;gap:16px}.form-actions{margin-top:24px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.day-checkboxes{flex-direction:column}.conditions-table{overflow-x:auto}.page-header{flex-direction:column}}.page-container{background:var(--page-bg);min-height:100vh}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 30px}.header-actions{align-items:center;gap:20px}.header-nav{display:flex;gap:10px}.btn-nav{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--text-base);font-weight:600;padding:8px 16px;transition:background .2s,border-color .2s}.btn-nav:hover{background:var(--gray-50);border-color:var(--brand-500)}.btn-nav-active{background:var(--brand-gradient);border-color:#0000;color:#fff}.btn-nav-active:hover{background:var(--brand-gradient);opacity:.9}.header-subtitle{color:var(--text-muted);font-size:var(--text-base);margin:5px 0 0}.page-content{margin:0 auto;max-width:1200px;padding:30px}.content-header{justify-content:space-between;margin-bottom:24px}.content-header,.filters{align-items:center;display:flex}.filters{gap:12px}.filter-select{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);padding:10px 14px;transition:border-color .2s}.filter-select:focus,.filter-select:hover{border-color:var(--brand-500)}.filter-select:focus{box-shadow:var(--focus-ring);outline:none}.alert{border-radius:var(--radius-sm);font-size:var(--text-base);margin-bottom:20px;padding:12px}.alert-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-stronger)}.table-container{box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.data-table th{color:var(--text-muted);font-size:var(--text-md);padding:16px}.data-table tbody tr:last-child{border-bottom:none}.data-table td{font-size:var(--text-base);padding:16px}.no-data{font-size:var(--text-lg);padding:60px 20px;text-align:center}.direction-icon{font-size:var(--text-xl);margin-right:8px}.direction-text{text-transform:capitalize}.caller-info{display:flex;flex-direction:column;gap:4px}.caller-number{color:var(--gray-700);font-weight:600}.caller-name{color:var(--text-muted);font-size:var(--text-sm)}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--warning-bg);color:var(--warning-text)}.badge-danger{background:var(--danger-bg);color:var(--danger-text)}.badge-secondary{background:var(--gray-200);color:var(--gray-700)}.badge-info{background:var(--info-bg);color:var(--info-text)}.pagination{gap:16px;padding:20px 0}.pagination-info{font-size:var(--text-base)}.pagination button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:15px}.header-actions{flex-direction:column;gap:10px;width:100%}.header-nav{flex-wrap:wrap;width:100%}.btn-nav{flex:1 1;min-width:120px}.content-header{align-items:flex-start;flex-direction:column;gap:15px}.filters{flex-direction:column}.filter-select,.filters{width:100%}.page-content{padding:20px 15px}.table-container{overflow-x:auto}.data-table{min-width:800px}}.dialpad{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:300px}.dialpad-button{align-items:center;background:#fff;border:2px solid var(--gray-200);border-radius:50%;cursor:pointer;display:flex;flex-direction:column;height:70px;justify-content:center;transition:all .2s;-webkit-user-select:none;user-select:none;width:70px}.dialpad-button:hover:not(:disabled){background:var(--gray-50);border-color:var(--brand-500);transform:scale(1.05)}.dialpad-button:active:not(:disabled){transform:scale(.95)}.dialpad-button:disabled{cursor:not-allowed;opacity:.5}.dialpad-button .digit{color:var(--gray-700);font-size:var(--text-3xl);font-weight:600}.dialpad-button .letters{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:1px;margin-top:2px}@media (max-width:768px){.dialpad{gap:8px}.dialpad-button{height:60px;width:60px}.dialpad-button .digit{font-size:var(--text-2xl)}.dialpad-button .letters{font-size:9px}}.phone-app{align-items:center;background:var(--brand-gradient);display:flex;justify-content:center;min-height:100vh;padding:20px}.phone-login-container{max-width:420px;width:100%}.phone-login-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;padding:40px}.phone-logo{gap:12px;margin-bottom:32px}.logo-icon,.phone-logo{align-items:center;display:flex;justify-content:center}.logo-icon{background:var(--brand-gradient);border-radius:var(--radius-lg);color:#fff;font-size:var(--text-xl);font-weight:700;height:48px;width:48px}.logo-text{display:flex;flex-direction:column}.logo-brand{color:var(--gray-800);font-size:var(--text-2xl);font-weight:700}.logo-subtitle{color:var(--gray-500);font-size:var(--text-base)}.login-title{color:var(--gray-800);font-size:var(--text-3xl);font-weight:700;margin:0 0 8px;text-align:center}.login-subtitle{color:var(--gray-500);font-size:var(--text-base);margin:0 0 32px;text-align:center}.phone-login-form{display:flex;flex-direction:column;gap:20px}.form-input:focus{outline:none}.form-help{color:var(--gray-500);font-size:var(--text-sm)}.btn-login{background:var(--brand-gradient);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-lg);font-weight:600;margin-top:8px;padding:14px;transition:transform .2s,box-shadow .2s}.btn-login:hover{box-shadow:var(--shadow-brand);transform:translateY(-2px)}.btn-login:active{transform:translateY(0)}.phone-error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-md);color:var(--danger-text);font-size:var(--text-base);margin-bottom:20px;padding:12px}.phone-main-container{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-width:800px;overflow:hidden;width:100%}.phone-header{background:var(--brand-gradient);justify-content:space-between;padding:16px 20px}.phone-branding,.phone-header{align-items:center;display:flex}.phone-branding{color:#fff;gap:12px}.logo-icon-small{align-items:center;background:#fff3;border-radius:var(--radius-md);display:flex;font-size:var(--text-base);font-weight:700;height:36px;justify-content:center;width:36px}.phone-brand{font-size:var(--text-base);font-weight:600;opacity:.95}.phone-extension{font-size:var(--text-sm);opacity:.8}.phone-header-right{align-items:center;display:flex;gap:12px}.phone-presence-container{position:relative}.phone-presence-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:var(--radius-pill);color:#fff;cursor:pointer;display:flex;font-size:var(--text-md);gap:8px;padding:8px 12px;transition:all .2s}.phone-presence-btn:hover{background:#ffffff40}.phone-presence-icon{font-size:var(--text-sm)}.phone-presence-label{font-weight:500}.phone-dropdown-arrow{font-size:var(--text-xs);opacity:.7}.phone-presence-menu{background:#fff;border-radius:var(--radius-md);box-shadow:0 4px 16px #00000026;margin-top:8px;min-width:160px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.phone-presence-option{align-items:center;background:none;border:none;color:var(--gray-700);cursor:pointer;display:flex;font-size:var(--text-base);gap:10px;padding:12px 16px;text-align:left;transition:background .2s;width:100%}.phone-presence-option:hover{background:var(--gray-100)}.phone-presence-option.active{background:#e8f4ff;font-weight:500}.btn-logout-phone{background:#ffffff26;border:1px solid #ffffff4d;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-md);font-weight:500;padding:8px 16px;transition:background .2s}.btn-logout-phone:hover{background:#ffffff40}.phone-body{display:flex;min-height:480px}.phone-sidebar{background:var(--gray-50);border-right:1px solid var(--gray-200);display:flex;flex-direction:column;width:240px}.sidebar-tabs{border-bottom:1px solid var(--gray-200);display:flex}.sidebar-tab{background:none;border:none;color:var(--gray-500);cursor:pointer;flex:1 1;font-size:var(--text-md);font-weight:500;padding:14px;transition:all .2s}.sidebar-tab:hover{background:var(--gray-100)}.sidebar-tab.active{border-bottom:2px solid var(--brand-500);color:var(--brand-500);margin-bottom:-1px}.sidebar-content{flex:1 1;overflow-y:auto}.sidebar-empty,.sidebar-loading{color:var(--gray-400);font-size:var(--text-md);padding:30px 20px;text-align:center}.contacts-list{padding:8px}.contact-item{align-items:center;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:10px;padding:10px 12px;text-align:left;transition:background .2s;width:100%}.contact-item:hover:not(:disabled){background:var(--gray-100)}.contact-item:disabled{cursor:not-allowed;opacity:.5}.contact-presence{border-radius:50%;flex-shrink:0;height:8px;width:8px}.contact-info{display:flex;flex-direction:column;gap:1px;overflow:hidden}.contact-name{color:var(--gray-800);font-size:var(--text-md);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-extension{color:var(--gray-400);font-size:var(--text-xs)}.history-list{padding:8px}.history-item{align-items:center;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:10px;padding:10px 12px;text-align:left;transition:background .2s;width:100%}.history-item:hover:not(:disabled){background:var(--gray-100)}.history-item:disabled{cursor:not-allowed;opacity:.5}.history-direction{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:var(--text-sm);height:26px;justify-content:center;width:26px}.direction-inbound{background:var(--info-bg);color:var(--info-strong)}.direction-outbound{background:#dcfce7;color:#15803d}.direction-internal{background:#f3e8ff;color:var(--brand-700)}.history-info{display:flex;flex-direction:column;gap:1px;overflow:hidden}.history-name{color:var(--gray-800);font-size:var(--text-md);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-meta{color:var(--gray-400);font-size:var(--text-xs)}.history-item.status-missed .history-name{color:var(--danger-strong)}.history-item.status-missed .history-direction{background:var(--danger-bg);color:var(--danger-strong)}.phone-main{display:flex;flex:1 1;flex-direction:column;gap:20px;padding:24px}.phone-status-bar{align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:12px 16px}.status-indicator{align-items:center;display:flex;gap:8px}.status-dot{animation:pulse 2s infinite;border-radius:50%;height:10px;width:10px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{color:var(--gray-700);font-size:var(--text-md);font-weight:500}.call-timer{font-feature-settings:"tnum";color:var(--brand-500);font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:600}.incoming-call-banner{background:var(--brand-gradient);border-radius:var(--radius-lg);color:#fff;display:flex;flex-direction:column;gap:16px;padding:20px}.incoming-call-info{text-align:center}.incoming-call-label{font-size:var(--text-md);margin-bottom:6px;opacity:.9}.incoming-call-number{font-size:var(--text-3xl);font-weight:700}.incoming-call-actions{display:flex;gap:12px}.btn-answer{background:var(--success);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex:1 1;font-size:var(--text-lg);font-weight:600;padding:12px;transition:background .2s}.btn-answer:hover{background:var(--success-strong)}.btn-decline{background:#fff3;border:1px solid #ffffff4d;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex:1 1;font-size:var(--text-lg);font-weight:600;padding:12px;transition:background .2s}.btn-decline:hover{background:#ffffff4d}.phone-display{position:relative}.phone-number-input{font-feature-settings:"tnum";background:var(--gray-50);border:2px solid var(--gray-200);border-radius:var(--radius-lg);color:var(--gray-800);font-size:var(--text-3xl);font-variant-numeric:tabular-nums;font-weight:500;padding:16px 50px 16px 16px;text-align:center;width:100%}.phone-number-input:focus{background:#fff;border-color:var(--brand-500);outline:none}.phone-number-input::placeholder{color:var(--gray-400);font-size:var(--text-lg)}.btn-backspace{background:#0000;border:none;color:var(--gray-500);cursor:pointer;font-size:var(--text-2xl);padding:8px 12px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .2s}.btn-backspace:hover{color:var(--gray-800)}.phone-actions{display:flex;gap:12px;margin-top:8px}.btn-call{background:linear-gradient(135deg,var(--success) 0,var(--success-strong) 100%);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;flex:1 1;font-size:var(--text-lg);font-weight:600;padding:16px;transition:transform .2s,box-shadow .2s}.btn-call:hover:not(:disabled){box-shadow:0 8px 20px #10b98166;transform:translateY(-2px)}.btn-call:active:not(:disabled){transform:translateY(0)}.btn-call:disabled{cursor:not-allowed;opacity:.5}.btn-hangup{background:linear-gradient(135deg,var(--danger) 0,var(--danger-strong) 100%);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;flex:1 1;font-size:var(--text-lg);font-weight:600;padding:16px;transition:transform .2s,box-shadow .2s}.btn-hangup:hover{box-shadow:0 8px 20px #ef444466;transform:translateY(-2px)}.btn-hangup:active{transform:translateY(0)}.phone-error-inline{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-md);color:var(--danger-text);font-size:var(--text-md);padding:10px 12px;text-align:center}@media (max-width:768px){.phone-app{align-items:stretch;padding:0}.phone-main-container{border-radius:0;max-width:100%;min-height:100vh}.phone-body{flex-direction:column;min-height:auto}.phone-sidebar{border-bottom:1px solid var(--gray-200);border-right:none;max-height:200px;width:100%}.phone-main{padding:20px}.phone-header{flex-wrap:wrap;gap:12px}.phone-header-right{justify-content:space-between;width:100%}.phone-presence-btn{flex:1 1;justify-content:center}}@media (max-width:480px){.phone-login-container{max-width:100%}.phone-login-card{border-radius:0;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.phone-header{padding:12px 16px}.phone-number-input{font-size:var(--text-2xl);padding:14px}.btn-call,.btn-hangup{font-size:var(--text-lg);padding:14px}}.modal-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid var(--gray-200)}.modal-header h2{color:var(--gray-900);font-size:var(--text-3xl)}.btn-close{color:var(--gray-500);height:2rem;line-height:1;padding:0;transition:color .2s;width:2rem}.btn-close:hover:not(:disabled){color:#000}.btn-close:disabled{cursor:not-allowed;opacity:.5}.modal-container form{padding:1.5rem}.form-group label{color:var(--gray-800)}.required{color:var(--danger)}.form-group input[type=file],.form-group input[type=text],.form-group textarea{border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:var(--text-lg);padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input[type=file]:focus,.form-group input[type=text]:focus,.form-group textarea:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.form-group input[type=file]:disabled,.form-group input[type=text]:disabled,.form-group textarea:disabled{background-color:var(--gray-200);cursor:not-allowed}.form-group textarea{min-height:80px}.form-hint{color:var(--gray-500);display:block;font-size:var(--text-base);margin-top:.25rem}.form-error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-sm);color:var(--danger-text);margin-bottom:1rem;padding:.75rem}.file-preview{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);margin-bottom:1rem;padding:1rem}.file-preview-header{color:var(--gray-600);font-weight:600;margin-bottom:.5rem}.file-preview-details{display:flex;flex-direction:column;gap:.25rem}.file-preview-details div{color:var(--gray-500);font-size:var(--text-base)}.file-preview-details strong{color:var(--gray-600)}.modal-actions{border-top:1px solid var(--gray-200);gap:1rem;justify-content:flex-end;padding-top:1rem}.btn-cancel:disabled,.btn-submit:disabled{opacity:.5}.audio-files-page{padding:2rem}.page-header h1{color:var(--gray-900);font-size:var(--text-5xl)}.audio-files-table-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:hidden}.audio-files-table{border-collapse:collapse;width:100%}.audio-files-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.audio-files-table th{color:var(--gray-600);font-size:var(--text-base);font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.audio-files-table tbody tr{border-bottom:1px solid var(--gray-200);transition:background-color .2s}.audio-files-table tbody tr:hover{background-color:var(--gray-50)}.audio-files-table td{color:var(--gray-800);padding:1rem}.file-name{color:var(--brand-500);font-weight:500}.file-description{color:var(--gray-500);font-size:var(--text-base)}.file-format{background:var(--info-bg);border-radius:var(--radius-sm);color:var(--brand-500);display:inline-block;font-size:var(--text-sm);font-weight:600;padding:.25rem .5rem}.edit-input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:var(--text-base);padding:.5rem;width:100%}.edit-input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.actions{gap:.5rem}.btn-edit,.btn-save{background:var(--brand-500);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-base);padding:.5rem 1rem;transition:background-color .2s}.btn-edit:hover,.btn-save:hover{background:var(--brand-600)}.empty-state p{color:var(--gray-600);margin:.5rem 0}.empty-state-hint{color:var(--gray-500);font-size:var(--text-lg)}.large-modal{max-width:800px;width:95%}.form-row{margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-row .form-group:only-child{grid-column:1/-1}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0;width:auto}.checkbox-label span{-webkit-user-select:none;user-select:none}@media (max-width:768px){.form-row{grid-template-columns:1fr}.large-modal{max-height:95vh;width:100%}}.option-manager-page{background:var(--gray-50);min-height:100vh;padding:2rem}.menu-subtitle{color:var(--gray-500);font-size:var(--text-lg);margin:.25rem 0 0}.header-actions{display:flex;gap:1rem}.options-table-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow-x:auto}.options-table{border-collapse:collapse;width:100%}.options-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.options-table th{color:var(--gray-600);font-size:var(--text-base);font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.options-table tbody tr{border-bottom:1px solid var(--gray-200);transition:background-color .2s}.options-table tbody tr:hover{background-color:var(--gray-50)}.options-table td{color:var(--gray-800);padding:1rem}.digit-badge{background:var(--brand-500);color:#fff;font-size:var(--text-lg);font-weight:700;min-width:40px;padding:.5rem .75rem;text-align:center}.digit-badge,.time-condition-badge{border-radius:var(--radius-sm);display:inline-block}.time-condition-badge{background:var(--warning-bg);color:var(--warning-text);font-size:var(--text-sm);font-weight:600;padding:.25rem .75rem}.no-time-condition{color:var(--gray-400);font-size:var(--text-base);font-style:italic}.option-form-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow:hidden}.option-form-header{align-items:center;background:var(--gray-50);border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1.5rem}.option-form-header h2{color:var(--gray-900);font-size:var(--text-3xl);margin:0}.option-form-container form{padding:0}.form-actions{background:var(--gray-50);padding:1.5rem}.ivr-menus-page{padding:2rem}.ivr-menus-table-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;overflow-x:auto}.ivr-menus-table{border-collapse:collapse;width:100%}.ivr-menus-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.ivr-menus-table th{color:var(--gray-600);font-size:var(--text-base);font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.ivr-menus-table tbody tr{border-bottom:1px solid var(--gray-200);transition:background-color .2s}.ivr-menus-table tbody tr:hover{background-color:var(--gray-50)}.ivr-menus-table td{color:var(--gray-800);padding:1rem}.menu-name{color:var(--brand-500);font-weight:500}.menu-description{color:var(--gray-500);font-size:var(--text-base);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-badge{background:var(--info-bg);border-radius:var(--radius-sm);color:var(--brand-500);display:inline-block;font-size:var(--text-sm);font-weight:600;padding:.25rem .5rem}.no-audio{color:var(--gray-400);font-style:italic}.btn-link,.no-audio{font-size:var(--text-base)}.btn-link{color:var(--brand-500);padding:0;text-decoration:underline}.btn-link:hover{color:var(--brand-600)}.btn-options{background:#17a2b8;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-base);padding:.5rem 1rem;transition:background-color .2s}.btn-options:hover{background:#138496}.page-container{margin:0 auto;max-width:1400px;padding:2rem}.loading-container{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:4rem}.loading-spinner{height:40px;margin-bottom:1rem;width:40px}.form-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:1200px;padding:2rem}.form-row{grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.5rem}.form-group label{color:var(--gray-700)}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-lg);padding:.75rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--brand-500);outline:none}.form-section{background:var(--gray-50);border-radius:var(--radius-sm);margin-bottom:1.5rem;padding:1.5rem;width:100%}.form-section h3{color:var(--gray-700)}.form-section h3,.section-header{margin-bottom:1rem}.section-header h3{margin:0}.members-list{display:flex;flex-direction:column;gap:1rem;width:100%}.member-row{grid-gap:1rem;align-items:end;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);display:grid;gap:1rem;grid-template-columns:2fr 150px 120px;padding:1rem;width:100%}.member-field label,.member-field-small label{color:var(--gray-700);display:block;font-size:var(--text-md);font-weight:600;margin-bottom:.5rem}.member-field input,.member-field select,.member-field-small input{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-lg);padding:.6rem;width:100%}.form-actions{border-top:1px solid var(--gray-100);padding-top:1.5rem}.table-container{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;overflow:hidden}.data-table thead{background:var(--gray-100)}.data-table th{border-bottom:2px solid var(--border);color:var(--gray-700);padding:1rem;white-space:nowrap}.data-table td{border-bottom:1px solid var(--gray-100);color:var(--gray-600);padding:1rem}.actions-cell{display:flex;gap:.5rem;justify-content:flex-end}.members-details{background:var(--gray-100)!important;padding:1.5rem!important}.members-container{margin:0}.members-container h4{color:var(--gray-700);margin-bottom:1rem;margin-top:0}.members-table{background:#fff;border-collapse:collapse;border-radius:var(--radius-sm);overflow:hidden;width:100%}.members-table th{background:var(--gray-200);color:var(--gray-700);font-weight:600;text-align:left}.members-table td,.members-table th{font-size:var(--text-base);padding:.75rem}.members-table td{border-bottom:1px solid var(--gray-100)}.badge-simultaneous{background:var(--info-bg);color:var(--admin-accent-dark)}.badge-sequential{background:var(--warning-bg);color:var(--warning)}.badge-roundrobin{background:#f3e5f5;color:#7b1fa2}.status-badge{padding:.25rem .75rem}.status-active{background:var(--success-bg);color:var(--success-strong)}.status-inactive{background:var(--danger-bg);color:var(--danger-stronger)}.btn-icon{background:none;border:none;cursor:pointer;font-size:var(--text-2xl);padding:.25rem .5rem;transition:transform .2s}.btn-icon:hover{transform:scale(1.2)}.btn-danger-small{background:var(--danger);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-md);font-weight:600;padding:.5rem 1rem;transition:background .2s}.btn-danger-small:hover{background:#c0392b}.no-data-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem;text-align:center}.no-data{color:var(--text-subtle);font-size:var(--text-xl);margin-bottom:1.5rem}@media (max-width:768px){.page-header{flex-direction:column}.form-row,.member-row{grid-template-columns:1fr}.data-table td,.data-table th{padding:.75rem}}.queues-page{margin:0 auto;max-width:1400px;padding:30px}.page-header h1{color:var(--gray-700);font-size:var(--text-4xl);margin:0}.queue-list{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;overflow:hidden}.data-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.data-table th{color:var(--gray-600);font-size:var(--text-base);font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.data-table tbody tr{border-bottom:1px solid var(--gray-100);transition:background .2s}.data-table tbody tr:hover{background:var(--gray-50)}.data-table td{color:var(--gray-700);padding:15px}.queue-name{color:var(--brand-500);font-weight:600}.queue-description{color:var(--text-muted);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.active{color:var(--success-text)}.status-badge.inactive{color:var(--danger-text)}.actions{display:flex;gap:8px}.queue-form{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;padding:30px}.queue-form h2{color:var(--gray-700);font-size:var(--text-3xl);margin-bottom:25px;margin-top:0}.form-section{border-bottom:1px solid var(--gray-200);margin-bottom:30px;padding-bottom:25px}.form-section:last-of-type{border-bottom:none}.form-section h3{font-weight:600;margin-bottom:20px;margin-top:0}.form-row{grid-gap:20px;gap:20px}.form-group label{margin-bottom:8px}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input[type=number]:focus,.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.form-group small{color:var(--gray-500);display:block;margin-top:5px}.form-group input[type=checkbox]{margin-right:8px;width:auto}.form-group label:has(input[type=checkbox]){align-items:center;cursor:pointer;display:flex;font-weight:500}.form-actions{border-top:1px solid var(--gray-200);gap:12px;margin-top:30px;padding-top:20px}.btn{display:inline-block}.btn:disabled{opacity:.6}.btn-sm{font-size:var(--text-md);padding:6px 12px}.empty-state p:first-child{color:var(--gray-600);font-size:var(--text-xl);margin-bottom:10px}.error-message{border:1px solid var(--danger-border);border-radius:var(--radius-sm);color:var(--danger-text);margin-bottom:20px;padding:12px 20px}.queue-agents-page{margin:0 auto;max-width:1400px;padding:30px}.queue-selector{gap:15px;margin-bottom:20px}.queue-selector select{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:10px 15px}.queue-info{display:flex;gap:20px;margin-left:auto}.queue-info span{background:var(--gray-50);border-radius:var(--radius-sm);color:var(--gray-600);font-size:var(--text-md);font-weight:500;padding:6px 12px}.queue-strategy{text-transform:capitalize}.queue-members{background:var(--info-bg)!important;color:var(--admin-accent-dark)!important}.queue-available{background:var(--success-bg)!important;color:var(--success-text)!important}.actions-bar{margin-bottom:20px}.add-member-form,.edit-member-form{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:25px}.add-member-form h3,.edit-member-form h3{color:var(--gray-700);font-size:var(--text-xl);margin-bottom:20px;margin-top:0}.members-list{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;overflow:hidden}.member-extension{color:var(--brand-500);font-weight:600}.status-badge.available{background:var(--success-bg);color:var(--success-text)}.status-badge.paused{background:var(--warning-bg);color:var(--warning-text)}.status-badge.on-call{background:var(--info-bg);color:var(--info-text)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-strong)}.btn-warning{background:var(--warning);color:var(--gray-800)}.btn-warning:hover:not(:disabled){background:#e0a800}.modal{background:#fff;border-radius:var(--radius-md);box-shadow:0 4px 20px #0000004d;max-width:500px;padding:30px;width:90%}.modal h3{color:var(--gray-700);font-size:var(--text-2xl);margin-bottom:15px;margin-top:0}.modal p{color:var(--text-muted);margin-bottom:20px}.modal-actions{display:flex;gap:12px;margin-top:20px}.modal-actions .btn{flex:1 1}.queue-stats-page{margin:0 auto;max-width:1400px;padding:30px}.queue-selector{align-items:center;background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px;padding:20px}.date-range-group,.selector-group{align-items:center;display:flex;gap:12px}.queue-selector label{color:var(--gray-600);font-size:var(--text-base);font-weight:600}.queue-selector input[type=date],.queue-selector select{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-base);padding:10px 15px}.queue-selector select{min-width:250px}.stats-section{background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.stats-section h2{border-bottom:2px solid var(--brand-500);color:var(--gray-700);font-size:var(--text-2xl);font-weight:600;margin-bottom:20px;margin-top:0;padding-bottom:10px}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-card{background:var(--brand-gradient);border-radius:var(--radius-lg);box-shadow:var(--shadow-brand);color:#fff;padding:25px;transition:transform .2s,box-shadow .2s}.metric-card:hover{box-shadow:var(--shadow-brand);transform:translateY(-4px)}.metric-card.calls-waiting{background:var(--brand-gradient)}.metric-card.wait-time{background:linear-gradient(135deg,#f093fb,#f5576c)}.metric-card.agents-available{background:linear-gradient(135deg,#4facfe,#00f2fe)}.metric-card.agents-paused{background:linear-gradient(135deg,#fa709a 0,var(--danger-bg)140 100%)}.metric-icon{font-size:var(--text-5xl);margin-bottom:10px;opacity:.9}.metric-value{font-size:36px;font-weight:700;line-height:1;margin-bottom:8px}.metric-label{font-size:var(--text-base);font-weight:500;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.performance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.perf-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:20px;transition:box-shadow .2s}.perf-card:hover{box-shadow:0 4px 12px #0000001a}.perf-header{align-items:center;border-bottom:2px solid var(--brand-500);display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.perf-title{color:var(--gray-600);font-size:var(--text-lg);font-weight:600}.perf-value-large{color:var(--brand-500);font-size:var(--text-5xl);font-weight:700}.perf-details{display:flex;flex-direction:column;gap:10px}.perf-row{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:8px 0}.perf-row:last-child{border-bottom:none}.perf-row span:first-child{color:var(--text-muted);font-size:var(--text-base)}.perf-value{color:var(--gray-700);font-size:var(--text-base);font-weight:600}.perf-value.success{color:var(--success)}.perf-value.danger{color:var(--danger)}.perf-value.warning{color:var(--warning)}.historical-table{overflow-x:auto}.historical-table .data-table{min-width:100%}.historical-table td.success{color:var(--success);font-weight:600}.historical-table td.danger{color:var(--danger);font-weight:600}.historical-table td.warning{color:var(--warning);font-weight:600}@media (max-width:768px){.date-range-group,.queue-selector,.selector-group{align-items:stretch;flex-direction:column}.queue-selector input[type=date],.queue-selector select{width:100%}.metrics-grid,.performance-grid{grid-template-columns:1fr}}.moh-container{margin:0 auto;max-width:1400px;padding:2rem}.moh-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem}.moh-header h1{align-items:center;color:var(--gray-800);display:flex;font-size:var(--text-5xl);gap:.75rem;margin:0 0 .5rem}.moh-header .page-icon{color:var(--brand-700)}.moh-header .subtitle{color:var(--gray-500);margin:0}.upload-form-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.upload-form-card h3{color:var(--gray-800);margin:0 0 1.5rem}.form-group label{color:#334155;display:block;font-weight:500;margin-bottom:.5rem}.form-group .required{color:var(--danger)}.form-group input[type=text],.form-group textarea{border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.938rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:var(--brand-700);box-shadow:var(--focus-ring);outline:none}.form-group textarea{font-family:inherit;resize:vertical}.file-input-wrapper{position:relative}.file-input-wrapper input[type=file]{border:2px dashed var(--gray-200);border-radius:var(--radius-md);cursor:pointer;padding:.75rem;transition:border-color .2s;width:100%}.file-input-wrapper input[type=file]:hover{border-color:var(--brand-700)}.file-selected{background:var(--gray-100);border-radius:var(--radius-sm);color:var(--gray-600);font-size:var(--text-base);margin-top:.5rem;padding:.5rem .75rem}.help-text{color:var(--gray-500);display:block;font-size:.813rem;margin-top:.5rem}.form-actions{margin-top:2rem}.moh-files-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.moh-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000001a;padding:1.5rem;position:relative;transition:all .2s}.moh-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.moh-card.default{border:2px solid var(--brand-700)}.default-badge{align-items:center;background:var(--brand-700);border-radius:var(--radius-pill);color:#fff;display:flex;font-size:var(--text-sm);font-weight:600;gap:.25rem;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.moh-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.moh-icon{color:var(--brand-700);flex-shrink:0}.moh-card-header h3{color:var(--gray-800);font-size:var(--text-xl);margin:0}.moh-description{color:var(--gray-500);font-size:var(--text-base);line-height:1.5;margin:0 0 1rem}.moh-meta{border-top:1px solid var(--gray-200);display:flex;gap:1.5rem;margin-bottom:1.5rem;padding-top:1rem}.meta-item{align-items:center;color:var(--gray-500);display:flex;font-size:var(--text-base);gap:.5rem}.meta-item svg{flex-shrink:0}.moh-card-actions{display:flex;gap:.75rem}.moh-card-actions .btn{flex:1 1;justify-content:center}.empty-state svg{color:var(--gray-300);margin-bottom:1rem}.empty-state p{margin-bottom:2rem}.btn{align-items:center;display:inline-flex;gap:.5rem;text-decoration:none}.btn-sm{font-size:var(--text-base);padding:.5rem .875rem}.btn:disabled{opacity:.5}@media (max-width:768px){.moh-container{padding:1rem}.moh-header{flex-direction:column;gap:1rem}.moh-header .btn{width:100%}.moh-files-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}:root{--sa-sidebar-bg:var(--dark-700);--sa-sidebar-text:var(--gray-400);--sa-sidebar-active:var(--admin-accent);--sa-sidebar-hover:var(--dark-500);--sa-accent:var(--admin-accent);--sa-accent-dark:var(--admin-accent-dark);--sa-success:var(--success-strong);--sa-warning:var(--warning);--sa-danger:var(--danger-strong);--sa-bg:var(--page-bg);--sa-card-bg:var(--surface);--sa-border:var(--gray-200);--sa-text:var(--gray-900);--sa-text-muted:var(--gray-500);--sa-sidebar-width:240px}*,:after,:before{box-sizing:border-box}.sa-shell{background:var(--page-bg);background:var(--sa-bg);display:flex;height:100vh;overflow:hidden}.sa-sidebar{background:var(--dark-700);background:var(--sa-sidebar-bg);color:var(--gray-400);color:var(--sa-sidebar-text);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;transition:transform .25s ease;width:240px;width:var(--sa-sidebar-width);z-index:200}.sa-brand{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:12px;padding:20px 16px 18px}.sa-brand-logo{font-size:1.6rem;line-height:1}.sa-brand-text{min-width:0}.sa-brand-name{color:#fff;display:block;font-size:var(--text-lg);font-weight:700;letter-spacing:.02em;white-space:nowrap}.sa-brand-sub{color:var(--gray-400);color:var(--sa-sidebar-text);display:block;font-size:.7rem;letter-spacing:.08em;margin-top:2px;text-transform:uppercase}.sa-nav{flex:1 1;padding:12px 0}.sa-nav-item{align-items:center;border-left:3px solid #0000;color:var(--gray-400);color:var(--sa-sidebar-text);display:flex;font-size:var(--text-base);gap:12px;padding:10px 16px;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.sa-nav-item:hover{background:var(--dark-500);background:var(--sa-sidebar-hover);color:#fff}.sa-nav-item--active{background:#2196f326;border-left-color:var(--sa-sidebar-active);color:#fff}.sa-nav-icon{flex-shrink:0;font-size:var(--text-lg);text-align:center;width:22px}.sa-nav-label{white-space:nowrap}.sa-sidebar-footer{border-top:1px solid #ffffff14;padding:12px 16px}.sa-user{gap:10px;margin-bottom:10px;min-width:0}.sa-user,.sa-user-avatar{align-items:center;display:flex}.sa-user-avatar{background:var(--admin-accent);background:var(--sa-accent);border-radius:50%;color:#fff;flex-shrink:0;font-size:var(--text-md);font-weight:700;height:32px;justify-content:center;width:32px}.sa-user-info{min-width:0;overflow:hidden}.sa-user-name{color:#fff;font-size:var(--text-sm);font-weight:600}.sa-user-email,.sa-user-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-user-email{color:var(--gray-400);color:var(--sa-sidebar-text);font-size:.7rem}.sa-logout-btn{background:#e5393526;border:1px solid #e539354d;border-radius:var(--radius-sm);color:#ef9a9a;cursor:pointer;font-size:var(--text-sm);padding:8px 12px;text-align:left;transition:background .15s,color .15s;width:100%}.sa-logout-btn:hover{background:var(--danger-strong);background:var(--sa-danger);color:#fff}.sa-main{flex:1 1;min-width:0;overflow-y:auto}.sa-content{min-height:100%;padding:28px 32px}.sa-hamburger{background:var(--dark-700);background:var(--sa-sidebar-bg);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:none;font-size:var(--text-xl);height:38px;left:12px;position:fixed;top:12px;width:38px;z-index:300}.sa-overlay{display:none}.page-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.page-title-row h1{color:var(--gray-900);color:var(--sa-text);font-size:var(--text-3xl);font-weight:700;margin:0}.btn-back{align-items:center;background:#0000;border:1px solid var(--sa-border);border-radius:var(--radius-sm);color:var(--gray-500);color:var(--sa-text-muted);display:inline-flex;font-size:var(--text-base);gap:6px;padding:8px 14px;text-decoration:none;transition:background .15s,color .15s}.btn-back:hover{background:var(--sa-border);color:var(--gray-900);color:var(--sa-text)}.sa-system-page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.sa-system-page-header h1{color:var(--gray-900);color:var(--sa-text);font-size:var(--text-3xl);font-weight:700;margin:0}.sa-system-page-header .subtitle{color:var(--gray-500);color:var(--sa-text-muted);font-size:var(--text-base);margin:4px 0 0}@media (max-width:768px){.sa-hamburger{align-items:center;display:flex;justify-content:center}.sa-sidebar{height:100%;left:0;position:fixed;top:0;transform:translateX(-100%)}.sa-sidebar--open{transform:translateX(0)}.sa-overlay{background:#00000080;display:block;inset:0;position:fixed;z-index:150}.sa-main{width:100%}.sa-content{padding:60px 16px 16px}}.super-admin-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.dashboard-header{align-items:flex-start;border-bottom:2px solid var(--gray-200);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.welcome-text{color:var(--text-muted);margin:0}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.stat-card{gap:1rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:var(--radius-lg);display:flex;flex-shrink:0;font-size:var(--text-5xl);height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.stat-content h3{color:var(--text-muted);font-size:var(--text-base);font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.stat-value{font-size:var(--text-5xl);margin:0 0 .25rem}.stat-detail{color:var(--text-subtle);font-size:var(--text-md);margin:0}.recent-tenants-section{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.btn-link{background:none;border:none;color:var(--admin-accent);cursor:pointer;font-size:var(--text-lg);font-weight:500;padding:.5rem 1rem;transition:color .2s}.btn-link:hover{color:var(--admin-accent-dark);text-decoration:underline}.empty-state p{margin-bottom:1.5rem}.tenants-table{overflow-x:auto}.tenants-table table{border-collapse:collapse;width:100%}.tenants-table th{background:var(--gray-100);border-bottom:2px solid var(--gray-200);color:var(--gray-600);font-weight:600;padding:1rem;text-align:left}.tenants-table td{border-bottom:1px solid var(--gray-100);padding:1rem}.tenants-table tbody tr{transition:background .2s}.tenants-table tbody tr:hover{background:var(--gray-50)}.usage-badge{border-radius:var(--radius-sm);color:#fff;font-size:var(--text-sm);font-weight:600;margin-left:.5rem;padding:.25rem .5rem}.alerts-section{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:2rem}.alerts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.alert-card{background:var(--warning-bg);border:2px solid var(--warning);border-radius:var(--radius-md);cursor:pointer;padding:1.5rem;transition:all .2s}.alert-card:hover{box-shadow:0 4px 12px #ffc1074d;transform:translateY(-2px)}.alert-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.alert-header h3{color:var(--gray-700);font-size:var(--text-xl);margin:0}.alert-details{display:flex;flex-direction:column;gap:.75rem}.alert-item{align-items:center;display:flex;justify-content:space-between}.alert-label{color:var(--text-muted);font-weight:500}.alert-value{align-items:center;color:var(--gray-700);display:flex;font-weight:600}.activity-section{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{background:var(--gray-50);border-radius:var(--radius-md);display:flex;gap:1rem;padding:1rem;transition:background .2s}.activity-item:hover{background:var(--gray-100)}.activity-icon{flex-shrink:0;font-size:var(--text-3xl)}.activity-content{flex:1 1}.activity-main{color:var(--gray-700);margin-bottom:.25rem}.activity-main strong{color:var(--admin-accent)}.activity-action{color:var(--text-muted)}.activity-resource{color:var(--gray-700);font-weight:500}.activity-meta{color:var(--text-subtle);font-size:var(--text-md)}.activity-ip{color:var(--text-muted)}.super-admin-tenants{margin:0 auto;max-width:1400px;padding:2rem}.tenants-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.tenant-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.tenant-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.card-header{align-items:center;background:var(--brand-gradient);color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.card-header h3{font-size:var(--text-2xl);margin:0}.card-body{padding:1.5rem}.info-row{margin-bottom:1.5rem;padding-bottom:1rem}.info-row .label{color:var(--text-muted);font-weight:600}.info-row .value{color:var(--gray-700);font-family:monospace}.tenant-code{color:var(--admin-accent);font-weight:700;letter-spacing:.5px}.tenant-id{color:var(--text-subtle);font-size:var(--text-sm);word-break:break-all}.usage-section{gap:1.5rem}.usage-item,.usage-section{display:flex;flex-direction:column}.usage-item{gap:.5rem}.usage-item .label{color:var(--text-muted);font-size:var(--text-base);font-weight:600}.progress-bar{height:8px}.progress-fill{transition:width .3s ease}.usage-text{color:var(--text-muted);font-size:var(--text-md)}.card-footer{background:var(--gray-50);border-top:1px solid var(--gray-100);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:2px solid var(--gray-100);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:var(--gray-700);margin:0}.btn-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-5xl);height:40px;justify-content:center;transition:background .2s;width:40px}.btn-close:hover{background:var(--gray-100)}.tenant-form{padding:1.5rem}.form-section{margin-bottom:2rem}.form-section h3{border-bottom:2px solid var(--gray-100);color:var(--gray-600);font-size:var(--text-xl);margin:0 0 1rem;padding-bottom:.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group{flex-direction:column}.form-group label{color:var(--gray-600);font-size:var(--text-base);font-weight:600}.form-group input{border:2px solid var(--gray-200);border-radius:var(--radius-md);font-size:var(--text-lg);padding:.75rem;transition:border-color .2s}.form-group input:focus{border-color:var(--admin-accent);outline:none}.form-group small{color:var(--text-muted);font-size:var(--text-sm)}.form-actions{border-top:2px solid var(--gray-100);display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem}.btn-danger,.btn-danger-outline,.btn-primary,.btn-secondary,.btn-secondary-outline{border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-lg);font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-primary-outline{background:#0000;border:2px solid var(--admin-accent);color:var(--admin-accent)}.btn-primary-outline:hover{background:var(--admin-accent);color:#fff}.btn-secondary-outline{background:#0000;border:2px solid var(--gray-200);color:var(--text-muted)}.btn-secondary-outline:hover{background:var(--gray-100);border-color:var(--gray-400);color:var(--gray-700)}.btn-danger-outline{background:#0000;border:2px solid var(--danger);color:var(--danger)}.btn-danger-outline:hover{background:var(--danger);color:#fff}.status-badge.active{background:#ffffff4d;color:#fff}.status-badge.inactive{background:#0000004d;color:#fff}.empty-state{grid-column:1/-1}.empty-state h3{color:var(--gray-700);margin:0 0 1rem}.empty-state p{margin:0 0 2rem}.super-admin-tenant-details{margin:0 auto;max-width:1400px;padding:2rem}.header-left{align-items:center;display:flex;gap:1rem}.header-left h1{margin:0}.tenant-domain{border-radius:var(--radius-sm);color:var(--text-muted);font-family:monospace;font-size:var(--text-base);margin:.25rem 0 0;padding:.25rem .5rem}.btn-back,.tenant-domain{background:var(--gray-100)}.btn-back{border:none;border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;font-size:var(--text-lg);font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-back:hover{background:var(--gray-200)}.details-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.details-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.details-card h2{color:var(--gray-700);font-size:var(--text-3xl);margin:0 0 1.5rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem}.info-item{align-items:center;background:var(--gray-50);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:.75rem}.info-item .label{color:var(--text-muted);font-weight:600}.info-item .value{color:var(--gray-700);font-weight:500}.tenant-id{background:var(--info-bg);font-size:var(--text-base)}.tenant-code,.tenant-id{border-radius:var(--radius-sm);font-family:monospace;padding:.25rem .5rem}.tenant-code{background:var(--warning-bg);font-size:var(--text-lg);font-weight:600}.status-badge{border-radius:var(--radius-pill);font-size:var(--text-md);padding:.4rem .8rem}.status-badge.active{background:var(--success-bg);color:var(--success-strong)}.status-badge.inactive{background:var(--danger-bg);color:var(--danger-stronger)}.usage-stats{gap:1.5rem}.usage-stat,.usage-stats{display:flex;flex-direction:column}.usage-stat{gap:.5rem}.stat-header{align-items:center;display:flex;justify-content:space-between}.stat-label{font-size:var(--text-lg);font-weight:600}.stat-value{font-size:var(--text-xl)}.progress-bar{background:var(--gray-100);height:12px;overflow:hidden;width:100%}.progress-bar,.progress-fill{border-radius:var(--radius-sm)}.progress-fill{height:100%;transition:width .3s ease,background .3s ease}.usage-percent{color:var(--text-muted);font-size:var(--text-base);font-weight:600;text-align:right}.active-calls-section{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.section-header h2{color:var(--gray-700);font-size:var(--text-3xl);margin:0}.calls-count{background:var(--info-bg);border-radius:var(--radius-pill);color:var(--admin-accent-dark);font-size:var(--text-base);font-weight:600;padding:.5rem 1rem}.calls-table{overflow-x:auto}.calls-table table{border-collapse:collapse;width:100%}.calls-table th{background:var(--gray-100);border-bottom:2px solid var(--gray-200);color:var(--gray-600);font-weight:600;padding:1rem;text-align:left}.calls-table td{border-bottom:1px solid var(--gray-100);padding:1rem}.calls-table tbody tr{transition:background .2s}.calls-table tbody tr:hover{background:var(--gray-50)}.channel-cell{max-width:250px}.channel-name{color:var(--text-muted);font-family:monospace;font-size:var(--text-md)}.number-cell{color:var(--gray-700);font-size:var(--text-lg);font-weight:600}.duration-badge{background:var(--success-bg);color:var(--success-strong);font-family:monospace;font-size:var(--text-base)}.duration-badge,.state-badge{border-radius:var(--radius-sm);padding:.4rem .8rem}.state-badge{background:var(--info-bg);color:var(--admin-accent-dark);font-size:var(--text-md);font-weight:600;text-transform:capitalize}.tenant-details-error{align-items:center;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;min-height:400px}.tenant-details-error h2{color:var(--danger-stronger);margin:0}.super-admin-audit-log{margin:0 auto;max-width:1600px;padding:2rem}.filters-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group label{font-size:var(--text-base)}.filter-group input,.filter-group select{padding:.75rem}.filter-actions{gap:.75rem}.logs-table th{font-size:var(--text-base);padding:1rem}.logs-table td{padding:1rem;vertical-align:top}.logs-table tbody tr:hover{background:var(--gray-50)}.timestamp-cell{font-size:var(--text-base)}.admin-cell{color:var(--admin-accent);font-weight:600}.action-badge,.action-cell{white-space:nowrap}.action-badge{border-radius:var(--radius-sm);font-size:var(--text-md);font-weight:600;padding:.4rem .8rem}.action-badge.action-admin{background:var(--info-bg);color:var(--admin-accent-dark)}.action-badge.action-tenant{background:var(--success-bg);color:var(--success-strong)}.action-badge.action-limits{background:var(--warning-bg);color:var(--warning-text)}.resource-cell{color:var(--text-muted)}.resource-id{color:var(--text-subtle);display:block;font-family:monospace;font-size:var(--text-sm);margin-top:.25rem}.details-cell{font-size:var(--text-base);max-width:300px;overflow:hidden;text-overflow:ellipsis}.details-cell,.ip-cell{color:var(--text-muted)}.ip-cell{font-family:monospace;font-size:var(--text-md)}.super-admin-call-logs{margin:0 auto;max-width:1800px;padding:2rem}.header-left p{color:var(--text-muted);margin:0}.stats-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;text-align:center}.stat-value{color:var(--gray-700);font-size:var(--text-4xl);font-weight:700}.stat-label{color:var(--text-muted);font-size:var(--text-md);letter-spacing:.5px;text-transform:uppercase}.stat-inbound .stat-value{color:var(--admin-accent-dark)}.stat-outbound .stat-value{color:#7b1fa2}.stat-answered .stat-value{color:var(--success-strong)}.stat-missed .stat-value{color:var(--warning)}.stat-failed .stat-value{color:var(--danger-stronger)}.stat-errors .stat-value{color:var(--danger-strong)}.filters-section{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1.5rem}.filters-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:var(--text-muted);font-size:var(--text-md);font-weight:600}.filter-group input,.filter-group select{border:2px solid var(--gray-200);border-radius:var(--radius-md);font-size:var(--text-lg);padding:.65rem;transition:border-color .2s}.filter-group input:focus,.filter-group select:focus{border-color:var(--admin-accent);outline:none}.filter-actions{display:flex;flex-wrap:wrap;gap:.5rem}.logs-table-container{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;overflow-x:auto;padding:1.5rem}.logs-table{border-collapse:collapse;width:100%}.logs-table thead{background:var(--gray-100);border-bottom:2px solid var(--gray-200)}.logs-table th{color:var(--gray-600);font-size:var(--text-md);font-weight:600;letter-spacing:.5px;padding:1rem .75rem;text-align:left;text-transform:uppercase;white-space:nowrap}.logs-table td{border-bottom:1px solid var(--gray-100);padding:.875rem .75rem;vertical-align:middle}.logs-table tbody tr{cursor:pointer;transition:background .2s}.logs-table tbody tr:hover{background:#f5f9ff}.logs-table tbody tr.row-has-errors{background:#fff8f8}.logs-table tbody tr.row-has-errors:hover{background:#fff0f0}.timestamp-cell{color:var(--text-muted);font-family:monospace;font-size:var(--text-md);white-space:nowrap}.tenant-cell{color:var(--admin-accent);font-weight:600;max-width:150px;overflow:hidden;text-overflow:ellipsis}.direction-cell,.tenant-cell{white-space:nowrap}.direction-badge{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;padding:.35rem .7rem;text-transform:capitalize}.direction-badge.direction-inbound{background:var(--info-bg);color:var(--admin-accent-dark)}.direction-badge.direction-outbound{background:#f3e5f5;color:#7b1fa2}.direction-badge.direction-internal{background:var(--success-bg);color:var(--success-strong)}.phone-cell{display:flex;flex-direction:column;gap:.25rem}.phone-number{color:var(--gray-700);font-family:monospace;font-weight:600}.caller-name,.extension-number{color:var(--gray-500);font-size:var(--text-sm)}.duration-cell{color:var(--gray-600);font-family:monospace;font-weight:600}.status-cell{white-space:nowrap}.status-badge{border-radius:var(--radius-sm);padding:.35rem .7rem;text-transform:capitalize}.status-badge.status-answered{background:var(--success-bg);color:var(--success-strong)}.status-badge.status-missed{background:var(--warning-bg);color:var(--warning)}.status-badge.status-busy{background:#fce4ec;color:#c2185b}.status-badge.status-failed{background:var(--danger-bg);color:var(--danger-stronger)}.status-badge.status-ringing{background:var(--info-bg);color:var(--admin-accent-dark)}.status-badge.status-default{background:var(--gray-100);color:var(--text-muted)}.hangup-cell{white-space:nowrap}.hangup-badge{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;padding:.3rem .6rem;text-transform:capitalize}.hangup-badge.hangup-caller{background:var(--info-bg);color:var(--admin-accent-dark)}.hangup-badge.hangup-callee{background:#f3e5f5;color:#7b1fa2}.hangup-badge.hangup-system{background:var(--warning-bg);color:var(--warning-text)}.errors-cell{text-align:center}.error-indicator{cursor:help;font-size:var(--text-xl)}.actions-cell{white-space:nowrap}.btn-view{background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;font-size:var(--text-md);font-weight:600;padding:.4rem .75rem;transition:all .2s}.btn-view:hover{background:var(--gray-200);border-color:var(--gray-300)}.empty-state p{font-size:var(--text-xl);margin:0}.btn-primary:disabled{opacity:.6}@media (max-width:1200px){.filters-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width:768px){.super-admin-call-logs{padding:1rem}.page-header{flex-direction:column}.header-right{flex-wrap:wrap}.stats-summary{grid-template-columns:repeat(2,1fr)}.filters-grid{grid-template-columns:1fr}}.super-admin-call-detail{margin:0 auto;max-width:1600px;padding:2rem}.page-header{padding-bottom:1.5rem}.header-left h1{color:var(--gray-700);font-size:var(--text-5xl);margin:0 0 .5rem}.call-id{color:var(--text-muted);font-family:monospace;font-size:var(--text-base);margin:0}.header-right{display:flex;gap:1rem}.tabs{border-bottom:2px solid var(--gray-200);display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:0}.tab{background:#0000;border:none;border-bottom:3px solid #0000;color:var(--text-muted);cursor:pointer;font-size:var(--text-lg);font-weight:600;margin-bottom:-2px;padding:1rem 1.5rem;transition:all .2s}.tab.active,.tab:hover{color:var(--admin-accent)}.tab.active{border-bottom-color:var(--admin-accent)}.tab-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.summary-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;padding:2rem}.summary-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.summary-section h3{border-bottom:2px solid var(--gray-200);color:var(--gray-700);font-size:var(--text-xl);margin:0 0 1rem;padding-bottom:.5rem}.info-row{border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:.5rem 0}.info-label{color:var(--text-muted);font-weight:500}.info-value{color:var(--gray-700);font-weight:600}.info-value.phone{font-family:monospace;font-size:1.05rem}.info-value.direction-inbound{color:var(--admin-accent-dark)}.info-value.direction-outbound{color:#7b1fa2}.info-value.direction-internal,.info-value.status-answered{color:var(--success-strong)}.info-value.status-no-answer,.info-value.status-no_answer{color:var(--warning)}.info-value.status-busy{color:#c2185b}.info-value.status-failed{color:var(--danger-stronger)}.info-value.hangup-caller{color:var(--admin-accent-dark)}.info-value.hangup-callee{color:#7b1fa2}.info-value.hangup-system{color:var(--warning-text)}.info-value.error{color:var(--danger-stronger)}.info-value.success{color:var(--success-strong)}.errors-card{background:#fff8f8;border-left:4px solid var(--danger-stronger);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:1.5rem}.errors-card h3{color:var(--danger-stronger);margin:0 0 1rem}.errors-list{list-style:none;margin:0;padding:0}.error-item{background:#fff;border-radius:var(--radius-sm);color:var(--danger-stronger);font-size:var(--text-lg);margin-bottom:.5rem;padding:.75rem 1rem}.routing-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.routing-card h3{color:var(--gray-700);font-size:var(--text-2xl);margin:0 0 1.5rem}.routing-flow{display:flex;flex-direction:column;gap:0}.routing-step{background:var(--gray-50);border:2px solid var(--gray-200);border-radius:var(--radius-md);gap:1rem;padding:1rem 1.5rem}.routing-step,.step-icon{align-items:center;display:flex}.step-icon{background:#fff;border:2px solid var(--gray-200);border-radius:50%;font-size:var(--text-4xl);height:50px;justify-content:center;width:50px}.step-content{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.5rem}.step-type{color:var(--gray-700);font-size:var(--text-lg);font-weight:700;text-transform:capitalize}.step-destination{background:var(--info-bg);border-radius:var(--radius-sm);color:var(--admin-accent-dark);font-family:monospace;font-weight:600;padding:.25rem .5rem}.step-dest-type{color:var(--gray-500);font-size:var(--text-md)}.step-result{border-radius:var(--radius-sm);font-size:var(--text-md);font-weight:600;padding:.25rem .6rem}.step-result.result-answered,.step-result.result-success{background:var(--success-bg);color:var(--success-strong)}.step-result.result-failed,.step-result.result-no-answer{background:var(--danger-bg);color:var(--danger-stronger)}.step-result.result-busy{background:#fce4ec;color:#c2185b}.step-time{color:var(--text-muted);font-family:monospace;font-size:var(--text-md)}.routing-connector{align-items:center;display:flex;flex-direction:column;padding:.25rem 0}.connector-line{background:var(--admin-accent);height:15px;width:2px}.connector-arrow{color:var(--admin-accent);font-size:var(--text-sm)}.empty-routing{color:var(--text-muted);padding:3rem;text-align:center}.events-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;padding:2rem}.events-card h3{color:var(--gray-700);font-size:var(--text-2xl);margin:0 0 1.5rem}.events-timeline{display:flex;flex-direction:column;gap:.5rem}.event-item{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:1rem;padding:.75rem 1rem;transition:all .2s}.event-item.expanded,.event-item:hover{background:#f0f5ff;border-color:var(--info-border)}.event-type-indicator{border-radius:var(--radius-sm);flex-shrink:0;width:4px}.event-content{flex:1 1;min-width:0}.event-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.event-time{color:var(--text-muted);flex-shrink:0;font-family:monospace;font-size:var(--text-md)}.event-type-badge{border-radius:var(--radius-sm);color:#fff;font-size:var(--text-sm);font-weight:600;padding:.2rem .5rem;text-transform:uppercase}.event-name{color:var(--gray-700);font-weight:600}.event-channel{color:var(--gray-500);font-family:monospace;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-summary{display:flex;flex-wrap:wrap;gap:.5rem}.event-field{background:var(--gray-200);border-radius:var(--radius-sm);color:var(--gray-600);font-size:var(--text-md);padding:.2rem .5rem}.event-field.status-answer,.event-field.status-answered{background:var(--success-bg);color:var(--success-strong)}.event-field.routing,.event-field.status-busy,.event-field.status-cancel,.event-field.status-noanswer{background:var(--warning-bg);color:var(--warning-text)}.event-field.hangup{background:#fce4ec;color:#c2185b}.event-field.error{background:var(--danger-bg);color:var(--danger-stronger)}.event-raw{background:#263238;border-radius:var(--radius-md);margin-top:1rem;padding:1rem}.event-raw h4{color:#90a4ae;font-size:var(--text-md);margin:0 0 .5rem}.event-raw pre{color:var(--gray-400);font-size:var(--text-sm);margin:0;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.empty-events{color:var(--text-muted);padding:3rem;text-align:center}.pagination{align-items:center;border-top:1px solid var(--gray-200);display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;padding-top:1.5rem}.btn-pagination{background:#fff;border:2px solid var(--gray-200);border-radius:var(--radius-md);cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-pagination:hover:not(:disabled){background:var(--gray-100);border-color:var(--gray-400)}.btn-pagination:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:var(--text-muted);font-weight:600}.loading{min-height:400px}.error-message{background:var(--danger-bg);border-left:4px solid var(--danger-stronger);border-radius:var(--radius-md);color:var(--danger-stronger);margin-bottom:1.5rem;padding:1rem}@media (max-width:768px){.super-admin-call-detail{padding:1rem}.page-header{flex-direction:column}.header-right{flex-wrap:wrap}.tabs{flex-wrap:nowrap;overflow-x:auto}.tab{padding:.75rem 1rem;white-space:nowrap}.summary-grid{grid-template-columns:1fr}.routing-step{gap:.75rem}.event-header,.routing-step{align-items:flex-start;flex-direction:column}}.sa-system-page{background:var(--dark-900);color:var(--gray-200);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.sa-system-header{background:var(--dark-700);border-bottom:1px solid var(--dark-500);justify-content:space-between;padding:16px 32px}.sa-system-header,.sa-system-header-left{align-items:center;display:flex;gap:16px}.sa-system-header-left h1{color:var(--gray-100);font-size:1.4rem;font-weight:700;margin:0}.subtitle{color:var(--gray-500);font-size:var(--text-sm);margin:2px 0 0}.sa-system-header-right{align-items:center;display:flex;gap:10px}.admin-name,.back-btn{color:var(--gray-400);font-size:var(--text-md)}.back-btn{background:var(--dark-700);border:1px solid var(--dark-500);border-radius:var(--radius-sm);cursor:pointer;padding:7px 14px;white-space:nowrap}.back-btn:hover{background:#262a3f;color:var(--gray-200)}.refresh-btn{background:#2563eb;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-md);padding:7px 14px}.refresh-btn:hover:not(:disabled){background:var(--info-strong)}.refresh-btn:disabled{cursor:default;opacity:.5}.logout-btn{background:#0000;border:1px solid var(--gray-600);border-radius:var(--radius-sm);color:var(--gray-400);cursor:pointer;font-size:var(--text-md);padding:7px 14px}.logout-btn:hover{border-color:var(--danger);color:var(--danger)}.sa-loading{color:var(--gray-500);font-size:var(--text-lg);padding:80px 20px;text-align:center}.sa-error{background:#3b0a0a;border-left:4px solid var(--danger);border-radius:var(--radius-sm);color:#fca5a5;font-size:var(--text-base);margin:16px 32px;padding:12px 20px}.sa-system-body{margin:0 auto;max-width:1300px;padding:24px 32px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:28px}.summary-card{background:var(--dark-700);border:1px solid var(--dark-500);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:6px;padding:20px;transition:border-color .2s}.summary-card.card-ok{border-left:4px solid var(--success)}.summary-card.card-fail{border-left:4px solid var(--danger)}.summary-card.card-active{border-left:4px solid var(--info)}.summary-card.card-neutral{border-left:4px solid var(--gray-600)}.card-icon{font-size:var(--text-3xl)}.card-label{color:var(--gray-500);font-size:var(--text-sm);letter-spacing:.05em;text-transform:uppercase}.card-value{color:var(--gray-100);font-size:1.15rem;font-weight:700}.sa-section{background:var(--dark-700);border:1px solid var(--dark-500);border-radius:var(--radius-md);margin-bottom:20px;padding:22px 24px}.sa-section h2{border-bottom:1px solid var(--dark-500);color:var(--gray-300);font-size:var(--text-lg);font-weight:600;margin:0 0 18px;padding-bottom:10px}.resources-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.resource-card{background:var(--dark-900);border:1px solid var(--dark-500);border-radius:var(--radius-md);padding:16px}.resource-card h3{color:var(--gray-400);font-size:var(--text-md);font-weight:600;letter-spacing:.05em;margin:0 0 10px;text-transform:uppercase}.res-detail{color:var(--gray-500);font-size:.82rem;margin:0 0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.res-raw{color:var(--gray-600);font-size:var(--text-sm);margin:8px 0 0}.gauge-row{align-items:center;display:flex;gap:8px;margin-bottom:6px}.gauge-name{color:var(--gray-500);flex-shrink:0;font-size:var(--text-sm);width:80px}.gauge-track{background:var(--dark-700);flex:1 1;height:10px;overflow:hidden;position:relative}.gauge-fill,.gauge-track{border-radius:var(--radius-sm)}.gauge-fill{height:100%;transition:width .4s ease}.gauge-fill.gauge-ok{background:var(--success)}.gauge-fill.gauge-warning{background:var(--warning)}.gauge-fill.gauge-danger{background:var(--danger)}.gauge-label{color:#fff;font-size:.65rem;font-weight:700;line-height:1;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.uptime-row{align-items:center;border-bottom:1px solid var(--dark-700);display:flex;font-size:var(--text-md);justify-content:space-between;padding:6px 0}.uptime-row span{color:var(--gray-500)}.uptime-row strong{color:var(--gray-100);font-size:var(--text-lg)}.ami-grid{display:flex;flex-direction:column;gap:10px}.ami-item{align-items:center;background:var(--dark-900);border:1px solid var(--dark-500);border-radius:var(--radius-md);display:flex;font-size:var(--text-base);justify-content:space-between;padding:10px 14px}.ami-item span{color:var(--gray-400)}.active-call-count{color:var(--info);font-size:var(--text-2xl)}.status-badge{border-radius:var(--radius-lg);display:inline-block;font-size:var(--text-sm);font-weight:600;letter-spacing:.03em;padding:3px 10px}.badge-ok{background:#14532d;color:var(--success)}.badge-fail{background:#450a0a;color:#f87171}.badge-unknown{background:var(--gray-800);color:var(--gray-400)}.table-wrapper{border:1px solid var(--dark-500);border-radius:var(--radius-md);overflow-x:auto}.sa-table{border-collapse:collapse;font-size:.88rem;width:100%}.sa-table thead{background:var(--dark-900)}.sa-table th{color:var(--gray-500);font-size:var(--text-sm);font-weight:600;letter-spacing:.05em;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.sa-table td{border-top:1px solid var(--dark-500);color:var(--gray-300);padding:11px 14px}.sa-table tr:hover td{background:var(--dark-700)}.sa-table tr.row-fail td{background:#1a0a0a}.sa-table tr.row-fail:hover td{background:#220d0d}.host-cell{font-size:.82rem}.host-cell,.mono{color:var(--gray-500)}.mono{font-family:Courier New,monospace;font-size:var(--text-sm)}.trunk-warning{background:#2d1b00;border:1px solid var(--warning-text);border-left:4px solid var(--warning);border-radius:var(--radius-sm);color:#fcd34d;font-size:var(--text-md);line-height:1.5;margin-top:14px;padding:12px 16px}.trunk-warning code{background:#1a1000;border-radius:var(--radius-sm);color:#fbbf24;font-size:.82rem;padding:2px 6px}.ext-summary{color:var(--gray-400);display:flex;font-size:var(--text-base);gap:24px;margin-bottom:14px}.text-ok{color:var(--success)}.text-warn{color:var(--warning)}.sa-empty{color:var(--gray-600);font-size:var(--text-base);font-style:italic;padding:12px 0}@media (max-width:700px){.sa-system-header{align-items:flex-start;flex-direction:column;padding:14px 16px}.sa-system-body{padding:16px}.summary-cards{grid-template-columns:repeat(2,1fr)}.resources-grid{grid-template-columns:1fr}.ext-summary{flex-wrap:wrap;gap:10px}}.security-page .blocked-table-wrapper{overflow-x:auto}.security-page .status-badge{align-items:center;border-radius:var(--radius-lg);display:inline-flex;font-size:var(--text-sm);font-weight:600;gap:4px;padding:3px 10px}.security-page .status-badge.active{background:#fef2f2;color:var(--danger-strong)}.security-page .status-badge.inactive{background:#f0fdf4;color:#16a34a}.security-page .type-badge{border-radius:var(--radius-sm);display:inline-block;font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.security-page .type-badge.web{background:#eff6ff;color:var(--info-strong)}.security-page .type-badge.sip_direct{background:var(--warning-bg);color:#b45309}.security-page .type-badge.sip_webrtc{background:#f5f3ff;color:var(--brand-700)}.security-page .type-badge.manual{background:var(--gray-100);color:var(--gray-600)}.security-page .settings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:12px}.security-page .settings-field{display:flex;flex-direction:column;gap:6px}.security-page .settings-field label{color:var(--gray-500);font-size:var(--text-md);font-weight:500}.security-page .settings-field input[type=number]{border:1px solid var(--gray-200);border-radius:var(--radius-sm);box-sizing:border-box;font-size:var(--text-base);padding:8px 12px;width:100%}.security-page .settings-field input[type=number]:focus{border-color:#6366f1;box-shadow:var(--focus-ring);outline:none}.security-page .enabled-toggle{align-items:center;display:flex;gap:10px;margin-top:4px}.security-page .manual-block-row{align-items:center;display:flex;gap:10px;margin-top:8px}.security-page .manual-block-row input[type=text]{border:1px solid var(--gray-200);border-radius:var(--radius-sm);flex:1 1;font-size:var(--text-base);max-width:260px;padding:8px 12px}.security-page .empty-state{color:var(--gray-400);padding:48px 20px;text-align:center}.security-page .empty-state .icon{font-size:40px;margin-bottom:12px}.security-page .stats-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.security-page .stat-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-md);min-width:120px;padding:16px 24px;text-align:center}.security-page .stat-card .stat-number{color:var(--gray-800);font-size:var(--text-4xl);font-weight:700}.security-page .stat-card .stat-label{color:var(--gray-500);font-size:var(--text-sm);margin-top:4px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.loading-screen{align-items:center;background:var(--page-bg);display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--gray-100);border:4px solid var(--gray-100);border-radius:50%;border-top-color:var(--brand-500);height:50px;width:50px}.loading-screen p{color:var(--text-muted);font-size:var(--text-lg)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.a3b6ca92.css.map*/