.auth-page { background-color: var(--bg); display: flex; align-items: center; justify-content: center; padding: 24px; position: relative; } .auth-container { width: 100%; max-width: 360px; } .auth-logo { text-align: center; margin-bottom: 40px; } .logo-icon { width: 64px; height: 64px; background-color: var(--primary); border-radius: 20px; display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; font-size: 28px; color: var(--primary-fg); } .logo-title { font-size: 28px; font-weight: 800; color: var(--text); margin: 0 0 8px; letter-spacing: -0.5px; } .logo-subtitle { font-size: 14px; color: var(--text-muted); margin: 0; } .auth-form { display: flex; flex-direction: column; gap: 12px; margin-bottom: 20px; } .input-group { display: flex; flex-direction: column; gap: 4px; } .input-wrapper { position: relative; display: flex; align-items: center; } .input-icon { position: absolute; left: 14px; color: var(--text-muted); font-size: 16px; z-index: 1; } .auth-input { width: 100%; background-color: var(--card); border: 1.5px solid var(--border); border-radius: 12px; padding: 14px 14px 14px 42px; color: var(--text); font-size: 15px; outline: none; transition: border-color 0.2s; } .auth-input:focus { border-color: #1abc9c; } .auth-input::placeholder { color: var(--text-muted); } .field-error { font-size: 12px; color: #ff4d4f; padding-left: 4px; } .auth-btn { width: 100%; background-color: var(--primary); color: var(--primary-fg); border: none; border-radius: 12px; padding: 16px; font-size: 16px; font-weight: 700; cursor: pointer; margin-top: 4px; transition: opacity 0.2s; } .auth-btn:hover:not(:disabled) { opacity: 0.85; } .auth-btn:disabled { opacity: 0.6; cursor: not-allowed; } .auth-switch { text-align: center; font-size: 14px; color: var(--text-muted); } .switch-btn { background: none; border: none; color: #1abc9c; font-size: 14px; font-weight: 600; cursor: pointer; padding: 0; margin-left: 4px; text-decoration: underline; } .theme-toggle { position: fixed; bottom: 24px; right: 24px; width: 44px; height: 44px; background-color: var(--card); border: 1px solid var(--border); border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 18px; color: var(--text); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); transition: transform 0.2s; } .theme-toggle:hover { transform: scale(1.1); }