/* AUTH & SECURITY */
.auth-container {
    max-width: 440px;
    margin: 0 auto;
    position: relative;
}

.auth-glass-panel {
    background: rgba(5, 5, 8, 0.6);
    backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-2xl);
    padding: var(--space-8);
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.5);
    position: relative;
    overflow: hidden;
}

.auth-glass-panel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--color-cyan-500), var(--color-magenta-500));
}

.otp-group {
    display: flex;
    gap: var(--space-3);
    justify-content: center;
    margin: var(--space-6) 0;
}

.otp-input {
    width: 48px;
    height: 56px;
    background: var(--color-void-200);
    border: 1px solid var(--color-void-300);
    border-radius: var(--radius-md);
    text-align: center;
    font-family: var(--font-mono);
    font-size: var(--text-xl);
    color: var(--color-cyan-400);
    transition: all 0.2s;
}

.otp-input:focus {
    border-color: var(--color-cyan-500);
    box-shadow: 0 0 15px rgba(0, 219, 245, 0.2);
    transform: translateY(-2px);
    outline: none;
}

.password-strength {
    height: 4px;
    background: var(--color-void-300);
    border-radius: 2px;
    margin-top: var(--space-2);
    overflow: hidden;
}

.strength-bar {
    height: 100%;
    width: 0%;
    transition: width 0.3s ease, background-color 0.3s ease;
}

.strength-weak {
    width: 33%;
    background-color: var(--color-magenta-500);
}

.strength-medium {
    width: 66%;
    background-color: var(--color-warning);
}

.strength-strong {
    width: 100%;
    background-color: var(--color-lime-500);
}