* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); min-height: 100vh; display: flex; align-items: center; justify-content: center; }
.card { background: white; border-radius: 16px; padding: 40px; max-width: 420px; width: 90%; box-shadow: 0 20px 60px rgba(0,0,0,0.3); }
.card h1 { font-size: 26px; color: #262626; margin-bottom: 4px; text-align: center; }
.card .subtitle { color: #8c8c8c; font-size: 14px; text-align: center; margin-bottom: 28px; }
.form-group { margin-bottom: 16px; }
.form-group label { display: block; font-size: 13px; color: #595959; margin-bottom: 4px; }
.form-group input { width: 100%; padding: 10px 12px; border: 1px solid #d9d9d9; border-radius: 8px; font-size: 15px; outline: none; transition: border 0.2s; }
.form-group input:focus { border-color: #667eea; box-shadow: 0 0 0 2px rgba(102,126,234,0.15); }
.btn { width: 100%; padding: 11px; border: none; border-radius: 8px; font-size: 15px; cursor: pointer; transition: all 0.3s; margin-top: 8px; }
.btn-primary { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; }
.btn-primary:hover { box-shadow: 0 6px 20px rgba(102,126,234,0.5); }
.btn-link { background: none; color: #667eea; font-size: 13px; cursor: pointer; padding: 8px; border: none; margin-top: 12px; display: inline-block; }
.btn-link:hover { text-decoration: underline; }
.error { color: #ff4d4f; font-size: 13px; margin-top: 8px; display: none; }
.toggle { text-align: center; margin-top: 16px; font-size: 13px; color: #8c8c8c; }
.toggle a { color: #667eea; cursor: pointer; text-decoration: none; }
.toggle a:hover { text-decoration: underline; }
