:root {
  --ink: #14213d;
  --muted: #65728a;
  --line: #e5eaf3;
  --paper: #ffffff;
  --canvas: #f8faff;
  --lime: #298c5d;
  --lime-dark: #247a52;
  --purple: #1550f1;
  --sidebar: #ffffff;
}

body { background: var(--canvas); }
.brand { color: #1550f1; }
.brand-mark { background: #1550f1; color: #ffffff; }
.brand-light { color: #ffffff; }
.brand-light .brand-mark { background: #ffffff; color: #1550f1; }

.login-art { background: #1550f1; }
.login-art::after {
  border-color: #ffffff38;
  box-shadow: 0 0 0 70px #1d59f2, 0 0 0 71px #ffffff30,
    0 0 0 140px #1d59f2, 0 0 0 141px #ffffff22;
}
.login-art .eyebrow { color: #bde5cf; }
.login-copy p { color: #dce5ff; }
.signal-card span { background: #ffffff; }
.login-panel { background: #ffffff; }
.eyebrow.dark { color: #298c5d; }

.primary, .new-message { background: #1550f1; color: #ffffff; }
.primary:hover, .new-message:hover { background: #1043cc; }
.new-message span { color: #ffffff; }
input:focus, textarea:focus, select:focus {
  border-color: #1550f1;
  box-shadow: 0 0 0 3px #1550f11f;
}

.sidebar { background: #ffffff; border-right-color: #e5eaf3; }
.sidebar nav button:hover,
.sidebar nav button.active,
.sidebar-foot > button:hover,
.sidebar-foot > button.active {
  background: #eef3ff;
  color: #1550f1;
}
.sidebar nav button.active { box-shadow: inset 3px 0 #1550f1; }
.sidebar nav button b { background: #e8efff; color: #1550f1; }
.profile > span { background: #e8efff; color: #1550f1; }

.topbar { background: rgba(255, 255, 255, 0.92); }
.panel, .stat { border-color: #e5eaf3; box-shadow: 0 2px 10px #1550f108; }
.conversation-item:hover, .conversation-item.active { background: #eef3ff; }
.conversation-item.active { box-shadow: inset 3px 0 #1550f1; }
.avatar { background: #e8efff; color: #1550f1; }
.avatar-button { display: block; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
.avatar-button .avatar { background: #1550f1; color: #ffffff; font-size: 23px; font-weight: 400; transition: transform .15s ease, background .15s ease; }
.avatar-button:hover .avatar { background: #1043cc; transform: scale(1.05); }
.avatar-button:focus-visible { outline: 3px solid #298c5d55; outline-offset: 3px; }
.bubble.outbound { background: #1550f1; }
.messages { background: #fbfcff; }

.badge { background: #eef3ff; color: #1550f1; }
.badge.active, .badge.delivered, .badge.received {
  background: #e3f4eb;
  color: #247a52;
}
.secondary:hover { border-color: #1550f1; color: #1550f1; background: #f7f9ff; }
.call-pulse { background: #298c5d; box-shadow: 0 0 0 5px #298c5d2b; }
.callbar { background: #103cb6; }
.toast:not(.error) { background: #298c5d; }
th { background: #f8faff; }
.mfa-enrollment{text-align:center}.mfa-enrollment img{width:220px;height:220px;max-width:100%;border:8px solid white;border-radius:12px}.mfa-enrollment code{display:block;word-break:break-all;padding:10px;background:#f4f6ff;border-radius:8px;color:#1550f1}.recovery-codes{padding:18px;border-radius:10px;background:#f4f6ff;color:#16315f;line-height:1.8;text-align:center;user-select:all}
.copy-field{display:flex;gap:8px}.copy-field input{min-width:0;flex:1}.copy-field button{flex:0 0 auto}
