@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap";:root{--color-primary:#02929a;--color-primary-light:#02929a14;--color-primary-dark:#027a82;--color-secondary:#0a7ea4;--color-secondary-light:#e6f7ff;--color-success:#10b981;--color-success-light:#d1fae5;--color-error:#ef4444;--color-error-light:#fee2e2;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-info:#3b82f6;--color-info-light:#dbeafe;--bg-primary:#f8fafc;--bg-sidebar:#fff;--bg-card:#fff;--bg-glass:#ffffffb3;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-white:#fff;--border-light:#e2e8f0;--border-medium:#cbd5e1;--border-dark:#64748b;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--font-sans:"Outfit", "Inter", system-ui, -apple-system, sans-serif;--transition-fast:.15s ease;--transition-normal:.25s ease}[data-theme=dark]{--bg-primary:#0f172a;--bg-sidebar:#1e293b;--bg-card:#1e293b;--bg-glass:#1e293bb3;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-tertiary:#64748b;--border-light:#334155;--border-medium:#475569;--border-dark:#94a3b8;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -1px #0003;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -2px #0003}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);overflow-x:hidden}#root{min-height:100vh;text-align:left!important;border-inline:none!important;width:100%!important;max-width:100%!important;margin:0!important;display:block!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light)}.app-container{width:100%;height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-light);z-index:100;width:260px;height:100vh;transition:width var(--transition-normal);flex-direction:column;display:flex;position:sticky;top:0}.sidebar-logo{color:var(--color-primary);border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:24px;font-size:24px;font-weight:700;display:flex}.sidebar-menu{flex-direction:column;flex:1;gap:4px;padding:16px 8px;list-style:none;display:flex}.sidebar-item{color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;font-weight:500;text-decoration:none;display:flex}.sidebar-item:hover,.sidebar-item.active{background-color:var(--color-primary-light);color:var(--color-primary)}.main-content{flex-direction:column;flex:1;min-width:0;display:flex}.header{background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-light);z-index:99;justify-content:space-between;align-items:center;height:70px;padding:0 32px;display:flex;position:sticky;top:0}.header-title-container{flex-direction:column;display:flex}.header-title{color:var(--text-primary);-webkit-user-select:none;user-select:none;font-size:20px;font-weight:600}.header-subtitle{color:var(--text-tertiary);font-size:13px}.content-body{flex:1;padding:32px;overflow-y:auto}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:32px;display:grid}.dashboard-card{background-color:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:16px;padding:24px;display:flex}.dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn{font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:var(--text-white)}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--border-light);color:var(--text-secondary)}.btn-secondary:hover{background-color:var(--border-medium)}.btn-danger{background-color:var(--color-error);color:var(--text-white)}.btn-danger:hover{background-color:#dc2626}.btn:disabled{opacity:.6;cursor:not-allowed}.form-group{margin-bottom:20px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.form-control{width:100%;font-family:var(--font-sans);background-color:var(--bg-card);border:1px solid var(--border-medium);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition-fast);padding:12px 16px;font-size:15px}.form-control:focus{border-color:var(--color-primary);outline:none}.form-control-error{border-color:var(--color-error)}.error-text{color:var(--color-error);margin-top:4px;font-size:13px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);width:100%;max-width:500px;box-shadow:var(--shadow-lg);padding:32px;animation:.3s cubic-bezier(.16,1,.3,1) modalIn;position:relative}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.snackbar-container{z-index:2000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.snackbar{border-radius:var(--radius-md);min-width:300px;box-shadow:var(--shadow-lg);color:var(--text-white);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;animation:.3s cubic-bezier(.16,1,.3,1) slideIn;display:flex}.snackbar-success{background-color:var(--color-success)}.snackbar-error{background-color:var(--color-error)}.snackbar-info{background-color:var(--color-info)}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dialer-pad{grid-template-columns:repeat(3,1fr);gap:16px;max-width:280px;margin:20px auto;display:grid}.dialer-button{border-radius:var(--radius-full);background-color:var(--bg-primary);border:1px solid var(--border-light);cursor:pointer;-webkit-user-select:none;user-select:none;width:64px;height:64px;transition:all var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;display:flex}.dialer-button:hover{background-color:var(--color-primary-light);border-color:var(--color-primary)}.dialer-button-number{color:var(--text-primary);font-size:20px;font-weight:600}.dialer-button-letters{color:var(--text-tertiary);text-transform:uppercase;font-size:10px}.contacts-view{grid-template-columns:320px 1fr;height:calc(100vh - 70px);display:grid}.contacts-sidebar{border-right:1px solid var(--border-light);background-color:var(--bg-sidebar);flex-direction:column;display:flex}.contacts-search-box{border-bottom:1px solid var(--border-light);padding:16px}.contacts-list-container{flex:1;padding:8px 0;overflow-y:auto}.contacts-list-group-header{color:var(--color-primary);background-color:var(--bg-primary);z-index:10;padding:8px 16px;font-size:12px;font-weight:700;position:sticky;top:0}.contact-list-item{cursor:pointer;transition:background-color var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;display:flex}.contact-list-item:hover,.contact-list-item.active{background-color:var(--color-primary-light)}.contact-avatar{border-radius:var(--radius-full);background-color:var(--color-primary);width:40px;height:40px;color:var(--text-white);justify-content:center;align-items:center;font-weight:600;display:flex}.contact-details-container{flex:1;padding:32px;overflow-y:auto}
