/* Shared auth page styles */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --brand:#2563eb;--brand-d:#1d4ed8;--brand-light:#eff6ff;
  --dark:#0f172a;--text:#334155;--muted:#64748b;
  --surface:#f8fafc;--border:#e2e8f0;--danger:#ef4444;--success:#22c55e;
}
body{font-family:'Inter',sans-serif;color:var(--text);background:var(--surface);min-height:100vh;display:flex;flex-direction:column}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}

.auth-nav{background:#fff;border-bottom:1px solid var(--border);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between}
.auth-nav .logo{font-size:17px;font-weight:800;color:var(--dark);text-decoration:none}
.auth-nav .logo span{color:var(--brand)}
.auth-nav .back{font-size:13px;color:var(--muted)}

.auth-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 16px}
.auth-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:40px 36px;width:100%;max-width:440px;box-shadow:0 4px 24px rgba(0,0,0,.05)}
.auth-card h1{font-size:22px;font-weight:800;color:var(--dark);margin-bottom:6px}
.auth-card .sub{font-size:14px;color:var(--muted);margin-bottom:28px;line-height:1.5}

.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text);margin-bottom:6px}
.form-group input,.form-group select{width:100%;padding:10px 13px;border:1.5px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;outline:none;background:#fff;color:var(--text);transition:border-color .2s}
.form-group input:focus,.form-group select:focus{border-color:var(--brand)}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.btn-submit{width:100%;padding:12px;background:var(--brand);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:background .2s;margin-top:8px;font-family:inherit}
.btn-submit:hover{background:var(--brand-d)}
.btn-submit:disabled{opacity:.6;cursor:not-allowed}

.auth-footer{text-align:center;margin-top:20px;font-size:13px;color:var(--muted)}
.alert{padding:12px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;display:none}
.alert.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;display:block}
.alert.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;display:block}
.divider{height:1px;background:var(--border);margin:20px 0;position:relative}
.divider::after{content:'or';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:0 10px;font-size:12px;color:var(--muted)}

.password-wrap{position:relative}
.password-wrap input{padding-right:42px}
.toggle-pw{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:16px;color:var(--muted);padding:2px}
