/* LOGIN & REGISTER CSS - Infinity */
.auth-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 120px 20px 40px; position: relative; }
.auth-page::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 50% 50%, rgba(139,92,246,0.1), transparent 60%); z-index: -1; }

.auth-card { background: var(--bg-panel); border: 1px solid var(--border-light); padding: 50px; border-radius: 24px; width: 100%; max-width: 450px; box-shadow: 0 20px 50px rgba(0,0,0,0.5); backdrop-filter: blur(20px); }
.auth-card.wide { max-width: 700px; }

.auth-header { text-align: center; margin-bottom: 40px; }
.auth-header h1 { font-size: 2rem; margin-bottom: 10px; }

.form-group { margin-bottom: 24px; position: relative; }
.form-group label { display: block; margin-bottom: 8px; font-size: 0.9rem; font-weight: 500; color: var(--text-secondary); }
.form-control { width: 100%; background: rgba(0,0,0,0.3); border: 1px solid var(--border-light); padding: 15px 20px; border-radius: 12px; color: var(--text-primary); font-size: 1rem; transition: var(--transition-fast); }
.form-control:focus { border-color: var(--highlight); }

.password-toggle { position: absolute; right: 20px; top: 40px; font-size: 0.8rem; font-family: var(--font-heading); color: var(--highlight); cursor: pointer; }
.strength-meter { height: 4px; background: rgba(255,255,255,0.1); border-radius: 2px; margin-top: 10px; overflow: hidden; }
.strength-fill { height: 100%; width: 0; transition: 0.3s; }

.auth-extras { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; font-size: 0.9rem; color: var(--text-secondary); }
.auth-extras label { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.auth-extras a { color: var(--highlight); }

.auth-footer { text-align: center; margin-top: 30px; font-size: 0.9rem; color: var(--text-secondary); }
.auth-footer a { color: var(--highlight); font-weight: 500; }

.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 768px) { .form-row { grid-template-columns: 1fr; } .auth-card { padding: 30px 20px; } }
