/* ==========================================================================
   SyncResto — V3 "AURORA" · pages.css
   Alt sayfalar: hesabim · siparislerim · kampanya · group-order · legal-page ·
   not-found. Bu sayfalar kendi base CSS'lerini yükler; burada yalnız Aurora
   token'larına bağlanırlar (v3-theme-head.ejs bu dosyayı da yükler).
   ========================================================================== */

/* ---------- sayfa kabuğu ---------- */
.v3-theme .page,
.v3-theme .page-container,
.v3-theme .container {
  background: transparent;
  color: var(--ink-0);
}

.v3-theme .page-header,
.v3-theme .page-title {
  font-family: var(--font-display);
  color: var(--ink-0);
}
.v3-theme .page-title,
.v3-theme h1.page-title {
  font-size: clamp(1.7rem, 6vw, 2.4rem);
  font-weight: 600;
  letter-spacing: 0.01em;
}
.v3-theme .page-subtitle,
.v3-theme .muted,
.v3-theme .text-muted { color: var(--ink-2); }

/* ---------- kart / panel yüzeyleri ---------- */
.v3-theme .card-panel,
.v3-theme .info-card,
.v3-theme .order-card,
.v3-theme .address-card,
.v3-theme .campaign-card,
.v3-theme .profile-card,
.v3-theme .section-card {
  background: var(--bg-1);
  border: 1px solid var(--border);
  border-radius: var(--radius-m);
  color: var(--ink-0);
  box-shadow: none;
}
.v3-theme .card-panel:hover,
.v3-theme .order-card:hover,
.v3-theme .campaign-card:hover { border-color: var(--gold); }

/* ---------- listeler / satırlar ---------- */
.v3-theme .list-row,
.v3-theme .order-item,
.v3-theme .detail-row {
  border-bottom: 1px solid var(--border);
  color: var(--ink-1);
}
.v3-theme .list-row:last-child,
.v3-theme .order-item:last-child { border-bottom: none; }

/* ---------- para alanları: TEK accent kaynağı ---------- */
.v3-theme .amount,
.v3-theme .order-total,
.v3-theme .total,
.v3-theme .points-value,
.v3-theme .campaign-discount { color: var(--gold); font-weight: 600; }

/* ---------- durum rozetleri ---------- */
.v3-theme .status-badge,
.v3-theme .order-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 100px;
  border: 1px solid var(--border);
  background: var(--glass);
  color: var(--ink-1);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.v3-theme .status-badge.delivered,
.v3-theme .order-status.delivered { color: var(--success); border-color: rgba(76, 175, 125, 0.4); }
.v3-theme .status-badge.cancelled,
.v3-theme .order-status.cancelled { color: var(--danger); border-color: rgba(226, 105, 75, 0.4); }
.v3-theme .status-badge.pending,
.v3-theme .order-status.pending { color: var(--gold); border-color: var(--gold); }

/* ---------- sekmeler ---------- */
.v3-theme .tab,
.v3-theme .tab-btn {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--ink-2);
  font-family: var(--font-body);
  font-weight: 500;
  padding: 10px 4px;
  cursor: pointer;
}
.v3-theme .tab.active,
.v3-theme .tab-btn.active { color: var(--gold); border-bottom-color: var(--gold); }

/* ---------- boş durum ---------- */
.v3-theme .empty-state {
  text-align: center;
  padding: 48px 20px;
  color: var(--ink-2);
}
.v3-theme .empty-state h2,
.v3-theme .empty-state h3 {
  font-family: var(--font-display);
  color: var(--ink-1);
  margin-bottom: 8px;
}

/* ---------- yasal / içerik sayfaları (legal-page.ejs) ---------- */
.v3-theme .legal-content,
.v3-theme .content-body {
  color: var(--ink-1);
  font-size: 0.96rem;
  line-height: 1.75;
  max-width: 760px;
  margin-inline: auto;
}
.v3-theme .legal-content h2,
.v3-theme .content-body h2 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--ink-0);
  margin: 28px 0 10px;
}
.v3-theme .legal-content a,
.v3-theme .content-body a { color: var(--gold); }

/* ---------- 404 ---------- */
.v3-theme .notfound,
.v3-theme .error-page {
  min-height: 68vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 14px;
  padding: 40px 20px;
}
.v3-theme .notfound h1,
.v3-theme .error-page h1 {
  font-family: var(--font-display);
  font-size: clamp(3rem, 14vw, 6rem);
  color: var(--gold);
  line-height: 1;
}

/* ==========================================================================
   ALT SAYFA ÜST ÇUBUĞU (hesabim/siparislerim/kampanya kendi header'ını kullanır)
   ========================================================================== */
/* 🔴 Alt sayfa üst çubuğu 129px'e çıkıyordu: temel CSS logoyu SINIRLAMIYOR,
   bayinin 92px yüksekliğindeki logosu çubuğu şişiriyordu. Her genişlikte sınır. */
.v3-theme .top-bar {
  background: var(--bg-0);
  border-bottom: 1px solid var(--border);
  color: var(--ink-0);
  padding: 10px 18px;
  min-height: 60px;
}
.v3-theme .top-bar img,
.v3-theme .top-bar .logo img,
.v3-theme .top-bar img#headerLogo {   /* id'li hero kuralını yenmek için aynı ağırlık */
  max-height: 38px;
  max-width: 190px;
  width: auto;
  height: auto;
  object-fit: contain;
}
.v3-theme .top-bar .logo,
.v3-theme .orders-header h1 {
  font-family: var(--font-display);
  font-weight: 600;
  color: var(--ink-0);
}
.v3-theme .back-link { color: var(--ink-1); }
.v3-theme .back-link:hover { color: var(--gold); }
.v3-theme .so-tab-btn {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--ink-2);
  font-family: var(--font-body);
  font-weight: 600;
}
.v3-theme .so-tab-btn.active { color: var(--gold); border-bottom-color: var(--gold); }

/* 🔴 MOBİL: alt sayfaların üst çubuğu gereksiz yer kaplıyordu (temel tema
   masaüstü ölçüleriyle geliyor). Telefonda kompakt hâle getiriliyor. */
@media (max-width: 640px) {
  .v3-theme .top-bar {
    padding: 8px 14px;
    min-height: 54px;
  }
  .v3-theme .top-bar .logo { font-size: 1.05rem; }
  .v3-theme .top-bar .logo img,
  .v3-theme .top-bar img { max-height: 28px; width: auto; }
  .v3-theme .top-bar .icon-btn,
  .v3-theme .top-bar-actions .icon-btn { width: 34px; height: 34px; }
  .v3-theme .orders-header { padding-top: 10px; padding-bottom: 6px; }
  .v3-theme .orders-header h1,
  .v3-theme .page-title,
  .v3-theme h1.page-title { font-size: 1.4rem; }
  .v3-theme .page-header { padding: 10px 0 6px; }
  .v3-theme .legal-content h2,
  .v3-theme .content-body h2 { font-size: 1.25rem; margin-top: 20px; }
}

/* ==========================================================================
   KAMPANYALAR SAYFASI
   🔴 Temel temada kampanya kartı RENKLİ GRADYAN zeminli, yazıları SABİT BEYAZ.
   v3 kartı tema zeminine çekince AÇIK MODDA beyaz-üstü-beyaz kalıyordu (görünmez).
   Yazılar da temaya bağlandı. Ayrıca ızgara üst çubuğa BİTİŞİKTİ → boşluk verildi.
   ========================================================================== */
.v3-theme .campaigns-grid {
  padding-top: 22px;
  padding-bottom: 24px;
}
.v3-theme .campaign-title,
.v3-theme .campaign-code,
.v3-theme .campaign-name { color: var(--ink-0); }
.v3-theme .campaign-value { color: var(--gold); }
.v3-theme .campaign-desc,
.v3-theme .campaign-min,
.v3-theme .campaign-sub { color: var(--ink-2); }
.v3-theme .campaign-badge {
  background: var(--glass);
  border: 1px solid var(--border);
  color: var(--gold);
}
.v3-theme .campaign-icon,
.v3-theme .campaign-icon-wrap {
  background: var(--glass);
  border: 1px solid var(--border);
  color: var(--gold);
}
.v3-theme .campaign-timer {
  background: var(--glass);
  border: 1px solid var(--border);
  color: var(--ink-2);
}
.v3-theme .campaign-code-box,
.v3-theme .coupon-code-box,
.v3-theme .campaign-happy-hours {
  background: var(--bg-2);
  border: 1px solid var(--border);
  color: var(--ink-0);
}

/* ==========================================================================
   MAĞAZA KAPALI KATMANI — zemini HER İKİ MODDA da koyu (scrim) →
   yazıları --on-dark* ile sabitlenir, açık modda koyu ink kullanılmaz.
   ========================================================================== */
.v3-theme .store-closed-content,
.v3-theme #closedBrandName { color: var(--on-dark); }
.v3-theme .closed-status,
.v3-theme .closed-hours,
.v3-theme #closedWorkingHours,
.v3-theme .closed-message,
.v3-theme .closed-hours-icon { color: var(--on-dark-soft); }

/* ---------- grup siparişi ---------- */
.v3-theme .group-member,
.v3-theme .group-order-item {
  border: 1px solid var(--border);
  border-radius: var(--radius-s);
  background: var(--bg-1);
}
.v3-theme .group-order-banner-wrap:empty { display: none; }
