/* GenZ PBX brand layer: energetic UK/USA business calling without changing PBX behavior. */
:root {
  --genz-ink: #0b1930;
  --genz-cyan: #08b9d0;
  --genz-blue: #2563eb;
  --genz-lime: #84cc16;
  --genz-coral: #fb4f64;
  --genz-amber: #f59e0b;
  --genz-canvas: #f5f8fc;
}

body { background: var(--genz-canvas); }
.m8-dashboard, .m8-group, .m8-reseller, .m8-webphone, .m8-login, .m8-public {
  --signal-cyan: var(--genz-cyan);
  --signal-violet: var(--genz-blue);
  --signal-green: var(--genz-lime);
  --signal-yellow: var(--genz-amber);
  --signal-pink: var(--genz-coral);
  --signal-ink: var(--genz-ink);
  --signal-canvas: var(--genz-canvas);
}
.sidebar, .m8-dashboard .sidebar, .m8-group .sidebar { background: var(--genz-ink) !important; }
.m8-dashboard .btn-primary, .m8-group .btn-primary, .m8-reseller .btn-primary,
.m8-webphone .primary, .m8-login .btn, .m8-public .btn-primary {
  background: var(--genz-blue) !important;
  border-color: var(--genz-blue) !important;
  color: #fff !important;
}
.m8-dashboard .btn-primary:hover, .m8-group .btn-primary:hover,
.m8-reseller .btn-primary:hover, .m8-webphone .primary:hover, .m8-login .btn:hover {
  background: #1749b5 !important;
}
.m8-dashboard .stat-card:nth-child(4n+1), .m8-group .stat:nth-child(4n+1) { border-top-color: var(--genz-cyan) !important; }
.m8-dashboard .stat-card:nth-child(4n+2), .m8-group .stat:nth-child(4n+2) { border-top-color: var(--genz-coral) !important; }
.m8-dashboard .stat-card:nth-child(4n+3), .m8-group .stat:nth-child(4n+3) { border-top-color: var(--genz-lime) !important; }
.m8-dashboard .stat-card:nth-child(4n), .m8-group .stat:nth-child(4n) { border-top-color: var(--genz-amber) !important; }
.m8-dashboard .page-title, .m8-group .page-title, .m8-reseller h1 { color: var(--genz-ink) !important; }
.m8-login .login-intro { background: var(--genz-ink) !important; }
.m8-login .login-intro:after { background: var(--genz-cyan); box-shadow: 110px 0 0 var(--genz-coral), 220px 0 0 var(--genz-lime); }
.m8-login .login-intro-kicker, .m8-public .hero h1 strong { color: var(--genz-cyan) !important; }
.m8-webphone .dialer-card:before { background: linear-gradient(90deg, var(--genz-cyan), var(--genz-blue), var(--genz-coral), var(--genz-lime), var(--genz-amber)); }
.m8-webphone .key:nth-child(5n+1) { border-color: #a8e9f1 !important; background: #ecfbfd !important; }
.m8-webphone .key:nth-child(5n+2) { border-color: #c7d7ff !important; background: #f0f4ff !important; }
.m8-webphone .key:nth-child(5n+3) { border-color: #d8f2a7 !important; background: #f6fbe9 !important; }
.m8-webphone .key:nth-child(5n+4) { border-color: #ffd9a0 !important; background: #fff8eb !important; }
.m8-webphone .key:nth-child(5n) { border-color: #ffc4cc !important; background: #fff2f4 !important; }
.brand img, .logo-img, .login-intro-logo { object-fit: contain; }
