/*!
 * Turla360 — Reservation Form sayfası
 * Önceden views/front/reservation_form.php içindeki <style> bloğundaydı.
 */

/* ── Rezervasyon Sayfası – Açık Tema ── */
.rez-page{display:grid;grid-template-columns:1fr 400px;gap:24px;max-width:1180px;margin:0 auto;padding:28px 24px}

/* Sol: Ürün bilgisi */
.rez-hero{border-radius:20px;overflow:hidden;height:300px;position:relative;background:#e8e5df;margin-bottom:20px}
.rez-hero img{width:100%;height:100%;object-fit:cover}
.rez-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,22,40,.8) 0%,transparent 55%)}
.rez-hero-content{position:absolute;bottom:0;left:0;right:0;padding:24px}
.rez-hero-type{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:100px;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);font-size:12px;color:#fff;margin-bottom:8px}
.rez-hero-title{font-family:'Inter',sans-serif;font-size:28px;font-weight:800;color:#fff;margin-bottom:4px;letter-spacing:-.03em;line-height:1.15}
.rez-hero-co{font-size:14px;color:rgba(255,255,255,.72)}

/* Mini galeri */
.rez-mini-gal{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none}
.rez-mini-gal::-webkit-scrollbar{display:none}
.rez-mini-gal img{width:80px;height:60px;object-fit:cover;border-radius:10px;flex-shrink:0;cursor:pointer;transition:.2s;border:2px solid transparent}
.rez-mini-gal img:hover{border-color:#0a1628}

/* Meta bilgiler */
.rez-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}
.rez-meta-item{background:#fff;border:1px solid #e8e5df;border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:10px}
.rez-meta-ico{font-size:18px;flex-shrink:0}
.rez-meta-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:3px}
.rez-meta-val{font-size:14px;font-weight:600;color:#0a1628}

/* Açıklama */
.rez-desc-box{background:#fff;border:1px solid #e8e5df;border-radius:16px;padding:18px 20px;margin-bottom:18px}
.rez-desc-title{font-family:'Inter',sans-serif;font-size:15px;font-weight:700;color:#0a1628;margin-bottom:10px}
.rez-desc-txt{font-size:14px;color:#4b5563;line-height:1.75}

/* Dahil / Hariç */
.rez-inc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.rez-inc-box{border-radius:14px;padding:16px 18px}
.rez-inc-in{background:#ecfdf5;border:1px solid #d1fae5}
.rez-inc-ex{background:#fff1f2;border:1px solid #fce7f3}
.rez-inc-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}
.rez-inc-in .rez-inc-title{color:#059669}
.rez-inc-ex .rez-inc-title{color:#e11d48}
.rez-inc-list{list-style:none;display:flex;flex-direction:column;gap:6px}
.rez-inc-list li{font-size:13px;color:#374151;display:flex;align-items:flex-start;gap:7px;line-height:1.45}
.rez-inc-in .rez-inc-list li::before{content:'✓';color:#059669;font-weight:700;flex-shrink:0}
.rez-inc-ex .rez-inc-list li::before{content:'✗';color:#e11d48;font-weight:700;flex-shrink:0}

/* Seans seçici */
.rez-sessions{background:#fff;border:1px solid #e8e5df;border-radius:16px;overflow:hidden;margin-bottom:18px}
.rez-sess-hdr{padding:14px 18px;border-bottom:1px solid #f3f4f6;font-family:'Inter',sans-serif;font-weight:700;font-size:15px;color:#0a1628;display:flex;align-items:center;justify-content:space-between}
.rez-sess-cnt{font-size:12px;font-weight:400;color:#9ca3af}
.rez-sess-month{padding:8px 16px 4px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#9ca3af;background:#fafaf9}
.rez-sess-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:.18s;position:relative}
.rez-sess-item:last-child{border-bottom:none}
.rez-sess-item:hover{background:#f9fafb}
.rez-sess-item.sel{background:#eff6ff}
.rez-sess-item.sel::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:3px;background:#1d4ed8;border-radius:0 3px 3px 0}
.rez-sess-item input{display:none}
.rez-sess-badge{width:46px;text-align:center;flex-shrink:0;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:9px;padding:5px 4px}
.rez-sess-item.sel .rez-sess-badge{background:#dbeafe;border-color:#bfdbfe}
.rez-sess-day{font-family:'Inter',sans-serif;font-size:20px;font-weight:800;line-height:1;color:#0a1628}
.rez-sess-item.sel .rez-sess-day{color:#1d4ed8}
.rez-sess-mon{font-size:10px;text-transform:uppercase;color:#9ca3af;margin-top:2px}
.rez-sess-info{flex:1;min-width:0}
.rez-sess-time{font-size:14px;font-weight:600;color:#0a1628}
.rez-sess-avail{font-size:12px;margin-top:2px}
.rez-cap-bar{width:56px;flex-shrink:0}
.rez-cap-track{height:4px;background:#f3f4f6;border-radius:100px;overflow:hidden}
.rez-cap-fill{height:100%;border-radius:100px;background:#059669;transition:width .3s}
.rez-cap-fill.warn{background:#d97706}
.rez-cap-fill.full{background:#e11d48}
.rez-cap-txt{font-size:10px;color:#9ca3af;text-align:right;margin-top:3px}
.rez-sess-price{font-family:'Inter',sans-serif;font-weight:800;font-size:15px;color:#0c0f14;white-space:nowrap}

/* Buluşma */
.rez-meeting{background:#fff;border:1px solid #e8e5df;border-radius:12px;padding:14px 16px;display:flex;gap:10px;align-items:flex-start}
.rez-meeting-ico{font-size:18px;flex-shrink:0}
.rez-meeting-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:4px}
.rez-meeting-val{font-size:13px;color:#374151}

/* ── SAĞ: Rezervasyon Paneli ── */
.rez-panel{position:sticky;top:90px;height:fit-content;background:#fff;border:1px solid #e8e5df;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px rgba(10,22,40,.08)}
.rez-panel-top{padding:16px 20px;border-bottom:1px solid #f3f4f6;background:linear-gradient(135deg,#f0f4ff,#fff)}
.rez-panel-price-lbl{font-size:11px;color:#9ca3af;margin-bottom:3px}
.rez-panel-price{font-family:'Inter',sans-serif;font-size:30px;font-weight:800;color:#0c0f14;line-height:1}
.rez-panel-price-sub{font-size:12px;color:#9ca3af;margin-top:3px}
.rez-panel-body{padding:18px 20px}

/* Seçili seans banner */
.rez-sel-sess{background:#ecfdf5;border:1px solid #d1fae5;border-radius:10px;padding:10px 13px;margin-bottom:14px}
.rez-sel-sess-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#059669;margin-bottom:3px}
.rez-sel-sess-val{font-size:14px;font-weight:600;color:#0a1628}
.rez-no-sess{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 13px;margin-bottom:14px;font-size:13px;color:#92400e;font-weight:500}

/* Kişi sayısı */
.rez-count-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.rez-count-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#374151;margin-bottom:6px}
.rez-count-ctrl{display:flex;align-items:center;gap:6px}
.rez-count-btn{width:32px;height:32px;border-radius:8px;background:#f3f4f6;border:1px solid #e5e7eb;color:#374151;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:.15s;flex-shrink:0}
.rez-count-btn:hover{background:#e5e7eb;color:#0a1628}
.rez-count-inp{border:1.5px solid #e5e0d8;border-radius:8px;font-family:'Inter',sans-serif;font-size:17px;font-weight:800;color:#0a1628;background:#fff;outline:none;text-align:center;width:100%;padding:6px}
.rez-count-inp:focus{border-color:#0a1628}

/* Fiyat özeti */
.rez-price-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;margin-bottom:14px}
.rez-price-row{display:flex;justify-content:space-between;font-size:13px;padding:4px 0;border-bottom:1px solid #f3f4f6}
.rez-price-row:last-child{border-bottom:none;padding-top:10px;margin-top:4px}
.rez-price-row .rl{color:#6b7280}
.rez-price-row .rv{font-weight:600;color:#0a1628}
.rez-price-total{font-family:'Inter',sans-serif;font-size:20px;font-weight:800;color:#0c0f14}

/* Form alanları */
.rez-fld{margin-bottom:12px}
.rez-fld-lbl{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#374151;margin-bottom:5px}
.rez-fld-inp{width:100%;padding:10px 12px;background:#fff;border:1.5px solid #e5e0d8;border-radius:9px;font-family:'Inter',sans-serif;font-size:13px;color:#0a1628;outline:none;transition:.2s;appearance:none}
.rez-fld-inp:hover{border-color:#d0cac0}
.rez-fld-inp:focus{border-color:#0a1628;box-shadow:0 0 0 3px rgba(10,22,40,.07)}
.rez-fld-inp::placeholder{color:#9ca3af}
textarea.rez-fld-inp{resize:none;min-height:72px;line-height:1.6}
.rez-fld-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* Book button */
.rez-book-btn{width:100%;padding:13px;border-radius:12px;background:#0a1628;color:#fff;font-family:'Inter',sans-serif;font-size:16px;font-weight:800;border:none;cursor:pointer;transition:.22s;display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:-.01em}
.rez-book-btn:hover:not(:disabled){background:#112240;transform:translateY(-1px);box-shadow:0 6px 20px rgba(10,22,40,.25)}
.rez-book-btn:disabled{background:#d1d5db;cursor:not-allowed;transform:none}
.rez-trust-row{display:flex;justify-content:center;gap:14px;margin-top:12px;flex-wrap:wrap}
.rez-trust-badge{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:4px}

/* İptal politikası rozeti */
.rez-cancel-badge{display:flex;align-items:center;gap:6px;font-size:12px;color:#16a34a;margin-top:8px}
.rez-cancel-badge svg{flex-shrink:0}

@media(max-width:900px){.rez-page{grid-template-columns:1fr;gap:16px;padding:16px}.rez-panel{position:static}.rez-inc-grid{grid-template-columns:1fr}}

/* ── Mobil sticky bottom CTA bar ── */
.rez-mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:900;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 20px rgba(0,0,0,.1);padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom))}
.rez-mobile-bar-inner{display:flex;align-items:center;gap:12px;max-width:540px;margin:0 auto}
.rez-mobile-bar-price{flex:1;min-width:0}
.rez-mobile-bar-lbl{font-size:11px;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;line-height:1}
.rez-mobile-bar-amount{font-family:'Inter',sans-serif;font-size:18px;font-weight:800;color:#0c0f14;line-height:1.2;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rez-mobile-bar-btn{flex:0 0 auto;min-height:44px;padding:12px 22px;background:#0a1628;color:#fff;font-family:'Inter',sans-serif;font-size:15px;font-weight:800;border:none;border-radius:12px;cursor:pointer;transition:.2s;white-space:nowrap;touch-action:manipulation}
.rez-mobile-bar-btn:hover{background:#112240}
.rez-mobile-bar-btn:active{transform:scale(.97)}
.rez-mobile-bar-btn:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
[x-cloak]{display:none !important}
@media(max-width:900px){
  .rez-mobile-bar{display:block}
  .rez-page{padding-bottom:88px}
}
@media(prefers-reduced-motion:reduce){
  .rez-mobile-bar-btn{transition:none}
  .rez-mobile-bar-btn:active{transform:none}
}

/* ===========================================================
 * v2 — GYG Checkout Redesign
 * =========================================================== */

/* Kompakt tur başlık kartı (sol, top) */
.rez-product-header{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e8e5df;border-radius:16px;padding:14px 16px;margin-bottom:18px}
.rez-product-thumb{width:90px;height:68px;object-fit:cover;border-radius:10px;flex-shrink:0}
.rez-product-header-info{flex:1;min-width:0}
.rez-product-type-lbl{font-size:11px;color:#9ca3af;margin-bottom:3px}
.rez-product-title{font-family:'Inter',sans-serif;font-size:17px;font-weight:800;color:#0a1628;line-height:1.25;margin:0 0 3px;letter-spacing:-.02em}
.rez-product-company{font-size:12px;color:#6b7280;margin-bottom:7px}
.rez-product-badges{display:flex;flex-wrap:wrap;gap:5px}
.rez-badge{font-size:11px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:100px;padding:2px 8px;color:#374151;line-height:1.4}

/* Accordion — tur detayları */
.rez-details-accordion{background:#fff;border:1px solid #e8e5df;border-radius:14px;overflow:hidden;margin-bottom:18px}
.rez-accordion-btn{width:100%;padding:13px 16px;background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:14px;font-weight:700;color:#0a1628;display:flex;align-items:center;justify-content:space-between;text-align:left;letter-spacing:-.01em}
.rez-accordion-btn:hover{background:#f9fafb}
.rez-accordion-btn svg{flex-shrink:0;transition:transform 0.2s}

/* Panel: tur thumbnail */
.rez-panel-product{display:flex;gap:10px;align-items:center;padding:14px 16px;border-bottom:1px solid #f3f4f6}
.rez-panel-product-img{width:64px;height:48px;object-fit:cover;border-radius:8px;flex-shrink:0}
.rez-panel-product-info{flex:1;min-width:0}
.rez-panel-product-title{font-family:'Inter',sans-serif;font-size:13px;font-weight:700;color:#0a1628;line-height:1.3;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rez-panel-product-co{font-size:11px;color:#9ca3af;margin-top:2px}

/* Trust row v2 — buton üstünde, ikonlu */
.rez-trust-row-v2{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;justify-content:center}
.rez-trust-item-v2{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#15803d;background:#f0fdf4;border:1px solid #d1fae5;border-radius:100px;padding:4px 10px;line-height:1.4}
.rez-trust-item-v2 svg{flex-shrink:0}

/* Ücretsiz iptal notu (form içinde) */
.rez-free-cancel-note{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#15803d;margin-bottom:14px;padding:9px 11px;background:#f0fdf4;border:1px solid #d1fae5;border-radius:9px;line-height:1.4}
.rez-free-cancel-note svg{flex-shrink:0}

/* Neden Turla360 — mini compact (rez-trust-row-v2'nin altinda) */
.rez-trust-mini{display:flex;gap:14px;flex-wrap:wrap;padding:10px 0;border-top:1px solid #f1f5f9;margin-top:10px}
.rez-trust-mini-item{display:flex;align-items:center;gap:5px;font-size:11px;color:#16a34a;font-weight:600}
.rez-trust-mini-item svg{flex-shrink:0}

/* ── ADIM GOSTERGESI + ILETISIM ADIMI (GetYourGuide deseni) ───────────────
   Emrah: "Devam et deyince bu sekilde soruyor ama bizde bu yok".
   GYG once iletisim (e-posta / Google / Facebook), sonra odeme adimini
   gosterir. Biz FAZLADAN SAYFA ACMIYORUZ (her ek adim donusumu dusurur);
   ayni bilgiyi ayni sira ve dille bu formun icinde topluyoruz. */
.rez-adimlar{
  display:flex; align-items:center; justify-content:center; gap:12px;
  list-style:none; margin:0 0 22px; padding:0;
}
.rez-adim{ display:flex; align-items:center; gap:8px; color:#94a3b8; }
.rez-adim-no{
  display:grid; place-items:center; width:26px; height:26px; border-radius:50%;
  background:#e2e8f0; color:#64748b; font-size:12.5px; font-weight:800;
}
.rez-adim-ad{ font-size:13px; font-weight:700; }
.rez-adim-aktif{ color:var(--theme-primary,#1557DC); }
.rez-adim-aktif .rez-adim-no{ background:var(--theme-primary,#1557DC); color:#fff; }
.rez-adim-cizgi{ width:90px; height:2px; background:#e2e8f0; border-radius:2px; }
.rez-adim-tamam .rez-adim-no{ background:#059669; color:#fff; }
.rez-adim-tamam{ color:#059669; }

.rez-iletisim-bas{ margin:18px 0 12px; }
.rez-iletisim-baslik{ font-size:15px; font-weight:800; color:#0f172a; letter-spacing:-.01em; }
.rez-iletisim-alt{ font-size:12.5px; color:#64748b; margin-top:4px; }

.rez-uye-rozet{
  display:inline-flex; align-items:center; gap:7px; margin-top:8px;
  padding:7px 12px; border-radius:9px;
  background:#f0fdf4; border:1px solid #bbf7d0; color:#047857;
  font-size:12.5px;
}

.rez-sosyal{ display:flex; flex-direction:column; gap:8px; margin-top:10px; }
.rez-sosyal-btn{
  display:flex; align-items:center; justify-content:center; gap:9px;
  height:44px; border:1px solid #e2e8f0; border-radius:10px;
  background:#fff; color:#0f172a; font-size:13.5px; font-weight:700;
  text-decoration:none; transition:background .15s, border-color .15s;
}
.rez-sosyal-btn:hover{ background:#f8fafc; border-color:#cbd5e1; }

.rez-ayrac{
  position:relative; text-align:center; margin:14px 0 4px;
}
.rez-ayrac::before{
  content:''; position:absolute; top:50%; left:0; right:0; height:1px; background:#e5e7eb;
}
.rez-ayrac span{
  position:relative; padding:0 10px; background:#fff;
  font-size:11.5px; font-weight:600; color:#94a3b8;
}
.rez-fld-ipucu{ margin:5px 0 0; font-size:11.5px; color:#94a3b8; }

@media (max-width:767px){
  .rez-adimlar{ gap:8px; margin-bottom:16px; }
  .rez-adim-cizgi{ width:48px; }
  .rez-adim-ad{ font-size:12px; }
}

/* ── TARIH SERIDI — once tarih, sonra saat (Emrah 2026-09-20) ──────────────
   Onceden butun tarihlerin seanslari tek uzun liste halinde basiliyordu.
   Artik ustte yalnizca seansi OLAN gunler bir serit halinde, altta sadece
   secili gunun saatleri gorunur (GetYourGuide deseni). */
.rez-gun-kutu{ border-bottom:1px solid #f3f4f6; }
.rez-gun-serit{
  display:flex; gap:8px; overflow-x:auto; padding:4px 16px 14px;
  scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
}
.rez-gun-serit::-webkit-scrollbar{ height:6px }
.rez-gun-serit::-webkit-scrollbar-thumb{ background:#e5e7eb; border-radius:3px }

.rez-gun{
  flex:0 0 auto; scroll-snap-align:start; width:74px; padding:9px 6px 8px;
  display:flex; flex-direction:column; align-items:center; gap:1px;
  background:#fff; border:1.5px solid #e5e7eb; border-radius:12px;
  cursor:pointer; transition:.16s; font:inherit; color:#111827;
}
.rez-gun:hover:not(.dolu){ border-color:#93c5fd; background:#f8fbff }
.rez-gun:focus-visible{ outline:2px solid #1a56db; outline-offset:2px }
.rez-gun.sec{ border-color:#1a56db; background:#eff6ff; box-shadow:0 0 0 3px rgba(26,86,219,.12) }
.rez-gun.dolu{ opacity:.45; cursor:not-allowed; background:#fafafa }

.rez-gun-hafta{ font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#9ca3af }
.rez-gun-no   { font-size:19px; font-weight:800; line-height:1.15 }
.rez-gun-ay   { font-size:10.5px; font-weight:700; text-transform:uppercase; color:#6b7280 }
.rez-gun-adet { margin-top:3px; font-size:10px; font-weight:600; color:#1a56db }
.rez-gun.dolu .rez-gun-adet{ color:#e11d48 }
.rez-gun.sec  .rez-gun-hafta,
.rez-gun.sec  .rez-gun-ay{ color:#1a56db }

/* Saat listesi basligi — hangi gunun saatlerine bakildigi net olsun */
.rez-saat-bas{
  padding:11px 16px; font-size:12.5px; font-weight:700; color:#374151;
  background:#fafaf9; border-bottom:1px solid #f3f4f6;
}

@media (max-width:560px){
  .rez-gun{ width:66px; padding:8px 4px 7px }
  .rez-gun-no{ font-size:17px }
}

/* ── SECIM OZETI — takvim katliyken gorunur (Emrah 2026-09-20) ──────────────
   GYG akisi: tarih/saat urun sayfasinda secilir, odeme adiminda yalniz OZET
   gorunur. Takvimi tekrar acmak isteyen "Tarihi degistir"e basar. */
.rez-secim-ozet{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:14px 16px;margin-bottom:18px;
}
.rez-secim-ozet-ic{display:flex;align-items:center;gap:12px;min-width:0}
.rez-secim-ozet-ikon{font-size:20px;line-height:1}
.rez-secim-ozet-lbl{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#15803d}
.rez-secim-ozet-val{font-size:16px;font-weight:800;color:#0f172a;margin-top:2px}
.rez-secim-degistir{
  flex:0 0 auto;background:#fff;border:1.5px solid #86efac;color:#15803d;
  font:inherit;font-size:13.5px;font-weight:700;padding:9px 16px;border-radius:10px;cursor:pointer;transition:.16s;
}
.rez-secim-degistir:hover{background:#dcfce7;border-color:#4ade80}
.rez-secim-degistir:focus-visible{outline:2px solid #15803d;outline-offset:2px}
@media (max-width:560px){
  .rez-secim-ozet{padding:12px 13px}
  .rez-secim-ozet-val{font-size:15px}
  .rez-secim-degistir{width:100%}
}

/* Takvimi kapatma — "Tarihi degistir" deyip vazgecen kullanicinin cikis yolu */
.rez-takvim-kapat{
  margin-left:10px;background:#fff;border:1.5px solid #e5e7eb;color:#374151;
  font:inherit;font-size:12.5px;font-weight:700;padding:5px 12px;border-radius:8px;cursor:pointer;transition:.16s;
}
.rez-takvim-kapat:hover{background:#f3f4f6;border-color:#d1d5db}
.rez-takvim-kapat:focus-visible{outline:2px solid #1a56db;outline-offset:2px}

/* ── GYG ADIMI: once e-posta, sonra kalan alanlar (Emrah 2026-09-20) ───────── */
.rez-eposta-devam{
  width:100%; height:48px; border-radius:12px; border:1.5px solid #1a56db;
  background:#fff; color:#1a56db; font:inherit; font-size:15px; font-weight:800;
  cursor:pointer; transition:.16s; margin-top:2px;
}
.rez-eposta-devam:hover{ background:#eff6ff }
.rez-eposta-devam:focus-visible{ outline:2px solid #1a56db; outline-offset:2px }
.rez-eposta-not{
  margin:9px 0 0; font-size:12.5px; line-height:1.5; color:#6b7280; text-align:center;
}

/* ── TANINAN UYE: "Tekrar hoş geldiniz" (Emrah 2026-09-20) ──────────────────
   E-posta girilince hesap taniniyorsa bu blok acilir; kullanici tek tikla giris
   yapip UYE OLARAK devam eder. Giris ZORUNLU DEGIL — misafir cikisi hep durur. */
.rez-uye-tani{
  background:#eff6ff; border:1.5px solid #bfdbfe; border-radius:14px;
  padding:16px 17px; margin:4px 0 14px;
}
.rez-uye-tani-bas{ font-size:16px; font-weight:800; color:#1e3a8a; margin-bottom:4px }
.rez-uye-tani-alt{ font-size:12.5px; color:#1e40af; line-height:1.55; margin:0 0 12px }
.rez-uye-tani-alt strong{ color:#0f172a }
.rez-uye-tani .rez-fld-inp{ margin-bottom:0 }
.rez-uye-hata{
  margin:7px 0 0; font-size:12.5px; font-weight:600; color:#be123c;
  background:#fff1f2; border:1px solid #fecdd3; border-radius:8px; padding:7px 10px;
}
.rez-uye-giris-btn{
  width:100%; height:46px; margin-top:11px; border:0; border-radius:11px;
  background:#1a56db; color:#fff; font:inherit; font-size:14.5px; font-weight:800;
  cursor:pointer; transition:.16s;
}
.rez-uye-giris-btn:hover:not(:disabled){ background:#1648b8 }
.rez-uye-giris-btn:disabled{ opacity:.6; cursor:default }
.rez-uye-alt-satir{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  margin-top:11px; flex-wrap:wrap;
}
.rez-uye-alt-satir a{ font-size:12.5px; font-weight:700; color:#1d4ed8; text-decoration:none }
.rez-uye-alt-satir a:hover{ text-decoration:underline }
.rez-uye-misafir{
  background:none; border:0; padding:0; font:inherit; font-size:12.5px; font-weight:700;
  color:#475569; text-decoration:underline; cursor:pointer;
}
.rez-uye-misafir:hover{ color:#0f172a }

/* =====================================================================
   🔴 P0 — MOBİLDE TARİH SEÇİMİ ERİŞİLEMİYORDU (Emrah 2026-09-21)
   "mobilde rezervasyon yap, ödemeler vs çalışmıyor"

   ÖLÇÜM (390×844): `.rez-panel` ve `.rez-sessions` genişliği **2320px**;
   359 gün düğmesinden **287'si viewport dışında** (son gün x=2197).
   `html,body{overflow-x:clip}` taşmayı GİZLEDİĞİ için sayfa düzgün
   görünüyordu ama tarih seçicinin %80'i gerçek dokunuşla ERİŞİLEMİYORDU
   → gün seçilemiyor → seans seçilemiyor → gönder butonu hiç görünmüyor
   → rezervasyon ve ödeme mobilde TAMAMEN imkânsızdı.

   KÖK NEDEN: `.rez-gun-serit` doğru yazılmış (flex + overflow-x:auto),
   ama üst kabı `.rez-page` bir CSS Grid. Grid/flex öğelerinin varsayılan
   `min-width:auto` değeri, içeriğin DOĞAL genişliğinin altına inmeyi
   reddeder → 359×74px = ~2320px sütun genişliği dayatılır ve
   `overflow-x:auto` hiç tetiklenmez (kap zaten içerik kadar geniştir).

   ⚠️ `overflow-x:hidden` ile KAPATMA — o, şeridi kaydırılamaz yapıp
      ilk birkaç günden sonrasını kalıcı olarak erişilemez bırakır.
      Doğru çözüm kabın DARALABİLMESİNİ sağlamaktır: `min-width:0`.
   ===================================================================== */
.rez-page > * { min-width: 0; }
.rez-sessions,
.rez-panel { min-width: 0; max-width: 100%; }
.rez-gun-serit { max-width: 100%; }

/* ══ KUPON KODU (Emrah 2026-09-24) ══════════════════════════════════════════
   ⚠️ Yeni palet uydurulmadı: marka rengi `--theme-primary`, hata kırmızısı ve
      indirim yeşili mevcut ölçekten. Dokunma hedefi 44px (iOS HIG / Material).
   ⚠️ iOS Safari 16px altındaki input'ta sayfayı ZOOMLAR → input `font-size:16px`. */
.rez-kupon{ padding:8px 0 2px; }
.rez-kupon-ac{
  background:none; border:0; padding:6px 0; min-height:36px;
  color:var(--theme-primary,#1557DC); font-size:13px; font-weight:700;
  text-decoration:underline; cursor:pointer;
}
.rez-kupon-satir{ display:flex; gap:8px; align-items:stretch; margin-top:4px; }
.rez-kupon-input{
  flex:1 1 auto; min-width:0; min-height:44px; padding:0 12px;
  border:1px solid #d1d5db; border-radius:8px;
  font-size:16px; color:#0f172a; text-transform:uppercase; letter-spacing:.04em;
}
.rez-kupon-input:focus{ outline:none; border-color:var(--theme-primary,#1557DC);
  box-shadow:0 0 0 3px rgba(21,87,220,.12); }
.rez-kupon-btn{
  flex:0 0 auto; min-height:44px; padding:0 18px; border:0; border-radius:8px;
  background:var(--theme-primary,#1557DC); color:#fff;
  font-size:14px; font-weight:700; cursor:pointer;
}
.rez-kupon-btn:disabled{ opacity:.55; cursor:default; }
.rez-kupon-hata{ margin-top:6px; font-size:12.5px; color:#b91c1c; line-height:1.4; }
.rez-kupon-ok{ color:#15803d !important; font-weight:700; }
.rez-kupon-kaldir{
  background:none; border:0; padding:2px 4px; margin-left:6px;
  color:#6b7280; font-size:11.5px; text-decoration:underline; cursor:pointer;
}
@media (max-width:640px){
  .rez-kupon-btn{ padding:0 14px; }
}

/* ⚠️ Emoji (📍) yerine SVG ikon geldi (proje kurali) -> tn_icon 24px cizer,
      bu rozetler 11px/18px metin; boyut ve hizalama burada verilir. */
.rez-badge{display:inline-flex;align-items:center;gap:4px}
.rez-badge svg{width:12px;height:12px;flex:0 0 auto}
.rez-meeting-ico{display:inline-flex;align-items:center}
.rez-meeting-ico svg{width:18px;height:18px}

/* ⚠️ Asagidaki ogelerde emoji yerine SVG ikon var (proje kurali);
      tn_icon 24px cizer -> her baglamda boyut + hizalama burada. */
.rez-product-type-lbl{display:inline-flex;align-items:center;gap:5px}
.rez-product-type-lbl svg{width:13px;height:13px;flex:0 0 auto}
.rez-product-company{display:inline-flex;align-items:center;gap:5px}
.rez-product-company svg{width:14px;height:14px;flex:0 0 auto}
.rez-secim-ozet-ikon svg{width:20px;height:20px}
.rez-sess-time{display:inline-flex;align-items:center;gap:5px}
.rez-sess-time svg{width:15px;height:15px;flex:0 0 auto}

.rez-no-sess{display:flex;align-items:center;gap:7px}
.rez-no-sess svg{width:16px;height:16px;flex:0 0 auto}

/* ⭐ INDIRIM RENGI — TEK KURAL (Emrah 2026-09-26)
   Kural: indirim VAR -> kirmizi #dc2626 · indirim YOK -> siyah #0c0f14.
   Kanonik tanim `public/css/front/tur-karti.css`; bu sayfada o dosya YUKLU
   DEGIL (kart stilleri sizmasin diye bilincli) -> ayni iki deger burada da
   yazilir. Degeri degistirirsen IKI dosyada birden degistir.
   `.rez-indirimli` bayragi `reservation_form.php`'de sayfa duzeyinde basilir.
   ⚠️ KAPSAM DISI (ikisi de ODENECEK TUTAR, indirimli tur fiyati DEGIL —
      sepet/odeme toplamlariyla ayni mantik, DAIMA siyah):
        `.rez-price-total`       -> panelde toplam satiri
        `.rez-mobile-bar-amount` -> mobil cubuk; etiketi "Toplam" ve JS
           (#rez-mob-price) icine `this.total` yazar (kisi sayisi x fiyat
           eksi kupon) — kisi basi tur fiyati DEGIL.
      ⚠️ AYRICA: `.rez-mobile-bar` DOM agacinda `.rez-page` DISINDA duruyor
         (reservation_form.php:547, sarmalayici 544'te kapaniyor) -> torun
         secici `.rez-indirimli X` oraya HIC ulasmaz. Olculdu: kural yazildi,
         renk degismedi. Ileride o cubuga kural gerekirse bunu hatirla. */
.rez-indirimli .rez-sess-price,
.rez-indirimli .rez-panel-price { color: #dc2626; }
