/* ==========================================================================
   ANTON — Mastermind Event'in başlık yazı tipi
   (SIL Open Font License, bkz. assets/fonts/anton-LICENSE.txt)
   Yalnızca etkinlik sayfalarında kullanılır; otel sayfaları serif kalır.
   ========================================================================== */
@font-face{
  font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/anton-400-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,
                U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,
                U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/anton-400.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,
                U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* ==========================================================================
   MASTERMIND EVENT — sayfaya özel kimlik
   mastermindevent.com'daki paletin birebir karşılığı. Sadece .page-event
   gövdesinde geçerlidir; oteldeki fildişi + serif dünyaya karışmaz.
     #050B1A  gece siyahı (hero)
     #0A0F2E  derin indigo (koyu bölümler)
     #0047FF  elektrik mavisi (birincil eylem)
     #C9A84C  altın (başlıktaki vurgulu kelime)
   ========================================================================== */
.page-event{
  --ev-ink:#050B1A;
  --ev-ink-2:#0A0F2E;
  --ev-blue:#0047FF;
  --ev-blue-2:#2C63FF;
  --ev-gold:#C9A84C;
  --ev-gold-2:#E2C670;
  --ev-slate:#F8FAFC;
  --ev-line:#E2E8F0;

  /* Ortak bileşenler (buton, kart, rozet) bu adları kullanıyor;
     etkinlik sayfasında Mastermind paletine bağlanıyorlar. */
  --navy:var(--ev-ink);
  --navy-2:var(--ev-ink-2);
  --navy-3:#02060F;
  --gold:var(--ev-gold);
  --gold-2:var(--ev-gold-2);
  --gold-3:#9C7F30;
  --gold-dim:rgba(201,168,76,.16);
  --cream:var(--ev-slate);
  --cream-2:#EEF2F7;
  --paper:#FFFFFF;
  --ink:#0B1020;
  --ink-2:#1E2740;
  --body:#4A5568;
  --muted:#8A94A6;
  --line:var(--ev-line);
  --line-2:#EDF1F6;

  /* Mastermind kimliği keskin köşe kullanır; otelin yuvarlaklığı burada yok. */
  --r:14px; --r-lg:18px; --r-md:10px; --r-sm:8px;

  background:#fff;
}

/* Başlıklar: Anton, büyük harf, sıkı harf aralığı */
.page-event h1,.page-event h2,.page-event h3{
  font-family:"Anton","Arial Narrow",Impact,var(--sans);
  font-weight:400;text-transform:uppercase;letter-spacing:-.025em;line-height:1.06;
  font-style:normal;color:var(--ink);
}
.page-event h1{font-size:clamp(2.6rem,6.6vw,6rem)}
.page-event h2{font-size:clamp(2rem,4.4vw,3.4rem)}
.page-event h3{font-size:clamp(1.15rem,2vw,1.7rem);letter-spacing:-.01em}

/* Oteldeki "son kelime altın italik" düzeni burada italik değil, düz altın. */
.page-event h1 em,.page-event h2 em,.page-event .accent{
  font-family:inherit;font-style:normal;font-weight:400;color:var(--ev-gold);
}
.page-event .ev-hero h1 em{color:var(--ev-gold-2)}

/* Birincil eylem: mastermindevent.com'daki elektrik mavisi, keskin köşe */
.page-event .btn{
  background:var(--ev-blue);color:#fff;border:0;border-radius:4px;
  font-weight:700;letter-spacing:.03em;text-transform:uppercase;font-size:.8rem;
  padding:1.05rem 2.1rem;
}
.page-event .btn:hover{
  background:var(--ev-blue-2);box-shadow:0 16px 30px -16px rgba(0,71,255,.75);
}
.page-event .btn--light{
  background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);
}
.page-event .btn--light:hover{background:rgba(255,255,255,.1);box-shadow:none}
.page-event .btn--ghost{
  background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:4px;
}
.page-event .btn--ghost:hover{background:var(--ev-slate);color:var(--ev-blue);box-shadow:none}
.page-event .btn--dark{background:var(--ev-ink);color:#fff}
.page-event .btn--dark:hover{background:var(--ev-ink-2);box-shadow:none}

/* İstatistik rakamları da Anton — sayfanın kimliği tek yazı tipiyle konuşsun */
.page-event .ev-stat b{
  font-family:"Anton",var(--sans);font-weight:400;letter-spacing:0;
  font-variant-numeric:lining-nums tabular-nums;color:var(--ev-ink);
}
.page-event .ev-stats{background:var(--ev-line);border-color:var(--ev-line)}

/* Hero: mastermindevent.com'daki gece siyahı + köşeden mavi ışık */
.page-event .ev-hero{background:var(--ev-ink)}
.page-event .ev-hero::before{
  background:radial-gradient(70rem 40rem at 82% -10%,rgba(0,71,255,.30),transparent 62%),
             radial-gradient(52rem 32rem at 8% 108%,rgba(201,168,76,.16),transparent 60%),
             linear-gradient(180deg,rgba(5,11,26,.80),rgba(5,11,26,.97));
}
.page-event .ev-badge{
  border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.82);
  background:rgba(255,255,255,.06);border-radius:4px;
}
.page-event .countdown__cell{border-radius:6px;background:rgba(255,255,255,.05)}
.page-event .countdown__num{font-family:"Anton",var(--sans);font-weight:400;color:#fff}

/* Bölüm zeminleri: beyaz ↔ slate-50 ↔ indigo sırası */
.page-event .section--cream{background:var(--ev-slate)}
.page-event .section--navy{background:var(--ev-ink-2)}

/* Etiketler mavi, otelin altın etiketi yerine */
.page-event .eyebrow,.page-event .kicker{color:var(--ev-blue);letter-spacing:.24em}
.page-event .section--navy .eyebrow,
.page-event .section--navy .kicker,
.page-event .ev-hero .eyebrow{color:var(--ev-gold-2)}

/* ==========================================================================
   Mastermind Event — satış sayfaları
   ========================================================================== */
.ev-hero{
  position:relative;background:var(--navy);color:#fff;overflow:hidden;
  padding:clamp(5rem,11vw,9rem) 0 clamp(3.5rem,8vw,6rem);
}
.ev-hero__bg{position:absolute;inset:0;opacity:.34}
.ev-hero__bg img{width:100%;height:100%;object-fit:cover}
.ev-hero::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:radial-gradient(90rem 45rem at 78% -12%,rgba(194,162,76,.30),transparent 60%),
             linear-gradient(180deg,rgba(14,26,36,.86),rgba(14,26,36,.97));
}
.ev-hero__in{position:relative;z-index:2}
.ev-hero h1{color:#fff;font-size:clamp(2.6rem,6.4vw,5rem);margin-bottom:.25em}
.ev-hero .lead{color:rgba(255,255,255,.8);font-size:1.15rem}
.ev-badges{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.6rem}
.ev-badge{
  display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;
  border:1px solid rgba(224,200,138,.4);border-radius:100px;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);
  background:rgba(194,162,76,.08);
}
.ev-hero__cta{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}

/* geri sayım */
.countdown{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2.6rem}
.countdown__cell{
  min-width:88px;padding:1rem .9rem;text-align:center;border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.04);border-radius:var(--r-lg);
}
.countdown__num{font-family:var(--serif);font-weight:800;font-size:2.1rem;line-height:1;color:var(--gold-2);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em}
.countdown__lbl{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:.45rem}

/* istatistikler */
.ev-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.ev-stat{background:var(--paper);padding:2rem 1.6rem;text-align:center}
.ev-stat b{display:block;font-family:var(--serif);font-weight:800;font-size:2.4rem;line-height:1;color:var(--ink);letter-spacing:-.02em}
.ev-stat span{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:.6rem;display:block}

/* bilet kartları */
.tickets{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem;align-items:stretch}
.ticket{
  position:relative;display:flex;flex-direction:column;background:var(--paper);
  border:1px solid var(--line);border-radius:var(--r-lg);padding:2rem 1.8rem 1.8rem;
  transition:.4s var(--ease);
}
.ticket:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.ticket--featured{border-color:var(--gold);box-shadow:0 22px 60px -30px rgba(194,162,76,.75)}
.ticket__badge{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:var(--gold);color:#0E1A24;font-size:.62rem;letter-spacing:.2em;
  text-transform:uppercase;padding:.42rem 1rem;border-radius:100px;font-weight:600;white-space:nowrap;
}
.ticket h3{margin-bottom:.35rem;font-size:1.5rem;min-height:2.2em;display:flex;align-items:flex-end}
.ticket__desc{color:var(--muted);font-size:.92rem;min-height:2.6em}
.ticket__price{display:flex;align-items:baseline;gap:.6rem;margin:1.1rem 0 .2rem}
.ticket__price b{font-family:var(--serif);font-weight:800;font-size:clamp(1.75rem,2.2vw,2.25rem);line-height:1;color:var(--ink);white-space:nowrap;letter-spacing:-.02em}
.ticket__price s{color:var(--muted);font-size:1rem}
.ticket__vat{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ticket__perks{list-style:none;margin:1.4rem 0;padding:0;display:grid;gap:.7rem;font-size:.9rem}
.ticket__perks li{display:flex;gap:.65rem;align-items:flex-start;color:var(--text)}
.ticket__perks svg{width:16px;height:16px;flex:0 0 auto;margin-top:.3rem;color:var(--gold)}
.ticket__foot{margin-top:auto;padding-top:1rem}
.ticket__left{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#B4802A;margin-bottom:.8rem}
.ticket__soldout{color:var(--muted)}
.qty{display:flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:var(--r);width:fit-content;margin-bottom:.9rem}
.qty button{width:38px;height:40px;border:0;background:transparent;font-size:1.15rem;color:var(--ink)}
.qty button:hover{color:var(--gold)}
.qty input{width:46px;height:40px;border:0;text-align:center;font-family:var(--sans);font-size:1rem;background:transparent;color:var(--text);
  -moz-appearance:textfield}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* program */
.agenda-day{margin-bottom:3rem}
.agenda-day h3{padding-bottom:.7rem;border-bottom:1px solid var(--line);margin-bottom:1.6rem}
.agenda-item{display:grid;grid-template-columns:150px 1fr;gap:1.5rem;padding:1.2rem 0;border-bottom:1px dashed var(--line)}
.agenda-item:last-child{border-bottom:0}
.agenda-item time{font-size:.82rem;letter-spacing:.1em;color:var(--gold);font-variant-numeric:tabular-nums;padding-top:.2rem}
.agenda-item h4{font-family:var(--sans);font-size:1.02rem;font-weight:500;margin:0 0 .3rem;letter-spacing:0}
.agenda-item p{margin:0;color:var(--muted);font-size:.92rem}

/* konuşmacılar */
.speakers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.6rem}
.speaker{text-align:center}
.speaker__ph{
  aspect-ratio:1;border-radius:50%;overflow:hidden;margin:0 auto 1.1rem;max-width:190px;
  background:linear-gradient(140deg,var(--navy-2),var(--navy-3));display:grid;place-items:center;
  color:var(--gold-2);font-family:var(--serif);font-weight:800;font-size:2.2rem;letter-spacing:.02em;
}
.speaker__ph img{width:100%;height:100%;object-fit:cover}
.speaker h4{font-family:var(--serif);font-weight:700;font-size:1.15rem;margin:0 0 .2rem}
.speaker span{font-size:.78rem;letter-spacing:.1em;color:var(--gold);text-transform:uppercase;display:block;margin-bottom:.7rem}
.speaker p{font-size:.9rem;color:var(--muted);margin:0}

/* SSS */
.faq{border-top:1px solid var(--line)}
.faq__item{border-bottom:1px solid var(--line)}
.faq__q{
  width:100%;background:none;border:0;padding:1.3rem 2.5rem 1.3rem 0;text-align:left;
  font-family:var(--serif);font-weight:600;font-size:1.08rem;color:var(--ink);position:relative;
}
.faq__q::after{content:"+";position:absolute;right:.3rem;top:50%;transform:translateY(-50%);color:var(--gold);font-size:1.4rem;font-family:var(--sans)}
.faq__item.is-open .faq__q::after{content:"–"}
.faq__a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease);color:var(--muted)}
.faq__item.is-open .faq__a{max-height:600px}
.faq__a > div{padding:0 0 1.4rem}

/* checkout */
.checkout{display:grid;grid-template-columns:1.5fr .9fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.summary{
  position:sticky;top:104px;background:var(--cream);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:1.8rem;
}
.summary h3{font-size:1.35rem;margin-bottom:1.2rem}
.summary__row{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;font-size:.94rem}
.summary__row--total{border-top:1px solid var(--line);margin-top:.6rem;padding-top:1rem;font-size:1.1rem;font-family:var(--serif);font-weight:700}
.summary__row--total b{color:var(--ink)}
.summary__items{border-bottom:1px solid var(--line);padding-bottom:.8rem;margin-bottom:.5rem}
.summary__item{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;font-size:.92rem}
.summary__item small{display:block;color:var(--muted);font-size:.78rem}
.coupon-row{display:flex;gap:.5rem;margin:1rem 0}
.coupon-row input{flex:1;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--r);font-family:var(--sans);text-transform:uppercase}
.attendee-block{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem;margin-bottom:1rem;background:var(--paper)}
.attendee-block h4{font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.pay-note{display:flex;align-items:center;gap:.6rem;font-size:.8rem;color:var(--muted);margin-top:1rem;justify-content:center}
.pay-note svg{width:16px;height:16px;color:#2E7D4F}

/* bilet / teşekkür */
.ticket-pass{
  max-width:520px;margin:0 auto;border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;background:var(--paper);box-shadow:var(--shadow);
}
.ticket-pass__top{background:var(--navy);color:#fff;padding:1.8rem;text-align:center}
.ticket-pass__top h3{color:#fff;margin-bottom:.2rem}
.ticket-pass__top span{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2)}
.ticket-pass__body{padding:1.8rem;display:grid;gap:1rem}
.ticket-pass__code{
  font-family:var(--sans);font-size:1.5rem;letter-spacing:.24em;text-align:center;
  padding:1rem;border:1px dashed var(--line);border-radius:var(--r);color:var(--ink);
}
.pass-row{display:flex;justify-content:space-between;gap:1rem;font-size:.92rem;border-bottom:1px solid var(--line);padding-bottom:.6rem}
.pass-row span{color:var(--muted)}

@media (max-width:900px){
  .checkout{grid-template-columns:1fr}
  .summary{position:static}
  .agenda-item{grid-template-columns:1fr;gap:.35rem}
}

/* ==========================================================================
   ÜYELİK · REZERVASYON SİHİRBAZI · ÜYE PANELİ
   ========================================================================== */
.topbar__account{display:flex;align-items:center;margin-right:auto;margin-left:1.4rem}
@media (max-width:820px){.topbar__account{display:none}}

/* ---------------- kimlik sayfaları ---------------- */
.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 120px)}
.auth-page__form{display:flex;align-items:center;justify-content:center;padding:clamp(2rem,5vw,4rem)}
.auth-page__inner{width:min(100%,420px)}
.auth-page__inner h1{font-size:clamp(1.9rem,3.4vw,2.5rem);margin-bottom:.3em}
.auth-page__inner > p{color:var(--muted);margin-bottom:1.8rem}
.auth-page__aside{
  position:relative;background:var(--navy);color:#fff;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,3.5rem);
}
.auth-page__aside::after{
  content:"";position:absolute;left:50%;bottom:-40%;width:120%;height:80%;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(194,162,76,.55),rgba(194,162,76,.14) 45%,transparent 72%);
}
.auth-page__aside > *{position:relative;z-index:2}
.auth-page__aside h2{color:#fff;font-size:clamp(1.8rem,3vw,2.6rem)}
.auth-page__aside ul{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:.8rem}
.auth-page__aside li{display:flex;gap:.7rem;align-items:flex-start;color:rgba(255,255,255,.82);font-size:.95rem}
.auth-page__aside li svg{width:18px;height:18px;flex:0 0 auto;margin-top:.2rem;color:var(--gold-2)}
.auth-alt{margin-top:1.4rem;font-size:.92rem;color:var(--muted);text-align:center}
.auth-alt a{color:var(--gold);font-weight:600}
@media (max-width:900px){.auth-page{grid-template-columns:1fr}.auth-page__aside{order:-1;padding:2.2rem 1.5rem}}

/* ---------------- sihirbaz ---------------- */
.wiz-steps{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:2rem}
.wiz-steps a,.wiz-steps span{
  display:flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border-radius:100px;
  border:1px solid var(--line);font-size:.78rem;color:var(--muted);background:#fff;
}
.wiz-steps .is-active{background:var(--navy);color:#fff;border-color:var(--ink)}
.wiz-steps .is-done{border-color:var(--gold);color:var(--gold)}
.wiz-steps i{
  width:20px;height:20px;border-radius:50%;display:grid;place-items:center;
  background:var(--cream);color:var(--muted);font-size:.68rem;font-style:normal;font-weight:600;
}
.wiz-steps .is-active i{background:var(--gold);color:#0E1A24}
.wiz-steps .is-done i{background:var(--gold-dim);color:var(--gold)}

.wiz{display:grid;grid-template-columns:1.6fr .9fr;gap:clamp(1.5rem,3vw,2.6rem);align-items:start}
.wiz--tek{grid-template-columns:1fr}
.wiz__panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.3rem,3vw,2rem)}
.wiz__panel h2{font-size:clamp(1.4rem,2.4vw,1.9rem);margin-bottom:.3em}
.wiz__panel > p.lead{margin-bottom:1.6rem}
.wiz__nav{display:flex;gap:.7rem;align-items:center;margin-top:1.8rem;flex-wrap:wrap}
.wiz__nav .spacer{margin-left:auto}
@media (max-width:900px){.wiz{grid-template-columns:1fr}}

.choice{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.4rem}
.choice label{
  border:1.5px solid var(--line);border-radius:var(--r-lg);padding:1.2rem 1.3rem;cursor:pointer;
  display:flex;gap:.8rem;align-items:flex-start;transition:.25s var(--ease);background:#fff;
}
.choice label:hover{border-color:var(--gold-2)}
.choice input{margin-top:.25rem;accent-color:var(--gold);width:18px;height:18px;flex:0 0 auto}
.choice input:checked + span{color:var(--ink)}
.choice label:has(input:checked){border-color:var(--gold);background:#FDFBF5;box-shadow:0 0 0 3px var(--gold-dim)}
.choice b{display:block;font-size:1.02rem;margin-bottom:.2rem}
.choice small{color:var(--muted);font-size:.88rem;line-height:1.5}
@media (max-width:640px){.choice{grid-template-columns:1fr}}

.room-opt{
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:1.1rem;
  display:grid;grid-template-columns:210px 1fr;transition:.25s var(--ease);background:#fff;
}
.room-opt:has(input[type=checkbox]:checked){border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim)}
.room-opt.is-out{opacity:.55}
.room-opt__media img{width:100%;height:100%;object-fit:cover;min-height:170px}
.room-opt__body{padding:1.1rem 1.3rem;display:flex;flex-direction:column;gap:.5rem}
.room-opt__head{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}
.room-opt__head h3{margin:0;font-size:1.25rem}
/* Rozet satırı: app.css'teki kurallar geçerli, burada yalnızca etkinlik
   sayfasının başlık ölçüsüne uyum. Renkler --gold/--line üzerinden geldiği
   için etkinlik paletine kendiliğinden döner. */
.room-opt__baslik{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem}
.room-opt__baslik h3{margin:0;font-size:1.25rem}
.oda-rozet--ozel{color:var(--ev-ink,#050B1A)}
.room-opt__price{margin-left:auto;text-align:right}
.room-opt__price b{font-size:1.35rem;font-weight:800;letter-spacing:-.02em}
.room-opt__price small{display:block;color:var(--muted);font-size:.76rem}
.room-opt__meta{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
/* Oda kartı iki katmanlı: üstte fiyat ve "Seç", altında yalnızca seçilen
   odada açılan ayrıntılar. Hepsi birden açıkken misafir iki odayı fiyatına
   göre karşılaştıramıyor, formun içinde kayboluyordu. */
.room-opt__pick{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;margin-top:auto;padding-top:.7rem;border-top:1px solid var(--line)}
.room-opt__detay{display:none;gap:.8rem;flex-wrap:wrap;align-items:flex-start;padding-top:.9rem;margin-top:.2rem;border-top:1px dashed var(--line)}
/* Yatak düzeni kendi satırını alır; kişi kutuları yanında ezilmesin. */
.room-opt__detay .field--full{flex:1 0 100%}
.room-opt.is-secili .room-opt__detay{display:flex}
.room-opt__detay .field{min-width:88px}
.room-opt__detay label{font-size:.62rem}
.room-opt__detay select,.room-opt__detay input{padding:.5rem .6rem;font-size:.88rem}

/* "Seç" bir düğme gibi durur: kart seçilince altın dolgu olur. */
.room-opt__toggle{
  display:inline-flex;gap:.5rem;align-items:center;cursor:pointer;
  font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:#fff;background:var(--gold);border:1px solid var(--gold);border-radius:999px;
  padding:.58rem 1.15rem;transition:background .15s ease,color .15s ease;
}
.room-opt__toggle:hover{background:var(--gold-2)}
.room-opt.is-secili .room-opt__toggle{background:#fff;color:var(--gold-3);border-color:var(--gold)}
.room-opt.is-secili .room-opt__toggle:hover{background:var(--gold-dim)}
.room-opt__toggle input{display:none;width:17px;height:17px;accent-color:var(--gold)}
.room-opt.is-secili .room-opt__toggle input{display:inline-block}
/* Seçim yapılınca seçilmeyen kartlar gizlenir (bkz. sihirbaz betiği). */
.room-opt[hidden]{display:none}
.room-list__degistir{margin:.2rem 0 1.2rem}
/* Kırılım satırı boşken kart düzeninde yer kaplamasın. */
[data-oda-kirim]{display:contents}
/* Tutar sunucuda yeniden hesaplanırken kısa süre soluklaşır. */
.room-opt.is-hesaplaniyor .room-opt__price{opacity:.4;transition:opacity .12s}
.room-opt__toggle-b{display:none}
.room-opt.is-secili .room-opt__toggle-a{display:none}
.room-opt.is-secili .room-opt__toggle-b{display:inline}
.room-avail{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#B4802A}
@media (max-width:720px){.room-opt{grid-template-columns:1fr}.room-opt__media img{min-height:150px;max-height:190px}}

/* ---------------------------------------------------------------------
   MİSAFİR BİLGİLERİ ADIMI
   Alanlar yalnızca yer tutucu metinle etiketleniyordu: misafir yazmaya
   başlayınca hangi alanda olduğunu göremiyor, "Cep telefonu" kutusu da
   ızgarada alt satıra düşüp yanında boşluk bırakıyordu. Artık her alanın
   üstünde kalıcı etiketi var ve satırlar düzenli bir ızgarada duruyor.
   --------------------------------------------------------------------- */
.guest-block{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.3rem;margin-bottom:1rem;background:#fff}
.guest-block h4{font-family:var(--sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}

.guest-card{border-top:1px solid var(--line-2);padding:1.05rem 0 .3rem}
.guest-card:first-of-type{border-top:0;padding-top:.2rem}

.guest-card__head{display:flex;align-items:center;gap:.55rem;margin-bottom:.7rem}
.guest-card__no{
  flex:0 0 24px;width:24px;height:24px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:.75rem;font-weight:700;color:var(--muted);
  background:var(--cream-2);
}
.guest-card--lead .guest-card__no{background:var(--gold-3);color:#fff}
.guest-card__role{font-size:.86rem;font-weight:600;color:var(--ink)}
.guest-card__hint{
  font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);border:1px solid var(--line);border-radius:var(--r-pill);
  padding:.16rem .55rem;
}
.guest-card__hint--req{color:var(--gold-3);border-color:var(--gold-2);background:#FFFDF8}

/* Yetişkinde ad/soyad ve e-posta/telefon ikişerli; çocukta ad/soyad/yaş. */
.guest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem .8rem}
.guest-grid--cocuk{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Alan görünümü site genelindeki .field ile aynıdır; burada yalnızca
   zorunluluk işareti tanımlanır ki ekranlar arasında ikinci bir kutu
   biçimi doğmasın. */
.guest-grid .field > label i{color:var(--gold-3);font-style:normal;margin-left:.15rem}

.guest-card__kat{
  grid-column:1/-1;display:flex;gap:.5rem;align-items:center;
  font-size:.86rem;color:var(--body);margin-top:.1rem;
}
.guest-card__kat input{width:17px;height:17px;accent-color:var(--gold)}

@media (max-width:640px){
  .guest-grid,.guest-grid--cocuk{grid-template-columns:1fr}
}

.req-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.6rem}
.req-grid label{
  display:flex;gap:.6rem;align-items:center;border:1px solid var(--line);border-radius:12px;
  padding:.75rem .9rem;cursor:pointer;font-size:.92rem;transition:.2s;background:#fff;
}
.req-grid label:hover{border-color:var(--gold-2)}
.req-grid label:has(input:checked){border-color:var(--gold);background:#FDFBF5}
.req-grid input{width:18px;height:18px;accent-color:var(--gold)}

.wiz-summary{
  position:sticky;top:104px;background:var(--cream);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:1.6rem;
}
.wiz-summary h3{font-size:1.25rem;margin-bottom:1rem}
.wiz-summary__group{border-bottom:1px solid var(--line);padding-bottom:.7rem;margin-bottom:.7rem}
.wiz-summary__group:last-of-type{border-bottom:0}
.wiz-summary__label{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.4rem}
.wiz-summary__row{display:flex;justify-content:space-between;gap:1rem;padding:.32rem 0;font-size:.92rem}
.wiz-summary__row small{display:block;color:var(--muted);font-size:.78rem}
.wiz-summary__total{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.9rem;
  display:flex;justify-content:space-between;font-size:1.15rem;font-weight:700}
@media (max-width:900px){.wiz-summary{position:static}}

/* ---------------- üye paneli ---------------- */
.acc{display:grid;grid-template-columns:250px 1fr;gap:clamp(1.4rem,3vw,2.4rem);align-items:start}
.acc__nav{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:.7rem;position:sticky;top:104px}
.acc__nav a{display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;border-radius:10px;font-size:.94rem;transition:.2s}
.acc__nav a:hover{background:var(--cream)}
.acc__nav a.is-active{background:var(--navy);color:#fff}
.acc__hello{padding:1rem .9rem;border-bottom:1px solid var(--line);margin-bottom:.5rem}
.acc__hello small{display:block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.acc__hello b{font-size:1.02rem}
.acc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}
.acc-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--tone,var(--gold));
  border-radius:var(--r-lg);padding:1.1rem 1.25rem}
.acc-card span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.acc-card b{display:block;font-size:1.75rem;line-height:1.2;margin-top:.35rem;letter-spacing:-.02em}
.acc-card small{color:var(--muted);font-size:.82rem}
.res-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:1.1rem}
.res-card__top{display:flex;gap:1rem;align-items:center;padding:1.1rem 1.3rem;border-bottom:1px solid var(--line);flex-wrap:wrap}
.res-card__top b{font-size:1.05rem}
.res-card__body{padding:1.1rem 1.3rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1rem}
.res-card__body div span{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.res-card__body div b{font-size:1rem;font-weight:600}
.res-card__foot{padding:.9rem 1.3rem;background:var(--cream);display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}
.progress{flex:1;min-width:140px;background:#E4E9ED;border-radius:100px;height:7px;overflow:hidden}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),#D9BC72)}
.pill-state{display:inline-block;padding:.24rem .7rem;border-radius:100px;font-size:.72rem;font-weight:600}
.pill-ok{background:#E4F5EA;color:#12653A}
.pill-wait{background:#FDF3E2;color:#8A6116}
.pill-off{background:#EEF1F4;color:#5A6875}
@media (max-width:820px){.acc{grid-template-columns:1fr}.acc__nav{position:static;display:flex;flex-wrap:wrap;gap:.3rem}}

/* Salon/otel adı gibi karışık dilli özel adlar büyük harfe çevrilmez:
   "Selectum City Ataşehir İstanbul" içinde hem İngilizce ("City") hem Türkçe
   ("Ataşehir") kelime var; tek bir büyük harf kuralı ikisini birden doğru
   yapamaz. Doğal yazımıyla bırakmak her iki dilde de doğrudur. */
.ev-badge--name{text-transform:none;letter-spacing:.02em;font-size:.78rem}

/* ---------------------------------------------------------------------
   YATAK DÜZENİ SEÇİMİ
   Açılır liste yerine iki küçük görsel: misafir "double" ile "twin"
   arasındaki farkı okumadan görür. Sade tutuldu — kart bir oda
   seçeneğinin içinde, bazen iki kez (bağlantılı aile odası) duruyor.
   --------------------------------------------------------------------- */
.yatak-sec{display:flex;gap:.55rem;flex-wrap:wrap}
.yatak-sec__se{
  position:relative;
  flex:1 1 0;min-width:120px;max-width:190px;
  display:flex;flex-direction:column;gap:.4rem;
  padding:.4rem;cursor:pointer;
  border:1px solid var(--line);border-radius:12px;background:#fff;
  transition:border-color .18s, box-shadow .18s;
}
/* Düğme görünmez ama KUTUNUN TAMAMINI kaplar: hem kutunun her yerine
   tıklanabilir hem de tarayıcının "seçim yapın" uyarısı buraya
   tutunabilir. Sıfır boyutlu gizli bir düğmede uyarı gösterilemiyor ve
   form sessizce gönderilmiyordu. */
.yatak-sec__se input{
  position:absolute;inset:0;width:100%;height:100%;
  margin:0;opacity:0;cursor:pointer;appearance:none;-webkit-appearance:none;
}
.yatak-sec__se img{
  width:100%;aspect-ratio:16/10;object-fit:cover;
  border-radius:8px;display:block;background:var(--cream-2);
}
.yatak-sec__se span{
  font-size:.82rem;font-weight:600;color:var(--ink-2);
  text-align:center;padding-bottom:.15rem;
}
.yatak-sec__se:hover{border-color:var(--gold-2)}
/* Seçili kutu: altın çerçeve — ekstra ikon yok, sade kalsın. */
.yatak-sec__se:has(input:checked),
.yatak-sec__se.is-secili{
  border-color:var(--gold-3);box-shadow:0 0 0 2px rgba(179,155,110,.22);
}
.yatak-sec__se:has(input:checked) span,
.yatak-sec__se.is-secili span{color:var(--ink)}
.yatak-sec__se:focus-within{outline:2px solid var(--gold-2);outline-offset:2px}
@media (max-width:420px){
  .yatak-sec__se{max-width:none}
}
