/* ============================================================
   UVA Mentor — Kimlik sayfaları (V3): Giriş · Kayıt — v2 (15 Eyl)
   Requires tokens.css. bugun.css LİNKLENMEZ (kabuksuz sayfa).

   Sahibi: "login ekranı çok klişe" (ortada yüzen kart + kutu girdiler +
   tam genişlik düğme = her SaaS'ın girişi). Yeni kurgu: DEFTERİN İLK
   SAYFASI. Masada tek geniş kağıt; solda KENAR (marj) sütunu — marka,
   başlık, günün tarihi ve kör kabartma mühür; ince dikey marj çizgisi;
   sağda YAZI ALANI — girdiler kutu değil, defterin CETVEL ÇİZGİLERİ
   (yalnız alt kural; odakta mürekkep). Düğme sağa yaslı, içerik kadar.
   Vurgu bütçesi: --uva-accent yalnız .uva-cta. Kırmızı/emoji/gradyan/
   kapsül yok. Gren + lamba kabukla aynı.
   ============================================================ */

.uva-kimlik,
.uva-kimlik *,
.uva-kimlik *::before,
.uva-kimlik *::after {
  box-sizing: border-box;
}

html, body { margin: 0; background: var(--uva-desk); }

/* ── Masa ──────────────────────────────────────────────────── */

.uva-kimlik {
  position: relative;
  isolation: isolate;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--uva-space-6) var(--uva-space-4) var(--uva-space-8);
  background: var(--uva-desk);
  color: var(--uva-ink);
  font-family: var(--uva-font-body);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

/* Lamba: kağıdın üstüne düşen ışık (kabuktaki .uva-column::before ile aynı dil). */
.uva-kimlik::before {
  content: '';
  position: absolute;
  z-index: -1;
  pointer-events: none;
  left: 50%;
  top: -80px;
  width: 1240px;
  height: 900px;
  transform: translateX(-50%);
  background: var(--uva-lamp);
}

/* Masa greni: zeminin üstünde, kağıdın altında. */
.uva-kimlik::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.035;
  background-image: var(--uva-grain);
}

.uva-kimlik ::selection { background: var(--uva-selection); }

.uva-kimlik :focus-visible {
  outline: 2px solid var(--uva-ink);
  outline-offset: 2px;
}

/* ── Kağıt: defterin ilk sayfası ───────────────────────────── */

.uva-kimlik__kagit {
  position: relative;
  width: 100%;
  max-width: 960px;
  padding: 32px 24px 36px;
  background: var(--uva-card);
  border: 1px solid var(--uva-edge);
  border-radius: var(--uva-radius);
  box-shadow: var(--uva-shadow-card-wide);
}

.uva-grain {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: var(--uva-grain-opacity);
  background-image: var(--uva-grain);
  border-radius: var(--uva-radius);
}

/* Kenar (marj) ve yazı alanı: darda alt alta, genişte yan yana. */
.uva-kimlik__kenar { position: relative; }
.uva-kimlik__govde { position: relative; margin-top: var(--uva-space-7); }

/* Marka: başlık ailesi (17 Eyl'den beri Plex Sans), yan menüdeki "UVA" ile aynı ağırlık. */
.uva-kimlik__marka {
  margin: 0;
  font-family: var(--uva-font-marka);
  font-weight: 600;
  font-size: var(--uva-fs-marka);
  line-height: 1.2;
  color: var(--uva-ink);
}

.uva-marker {
  width: 32px;
  height: 1px;
  margin-top: var(--uva-space-6);
  background: var(--uva-rule);
}

.uva-eyebrow {
  margin-top: var(--uva-space-2);
  font-size: var(--uva-fs-etiket);
  line-height: 1.3;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--uva-ink-soft);
}

/* Başlık durum cümlesidir, slogan değil. */
.uva-kimlik__baslik {
  margin: 12px 0 0;
  font-family: var(--uva-font-heading);
  font-weight: 600;
  font-size: var(--uva-fs-h2);
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--uva-ink);
  text-wrap: balance;
}

/* Günün tarihi (defterin sayfa başı) ve tek sakin cümle. */
.uva-kimlik__tarih {
  margin: 16px 0 0;
  font-size: var(--uva-fs-kucuk);
  line-height: 1.4;
  color: var(--uva-ink-soft);
  font-variant-numeric: tabular-nums lining-nums;
}
.uva-kimlik__tarih:empty { display: none; }
.uva-kimlik__not {
  margin: 8px 0 0;
  font-size: var(--uva-fs-govde);
  line-height: 1.55;
  color: var(--uva-ink-soft);
  max-width: 30ch;
}

/* Kör kabartma mühür: açık kabartma sol-üst, koyu iz sağ-alt; dolgu yok.
   Bugün'deki mühürlenen kağıtların büyütülmüş hali — süs değil, imza. */
.uva-kimlik__muhur {
  display: none;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 118px;
  height: 152px;
  transform: rotate(-4deg);
  pointer-events: none;
}
.uva-kimlik__muhur path { fill: none; stroke-width: 1; stroke-linejoin: round; }
.uva-kimlik__muhur .is-kabartma { stroke: var(--uva-seal-relief); }
.uva-kimlik__muhur .is-iz { stroke: rgba(34, 33, 29, 0.22); }
.uva-kimlik__muhur .is-harf {
  font-family: var(--uva-font-heading);
  font-weight: 600;
  font-size: 7px;
  letter-spacing: 0.12em;
  fill: rgba(34, 33, 29, 0.28);
}

/* ── Form: cetvel çizgileri ────────────────────────────────── */

.uva-form { margin-top: 0; }

.uva-alan {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.uva-alan + .uva-alan,
.uva-alan + .uva-alan-cift,
.uva-alan-cift + .uva-alan { margin-top: 22px; }

.uva-alan-cift { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }

.uva-alan__ust {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--uva-space-3);
}

.uva-alan__etiket {
  font-size: var(--uva-fs-etiket);
  line-height: 1.3;
  color: var(--uva-ink-soft);
}

/* Girdi = defter çizgisi: kutu yok, yalnız alt kural. Odakta kural mürekkep ve
   bir ton kalın (box-shadow ile; yükseklik zıplamaz). */
.uva-alan__girdi {
  width: 100%;
  height: 40px;
  padding: 0;
  background: transparent;
  color: var(--uva-ink);
  border: none;
  border-bottom: 1px solid var(--uva-rule);
  border-radius: 0;
  font: 17px/1.4 var(--uva-font-body);
  appearance: none;
  -webkit-appearance: none;
  transition: border-color 120ms ease, box-shadow 120ms ease;
}
.uva-alan__girdi::placeholder { color: var(--uva-ink-soft); opacity: 0.6; }
.uva-alan__girdi:hover { border-bottom-color: var(--uva-ink-soft); }
.uva-alan__girdi:focus { outline: none; border-bottom-color: var(--uva-ink); box-shadow: inset 0 -1px 0 var(--uva-ink); }
.uva-alan__girdi:focus-visible { outline: none; }
.uva-alan__girdi[aria-invalid="true"] { border-bottom-color: var(--uva-ink); box-shadow: inset 0 -1px 0 var(--uva-ink); }
/* Tarayıcı otomatik doldurma zeminini kağıda çevir. */
.uva-alan__girdi:-webkit-autofill,
.uva-alan__girdi:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px var(--uva-card) inset;
  -webkit-text-fill-color: var(--uva-ink);
}

/* Seçim kutusu: aynı çizgi, sağda tek renkli çizgi ok. */
select.uva-alan__girdi {
  padding-right: var(--uva-space-7);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6.5l4 4 4-4' fill='none' stroke='%2322211D' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 4px center;
  background-size: 16px 16px;
}

/* Göster / Gizle: girdinin satırında, çizginin sağ ucunda göz ikonu (sahibi, 15 Eyl).
   Metin ekran okuyucuya (görsel-gizli); "açık" durumda gözün üstüne çizgi iner. */
.uva-alan__satir { position: relative; }
.uva-alan__satir .uva-alan__girdi { padding-right: var(--uva-space-8); }
.uva-alan__goster {
  position: absolute;
  right: 0;
  top: 0;
  width: 28px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--uva-ink-soft);
}
.uva-alan__goster:hover { color: var(--uva-ink); }
.uva-alan__goster:focus-visible { outline-offset: 0; }
.uva-goz { width: 18px; height: 18px; }
.uva-goz__cizgi { display: none; }
.uva-alan__goster.is-acik .uva-goz__cizgi { display: block; }
.uva-gorsel-gizli {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.uva-alan__kural {
  margin: 6px 0 0;
  font-size: var(--uva-fs-etiket);
  line-height: 1.4;
  color: var(--uva-ink-soft);
}

/* Hata: çizginin altında tam cümle, mürekkep, solunda kısa çizgi. Kırmızı YOK. */
.uva-alan__hata {
  margin: 8px 0 0;
  padding-left: 10px;
  border-left: 2px solid var(--uva-ink);
  font-size: var(--uva-fs-kucuk);
  line-height: 1.4;
  color: var(--uva-ink);
}
.uva-alan__hata:empty,
.uva-alan__hata[hidden] { display: none; }

.uva-onay {
  margin-top: 22px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: var(--uva-fs-kucuk);
  line-height: 1.5;
  color: var(--uva-ink-soft);
}
.uva-onay input {
  flex: none;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--uva-ink);
}

.uva-form__hata { margin-top: 18px; }

/* ── Birincil düğme: vurgu bütçesinin TEK noktası; sağa yaslı, içerik kadar ── */

.uva-cta {
  display: block;
  width: max-content;
  min-width: 168px;
  margin: 28px 0 0 auto;
  height: 48px;
  padding: 0 22px;
  background: var(--uva-accent);
  color: var(--uva-paper);
  border: none;
  border-radius: var(--uva-radius);
  font-family: var(--uva-font-body);
  font-weight: 600;
  font-size: var(--uva-fs-govde);
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(34, 33, 29, 0.12);
  transition: background-color 150ms ease, transform 150ms ease, box-shadow 150ms ease;
}
.uva-cta::after { content: ' \2192'; }
.uva-cta:hover {
  background: var(--uva-accent-hover);
  transform: translateY(-1px);
  box-shadow: 0 8px 18px -10px rgba(168, 40, 28, 0.7), 0 2px 4px rgba(34, 33, 29, 0.12);
}
.uva-cta:active { transform: translateY(0); box-shadow: 0 1px 1px rgba(34, 33, 29, 0.14); }
/* Pasif (gönderiliyor): nötr, kabukla aynı desen (T-3) — soluk kırmızı değil. */
.uva-cta:disabled,
.uva-cta:disabled:hover {
  background: var(--uva-edge);
  color: var(--uva-ink-soft);
  box-shadow: none;
  transform: none;
  cursor: not-allowed;
}

@media (prefers-reduced-motion: reduce) {
  .uva-cta, .uva-cta:hover, .uva-cta:active, .uva-alan__girdi { transform: none; transition: none; }
}

/* ── İkincil bağlantı ──────────────────────────────────────── */

.uva-kimlik__alt {
  margin: 24px 0 0;
  padding-top: var(--uva-space-4);
  border-top: 1px solid var(--uva-edge);
  font-size: var(--uva-fs-kucuk);
  line-height: 1.5;
  color: var(--uva-ink-soft);
}
.uva-link {
  color: var(--uva-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.uva-link:hover { color: var(--uva-ink-soft); }

/* ── Geniş: kenar sütunu + marj çizgisi + yazı alanı ───────── */

@media (min-width: 760px) {
  .uva-kimlik { padding: var(--uva-space-10) var(--uva-space-8) var(--uva-space-11); }
  .uva-kimlik__kagit {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    column-gap: 0;
    padding: 44px 48px 48px;
    min-height: 560px;
  }
  .uva-kimlik__kenar {
    padding-right: var(--uva-space-9);
    padding-bottom: 176px;   /* mührün yeri */
  }
  .uva-kimlik__govde {
    margin-top: 0;
    padding-left: var(--uva-space-10);
    border-left: 1px solid var(--uva-rule);   /* defterin marj çizgisi */
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .uva-kimlik__baslik { font-size: var(--uva-fs-h2); }
  .uva-kimlik__muhur { display: block; }
}

/* 23 Eyl: `hidden` her öğede kazanır (bkz. bugun.css — Ödeme'de gizlenen
   birincil düğme display:block ile ekranda kalıyordu). Bu sayfa kabuğu
   yüklemediği için kural burada da. */
.uva-kimlik [hidden] { display: none !important; }

/* T-7 dokunma hedefi (kabuksuz) */
/* bugun.css T-7 ile ayni kural: bu sayfa kabugu yuklemiyor. Olculdu (390px):
   denetimler 36-41px, sifre goster 28px, baglantilar 17-23px. */
@media (pointer: coarse), (max-width: 959px) {
  .uva-kimlik button,
  .uva-kimlik select,
  .uva-kimlik input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]) {
    min-height: 44px;
  }
  .uva-kimlik button { min-width: 44px; }
  .uva-kimlik label:has(> input[type="checkbox"]),
  .uva-kimlik label:has(> input[type="radio"]) { min-height: 44px; align-items: center; }
  /* Giriş ↔ kayıt geçiş bağlantısı: 390px'te 17px yüksekti (T-14 ölçeri, 23 Eyl). */
  .uva-kimlik .uva-link { display: inline-flex; align-items: center; min-height: 44px; min-width: 44px; }
}
