.login-container { padding: 40px 24px; }
.login-container::before, .login-container::after, .login-card::before, .login-card::after { content: none; }
.login-card { border-radius: var(--radius-xl); box-shadow: 0 8px 32px #20272c08; animation: none; opacity: 1; transform: none; }
.login-title { font-size: 26px; line-height: 1.3; letter-spacing: -.025em; }
.login-subtitle, .signup-feature-item p { font-size: 14px; line-height: 1.6; }
.login-card .form-control { min-height: 42px; border-radius: var(--radius-md); }
.login-card .form-label { font-size: 13px; font-weight: 600; }
.login-card .btn-primary { border-radius: var(--radius-md); box-shadow: none; }
.login-card .btn-primary:hover { transform: none; }
.signup-feature-item .signup-feature-icon { border-radius: var(--radius-md); }
.signup-feature-item strong { font-size: 14px; }
.login-card :is(a, button, input, select):focus-visible { outline: 2px solid var(--color-primary); outline-offset: 3px; }
@media (max-width: 600px) {
    .login-container { padding: 20px 16px; }
    .login-card { padding: 24px 20px; }
    .login-card .form-control { font-size: 16px; }
    .login-title { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }

.login-card, .login-card .form-control, .login-card .btn { box-shadow: none; }

.signup-progress { display:flex;align-items:center;margin:0 0 14px;color:var(--text-tertiary,#94a3b8); }
.signup-progress span { display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--border-color,#dbe1e8);border-radius:50%;font-size:12px;font-weight:700;background:var(--bg-primary,#fff); }
.signup-progress span.active { color:#fff;border-color:var(--color-primary,#6366f1);background:var(--color-primary,#6366f1); }
.signup-progress i { flex:1;height:1px;background:var(--border-color,#dbe1e8); }
.signup-cally-guide { display:flex;align-items:flex-start;gap:11px;margin-bottom:18px;padding:12px;border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-lg);background:rgba(99,102,241,.06); }
.signup-cally-avatar { display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;color:#fff;font-weight:800;background:linear-gradient(135deg,#6366f1,#8b5cf6); }
.signup-cally-guide strong { display:block;font-size:13px;color:var(--text-primary); }
.signup-cally-guide p { margin:2px 0 0;font-size:12px;line-height:1.45;color:var(--text-secondary); }
.signup-step[hidden] { display:none; }
.signup-step-actions { display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px; }
.signup-optional { font-weight:400;color:var(--text-secondary,#64748b);font-size:.8rem; }
.signup-terms { display:flex;align-items:flex-start;gap:8px;margin-bottom:12px; }
.signup-terms input { width:16px;height:16px;margin-top:2px;accent-color:var(--color-primary,#6366f1);flex-shrink:0;cursor:pointer; }
.signup-terms label { font-size:.82rem;color:var(--text-secondary,#64748b);cursor:pointer;line-height:1.5; }
.signup-setup-summary { margin-bottom:14px;padding:11px 12px;border-radius:var(--radius-md);background:var(--bg-secondary,#f8fafc);color:var(--text-secondary);font-size:12px;line-height:1.5; }
.signup-pipeline-review > strong { display:block;font-size:13px;color:var(--text-primary); }
.signup-pipeline-review > p { margin:3px 0 10px;font-size:12px;line-height:1.45;color:var(--text-secondary); }
#signup-pipeline-stages { display:grid;gap:7px;margin-bottom:14px; }
.signup-pipeline-stage { display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:8px; }
.signup-pipeline-stage span { display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(99,102,241,.1);color:var(--color-primary,#6366f1);font-size:11px;font-weight:700; }
.signup-pipeline-stage input { min-width:0;width:100%;height:36px;padding:7px 9px;border:1px solid var(--border-color,#dbe1e8);border-radius:var(--radius-md);background:var(--bg-primary,#fff);color:var(--text-primary);font:inherit;font-size:12px; }

/* Rounded controls and panels; leave circular avatars and pills intact. */
:root {
    --radius-sm: 8px;
    --radius: 12px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;
    --radius-2xl: 22px;
    --radius-full: 9999px;
}
