/* AHOB bayilik başvuru — ahob-bayi-basvuru.html tasarımına uyumlu (public sayfa, .da-ahob kapsayıcı) */
.da-ahob {
  --da-ink: #111110;
  --da-ink-mid: #444441;
  --da-ink-soft: #888780;
  --da-paper: #f7f6f2;
  --da-surface: #ffffff;
  --da-line: rgba(17, 17, 16, 0.1);
  --da-line-med: rgba(17, 17, 16, 0.18);
  --da-accent: #1d9e75;
  --da-accent-lt: #e1f5ee;
  --da-accent-dk: #085041;
  --da-gold: #ba7517;
  --da-gold-lt: #faeeda;
  --da-gold-dk: #412402;
  --da-blue-lt: #e6f1fb;
  --da-blue-bd: #85b7eb;
  --da-blue-dk: #042c53;
  --da-red: #e24b4a;
  --da-radius: 8px;
  --da-radius-lg: 13px;
  font-family: "Instrument Sans", system-ui, sans-serif;
  background: var(--da-paper);
  color: var(--da-ink);
  margin: 0 -15px;
  padding: 40px 16px 72px;
}

.da-ahob .da-wrap { max-width: 660px; margin: 0 auto; }

.da-ahob .da-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

.da-ahob .da-hd { margin-bottom: 36px; }
.da-ahob .da-logo-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 14px;
  margin-bottom: 28px;
}
.da-ahob .da-logo-brand-img {
  display: block;
  height: 34px;
  width: auto;
  max-width: min(220px, 52vw);
  object-fit: contain;
}
/* Ürün / lisans sayfalarıyla aynı: ~/Content/images/ahob-logo.png */
.da-ahob .da-logo-ahob-img {
  display: block;
  height: 34px;
  width: auto;
  max-width: min(200px, 48vw);
  object-fit: contain;
  object-position: left center;
}

.da-ahob .da-badge {
  display: inline-block; background: var(--da-gold-lt); color: var(--da-gold);
  font-family: Syne, sans-serif; font-size: 11px; font-weight: 500; letter-spacing: 0.6px;
  text-transform: uppercase; padding: 4px 10px; border-radius: 20px;
  border: 0.5px solid #ef9f27; margin-bottom: 14px;
}
.da-ahob .da-hd h1 {
  font-family: Syne, sans-serif; font-size: 30px; font-weight: 600; line-height: 1.15;
  color: var(--da-ink); letter-spacing: -0.8px; margin-bottom: 12px;
}
.da-ahob .da-hd p { font-size: 15px; color: var(--da-ink-soft); line-height: 1.6; margin: 0; }

.da-ahob .da-prog-track { height: 2px; background: var(--da-line); border-radius: 2px; margin-bottom: 22px; overflow: hidden; }
.da-ahob .da-prog-fill { height: 100%; background: var(--da-ink); border-radius: 2px; transition: width 0.35s ease; }

.da-ahob .da-tabs {
  display: flex; border: 0.5px solid var(--da-line-med); border-radius: var(--da-radius-lg);
  overflow: hidden; margin-bottom: 28px; background: var(--da-surface);
}
.da-ahob .da-tab {
  flex: 1; padding: 10px 4px; text-align: center; font-size: 11px;
  color: var(--da-ink-soft); border-right: 0.5px solid var(--da-line); cursor: pointer;
  font-family: "Instrument Sans", sans-serif; transition: background 0.15s;
}
.da-ahob .da-tab:last-child { border-right: none; }
.da-ahob .da-tab .da-tn { display: block; font-size: 9px; opacity: 0.55; margin-bottom: 3px; }
.da-ahob .da-tab.da-active { background: var(--da-paper); color: var(--da-ink); font-weight: 500; }
.da-ahob .da-tab.da-done { background: var(--da-accent-lt); color: var(--da-accent-dk); }

/* Eksik / hatalı adım sekmesi */
.da-ahob .da-tab.da-tab-error {
  background: #fef2f2;
  color: #991b1b;
}
.da-ahob .da-tab.da-tab-error .da-tn { color: #b91c1c; opacity: 0.9; }
.da-ahob .da-tab.da-tab-error.da-active { background: #fee2e2; font-weight: 600; }
.da-ahob .da-tab.da-tab-error.da-done { background: #fecaca; color: #7f1d1d; }

.da-ahob .da-card {
  background: var(--da-surface); border: 0.5px solid var(--da-line-med);
  border-radius: var(--da-radius-lg); padding: 28px 26px 22px;
}
@media (max-width: 480px) { .da-ahob .da-card { padding: 20px 14px 18px; } }

.da-ahob .da-sec { display: none; }
.da-ahob .da-sec.da-active { display: block; }
.da-ahob .da-slabel {
  font-family: Syne, sans-serif; font-size: 11px; font-weight: 500; letter-spacing: 0.9px;
  text-transform: uppercase; color: var(--da-ink-soft); margin-bottom: 18px;
}
.da-ahob hr.da-dv { border: none; border-top: 0.5px solid var(--da-line); margin: 20px 0; }

.da-ahob .da-fg { margin-bottom: 16px; }
.da-ahob .da-fg label { display: block; font-size: 13px; font-weight: 500; color: var(--da-ink); margin-bottom: 7px; }
.da-ahob .da-fg label .da-opt { font-weight: 300; font-size: 12px; color: var(--da-ink-soft); margin-left: 4px; }
.da-ahob .da-req { color: var(--da-red); }

.da-ahob input[type="text"], .da-ahob input[type="email"], .da-ahob input[type="tel"], .da-ahob input[type="url"],
.da-ahob select, .da-ahob textarea {
  width: 100%; font-family: "Instrument Sans", sans-serif; font-size: 14px;
  color: var(--da-ink); background: var(--da-paper); border: 0.5px solid var(--da-line-med);
  border-radius: var(--da-radius); padding: 10px 13px; outline: none;
  transition: border-color 0.15s, box-shadow 0.15s; appearance: none;
}
.da-ahob input:focus, .da-ahob select:focus, .da-ahob textarea:focus {
  border-color: var(--da-ink-mid); box-shadow: 0 0 0 3px rgba(17, 17, 16, 0.07); background: #fff;
}
.da-ahob select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888780' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center; padding-right: 32px; cursor: pointer;
}
.da-ahob textarea { resize: vertical; min-height: 88px; line-height: 1.5; }
.da-ahob .field-validation-error { font-size: 12px; color: var(--da-red); }
/* Sunucu hata özeti — yalnızca gerçekten hata varken DOM’da (Razor) veya MVC geçerli sınıfı ile */
.da-ahob .validation-summary-errors.validation-summary-valid {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  min-height: 0 !important;
  background: transparent !important;
}
.da-ahob .validation-summary-errors:not(.validation-summary-valid) {
  font-size: 13px;
  color: #501313;
  background: #fcebeb;
  border: 0.5px solid #f09595;
  border-radius: var(--da-radius);
  padding: 10px 14px;
  margin-bottom: 14px;
}

.da-ahob .da-r2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 520px) { .da-ahob .da-r2 { grid-template-columns: 1fr; } }

.da-ahob .da-hint { font-size: 12px; color: var(--da-ink-soft); margin-top: 5px; line-height: 1.4; }

.da-ahob .da-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 7px; }
.da-ahob .da-chip {
  padding: 7px 12px; font-size: 12px; font-family: "Instrument Sans", sans-serif;
  color: var(--da-ink-soft); background: var(--da-paper); border: 0.5px solid var(--da-line-med);
  border-radius: 20px; cursor: pointer; transition: all 0.15s; user-select: none;
}
.da-ahob .da-chip:hover { border-color: var(--da-ink-mid); color: var(--da-ink); }
.da-ahob .da-chip.da-sel { background: var(--da-ink); border-color: var(--da-ink); color: #fff; font-weight: 500; }

.da-ahob .da-note-blue {
  background: var(--da-blue-lt); border: 0.5px solid var(--da-blue-bd); border-radius: var(--da-radius);
  padding: 12px 14px; font-size: 13px; color: var(--da-blue-dk); line-height: 1.55; margin-bottom: 18px;
}
.da-ahob .da-note-gold {
  background: var(--da-gold-lt); border: 0.5px solid #ef9f27; border-radius: var(--da-radius);
  padding: 12px 14px; font-size: 13px; color: var(--da-gold-dk); line-height: 1.55; margin-bottom: 18px;
}

.da-ahob .da-fin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 8px; }
@media (max-width: 480px) { .da-ahob .da-fin-grid { grid-template-columns: 1fr; } }
.da-ahob .da-fin-card {
  border: 0.5px solid var(--da-line-med); border-radius: var(--da-radius);
  padding: 12px 14px; cursor: pointer; transition: all 0.15s; background: var(--da-paper);
}
.da-ahob .da-fin-card:hover { border-color: var(--da-ink-mid); }
.da-ahob .da-fin-card.da-sel { border-color: var(--da-ink); background: var(--da-ink); }
.da-ahob .da-fin-card .da-fc-label { font-size: 13px; font-weight: 500; color: var(--da-ink); margin-bottom: 3px; }
.da-ahob .da-fin-card.da-sel .da-fc-label { color: #fff; }
.da-ahob .da-fin-card .da-fc-desc { font-size: 12px; color: var(--da-ink-soft); }
.da-ahob .da-fin-card.da-sel .da-fc-desc { color: rgba(255, 255, 255, 0.65); }

.da-ahob .da-navs {
  display: flex; gap: 10px; justify-content: flex-end;
  margin-top: 22px; padding-top: 18px; border-top: 0.5px solid var(--da-line);
}
.da-ahob .da-btn-back {
  background: transparent; border: 0.5px solid var(--da-line-med); color: var(--da-ink-soft);
  padding: 10px 18px; border-radius: var(--da-radius); font-family: "Instrument Sans", sans-serif;
  font-size: 14px; cursor: pointer; transition: background 0.15s;
}
.da-ahob .da-btn-back:hover { background: var(--da-paper); }
.da-ahob .da-btn-next {
  background: var(--da-ink); border: none; color: #fff; padding: 10px 22px;
  border-radius: var(--da-radius); font-family: "Instrument Sans", sans-serif;
  font-size: 14px; font-weight: 500; cursor: pointer; transition: opacity 0.15s;
}
.da-ahob .da-btn-next:hover { opacity: 0.82; }
.da-ahob .da-btn-submit {
  background: var(--da-accent); border: none; color: #fff; padding: 10px 24px;
  border-radius: var(--da-radius); font-family: "Instrument Sans", sans-serif;
  font-size: 14px; font-weight: 500; cursor: pointer; transition: opacity 0.15s;
}
.da-ahob .da-btn-submit:hover { opacity: 0.88; }
.da-ahob .da-btn-submit:disabled { opacity: 0.45; cursor: not-allowed; }

.da-ahob .da-ft { text-align: center; margin-top: 26px; font-size: 12px; color: var(--da-ink-soft); }
.da-ahob .da-ft a { color: var(--da-accent); text-decoration: none; }

.da-ahob .da-verify-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: stretch; }
.da-ahob .da-verify-row input[type="email"] { flex: 1 1 200px; }
.da-ahob .da-send-code {
  border: 0.5px solid var(--da-line-med); background: var(--da-surface); color: var(--da-ink);
  padding: 10px 14px; border-radius: var(--da-radius); font-size: 13px; cursor: pointer; white-space: nowrap;
}
.da-ahob .da-send-code:hover { background: var(--da-paper); }

/* Toast (form uyarıları — layout dışı, body’ye eklenir) */
#daToastStack {
  position: fixed;
  bottom: 22px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10050;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: stretch;
  width: min(420px, calc(100vw - 28px));
  pointer-events: none;
}
.da-toast-item {
  pointer-events: auto;
  background: #0f172a;
  color: #f8fafc;
  padding: 12px 16px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.45;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.35);
  border: 0.5px solid rgba(248, 250, 252, 0.12);
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.28s ease, transform 0.28s ease;
}
.da-toast-item.da-toast-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 576px) {
  #daToastStack {
    bottom: max(14px, calc(env(safe-area-inset-bottom, 0px) + 10px));
    width: min(420px, calc(100vw - 20px));
  }
}

/* ------------------------------------------------------------------ */
/* Responsive: telefon / tablet — dokunma, okunurluk, taşma önleme   */
/* ------------------------------------------------------------------ */

.da-ahob *,
.da-ahob *::before,
.da-ahob *::after {
  box-sizing: border-box;
}

@media (max-width: 900px) {
  .da-ahob .da-wrap {
    max-width: 100%;
    padding: 0 4px;
  }
}

@media (max-width: 576px) {
  .da-ahob {
    margin: 0;
    padding: 20px 12px max(96px, calc(80px + env(safe-area-inset-bottom, 0px)));
    max-width: 100%;
    overflow-x: clip;
  }

  .da-ahob .da-hd { margin-bottom: 24px; }

  .da-ahob .da-logo-row {
    gap: 10px 12px;
    margin-bottom: 22px;
  }
  .da-ahob .da-logo-brand-img {
    height: 30px;
    max-width: min(200px, 58vw);
  }
  .da-ahob .da-logo-ahob-img {
    height: 30px;
    max-width: min(180px, 62vw);
  }

  .da-ahob .da-hd h1 {
    font-size: clamp(1.35rem, 5.5vw, 1.75rem);
    letter-spacing: -0.4px;
  }
  .da-ahob .da-hd p { font-size: 15px; }

  .da-ahob .da-card {
    padding: 18px 14px 16px;
    border-radius: 12px;
  }

  .da-ahob .da-slabel {
    font-size: 12px;
    margin-bottom: 14px;
  }

  .da-ahob .da-fg label {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* iOS: 16px altında input odakta sayfa zoom’lar */
  .da-ahob input[type="text"],
  .da-ahob input[type="email"],
  .da-ahob input[type="tel"],
  .da-ahob input[type="url"],
  .da-ahob select,
  .da-ahob textarea {
    font-size: 16px;
    line-height: 1.35;
    min-height: 48px;
    padding: 12px 14px;
  }

  .da-ahob select {
    background-position: right 14px center;
    padding-right: 40px;
  }

  .da-ahob textarea {
    min-height: 120px;
  }

  .da-ahob .da-note-blue,
  .da-ahob .da-note-gold {
    font-size: 14px;
    padding: 14px;
  }

  /* Sekmeler: yatay kaydır, daralmayı önle */
  .da-ahob .da-tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 0;
    border-radius: 12px;
    margin-bottom: 20px;
    scrollbar-width: thin;
  }

  .da-ahob .da-tab {
    flex: 0 0 auto;
    min-width: 78px;
    max-width: 28vw;
    min-height: 52px;
    padding: 8px 10px;
    font-size: 11px;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    scroll-snap-align: start;
    touch-action: manipulation;
  }

  .da-ahob .da-tab .da-tn {
    font-size: 10px;
    margin-bottom: 4px;
  }

  .da-ahob .da-chips {
    gap: 10px;
  }

  .da-ahob .da-chip {
    min-height: 44px;
    padding: 10px 14px;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    touch-action: manipulation;
  }

  .da-ahob .da-fin-card {
    min-height: 72px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    touch-action: manipulation;
  }

  .da-ahob .da-fin-card .da-fc-label { font-size: 14px; }
  .da-ahob .da-fin-card .da-fc-desc { font-size: 13px; }

  .da-ahob .da-navs {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 12px;
    margin-top: 20px;
    padding-top: 16px;
  }

  .da-ahob .da-btn-back,
  .da-ahob .da-btn-next,
  .da-ahob .da-btn-submit {
    width: 100%;
    min-height: 48px;
    font-size: 16px;
    padding: 12px 18px;
    touch-action: manipulation;
  }

  .da-ahob .da-verify-row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .da-ahob .da-verify-row input {
    width: 100% !important;
    flex: none !important;
  }

  .da-ahob .da-send-code {
    width: 100%;
    min-height: 48px;
    font-size: 15px;
    padding: 12px 16px;
  }

  .da-ahob .da-ft {
    font-size: 13px;
    padding: 0 4px;
    line-height: 1.5;
  }
}

/* Tablet: iki sütun biraz daha erken tek sütun */
@media (max-width: 700px) {
  .da-ahob .da-r2 { grid-template-columns: 1fr; }
}

/* Geniş tablet / küçük laptop */
@media (min-width: 577px) and (max-width: 1024px) {
  .da-ahob {
    padding: 32px 20px 80px;
    margin: 0 -8px;
  }

  .da-ahob .da-wrap { max-width: min(660px, 100%); }

  .da-ahob input[type="text"],
  .da-ahob input[type="email"],
  .da-ahob input[type="tel"],
  .da-ahob input[type="url"],
  .da-ahob select,
  .da-ahob textarea {
    font-size: 16px;
    min-height: 46px;
    padding: 11px 14px;
  }

  .da-ahob .da-tab {
    min-height: 46px;
    padding: 9px 8px;
    font-size: 12px;
  }

  .da-ahob .da-chip {
    min-height: 42px;
    padding: 9px 14px;
    font-size: 13px;
  }

  .da-ahob .da-btn-next,
  .da-ahob .da-btn-back,
  .da-ahob .da-btn-submit {
    min-height: 46px;
    padding: 11px 20px;
  }
}

/* Dokunmatik cihaz: hedef alanı biraz büyüt */
@media (pointer: coarse) {
  .da-ahob .da-chip {
    min-height: 46px;
    padding: 11px 16px;
  }
  .da-ahob .da-fin-card {
    min-height: 76px;
  }
  .da-ahob .da-tab {
    min-height: 54px;
  }
}
