/* Giriş ve kayıt ekranı: koyu lacivert zemin, ortada beyaz kart */
body.auth { min-height: 100dvh; margin: 0; background: radial-gradient(120% 80% at 50% 0%, #21708C 0%, #0D2C39 70%); }
.auth-main { max-width: 420px; margin: 0 auto; padding: calc(32px + env(safe-area-inset-top)) 16px 32px; display: flex; flex-direction: column; gap: 20px; }
.auth-brand { display: flex; flex-direction: column; align-items: center; gap: 8px; color: #FFFFFF; text-align: center; }
.auth-brand img { border-radius: 22px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35); }
.auth-brand h1 { margin: 6px 0 0; font-size: 28px; font-weight: 800; letter-spacing: 0.16em; }
.auth-brand p { margin: 0; font-size: 15px; opacity: 0.8; }
.auth-card { background: #FFFFFF; border-radius: 20px; padding: 16px; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25); }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; margin-bottom: 16px; border-radius: 12px; background: var(--ground); }
.auth-tabs button { min-height: 40px; border: none; border-radius: 9px; background: none; font: inherit; font-weight: 600; color: var(--muted); cursor: pointer; }
.auth-tabs button.on { background: #FFFFFF; color: var(--ink); box-shadow: 0 1px 4px rgba(27, 42, 51, 0.15); }
.auth-card form { display: flex; flex-direction: column; gap: 12px; }
.auth-card .btn.primary { min-height: 48px; font-size: 16px; }
