* { box-sizing: border-box; } body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; background: #1e2127; color: #abb2bf; min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 2rem; } .auth-container { width: 100%; max-width: 900px; } .auth-header { text-align: center; margin-bottom: 2rem; } .auth-header h1 { color: #abb2bf; font-size: 2rem; margin: 0 0 0.5rem 0; font-weight: 600; } .auth-header p { color: #5c6370; margin: 0; font-size: 0.95rem; } .error-message { background: #3e2a2a; border: 1px solid #e06c75; color: #e06c75; padding: 1rem; border-radius: 4px; margin-bottom: 2rem; text-align: center; } .forms-container { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; } .form-panel { background: #282c34; border: 1px solid #3e4451; border-radius: 8px; padding: 2rem; } .form-panel h2 { color: #abb2bf; font-size: 1.5rem; margin: 0 0 1.5rem 0; font-weight: 600; } .form-group { margin-bottom: 1.5rem; } .form-group label { display: block; color: #abb2bf; font-size: 0.9rem; font-weight: 500; margin-bottom: 0.5rem; } .form-group input[type='text'], .form-group input[type='password'] { width: 100%; background: #21252b; border: 1px solid #3e4451; color: #abb2bf; padding: 0.75rem; border-radius: 4px; font-size: 0.95rem; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; outline: none; transition: border-color 0.2s, background-color 0.2s; } .form-group input[type='text']:focus, .form-group input[type='password']:focus { background: #282c34; border-color: #528bff; } .form-group input[type='text']::placeholder, .form-group input[type='password']::placeholder { color: #5c6370; } .form-group input:invalid:not(:placeholder-shown) { border-color: #e06c75; } .btn-submit { width: 100%; padding: 0.75rem 1rem; background: #4caf50; color: white; border: none; border-radius: 4px; font-size: 1rem; font-weight: 500; cursor: pointer; transition: background-color 0.2s; } .btn-submit:hover { background: #45a049; } .btn-submit:active { background: #3d8b40; } /* Responsive layout - stack forms on mobile */ @media (max-width: 768px) { body { padding: 1rem; } .forms-container { grid-template-columns: 1fr; gap: 1.5rem; } .form-panel { padding: 1.5rem; } .auth-header h1 { font-size: 1.5rem; } }