/* Knight Portal giriş kapısı — uygulamanın koyu tema / altın vurgu paleti */
:root {
  --bg: #0f1115;
  --panel: #171a21;
  --panel-2: #1e222b;
  --line: #2a2f3a;
  --text: #e6e8ee;
  --muted: #8b93a5;
  --accent: #d4a84b;
  --accent-ink: #1a1405;
  --danger: #e05656;
  --focus: #5b8def;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
body {
  background:
    radial-gradient(900px 500px at 50% -10%, rgba(212, 168, 75, .16), transparent 70%),
    radial-gradient(600px 400px at 100% 100%, rgba(91, 141, 239, .07), transparent 70%),
    var(--bg);
  background-attachment: fixed;
  color: var(--text);
  font: 15px/1.45 "Segoe UI", system-ui, -apple-system, sans-serif;
}
.sahne {
  min-height: 100vh; min-height: 100dvh; display: grid; place-items: center;
  padding: max(24px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom)); /* iPhone ana ekran uygulaması */
}
.kart {
  width: min(380px, 100%);
  background: linear-gradient(180deg, var(--panel-2), var(--panel));
  border: 1px solid var(--line);
  border-top: 2px solid var(--accent);
  border-radius: 14px;
  padding: 32px 28px 22px;
  display: flex; flex-direction: column; gap: 14px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .55), 0 0 0 1px rgba(212, 168, 75, .05);
  animation: gir .35s ease-out;
}
@keyframes gir { from { opacity: 0; transform: translateY(8px); } }
@media (prefers-reduced-motion: reduce) { .kart { animation: none; } }
.logo { width: 64px; height: 64px; margin: 0 auto 2px; filter: drop-shadow(0 6px 18px rgba(212, 168, 75, .35)); }
h1 { margin: 0; text-align: center; font-size: 24px; letter-spacing: .4px; color: var(--accent); }
.alt { margin: -8px 0 6px; text-align: center; color: var(--muted); font-size: 13px; }
label { display: flex; flex-direction: column; gap: 6px; color: var(--muted); font-size: 13px; }
input:not([type="checkbox"]) {
  background: var(--bg); color: var(--text);
  border: 1px solid var(--line); border-radius: 8px;
  padding: 11px 12px; font: inherit; font-size: 16px; /* 16px: iOS odaklanınca yakınlaştırmasın */
  transition: border-color .15s, box-shadow .15s;
}
input:not([type="checkbox"]):hover { border-color: #3a4150; }
input:not([type="checkbox"]):focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(212, 168, 75, .18); }
.hatirla { flex-direction: row; align-items: center; gap: 8px; cursor: pointer; user-select: none; }
.hatirla input { width: 16px; height: 16px; accent-color: var(--accent); margin: 0; }
.hata { margin: 0; min-height: 1.3em; color: var(--danger); font-size: 13px; text-align: center; }
.hata:empty { min-height: 0; margin-top: -14px; }
button {
  background: var(--accent); color: var(--accent-ink);
  border: 0; border-radius: 8px; padding: 12px;
  font: inherit; font-weight: 700; font-size: 15px; letter-spacing: .3px; cursor: pointer;
  transition: filter .15s, transform .05s;
}
button:hover { filter: brightness(1.08); }
button:active { transform: translateY(1px); }
button:disabled { opacity: .5; cursor: not-allowed; }
:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.dip { margin: 4px 0 0; padding-top: 14px; border-top: 1px solid var(--line); text-align: center; color: var(--muted); font-size: 12px; }
