/* ============================================================
   Giriş / kayıt / şifre sayfaları — ortak kabuk (includes/auth-shell.php)
   ============================================================ */
.ax {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: 56px;
  align-items: center;
  min-height: calc(100vh - 78px);
  padding: 48px 0 64px;
}

/* ── Sol: tanıtım ── */
.ax-kicker {
  display: inline-flex; align-items: center; gap: 9px; height: 30px; padding: 0 13px; border-radius: 999px;
  font-size: 12px; font-weight: 700; color: var(--amber-bright);
  background: var(--amber-ghost); border: 1px solid rgba(240, 168, 104, 0.28);
}
.ax-kicker i { width: 7px; height: 7px; border-radius: 50%; background: var(--sage); box-shadow: 0 0 0 3px rgba(134, 179, 154, 0.2); }
.ax-h {
  margin: 18px 0 26px; font-family: var(--f-display); font-weight: 600;
  font-size: clamp(36px, 4vw, 54px); line-height: 1.04; letter-spacing: -1.3px; color: var(--cream-bright);
}
.ax-h em { font-style: italic; font-weight: 500; color: var(--amber); }
.ax-shot {
  position: relative; border-radius: 18px; overflow: hidden; background: #120E16;
  transform: perspective(1500px) rotateY(9deg) rotateX(3deg); transform-origin: right center;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 36px 90px rgba(0, 0, 0, 0.5), 0 0 110px rgba(240, 168, 104, 0.14);
  transition: transform 0.8s cubic-bezier(.2, .8, .2, 1);
}
.ax-side:hover .ax-shot { transform: perspective(1500px) rotateY(3deg) rotateX(1deg); }
.ax-bar { display: flex; gap: 6px; height: 26px; align-items: center; padding: 0 11px; background: #1B1520; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
.ax-bar i { width: 9px; height: 9px; border-radius: 50%; }
.ax-bar i:nth-child(1) { background: #E0736F; } .ax-bar i:nth-child(2) { background: #E8B65A; } .ax-bar i:nth-child(3) { background: #7FBF7F; }
.ax-shot img { display: block; width: 100%; height: auto; }
.ax-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.ax-point { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: 18px; background: var(--panel); border: 1px solid var(--line-soft); backdrop-filter: var(--blur); }
.ax-point-ico { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 12px; color: var(--amber-bright); background: var(--amber-ghost); }
.ax-point b { display: block; font-size: 13.5px; color: var(--cream-bright); line-height: 1.35; }
.ax-point span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.55; color: var(--dim); }

/* ── Sağ: form ── */
.ax-main { display: flex; flex-direction: column; align-items: center; }
.ax-card {
  width: 100%; max-width: 440px; padding: 36px 34px 30px; border-radius: 30px;
  background: rgba(30, 24, 35, 0.86); border: 1px solid var(--line);
  backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px);
  box-shadow: 0 40px 90px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  animation: ax-in 0.6s cubic-bezier(.2, .8, .2, 1) both;
}
@keyframes ax-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.ax-title { font-family: var(--f-display); font-weight: 600; font-size: 30px; letter-spacing: -0.6px; color: var(--cream-bright); }
.ax-sub { margin: 8px 0 24px; font-size: 14px; line-height: 1.6; color: var(--muted); }
.ax-sub a, .ax-foot a, .ax-legal a { color: var(--amber-bright); text-decoration: none; font-weight: 600; }
.ax-sub a:hover, .ax-foot a:hover, .ax-legal a:hover { text-decoration: underline; }

.ax-flash { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 18px; padding: 12px 14px; border-radius: 14px; font-size: 13.5px; line-height: 1.5; }
.ax-flash span { flex-shrink: 0; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; font-size: 11px; font-weight: 800; }
.ax-flash.ok { color: var(--sage-bright); background: var(--sage-ghost); border: 1px solid rgba(134, 179, 154, 0.3); }
.ax-flash.ok span { background: var(--sage); color: #12201A; }
.ax-flash.err { color: #FFC9C9; background: var(--rose-ghost); border: 1px solid rgba(217, 138, 138, 0.3); }
.ax-flash.err span { background: var(--rose); color: #2A1414; }

/* Form öğeleri (sayfaların kendi işaretlemesi) */
.ax-card .form-group { margin-bottom: 16px; }
.ax-card .lbl { display: block; margin-bottom: 7px; font-size: 12.5px; font-weight: 700; color: var(--cream); letter-spacing: 0.2px; }
.ax-card .inp {
  width: 100%; height: 50px; padding: 0 16px; border-radius: 14px; border: 1px solid var(--line);
  background: rgba(14, 11, 18, 0.5); color: var(--cream-bright); font: inherit; font-size: 15px;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.ax-card .inp::placeholder { color: var(--faint); }
.ax-card .inp:focus { outline: 0; border-color: rgba(240, 168, 104, 0.55); background: rgba(14, 11, 18, 0.65); box-shadow: 0 0 0 4px rgba(240, 168, 104, 0.12); }
.ax-card .btn-gold {
  width: 100%; height: 52px; justify-content: center; border-radius: 999px; font-size: 15px;
  background: linear-gradient(135deg, var(--amber-bright), var(--amber) 55%, var(--amber-deep));
  box-shadow: 0 16px 36px rgba(240, 168, 104, 0.32);
}
.ax-card .btn-gold:hover { box-shadow: 0 20px 44px rgba(240, 168, 104, 0.45); }
.ax-card .btn-gold.ax-busy, .ax-card .btn-gold:disabled { opacity: 0.7; cursor: progress; }
.ax-card .hint, .ax-card small { color: var(--dim); }

.ax-pw { position: relative; }
.ax-pw .inp { padding-right: 50px; }
.ax-eye {
  position: absolute; right: 7px; top: 50%; transform: translateY(-50%); width: 36px; height: 36px;
  display: grid; place-items: center; border: 0; border-radius: 10px; background: transparent; color: var(--dim); cursor: pointer;
}
.ax-eye:hover { color: var(--cream); background: var(--hover); }
.ax-caps { margin-top: 6px; font-size: 12px; font-weight: 600; color: var(--gold); }
.ax-meter { display: flex; align-items: center; gap: 10px; margin-top: 8px; }
.ax-meter-bar { flex: 1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; }
.ax-meter-bar i { height: 4px; border-radius: 4px; background: rgba(244, 235, 224, 0.1); transition: background 0.25s; }
.ax-meter span { min-width: 66px; text-align: right; font-size: 11.5px; font-weight: 700; color: var(--dim); }
.ax-meter[data-s="1"] i:nth-child(-n+1) { background: var(--rose); }
.ax-meter[data-s="2"] i:nth-child(-n+2) { background: var(--gold); }
.ax-meter[data-s="3"] i:nth-child(-n+3) { background: var(--sage); }
.ax-meter[data-s="4"] i { background: var(--sage-bright); }
.ax-meter[data-s="1"] span { color: var(--rose-bright); }
.ax-meter[data-s="2"] span { color: var(--gold); }
.ax-meter[data-s="3"] span, .ax-meter[data-s="4"] span { color: var(--sage-bright); }

.ax-foot { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line-soft); font-size: 13.5px; color: var(--dim); text-align: center; }
.ax-legal { max-width: 400px; margin: 18px 0 0; text-align: center; font-size: 12px; line-height: 1.6; color: var(--faint); }

@media (max-width: 980px) {
  .ax { grid-template-columns: 1fr; gap: 0; min-height: 0; padding: 36px 0 56px; }
  .ax-side { display: none; }
}
@media (max-width: 480px) {
  .ax-card { padding: 28px 22px 24px; border-radius: 24px; }
  .ax-title { font-size: 26px; }
}

/* Sayfaların eski işaretlemesiyle uyum */
.ax-card .form-row { display: block; }
.ax-card .field-hint { margin-top: 6px; font-size: 12px; color: var(--dim); }
.ax-card .flash { display: flex; gap: 10px; padding: 12px 14px; border-radius: 14px; font-size: 13.5px; line-height: 1.5; }
.ax-card .flash-err { color: #FFC9C9; background: var(--rose-ghost); border: 1px solid rgba(217, 138, 138, 0.3); }
.ax-card .flash-ok { color: var(--sage-bright); background: var(--sage-ghost); border: 1px solid rgba(134, 179, 154, 0.3); }
