/* ============================================ AUTHENTIFICATION - STYLES ============================================ */ .auth-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--bg-darker) 0%, var(--bg-dark) 50%, var(--primary-dark) 100%); position: relative; overflow: hidden; } .auth-page::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(99, 102, 241, 0.1) 0%, transparent 50%); animation: rotate 30s linear infinite; } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .auth-container { position: relative; z-index: 1; width: 100%; max-width: 420px; padding: 20px; } .auth-box { background: var(--bg-card); border-radius: var(--border-radius); padding: 40px; border: 1px solid var(--border); box-shadow: var(--shadow-lg); backdrop-filter: blur(10px); } .auth-logo { text-align: center; margin-bottom: 32px; } .auth-logo .logo-icon { font-size: 4rem; display: block; margin-bottom: 16px; } .auth-logo h1 { font-size: 1.8rem; font-weight: 700; background: linear-gradient(135deg, var(--primary-light) 0%, var(--primary) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 8px; } .auth-logo p { color: var(--text-muted); font-size: 0.95rem; } .auth-form h2 { font-size: 1.3rem; margin-bottom: 24px; text-align: center; } .auth-form .form-group { margin-bottom: 20px; } .auth-form .form-group label { display: block; margin-bottom: 8px; font-size: 0.9rem; font-weight: 500; color: var(--text-secondary); } .auth-form .form-control { width: 100%; padding: 14px 16px; background: var(--bg-dark); border: 1px solid var(--border); border-radius: var(--border-radius-sm); color: var(--text-primary); font-size: 1rem; transition: var(--transition); } .auth-form .form-control:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2); } .auth-form .btn-block { width: 100%; padding: 14px; margin-top: 8px; } .auth-switch { text-align: center; margin-top: 20px; color: var(--text-muted); font-size: 0.9rem; } .auth-switch a { color: var(--primary-light); text-decoration: none; font-weight: 600; } .auth-switch a:hover { text-decoration: underline; } .auth-message { margin-top: 16px; padding: 12px 16px; border-radius: var(--border-radius-sm); font-size: 0.9rem; text-align: center; } .auth-message.error { background: rgba(239, 68, 68, 0.1); border: 1px solid var(--danger); color: var(--danger); } .auth-message.success { background: rgba(16, 185, 129, 0.1); border: 1px solid var(--success); color: var(--success); } /* Responsive */ @media (max-width: 480px) { .auth-box { padding: 24px; } .auth-logo .logo-icon { font-size: 3rem; } .auth-logo h1 { font-size: 1.5rem; } }