/*============================================================
  AUTH PAGES — Login / Register
  ============================================================*/
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;
background:var(--bg)}
.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--border);
border-radius:16px;padding:40px 32px;position:relative}
.auth-header{text-align:center;margin-bottom:32px}
.auth-header .logo{justify-content:center;margin-bottom:22px}
.auth-header h2{font-family:var(--display);font-size:1.35rem;font-weight:700;margin-bottom:5px}
.auth-header p{font-size:.85rem;color:var(--gray2)}

.auth-tabs{display:flex;gap:4px;background:var(--surface);border-radius:8px;padding:3px;margin-bottom:28px}
.auth-tab{flex:1;padding:10px;border-radius:6px;font-size:.82rem;font-weight:500;text-align:center;
color:var(--gray);transition:var(--t);cursor:pointer}
.auth-tab.active{background:var(--accent-dim);color:var(--accent)}

.field{margin-bottom:18px}
.field label{display:block;font-size:.8rem;font-weight:500;color:var(--gray);margin-bottom:5px}
.field input,.field select{width:100%;padding:11px 14px;background:var(--surface);
border:1px solid var(--border);border-radius:8px;color:var(--white);font-family:var(--font);
font-size:.88rem;outline:none;transition:var(--t)}
.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}
.field input::placeholder{color:var(--gray2)}
.field select{cursor:pointer;-webkit-appearance:none;appearance:none;
background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8l4 4 4-4' fill='none' stroke='%235d6680' stroke-width='1.5'/%3E%3C/svg%3E");
background-repeat:no-repeat;background-position:right 12px center;background-size:16px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;font-size:.75rem;color:var(--gray2)}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--border)}

.auth-footer{text-align:center;margin-top:22px;font-size:.82rem;color:var(--gray2)}
.auth-footer a{color:var(--accent)}

.auth-check{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--gray);margin-bottom:20px}
.auth-check input{accent-color:var(--accent)}

.auth-forgot{font-size:.8rem;color:var(--accent);display:block;text-align:right;margin-top:-10px;margin-bottom:18px}

.auth-error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);
border-radius:8px;padding:10px 14px;font-size:.82rem;color:var(--red);margin-bottom:16px;display:none}
.auth-error.show{display:block}
