/* ColdCall Pro custom styles */
* { -webkit-tap-highlight-color: transparent; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; }

.sidebar-link {
  display: flex; align-items: center; gap: 0.75rem;
  padding: 0.6rem 1rem; border-radius: 0.5rem; cursor: pointer;
  color: #cbd5e1; transition: all .15s; font-weight: 500;
}
.sidebar-link:hover { background: rgba(255,255,255,.08); color: #fff; }
.sidebar-link.active { background: #4f46e5; color: #fff; }

.badge { padding: 0.15rem 0.6rem; border-radius: 9999px; font-size: 0.72rem; font-weight: 600; display: inline-block; }
.badge-new { background:#e0e7ff; color:#3730a3; }
.badge-contacted { background:#fef3c7; color:#92400e; }
.badge-callback { background:#dbeafe; color:#1e40af; }
.badge-interested { background:#d1fae5; color:#065f46; }
.badge-not_interested { background:#fee2e2; color:#991b1b; }
.badge-do_not_call { background:#374151; color:#f9fafb; }
.badge-converted { background:#4f46e5; color:#fff; }
.badge-high { background:#fee2e2; color:#991b1b; }
.badge-medium { background:#fef3c7; color:#92400e; }
.badge-low { background:#e5e7eb; color:#374151; }
.badge-active { background:#d1fae5; color:#065f46; }
.badge-paused { background:#fef3c7; color:#92400e; }
.badge-completed { background:#e5e7eb; color:#374151; }
.badge-scheduled { background:#dbeafe; color:#1e40af; }

.card { background:#fff; border-radius:0.75rem; box-shadow:0 1px 3px rgba(0,0,0,.08); }
.btn { padding:0.5rem 1rem; border-radius:0.5rem; font-weight:600; transition:all .15s; cursor:pointer; border:none; font-size:0.875rem; }
.btn-primary { background:#4f46e5; color:#fff; }
.btn-primary:hover { background:#4338ca; }
.btn-secondary { background:#e2e8f0; color:#334155; }
.btn-secondary:hover { background:#cbd5e1; }
.btn-danger { background:#dc2626; color:#fff; }
.btn-danger:hover { background:#b91c1c; }
.btn-success { background:#059669; color:#fff; }
.btn-success:hover { background:#047857; }

.input { width:100%; padding:0.55rem 0.75rem; border:1px solid #cbd5e1; border-radius:0.5rem; font-size:0.9rem; outline:none; }
.input:focus { border-color:#4f46e5; box-shadow:0 0 0 3px rgba(79,70,229,.15); }
label.field { display:block; font-size:0.8rem; font-weight:600; color:#475569; margin-bottom:0.25rem; }

table { width:100%; border-collapse:collapse; }
thead th { text-align:left; font-size:0.72rem; text-transform:uppercase; letter-spacing:0.04em; color:#64748b; padding:0.6rem 0.75rem; border-bottom:2px solid #e2e8f0; }
tbody td { padding:0.65rem 0.75rem; border-bottom:1px solid #f1f5f9; font-size:0.875rem; }
tbody tr:hover { background:#f8fafc; }

.modal-overlay { position:fixed; inset:0; background:rgba(15,23,42,.5); display:flex; align-items:center; justify-content:center; z-index:50; padding:1rem; }
.modal { background:#fff; border-radius:0.75rem; max-width:600px; width:100%; max-height:90vh; overflow-y:auto; }

.toast { position:fixed; bottom:1.5rem; right:1.5rem; z-index:100; padding:0.85rem 1.25rem; border-radius:0.5rem; color:#fff; font-weight:600; box-shadow:0 10px 25px rgba(0,0,0,.2); animation:slideIn .2s; }
@keyframes slideIn { from { transform:translateY(20px); opacity:0; } to { transform:translateY(0); opacity:1; } }

.stat-card { padding:1.25rem; border-radius:0.75rem; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.08); }

.dialer-btn { width:100%; padding:1rem; border-radius:0.6rem; font-weight:700; font-size:1rem; cursor:pointer; border:2px solid transparent; transition:all .15s; text-align:left; }
