/* Inter: yerel yazı tipi (OFL, fonts/OFL.txt); dış font sunucusu kullanılmaz */
/* cyrillic-ext */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-cyrillic-ext.woff2?v=1") format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
/* cyrillic */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-cyrillic.woff2?v=1") format("woff2");unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
/* latin-ext */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-latin-ext.woff2?v=1") 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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
/* latin */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-latin.woff2?v=1") 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}
/* Island Green — Yönetim Paneli */

:root{
  --marka:#1F5C46; --marka-koyu:#15402F; --marka-ac:#2D7A5E; --marka-sis:#EEF4F1;
  --vurgu:#B08D4F;
  --ak:#FFFFFF; --ak-2:#F7F8F7; --ak-3:#EDEFEE;
  --cizgi:#DCE0DE; --cizgi-2:#EBEEEC;
  --metin:#1A1F1C; --metin-2:#5F6B64; --metin-3:#8D968F;
  --uyari:#B4443A; --uyari-sis:#FBEDEC;
  --basari:#2F7D5A; --basari-sis:#E9F4EE;
  --bekle:#9A6A1B; --bekle-sis:#FCF3E2;
  --r:10px; --r-k:7px; --r-b:999px;
  --golge:0 1px 2px rgba(20,35,28,.06), 0 4px 14px rgba(20,35,28,.05);
  --golge-2:0 10px 32px rgba(20,35,28,.12);
  --yan:252px;
}

*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--ak-2); color:var(--metin);
  font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{margin:0; font-weight:650; letter-spacing:-.015em; line-height:1.25}
h1{font-size:1.5rem} h2{font-size:1.2rem} h3{font-size:1.0625rem} h4{font-size:.9375rem}
p{margin:0}
a{color:var(--marka); text-decoration:none}
@media (hover:hover){a:hover{text-decoration:underline}}
img{max-width:100%; display:block}
input,select,textarea,button{font:inherit; color:inherit}
[hidden]{display:none !important}

/* ---------- giriş ---------- */
.giris-sahne{
  min-height:100dvh; display:grid; place-items:center; padding:24px;
  background:linear-gradient(160deg,var(--marka-koyu) 0%,var(--marka) 55%,var(--marka-ac) 100%);
}
.giris{
  width:min(400px,100%); background:var(--ak); border-radius:14px;
  padding:34px 30px; box-shadow:var(--golge-2);
}
.giris__logo{display:flex; flex-direction:column; align-items:flex-start; gap:6px; margin-bottom:22px}
.giris__logo img{display:block; width:120px; height:auto}
.giris__logo span{font-size:.75rem; color:var(--metin-2); display:block; letter-spacing:.02em}
.giris h1{font-size:1.25rem; margin-bottom:5px}
.giris p.alt{color:var(--metin-2); font-size:.875rem; margin-bottom:22px}

/* ---------- form ---------- */
.alan{margin-bottom:15px}
.alan label{display:block; font-size:.8125rem; font-weight:550; margin-bottom:6px; color:var(--metin-2)}
.girdi{
  width:100%; padding:10px 12px; border:1px solid var(--cizgi); border-radius:var(--r-k);
  background:var(--ak); transition:border-color .15s, box-shadow .15s;
}
.girdi:focus{outline:none; border-color:var(--marka-ac); box-shadow:0 0 0 3px rgba(45,122,94,.13)}
.girdi:disabled{background:var(--ak-3); color:var(--metin-3)}
textarea.girdi{min-height:88px; resize:vertical; line-height:1.55}
select.girdi{cursor:pointer}
.alan--ikili{display:grid; grid-template-columns:1fr 1fr; gap:13px}
.alan--uclu{display:grid; grid-template-columns:repeat(3,1fr); gap:13px}
.ipucu{font-size:.75rem; color:var(--metin-3); margin-top:5px; line-height:1.45}

/* ---------- düğme ---------- */
.dg{
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:9px 16px; border-radius:var(--r-k); border:1px solid transparent;
  background:var(--marka); color:#fff; font-weight:550; font-size:.875rem;
  cursor:pointer; transition:background .15s, box-shadow .15s, opacity .15s;
  white-space:nowrap;
}
@media (hover:hover){.dg:hover{background:var(--marka-koyu)}}
.dg:disabled{opacity:.5; cursor:not-allowed}
.dg--tam{width:100%; padding:11px}
.dg--cerceve{background:transparent; border-color:var(--cizgi); color:var(--metin)}
@media (hover:hover){.dg--cerceve:hover{background:var(--ak-3); border-color:var(--metin-3)}}
.dg--sade{background:transparent; color:var(--metin-2); padding:7px 10px}
@media (hover:hover){.dg--sade:hover{background:var(--ak-3); color:var(--metin)}}
.dg--tehlike{background:var(--uyari)}
@media (hover:hover){.dg--tehlike:hover{background:#9a3a31}}
.dg--kucuk{padding:6px 11px; font-size:.8125rem}
.dg svg{width:16px; height:16px; flex-shrink:0}

/* ---------- düzen ---------- */
.kabuk{display:grid; grid-template-columns:var(--yan) 1fr; min-height:100dvh}

.yan{
  background:var(--marka-koyu); color:#fff; display:flex; flex-direction:column;
  position:sticky; top:0; height:100dvh;
}
.yan__bas{padding:18px 18px 14px; border-bottom:1px solid rgba(255,255,255,.1)}
.yan__marka{display:flex; align-items:center; gap:12px}
.yan__marka img{display:block; width:94px; height:auto; flex-shrink:0}
.yan__marka span{font-size:.75rem; opacity:.75; line-height:1.25; padding-left:12px; border-left:1px solid rgba(255,255,255,.25)}
.yan__menu{flex:1; overflow-y:auto; padding:12px 10px}
.yan__grup{
  font-size:.6875rem; text-transform:uppercase; letter-spacing:.09em;
  opacity:.5; padding:14px 10px 6px; font-weight:600;
}
.yan__l{
  display:flex; align-items:center; gap:11px; padding:9px 11px; border-radius:var(--r-k);
  color:rgba(255,255,255,.82); font-size:.875rem; font-weight:500;
  cursor:pointer; transition:background .15s, color .15s; border:none; background:none;
  width:100%; text-align:left;
}
@media (hover:hover){.yan__l:hover{background:rgba(255,255,255,.09); color:#fff; text-decoration:none}}
.yan__l.etkin{background:rgba(255,255,255,.15); color:#fff; font-weight:600}
.yan__l svg{width:17px; height:17px; flex-shrink:0; opacity:.9}
.yan__rozet{
  margin-left:auto; background:var(--vurgu); color:#231a08; font-size:.6875rem;
  font-weight:700; padding:1px 7px; border-radius:var(--r-b); min-width:20px; text-align:center;
}
.yan__dip{padding:12px 14px; border-top:1px solid rgba(255,255,255,.1)}
.yan__kim{display:flex; align-items:center; gap:10px; margin-bottom:9px}
.yan__avatar{
  width:32px; height:32px; border-radius:50%; background:var(--marka-ac);
  display:grid; place-items:center; font-weight:650; font-size:.8125rem; flex-shrink:0;
}
.yan__kim b{font-size:.8125rem; display:block; line-height:1.3}
.yan__kim #kimRol{font-size:.6875rem; opacity:.65}

.govde{min-width:0; display:flex; flex-direction:column}
.ust{
  background:var(--ak); border-bottom:1px solid var(--cizgi);
  padding:14px 24px; display:flex; align-items:center; gap:14px;
  position:sticky; top:0; z-index:20;
}
.ust__bas{flex:1; min-width:0}
.ust__bas h1{font-size:1.1875rem}
.ust__bas p{font-size:.8125rem; color:var(--metin-2); margin-top:2px}
.ust__sag{display:flex; align-items:center; gap:9px; flex-shrink:0; position:relative}
.icerik{--icerik-pad:24px; padding:var(--icerik-pad); flex:1; max-width:1500px; width:100%}

.menu-dg{display:none; background:none; border:none; padding:7px; cursor:pointer; border-radius:var(--r-k)}
@media (hover:hover){.menu-dg:hover{background:var(--ak-3)}}
.menu-dg svg{width:21px; height:21px; display:block}

/* ---------- kart ---------- */
.kart{
  background:var(--ak); border:1px solid var(--cizgi-2); border-radius:var(--r);
  box-shadow:var(--golge); margin-bottom:18px; overflow:hidden;
}
.kart__bas{
  padding:15px 18px; border-bottom:1px solid var(--cizgi-2);
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
}
.kart__bas h2,.kart__bas h3{flex:1; min-width:140px}
.kart__bas p{font-size:.8125rem; color:var(--metin-2); width:100%; margin-top:3px}
.kart__ic{padding:18px}
.kart__dip{
  padding:13px 18px; border-top:1px solid var(--cizgi-2); background:var(--ak-2);
  display:flex; gap:9px; justify-content:flex-end; flex-wrap:wrap;
}

/* ---------- istatistik ---------- */
.ist{display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin-bottom:18px}
.ist__k{
  background:var(--ak); border:1px solid var(--cizgi-2); border-radius:var(--r);
  padding:16px 18px; box-shadow:var(--golge);
  transition:transform .14s, box-shadow .14s, border-color .14s;
}
.ist__ad{font-size:.75rem; color:var(--metin-2); font-weight:550; text-transform:uppercase; letter-spacing:.05em}
.ist__sayi{font-size:1.875rem; font-weight:680; line-height:1.1; margin-top:7px; letter-spacing:-.025em}
.ist__alt{font-size:.75rem; color:var(--metin-3); margin-top:4px}

/* yatay kaydırmalı şerit — alt satıra düşmek yerine yana kayar */
.ist-sar{
  margin-bottom:18px; position:relative;
  margin-inline:calc(var(--icerik-pad, 24px) * -1);
  padding-inline:var(--icerik-pad, 24px);
}
.ist--serit{
  display:flex; gap:13px; margin-bottom:0;
  overflow-x:auto; overflow-y:hidden;
  scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
  padding-bottom:6px; scrollbar-width:thin;
}
.ist--serit::-webkit-scrollbar{height:6px}
.ist--serit::-webkit-scrollbar-thumb{background:var(--cizgi); border-radius:var(--r-b)}
.ist--serit::-webkit-scrollbar-track{background:transparent}
.ist--serit .ist__k{
  flex:1 0 182px; min-width:182px; max-width:300px;
  scroll-snap-align:start; position:relative; overflow:hidden;
}
.ist--serit .ist__k:last-child{margin-right:2px}

.ist__ust{display:flex; align-items:center; gap:8px; margin-bottom:2px}
.ist__ikon{
  width:26px; height:26px; border-radius:var(--r-k); flex-shrink:0;
  display:grid; place-items:center;
}
.ist__ust .ist__ad{flex:1; min-width:0}

@media (hover:hover){.ist__k:hover{transform:translateY(-2px); box-shadow:var(--golge-2)}}
.ist__k--secili{box-shadow:0 0 0 2px var(--marka)}

/* renk aileleri — her kutu kendi tonunda */
.ist__k--kehribar{background:#FDF6E7; border-color:#F0DFB5}
.ist__k--kehribar .ist__ikon{background:#F5E3B8; color:#8A6514}
.ist__k--kehribar .ist__sayi{color:#8A6514}

.ist__k--yesil{background:#EDF6F1; border-color:#C9E2D5}
.ist__k--yesil .ist__ikon{background:#CFE6DA; color:var(--marka-koyu)}
.ist__k--yesil .ist__sayi{color:var(--marka-koyu)}

.ist__k--lacivert{background:#EEF2FA; border-color:#C9D6EE}
.ist__k--lacivert .ist__ikon{background:#D3DEF2; color:#2A4580}
.ist__k--lacivert .ist__sayi{color:#2A4580}

.ist__k--mor{background:#F4EFF8; border-color:#DCCCEA}
.ist__k--mor .ist__ikon{background:#E3D6EE; color:#5B3B7A}
.ist__k--mor .ist__sayi{color:#5B3B7A}

.ist__k--turkuaz{background:#EAF5F6; border-color:#BFDFE2}
.ist__k--turkuaz .ist__ikon{background:#CCE6E8; color:#1A5C63}
.ist__k--turkuaz .ist__sayi{color:#1A5C63}

.ist__k--zeytin{background:#F2F4E9; border-color:#D8DEBE}
.ist__k--zeytin .ist__ikon{background:#E0E6C8; color:#5A6420}
.ist__k--zeytin .ist__sayi{color:#5A6420}

.ist__k--kirmizi{background:#FAEFEE; border-color:#EBCBC7}
.ist__k--kirmizi .ist__ikon{background:#F0D7D3; color:#8F3A2F}
.ist__k--kirmizi .ist__sayi{color:#8F3A2F}

.ist__k--gri{background:var(--ak-2); border-color:var(--cizgi-2)}
.ist__k--gri .ist__ikon{background:var(--ak-3); color:var(--metin-2)}

/* bekleyen iş varsa hafif vurgu */
.ist__k--vurgu{box-shadow:var(--golge), inset 0 0 0 1px currentColor}
.ist__k--vurgu .ist__sayi::after{
  content:""; display:inline-block; width:7px; height:7px; border-radius:50%;
  background:currentColor; margin-left:7px; vertical-align:middle;
  animation:nabiz 1.9s ease-in-out infinite;
}
@keyframes nabiz{0%,100%{opacity:1}50%{opacity:.25}}

/* ---------- tablo ---------- */
.tablo-sar{overflow-x:auto; -webkit-overflow-scrolling:touch}
table.tablo{width:100%; border-collapse:collapse; font-size:.875rem; min-width:620px}
.tablo th{
  text-align:left; padding:10px 14px; font-size:.75rem; font-weight:600;
  color:var(--metin-2); text-transform:uppercase; letter-spacing:.05em;
  border-bottom:1px solid var(--cizgi); background:var(--ak-2); white-space:nowrap;
}
.tablo td{padding:12px 14px; border-bottom:1px solid var(--cizgi-2); vertical-align:middle}
@media (hover:hover){.tablo tbody tr:hover{background:var(--ak-2)}}
.tablo tbody tr.tiklanir{cursor:pointer}
.tablo td.sag,.tablo th.sag{text-align:right}
.tablo .kucuk{font-size:.8125rem; color:var(--metin-2)}

/* ---------- rozet ---------- */
.rz{
  display:inline-flex; align-items:center; gap:5px; padding:3px 9px; border-radius:var(--r-b);
  font-size:.75rem; font-weight:600; white-space:nowrap;
}
.rz--yeni{background:var(--bekle-sis); color:var(--bekle)}
.rz--goruldu{background:var(--ak-3); color:var(--metin-2)}
.rz--onaylandi{background:var(--basari-sis); color:var(--basari)}
.rz--iptal{background:var(--uyari-sis); color:var(--uyari)}
.rz--acik{background:var(--marka-sis); color:var(--marka)}
.rz--pasif{background:var(--ak-3); color:var(--metin-3)}
.rz--kp-kapali{background:#FAEFEE; color:#8F3A2F}
.rz--kp-bakim{background:#F8EDDC; color:#7A4308}
.rz--kp-rezervasyon{background:#EEF2FA; color:#2A4580}
.rz--kp-diger{background:var(--ak-3); color:#46514B}

/* ---------- sekme ---------- */
.sekmeler{display:flex; gap:3px; border-bottom:1px solid var(--cizgi); margin-bottom:18px; overflow-x:auto}
.sekme{
  padding:9px 15px; border:none; background:none; cursor:pointer; font-size:.875rem;
  font-weight:550; color:var(--metin-2); border-bottom:2px solid transparent;
  margin-bottom:-1px; white-space:nowrap; transition:color .15s, border-color .15s;
}
@media (hover:hover){.sekme:hover{color:var(--metin)}}
.sekme.etkin{color:var(--marka); border-bottom-color:var(--marka)}

/* ---------- araç çubuğu ---------- */
.arac{display:flex; gap:9px; flex-wrap:wrap; align-items:center; margin-bottom:16px}
.arac .girdi{width:auto; min-width:185px}
.arac__bosluk{flex:1}
.isl__seg{display:inline-flex; gap:0}
.isl__seg .dg{border-radius:0; margin-left:-1px}
.isl__seg .dg:first-child{border-radius:8px 0 0 8px; margin-left:0}
.isl__seg .dg:last-child{border-radius:0 8px 8px 0}
@media (hover:hover){.dg.dg--secili,.dg.dg--secili:hover,.dg.dg--secili:focus-visible{background:var(--marka); border-color:var(--marka); color:#fff}}
@media (hover:hover){.dg.dg--secili:hover{background:var(--marka-koyu); border-color:var(--marka-koyu)}}
.dg.dg--secili:focus-visible{outline:2px solid var(--marka-koyu); outline-offset:2px}
.isl__tarih{display:inline-flex; align-items:center; gap:6px; font-size:.8125rem}
.isl__baslik{font-size:.875rem; white-space:nowrap}
.isl__sadece{display:flex; align-items:center; gap:6px; margin:0 0 12px; font-size:.875rem}
.isl__uyari{margin-bottom:12px}
@media print{.isl__sadece,.isl__uyari{display:none !important}}
@media (max-width:640px){.isl__tarih{width:100%}.isl__tarih .girdi{flex:1}}

/* ---------- ekip üyesi penceresi: hazır rol çipleri + yetki tablosu ---------- */
.pencere.pencere--dar{width:min(520px,100%)}
.pencere--dar .pencere__ic{padding:16px 20px}
.pencere--dar .pencere__dip .dg{min-width:92px}
.ekip-form .alan{margin-bottom:10px}
.ekip-etiket{font-size:.8125rem; font-weight:550; color:var(--metin-2)}
.sifre-sar{display:flex; gap:8px}
.sifre-sar .girdi{flex:1; min-width:0}
.sifre-goster{min-width:76px}
.ekip-rol{margin:4px 0 14px}
.ekip-rol__bas{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:7px}
.ekip-cipler{display:flex; flex-wrap:wrap; gap:7px}
.ekip-cip{
  padding:6px 12px; border:1px solid var(--cizgi); border-radius:var(--r-b); background:var(--ak);
  font-size:.8125rem; font-weight:550; cursor:pointer; transition:border-color .15s, background .15s;
}
@media (hover:hover){.ekip-cip:hover{border-color:var(--marka-ac); background:var(--marka-sis)}}
.ekip-cip.secili{background:var(--marka); border-color:var(--marka); color:#fff}
.ekip-cip:focus-visible,.seg__dg:focus-visible,.anahtar input:focus-visible + .anahtar__iz{outline:2px solid var(--marka-ac); outline-offset:2px}
.ekip-rol-not{min-height:1.2em; margin-top:7px}
.anahtar{display:inline-flex; align-items:center; gap:8px; font-size:.8125rem; font-weight:550; color:var(--metin-2); cursor:pointer}
.anahtar input{position:absolute; opacity:0; width:1px; height:1px}
.anahtar__iz{position:relative; width:34px; height:20px; border-radius:var(--r-b); background:var(--cizgi); transition:background .15s; flex-shrink:0}
.anahtar__iz::after{content:''; position:absolute; top:2px; left:2px; width:16px; height:16px; border-radius:50%; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.25); transition:transform .15s}
.anahtar input:checked + .anahtar__iz{background:var(--marka)}
.anahtar input:checked + .anahtar__iz::after{transform:translateX(14px)}
.ekip-yetki{border-top:1px solid var(--cizgi-2); padding-top:12px}
.yt-grup__ad{font-size:.6875rem; font-weight:650; color:var(--metin-3); text-transform:uppercase; letter-spacing:.06em; margin:8px 0 0}
.yt-satir{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:5px 0; border-bottom:1px solid var(--cizgi-2)}
.yt-satir__ad{min-width:0; display:flex; flex-direction:column}
.yt-satir__ad b{font-size:.875rem; font-weight:600; line-height:1.3}
.yt-satir__ad span{font-size:.75rem; color:var(--metin-3); line-height:1.35; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.seg{display:inline-flex; flex-shrink:0; border:1px solid var(--cizgi); border-radius:var(--r-k); overflow:hidden; background:var(--ak)}
.seg__dg{
  min-width:62px; padding:5px 10px; border:0; border-left:1px solid var(--cizgi); background:transparent;
  font-size:.8125rem; font-weight:550; color:var(--metin-2); cursor:pointer; transition:background .12s, color .12s;
}
.seg__dg:first-child{border-left:0}
@media (hover:hover){.seg__dg:hover{background:var(--marka-sis); color:var(--marka-koyu)}}
.seg__dg[aria-checked="true"]{background:var(--marka); color:#fff}
.seg__dg[data-sev="0"][aria-checked="true"]{background:var(--ak-3); color:var(--metin-2)}
@media (max-width:620px){
  .pencere--dar .pencere__ic{padding:14px 16px}
  .pencere--dar .pencere__dip{flex-direction:row; flex-wrap:nowrap}
  .pencere--dar .pencere__dip .dg{flex:1; width:auto; min-width:0}
  .yt-satir__ad span{display:none}
  .yt-satir{min-height:48px}
  .seg__dg{min-width:56px; min-height:44px; padding:5px 8px}
  .ekip-cip{min-height:44px}
  .sifre-goster{min-height:44px}
  .anahtar{min-height:44px}
}
@media (pointer:coarse){.seg__dg,.ekip-cip,.sifre-goster,.anahtar{min-height:44px}}

/* ---------- yetki kutuları ---------- */
.yetki-liste{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:8px}
.onay{
  display:flex; align-items:center; gap:9px; padding:9px 11px;
  border:1px solid var(--cizgi); border-radius:var(--r-k); cursor:pointer;
  font-size:.875rem; transition:border-color .15s, background .15s;
}
@media (hover:hover){.onay:hover{border-color:var(--marka-ac); background:var(--marka-sis)}}
.onay input{width:16px; height:16px; accent-color:var(--marka); cursor:pointer; flex-shrink:0}
.onay.secili{border-color:var(--marka-ac); background:var(--marka-sis)}

/* ---------- görsel ızgarası ---------- */
.gorsel-izgara{display:grid; grid-template-columns:repeat(auto-fill,minmax(132px,1fr)); gap:11px}
.gorsel-k{
  position:relative; border:1px solid var(--cizgi); border-radius:var(--r-k);
  overflow:hidden; background:var(--ak-3); cursor:grab;
}
.gorsel-k img{width:100%; aspect-ratio:4/3; object-fit:cover}
.gorsel-k__ad{font-size:.6875rem; padding:5px 7px; color:var(--metin-2); word-break:break-all; line-height:1.3}
.gorsel-k__arac{position:absolute; top:5px; right:5px; display:flex; gap:4px; opacity:0; transition:opacity .15s}
@media (hover:hover){.gorsel-k:hover .gorsel-k__arac, .gorsel-k:focus-within .gorsel-k__arac{opacity:1}}
@media (hover:none){.gorsel-k__arac{opacity:1}}
.gorsel-k__dg{
  width:25px; height:25px; border-radius:var(--r-k); border:none; cursor:pointer;
  background:rgba(0,0,0,.65); color:#fff; display:grid; place-items:center;
}
@media (hover:hover){.gorsel-k__dg:hover{background:rgba(0,0,0,.85)}}
.gorsel-k__dg svg{width:13px; height:13px}
.gorsel-k.kapak{border-color:var(--marka); border-width:2px}
.gorsel-k__etiket{
  position:absolute; top:5px; left:5px; background:var(--marka); color:#fff;
  font-size:.625rem; font-weight:700; padding:2px 6px; border-radius:var(--r-b);
}
.gorsel-k.suruklenen{opacity:.4}

.birak-alan{
  border:2px dashed var(--cizgi); border-radius:var(--r); padding:26px;
  text-align:center; color:var(--metin-2); font-size:.875rem;
  transition:border-color .15s, background .15s; cursor:pointer;
}
@media (hover:hover){.birak-alan:hover,.birak-alan.uzerinde{border-color:var(--marka-ac); background:var(--marka-sis)}}

/* ---------- kalıcı pencere ---------- */
.perde{
  position:fixed; inset:0; background:rgba(16,24,20,.55); z-index:100;
  display:grid; place-items:center; padding:20px; overflow-y:auto;
}
.pencere{
  background:var(--ak); border-radius:12px; width:min(720px,100%);
  box-shadow:var(--golge-2); max-height:92dvh; display:flex; flex-direction:column;
  margin:auto;
}
.pencere--genis{width:min(1000px,100%)}
.pencere__bas{
  padding:16px 20px; border-bottom:1px solid var(--cizgi-2);
  display:flex; align-items:center; gap:12px;
}
.pencere__bas h2{flex:1}
.pencere__ic{padding:20px; overflow-y:auto; flex:1}
.pencere__dip{
  padding:14px 20px; border-top:1px solid var(--cizgi-2); background:var(--ak-2);
  display:flex; gap:9px; justify-content:flex-end; flex-wrap:wrap;
}
.kapat-dg{
  background:none; border:none; cursor:pointer; padding:5px; border-radius:var(--r-k);
  color:var(--metin-2); display:grid; place-items:center;
}
@media (hover:hover){.kapat-dg:hover{background:var(--ak-3); color:var(--metin)}}
.kapat-dg svg{width:19px; height:19px}

/* ---------- bildirim ---------- */
.bildirimler{position:fixed; top:16px; right:16px; z-index:200; display:flex; flex-direction:column; gap:9px}
.bildirim{
  background:var(--ak); border:1px solid var(--cizgi); border-left:3px solid var(--marka);
  border-radius:var(--r-k); padding:11px 15px; box-shadow:var(--golge-2);
  font-size:.875rem; max-width:360px; animation:kay .25s ease;
}
.bildirim--basari{border-left-color:var(--basari)}
.bildirim--hata{border-left-color:var(--uyari)}
@keyframes kay{from{opacity:0; transform:translateX(18px)} to{opacity:1; transform:none}}

/* ---------- çeşitli ---------- */
.bos{text-align:center; padding:44px 20px; color:var(--metin-2)}
.bos svg{width:40px; height:40px; opacity:.28; margin-bottom:11px}
.bos p{font-size:.875rem}
.yukleniyor{text-align:center; padding:36px; color:var(--metin-3); font-size:.875rem}
.hata-kutu{
  background:var(--uyari-sis); border:1px solid #F0CFCB; color:var(--uyari);
  padding:11px 14px; border-radius:var(--r-k); font-size:.875rem; margin-bottom:15px;
}
.bilgi-kutu{
  background:var(--marka-sis); border:1px solid #CFE2D8; color:var(--marka-koyu);
  padding:11px 14px; border-radius:var(--r-k); font-size:.875rem; margin-bottom:15px;
}
.ayrac{height:1px; background:var(--cizgi-2); margin:18px 0}
.satir{display:flex; gap:11px; align-items:center; flex-wrap:wrap}
.liste-bos{color:var(--metin-3); font-size:.875rem; padding:14px 0}

/* grafik */
.grafik{width:100%; height:230px; display:block}
.gosterge{display:flex; gap:16px; flex-wrap:wrap; font-size:.8125rem; color:var(--metin-2); margin-top:11px}
.gosterge span{display:flex; align-items:center; gap:6px}
.gosterge i{width:11px; height:11px; border-radius:3px; display:block}

/* çubuk liste */
.cubuk-l{display:flex; flex-direction:column; gap:11px}
.cubuk{display:grid; grid-template-columns:1fr auto; gap:5px; align-items:center}
.cubuk__ad{font-size:.875rem; font-weight:500}
.cubuk__sayi{font-size:.8125rem; color:var(--metin-2); font-variant-numeric:tabular-nums}
.cubuk__cizgi{grid-column:1/-1; height:6px; background:var(--ak-3); border-radius:var(--r-b); overflow:hidden}
.cubuk__dolu{height:100%; background:var(--marka); border-radius:var(--r-b)}

/* ---------- duyarlı ---------- */
@media (max-width:1000px){
  .kabuk{grid-template-columns:1fr}
  .yan{
    position:fixed; left:0; top:0; bottom:0; width:270px; z-index:60;
    transform:translateX(-100%); transition:transform .22s ease;
  }
  .yan.acik{transform:none; box-shadow:var(--golge-2)}
  .menu-dg{display:grid; place-items:center}
  .yan-perde{position:fixed; inset:0; background:rgba(16,24,20,.5); z-index:50}
  .icerik{--icerik-pad:16px}
  .ust{padding:12px 16px}
}
@media (max-width:620px){
  .ist{grid-template-columns:repeat(2,1fr); gap:11px}
  .ist__sayi{font-size:1.5rem}
  .alan--ikili,.alan--uclu{grid-template-columns:1fr}
  .arac .girdi{width:100%; min-width:0}
  .arac__bosluk{display:none}
  .kart__dip,.pencere__dip{flex-direction:column-reverse}
  .kart__dip .dg,.pencere__dip .dg{width:100%}
  .gorsel-izgara{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
  .perde{padding:0; align-items:flex-end; grid-template-columns:minmax(0,1fr)}
  .pencere{border-radius:14px 14px 0 0; max-height:94dvh; width:100%; min-width:0; margin:auto 0 0}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important; transition-duration:.01ms !important}
}

/* video öğesi */
.gorsel-k video{width:100%; aspect-ratio:4/3; object-fit:cover; display:block; background:#000}
.gorsel-k__video{
  position:absolute; bottom:26px; left:5px;
  background:rgba(0,0,0,.72); color:#fff;
  font-size:.5625rem; font-weight:700; letter-spacing:.06em;
  padding:2px 6px; border-radius:var(--r-b);
}
.gorsel-k.video{border-color:var(--metin-3)}

/* ---------- müsaitlik takvimi ---------- */
.tkv-izgara{display:grid; grid-template-columns:repeat(auto-fit,minmax(248px,1fr)); gap:22px}
.tkv__bas{
  font-weight:650; font-size:.9375rem; text-align:center;
  margin-bottom:11px; letter-spacing:-.01em;
}
.tkv__gunler{display:grid; grid-template-columns:repeat(7,1fr); gap:3px}
.tkv__gad{
  text-align:center; font-size:.6875rem; font-weight:600; color:var(--metin-3);
  padding-bottom:5px; text-transform:uppercase; letter-spacing:.03em;
}
.tkv__bos{aspect-ratio:1}
.tkv__g{
  aspect-ratio:1; border:1px solid var(--cizgi-2); border-radius:var(--r-k);
  background:var(--ak); color:var(--metin); font-size:.8125rem; font-weight:500;
  cursor:pointer; display:grid; place-items:center; padding:0;
  transition:border-color .13s, background .13s, transform .13s;
  font-variant-numeric:tabular-nums;
}
@media (hover:hover){.tkv__g:hover{border-color:var(--marka-ac); transform:scale(1.07); z-index:2}}
.tkv__g.rez{
  background:#E8A317; border-color:#C98908; color:#2B1D02;
  font-weight:700; box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);
}
@media (hover:hover){.tkv__g.rez:hover{background:#D4940F; border-color:#A8730A}}
/* kapalı günler: sebebe göre renk (.kp-<sebep>); metin/zemin kontrastı AA (≥4.5) */
.kp-kapali{--kp-bg:#B04A3D; --kp-bd:#8F3A2F; --kp-ho:#9A3F33}
.kp-bakim{--kp-bg:#A85A0C; --kp-bd:#7A4308; --kp-ho:#94500A}
.kp-rezervasyon{--kp-bg:#2A4580; --kp-bd:#1D3260; --kp-ho:#223A6C}
.kp-diger{--kp-bg:#5F6B64; --kp-bd:#46514B; --kp-ho:#515C56}
.tkv__g.kapali{
  background:var(--kp-bg,#B04A3D); border-color:var(--kp-bd,#8F3A2F); color:#fff;
  font-weight:700; box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
@media (hover:hover){.tkv__g.kapali:hover{background:var(--kp-ho,#9A3F33); border-color:var(--kp-bd,#8F3A2F)}}
.gosterge i.kp-kapali,.gosterge i.kp-bakim,.gosterge i.kp-rezervasyon,.gosterge i.kp-diger{background:var(--kp-bg)}
.tkv__g.gecmis{background:var(--ak-3); color:var(--metin-3); cursor:default; opacity:.55}
@media (hover:hover){.tkv__g.gecmis:hover{transform:none; border-color:var(--cizgi-2)}}
.tkv__g.bugun{box-shadow:0 0 0 2px var(--marka), 0 0 0 4px rgba(31,92,70,.18)}
.tkv__g.bugun.rez,.tkv__g.bugun.kapali{box-shadow:0 0 0 2px var(--marka-koyu)}
.gosterge i.cerceveli{border:1px solid var(--cizgi)}
.gosterge i{width:13px; height:13px; border-radius:4px}

/* ---------- zaman çizelgesi ---------- */
.cizelge-grup{margin-bottom:26px}
.cizelge-grup:last-child{margin-bottom:0}
.cizelge-gun{
  font-size:.75rem; font-weight:650; color:var(--metin-2);
  text-transform:uppercase; letter-spacing:.06em; margin-bottom:12px;
  padding-bottom:7px; border-bottom:1px solid var(--cizgi-2);
}
.cizelge{display:flex; flex-direction:column; gap:2px}
.cizelge__s{
  display:grid; grid-template-columns:30px 1fr auto; gap:12px;
  align-items:flex-start; padding:9px 7px; border-radius:var(--r-k);
  transition:background .13s;
}
@media (hover:hover){.cizelge__s:hover{background:var(--ak-2)}}
.cizelge__i{
  width:28px; height:28px; border-radius:50%; display:grid; place-items:center;
  background:var(--marka-sis); color:var(--marka); flex-shrink:0;
}
.cizelge__i.uyari{background:var(--uyari-sis); color:var(--uyari)}
.cizelge__g{min-width:0}
.cizelge__b{font-size:.875rem; line-height:1.45}
.cizelge__b b{font-weight:600; margin-right:5px}
.cizelge__b span{color:var(--metin-2)}
.cizelge__d{
  font-size:.75rem; color:var(--metin-3); margin-top:2px;
  overflow-wrap:anywhere; line-height:1.45;
}
.cizelge__z{
  font-size:.75rem; color:var(--metin-3); white-space:nowrap;
  font-variant-numeric:tabular-nums; padding-top:2px;
}

@media (max-width:620px){
  .tkv-izgara{grid-template-columns:1fr; gap:18px}
  .cizelge__s{grid-template-columns:26px 1fr; gap:9px}
  .cizelge__z{grid-column:2; font-size:.6875rem}
  .cizelge__i{width:24px; height:24px}
}

/* ==========================================================================
   ÖĞE KARTLARI — kampanya, içerik gibi tekrarlı düzenleme blokları
   ========================================================================== */
.oge-liste{display:flex; flex-direction:column; gap:16px}

.oge{
  border:1px solid var(--cizgi); border-radius:var(--r);
  background:var(--ak); overflow:hidden;
  transition:border-color .15s, box-shadow .15s;
}
@media (hover:hover){.oge:hover{border-color:var(--metin-3); box-shadow:var(--golge)}}
.oge--pasif{background:var(--ak-2); border-style:dashed}
.oge--pasif .oge__gorsel img{opacity:.55; filter:grayscale(.35)}

/* başlık şeridi */
.oge__bas{
  display:flex; align-items:center; gap:12px;
  padding:11px 14px; background:var(--marka-sis);
  border-bottom:1px solid var(--cizgi-2); flex-wrap:wrap;
}
.oge--pasif .oge__bas{background:var(--ak-3)}
.oge__no{
  width:25px; height:25px; border-radius:var(--r-k); flex-shrink:0;
  background:var(--marka); color:#fff; display:grid; place-items:center;
  font-size:.75rem; font-weight:700; font-variant-numeric:tabular-nums;
}
.oge--pasif .oge__no{background:var(--metin-3)}
.oge__ad{flex:1; min-width:130px}
.oge__ad b{display:block; font-size:.9375rem; font-weight:650; line-height:1.3}
.oge__ad span{
  display:block; font-size:.75rem; color:var(--metin-2); margin-top:1px;
  text-transform:uppercase; letter-spacing:.05em;
}
.oge__arac{display:flex; gap:4px; align-items:center; flex-wrap:wrap}

/* gövde: görsel | metin | ayar */
.oge__ic{
  display:grid; grid-template-columns:190px minmax(0,1fr) 208px;
  gap:0; align-items:stretch;
}
.oge__gorsel,.oge__metin,.oge__ayar{padding:16px}
.oge__gorsel{border-right:1px solid var(--cizgi-2); background:var(--ak-2)}
.oge__ayar{border-left:1px solid var(--cizgi-2); background:var(--ak-2)}

.oge__gorsel img{
  width:100%; aspect-ratio:16/9; object-fit:cover;
  border-radius:var(--r-k); margin-bottom:10px;
  border:1px solid var(--cizgi-2);
}
.oge__gorsel--kare img{aspect-ratio:1}
.oge__gorsel-bos{
  width:100%; aspect-ratio:16/9; border-radius:var(--r-k);
  border:1px dashed var(--cizgi); background:var(--ak);
  display:grid; place-items:center; margin-bottom:10px;
  color:var(--metin-3); font-size:.8125rem;
}
.oge__gorsel--kare .oge__gorsel-bos{aspect-ratio:1}
.oge__gorsel .dg{width:100%}

.oge__etiket{
  font-size:.6875rem; font-weight:650; color:var(--metin-2);
  text-transform:uppercase; letter-spacing:.07em; margin-bottom:11px;
  padding-bottom:6px; border-bottom:1px solid var(--cizgi-2);
}
.oge__metin .alan:last-child,.oge__ayar .alan:last-child{margin-bottom:0}

/* ikinci dil blokları */
.oge__dil{margin-top:13px; border-top:1px solid var(--cizgi-2); padding-top:11px}
.oge__dil summary{
  cursor:pointer; font-size:.8125rem; font-weight:550; color:var(--marka);
  list-style:none; display:flex; align-items:center; gap:6px; padding:4px 0;
}
.oge__dil summary::-webkit-details-marker{display:none}
.oge__dil summary::before{
  content:"›"; font-size:1.1rem; line-height:1; transition:transform .15s;
  display:inline-block;
}
.oge__dil[open] summary::before{transform:rotate(90deg)}
@media (hover:hover){.oge__dil summary:hover{text-decoration:underline}}
.oge__dil-blok{
  margin-top:13px; padding:13px; background:var(--ak-2);
  border:1px solid var(--cizgi-2); border-radius:var(--r-k);
}

@media (max-width:980px){
  .oge__ic{grid-template-columns:1fr}
  .oge__gorsel{border-right:none; border-bottom:1px solid var(--cizgi-2)}
  .oge__ayar{border-left:none; border-top:1px solid var(--cizgi-2)}
  .oge__gorsel img,.oge__gorsel-bos{max-width:300px}
}
@media (max-width:620px){
  .oge__bas{padding:10px 11px}
  .oge__arac{width:100%; justify-content:flex-end}
  .oge__gorsel,.oge__metin,.oge__ayar{padding:13px}
}

/* ==========================================================================
   TABLO — satır ve sütun ayrımı belirginleştirildi
   ========================================================================== */
table.tablo th{
  background:var(--marka-sis); color:var(--marka-koyu);
  border-bottom:2px solid #CFE2D8; font-weight:650;
}
table.tablo th + th{border-left:1px solid #DCE9E2}
table.tablo td + td{border-left:1px solid var(--cizgi-2)}
table.tablo tbody tr:nth-child(even){background:var(--ak-2)}
@media (hover:hover){table.tablo tbody tr:hover{background:var(--marka-sis)}}
table.tablo tbody tr{border-bottom:1px solid var(--cizgi)}
table.tablo tbody tr:last-child{border-bottom:none}
table.tablo td{padding:13px 14px}

/* ilk sütun vurgulu */
table.tablo tbody td:first-child{font-weight:600}

/* görsel sıra numarası */
.gorsel-k__sira{
  position:absolute; bottom:26px; right:5px;
  background:rgba(0,0,0,.65); color:#fff;
  font-size:.625rem; font-weight:700;
  width:18px; height:18px; border-radius:50%;
  display:grid; place-items:center; font-variant-numeric:tabular-nums;
}
.gorsel-k.kapak .gorsel-k__sira{background:var(--marka)}

/* özellik grupları */
.ozellik-grup{margin-bottom:16px}
.ozellik-grup:last-child{margin-bottom:0}

/* ---------- doluluk grafiği ---------- */
.dol-aylar{
  display:grid; grid-auto-flow:column; grid-auto-columns:1fr;
  gap:7px; align-items:end; min-height:180px; overflow-x:auto; padding-bottom:4px;
}
.dol-ay{display:flex; flex-direction:column; align-items:center; gap:5px; min-width:38px}
.dol-ay__cubuk{
  width:100%; max-width:46px; height:130px; background:var(--ak-3);
  border-radius:var(--r-k); display:flex; align-items:flex-end; overflow:hidden;
}
.dol-ay__dolu{
  width:100%; background:linear-gradient(to top,var(--marka),var(--marka-ac));
  border-radius:var(--r-k); min-height:2px; transition:height .3s;
}
.dol-ay__oran{font-size:.75rem; font-weight:650; font-variant-numeric:tabular-nums}
.dol-ay__ad{font-size:.6875rem; color:var(--metin-2); white-space:nowrap}

.dol-mini{
  width:62px; height:6px; background:var(--ak-3); border-radius:var(--r-b);
  display:inline-block; margin-right:8px; overflow:hidden; vertical-align:middle;
}
.dol-mini__dolu{height:100%; background:var(--marka); border-radius:var(--r-b)}

/* ---------- geri bildirim ---------- */
.gb__ic{display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:0}
.gb__mesaj,.gb__yan{padding:16px}
.gb__yan{border-left:1px solid var(--cizgi-2); background:var(--ak-2)}
.gb__metin{
  font-size:.9375rem; line-height:1.65; white-space:pre-wrap;
  overflow-wrap:anywhere; color:var(--metin);
}
.gb__bilgi{
  display:flex; justify-content:space-between; gap:11px;
  padding:6px 0; border-bottom:1px solid var(--cizgi-2); font-size:.8125rem;
}
.gb__bilgi:last-of-type{border-bottom:none}
.gb__bilgi span{color:var(--metin-2); flex-shrink:0}
.gb-puan{display:inline-flex; gap:2px; vertical-align:middle; color:var(--vurgu)}
.gb-puan__y{width:15px; height:15px; fill:none; stroke:var(--cizgi); stroke-width:1.6; stroke-linejoin:round}
.gb-puan__y--dolu{fill:currentColor; stroke:currentColor}

@media (max-width:860px){
  .gb__ic{grid-template-columns:1fr}
  .gb__yan{border-left:none; border-top:1px solid var(--cizgi-2)}
}

/* tek ay doluluk şeridi */
.dol-serit{
  display:flex; height:46px; border-radius:var(--r-k); overflow:hidden;
  border:1px solid var(--cizgi-2); background:var(--ak-3);
}
.dol-serit__p{
  display:grid; place-items:center; font-size:.8125rem; font-weight:650;
  transition:width .3s; min-width:0; overflow:hidden;
}
.dol-serit__p--dolu{background:var(--marka); color:#fff}
.dol-serit__p--kapali{background:#B04A3D; color:#fff}
.dol-serit__p--musait{background:var(--ak-3); color:var(--metin-2)}

.dol-ay{transition:transform .13s}
@media (hover:hover){.dol-ay:hover{transform:translateY(-2px)}}
@media (hover:hover){.dol-ay:hover .dol-ay__cubuk{box-shadow:0 0 0 2px var(--marka-ac)}}

/* ==========================================================================
   YORUM KARTLARI — öneri ve değerlendirme
   ========================================================================== */
.yrm-liste{display:flex; flex-direction:column; gap:14px}

.yrm{
  background:var(--ak); border:1px solid var(--cizgi-2); border-radius:var(--r);
  padding:18px 20px; box-shadow:var(--golge);
  transition:border-color .15s, box-shadow .15s;
}
@media (hover:hover){.yrm:hover{border-color:var(--cizgi); box-shadow:var(--golge-2)}}
.yrm--arsiv{opacity:.62; background:var(--ak-2)}

.yrm__ust{display:flex; align-items:flex-start; gap:13px; margin-bottom:13px}
.yrm__avatar{
  width:42px; height:42px; border-radius:50%; flex-shrink:0;
  background:linear-gradient(140deg,var(--marka-ac),var(--marka));
  color:#fff; display:grid; place-items:center;
  font-size:1.0625rem; font-weight:650;
}
.yrm__kim{flex:1; min-width:0}
.yrm__kim b{display:block; font-size:.9375rem; font-weight:650; line-height:1.35}
.yrm__alt{
  display:flex; align-items:center; gap:7px; flex-wrap:wrap;
  font-size:.8125rem; color:var(--metin-2); margin-top:3px;
}
.yrm__yildiz{letter-spacing:1px}
.yrm__etiketler{display:flex; gap:5px; flex-wrap:wrap; justify-content:flex-end; flex-shrink:0}

.yrm__metin{
  font-size:.9375rem; line-height:1.7; color:var(--metin);
  white-space:pre-wrap; overflow-wrap:anywhere; margin-bottom:14px;
  padding-left:55px;
}

.yrm__arac{
  display:flex; gap:6px; flex-wrap:wrap; padding-left:55px;
  padding-bottom:13px; border-bottom:1px solid var(--cizgi-2);
}
.yrm__arac a{text-decoration:none}

.yrm__yonetim{
  display:flex; gap:13px; align-items:flex-end; flex-wrap:wrap;
  padding-top:13px; padding-left:55px;
}
.yrm__alan{min-width:135px}
.yrm__alan--genis{flex:1; min-width:190px}
.yrm__alan label{
  display:block; font-size:.6875rem; font-weight:600; color:var(--metin-2);
  text-transform:uppercase; letter-spacing:.05em; margin-bottom:5px;
}
.yrm__yonetim .onay{margin-bottom:0; align-self:flex-end; height:40px}

@media (max-width:620px){
  .yrm{padding:15px}
  .yrm__metin,.yrm__arac,.yrm__yonetim{padding-left:0}
  .yrm__etiketler{justify-content:flex-start; width:100%; margin-top:7px}
  .yrm__ust{flex-wrap:wrap}
  .yrm__alan,.yrm__alan--genis{width:100%; min-width:0}
}

/* ==========================================================================
   DİL BLOKLARI — çok dilli metin girişi
   ========================================================================== */
.dil-blok{
  border:1px solid var(--cizgi); border-radius:var(--r);
  margin-bottom:18px; overflow:hidden; background:var(--ak);
}
.dil-blok:last-child{margin-bottom:0}

.dil-blok__bas{
  display:flex; align-items:center; gap:10px;
  padding:11px 15px; border-bottom:1px solid var(--cizgi-2);
  background:var(--ak-2);
}
.dil-blok__bas b{font-size:.9375rem; font-weight:650; flex:1}
.dil-blok__kod{
  font-size:.6875rem; font-weight:700; letter-spacing:.07em;
  color:var(--metin-2); background:var(--ak-3);
  padding:3px 8px; border-radius:var(--r-b);
}
.dil-blok__ic{padding:16px}
.dil-blok__ic .alan:last-child{margin-bottom:0}

/* her dil kendi şerit rengiyle */
.dil-blok--tr{border-left:4px solid #C8372D}
.dil-blok--tr .dil-blok__bas{background:#FDF2F1}
.dil-blok--en{border-left:4px solid #1F4B99}
.dil-blok--en .dil-blok__bas{background:#F1F4FA}
.dil-blok--ru{border-left:4px solid #5B6AA8}
.dil-blok--ru .dil-blok__bas{background:#F2F3F9}
.dil-blok--de{border-left:4px solid #B8891A}
.dil-blok--de .dil-blok__bas{background:#FBF6EB}

/* kampanya içindeki açılır dil bölümü */
.oge__dil .dil-blok{margin-top:13px}
.oge__dil summary{font-size:.875rem}

/* ==========================================================================
   TAMAMLANMA GÖSTERGESİ
   ========================================================================== */
.tmm{
  background:var(--ak-2); border:1px solid var(--cizgi);
  border-radius:var(--r-k); padding:12px 14px; margin-bottom:16px;
}
.tmm__ust{display:flex; align-items:center; gap:10px; margin-bottom:8px}
.tmm__yazi{flex:1; font-size:.8125rem; font-weight:550; color:var(--metin-2)}
.tmm__oran{
  font-size:.9375rem; font-weight:700; font-variant-numeric:tabular-nums;
  color:var(--bekle);
}
.tmm__cubuk{
  height:6px; background:var(--ak-3); border-radius:var(--r-b); overflow:hidden;
}
.tmm__dolu{
  height:100%; width:0; border-radius:var(--r-b);
  background:linear-gradient(90deg,#D8A62E,var(--marka-ac));
  transition:width .25s ease;
}
.tmm__eksik{
  margin-top:9px; font-size:.75rem; color:var(--uyari); line-height:1.5;
}
.tmm__eksik b{font-weight:650}

.tmm--tam{background:var(--basari-sis); border-color:#BFDFCD}
.tmm--tam .tmm__oran{color:var(--basari)}
.tmm--tam .tmm__yazi{color:var(--basari)}
.tmm--tam .tmm__dolu{background:var(--basari)}

/* eksik alan vurgusu */
.girdi--eksik{border-color:#E8B4AE !important; background:#FDF7F6}
.girdi--eksik:focus{border-color:var(--uyari) !important; box-shadow:0 0 0 3px rgba(180,68,58,.12) !important}

/* dil bloğu durumu */
.dil-blok__durum{
  font-size:.6875rem; font-weight:650; padding:2px 8px; border-radius:var(--r-b);
  background:var(--uyari-sis); color:var(--uyari); white-space:nowrap;
}
.dil-blok__durum.tamam{background:var(--basari-sis); color:var(--basari)}
.dil-blok--eksik{border-color:#E8B4AE}
.dil-blok--tamam .dil-blok__bas{position:relative}

/* ---------- müsaitlik: zaman çizelgesi (konut x 60 gün) ---------- */
.gnt{min-width:900px; position:relative; font-size:.75rem}
.gnt__s{display:grid; grid-template-columns:150px minmax(0,1fr); border-bottom:1px solid var(--cizgi-2)}
.gnt__s:last-child{border-bottom:none}
.gnt__ad{
  padding:9px 12px; font-weight:600; font-size:.8125rem; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis; background:var(--ak-2);
  border-right:1px solid var(--cizgi-2); position:sticky; left:0; z-index:3;
}
.gnt__iz{
  position:relative; height:38px;
  background-image:repeating-linear-gradient(to right, transparent 0,
    transparent calc(100% / var(--gun) - 1px), var(--cizgi-2) calc(100% / var(--gun) - 1px),
    var(--cizgi-2) calc(100% / var(--gun)));
}
.gnt__iz--bas{height:auto; background:none}
.gnt__aylar,.gnt__gunler{display:grid}
.gnt__aylar span{
  font-weight:650; font-size:.75rem; padding:5px 6px; color:var(--marka-koyu);
  background:var(--marka-sis); border-left:1px solid #DCE9E2; white-space:nowrap; overflow:hidden;
}
.gnt__gunler span{
  text-align:center; font-size:.625rem; color:var(--metin-3); padding:4px 0;
  font-variant-numeric:tabular-nums;
}
.gnt__gunler span.bugun{color:var(--marka); font-weight:700}
.gnt__b{
  position:absolute; top:5px; bottom:5px; border-radius:5px; padding:0 6px;
  display:flex; align-items:center; overflow:hidden; white-space:nowrap;
  font-size:.6875rem; font-weight:600; z-index:1; min-width:4px;
}
.gnt__b span{overflow:hidden; text-overflow:ellipsis}
.gnt__b--rez{background:#E8A317; color:#2B1D02; border:1px solid #C98908; cursor:pointer}
.gnt__b--kapali{background:var(--kp-bg,#B04A3D); color:#fff; border:1px solid var(--kp-bd,#8F3A2F); cursor:pointer}
.gnt--bugunlu .gnt__s:not(.gnt__s--bas) .gnt__iz::after{
  content:''; position:absolute; left:var(--bugun); top:0; bottom:0; width:2px;
  background:var(--marka); opacity:.55; z-index:2; pointer-events:none;
}

/* ---------- fiyat hesaplama ---------- */
.hsp__form{display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:13px}
.hsp__form .alan{margin-bottom:0}
.hsp__ozet{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:14px; margin-bottom:18px}
.hsp__liste{margin:6px 0 0; padding-left:18px}
.hsp__top td{font-weight:600; background:var(--ak-2)}
.hsp__top--son td{font-size:1rem; color:var(--marka-koyu); background:var(--marka-sis)}

/* ---------- günlük iş listesi ---------- */
.isl__k{margin-bottom:9px}
.isl__k:last-child{margin-bottom:0}
.isl__alt{display:block; font-size:.75rem; color:var(--metin-2)}
.isl__not{display:block; font-size:.75rem; color:var(--bekle); margin-top:2px}
.isl__ek{display:block;width:fit-content;margin:4px 0 5px;font-weight:700}
.isl__yok{color:var(--metin-3)}
table.tablo tbody tr.isl__oncelik td{background:var(--bekle-sis)}
@media screen and (max-width:620px){
  table.tablo.isl__tablo.tablo--kart tbody tr{gap:10px}
  table.tablo.isl__tablo.tablo--kart td,
  table.tablo.isl__tablo.tablo--kart td + td{flex-direction:column; align-items:stretch; gap:4px; text-align:left; background:transparent}
  table.tablo.isl__tablo.tablo--kart td::before{max-width:none}
  table.tablo.isl__tablo.tablo--kart tr.isl__oncelik{background:var(--bekle-sis); box-shadow:inset 3px 0 0 var(--bekle)}
  table.tablo.isl__tablo.tablo--kart tr.isl__oncelik td{background:transparent}
  table.tablo.isl__tablo.tablo--kart .tablo__deger{overflow-wrap:anywhere}
}
.yazdir-baslik{display:none}
.yazdir-baslik img{display:block; width:110px; height:auto; margin-bottom:8px}

@media print{
  .yan,.yan-perde,.ust,.arac,.sekmeler,.bildirimler,.perde,.menu-dg,.hsp__arac{display:none !important}
  body{background:#fff}
  .kabuk,.govde{display:block}
  .icerik{padding:0; max-width:none}
  .kart{box-shadow:none; border-color:#999; break-inside:avoid}
  .yazdir-baslik{display:block; margin-bottom:12px}
  .yazdir-baslik p{font-size:.8125rem; color:#444}
  .hsp__bilgi{border-color:#999; background:#fff; color:#000}
  table.tablo th,table.tablo tbody tr.isl__oncelik td{
    -webkit-print-color-adjust:exact; print-color-adjust:exact;
  }
  table.tablo tbody tr.isl__oncelik td{background:#FCF3E2}
  table.tablo{min-width:0}
}

/* ---------- kaydedilmemiş değişiklik şeridi ---------- */
.kirli-serit{
  position:fixed; z-index:90; left:var(--yan); right:0; bottom:0;
  display:flex; align-items:center; gap:14px; padding:12px 24px;
  background:var(--bekle-sis); border-top:2px solid var(--bekle);
  box-shadow:0 -6px 22px rgba(20,35,28,.14);
  animation:kirliCik .22s ease;
}
.kirli-serit[hidden]{display:none}
.kirli-serit__nokta{
  width:10px; height:10px; border-radius:50%; background:var(--bekle); flex-shrink:0;
  box-shadow:0 0 0 0 rgba(154,106,27,.5); animation:kirliNabiz 1.8s infinite;
}
.kirli-serit__yazi{flex:1; min-width:0; display:flex; flex-direction:column; line-height:1.35}
.kirli-serit__yazi b{font-size:.9375rem; color:#5E3F0C}
.kirli-serit__yazi span{font-size:.8125rem; color:var(--bekle)}
.kirli-serit__dg{flex-shrink:0; padding:10px 22px}
body.kirli-var .icerik{padding-bottom:calc(var(--icerik-pad) + 84px)}
.pencere__serit{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:9px 20px;
  background:var(--bekle-sis); border-bottom:1px solid var(--bekle); font-size:.8125rem; color:var(--bekle);
}
.pencere__serit b{color:#5E3F0C; font-size:.875rem}
.pencere__serit[hidden]{display:none}
.dg--vurgu{box-shadow:0 0 0 3px rgba(31,92,70,.28); animation:kirliNabizDg 1.8s infinite}
@keyframes kirliCik{from{transform:translateY(100%); opacity:0} to{transform:none; opacity:1}}
@keyframes kirliNabiz{70%{box-shadow:0 0 0 8px rgba(154,106,27,0)} 100%{box-shadow:0 0 0 0 rgba(154,106,27,0)}}
@keyframes kirliNabizDg{50%{box-shadow:0 0 0 5px rgba(31,92,70,.12)}}
@media (max-width:1000px){
  .kirli-serit{left:0}
}
@media (max-width:620px){
  .kirli-serit{padding:10px 14px; gap:10px}
  .kirli-serit__yazi span{display:none}
  .kirli-serit__dg{padding:10px 18px}
  .pencere__serit span{display:none}
}
@media (prefers-reduced-motion:reduce){
  .kirli-serit,.kirli-serit__nokta,.dg--vurgu{animation:none}
}
.bilgi-kutu[hidden]{display:none}

/* ==========================================================================
   E-POSTA: önizleme, değişken çipleri, biçim araçları
   ========================================================================== */
.ep-onizle{
  width:100%; height:min(62vh,560px); border:1px solid var(--cizgi); border-radius:var(--r-k);
  background:#F1F4F2; display:block;
}
.ep-konu{display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; font-size:.9375rem}
.ep-konu span{font-size:.75rem; font-weight:650; color:var(--metin-3); text-transform:uppercase; letter-spacing:.05em}
.ep-duz{
  margin:8px 0 0; padding:12px 14px; background:var(--ak-2); border:1px solid var(--cizgi-2); border-radius:var(--r-k);
  white-space:pre-wrap; word-break:break-word; font:inherit; font-size:.8125rem; line-height:1.55; max-height:260px; overflow:auto;
}
.ep-arac{display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:8px}
.ep-deg{margin-bottom:16px; border:1px solid var(--cizgi-2); border-radius:var(--r-k); padding:10px 14px; background:var(--ak-2)}
.ep-deg summary{cursor:pointer; font-size:.875rem; font-weight:600; color:var(--metin-2)}
.ep-deg__liste{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.ep-cip{
  display:inline-flex; flex-direction:column; align-items:flex-start; gap:2px; text-align:left;
  padding:7px 11px; border:1px solid var(--cizgi); border-radius:var(--r-k); background:var(--ak);
  font:inherit; font-size:.8125rem; font-weight:650; color:var(--marka-koyu); cursor:pointer;
  transition:border-color .15s, background .15s;
}
@media (hover:hover){.ep-cip:hover{border-color:var(--marka-ac); background:var(--marka-sis)}}
.ep-cip small{font-size:.6875rem; font-weight:400; color:var(--metin-2); max-width:210px; line-height:1.35}

/* ==========================================================================
   DENETİM DÜZELTMELERİ (2026-10): oturum düşmesi, dil rozetleri, kaydırma ipucu,
   dokunmatik hedefler, gezinti düğmeleri, doğrulama hataları
   ========================================================================== */

/* oturum düştüğünde arkada bekleyen ekranın pencereleri ve şeridi giriş ekranının üstüne çıkmaz */
body.oturum-yok .perde,
body.oturum-yok .kirli-serit{display:none !important}

/* dil göstergesi: bayrak yerine metin rozet */
.dil-rozetler{display:inline-flex; gap:4px; vertical-align:middle}
.dil-rozet{
  font-size:.6875rem; font-weight:700; letter-spacing:.06em; line-height:1;
  padding:3px 6px; border-radius:var(--r-b); background:var(--ak-3); color:var(--metin-2);
}
.dil-blok__durum svg{width:11px; height:11px; vertical-align:-1px}

/* ülke tablosu: bayrak yerine iki harfli kod */
.ulke-kod{
  display:inline-block; min-width:30px; margin-right:9px; padding:2px 6px; text-align:center;
  font-size:.6875rem; font-weight:700; letter-spacing:.06em; border-radius:var(--r-k);
  background:var(--marka-sis); color:var(--marka-koyu);
}

/* anında doğrulanan alan hatası */
.alan__hata{font-size:.75rem; color:var(--uyari); margin-top:5px; line-height:1.45}

/* fiyat hesaplama: dolu aralıkta toplam satırı */
.hsp__top--dolu td{background:var(--uyari-sis); color:var(--uyari)}

/* tablolar: yatay kaydırılabildiğini kenar gölgesiyle göster (gölge yalnız kaydırılacak yön varsa görünür) */
.tablo-sar{
  background:
    linear-gradient(to right, var(--ak) 30%, rgba(255,255,255,0)) left center / 40px 100% no-repeat local,
    linear-gradient(to left, var(--ak) 30%, rgba(255,255,255,0)) right center / 40px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%, rgba(20,35,28,.22), rgba(20,35,28,0)) left center / 14px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%, rgba(20,35,28,.22), rgba(20,35,28,0)) right center / 14px 100% no-repeat scroll;
}
.tablo-sar .tablo th{background:transparent}
.tablo-sar .tablo thead tr{background:rgba(247,248,247,.7)}

/* Önceki / Sonraki: tek satır, dar ekranda yalnız ok */
.kart__bas--gezinti{flex-wrap:nowrap}
.kart__bas--gezinti h2{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:1.0625rem}
.gezinti-dg{flex-shrink:0; gap:4px}
@media (max-width:620px){
  .gezinti-dg__yazi{display:none}
  .gezinti-dg{padding:6px 9px}
}

/* istatistik şeridi: masaüstünde ızgara (hiçbir kart kesilmez); dar ekranda yana kayar, sağ kenarda solma ipucu */
@media (min-width:1001px){
  .ist--serit{display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); overflow:visible; padding-bottom:0}
  .ist--serit .ist__k{min-width:0; max-width:none}
}
@media (max-width:1000px){
  .ist-sar::after{
    content:''; position:absolute; top:0; bottom:6px; right:0; width:var(--icerik-pad, 16px);
    background:linear-gradient(to right, rgba(247,248,247,0), var(--ak-2)); pointer-events:none;
  }
}

/* dokunmatik: odakta yakınlaştırma olmasın diye girdiler ≥16px, dokunma hedefleri ≥44px */
@media (pointer:coarse){
  .girdi, input, select, textarea{font-size:16px}
  .dg, .dg--kucuk, .sekme, .yan__l, .menu-dg, .kapat-dg{min-height:44px}
  .dg--simge, .kapat-dg, .menu-dg, .gorsel-k__dg{min-width:44px; min-height:44px}
  .gorsel-k__arac{opacity:1}
  .onay{min-height:44px}
  .onay input{width:20px; height:20px}
  .ep-cip{min-height:44px}
  details > summary{min-height:44px; padding-block:12px; box-sizing:border-box}
  .dg--kucuk{min-width:44px}
}

/* ==========================================================================
   İKİNCİ TARAMA DÜZELTMELERİ (2026-10): kart tablolar, görsel araçları, zaman çizelgesi, yazdırma
   ========================================================================== */

/* ---- telefonda tablo → kart (ortak desen: table.tablo--kart, JS: P.kartTablo) ----
   Her satır bir kart: ilk hücre başlık, diğerleri "ETİKET | değer"; th[data-onc="dusuk"] kolonlar gizlenir,
   th[data-sira] kart içi sırayı değiştirir. tablo--kart-sayi: sayı kolonları başlığın altında yan yana ızgara. */
@media screen and (max-width:620px){
  table.tablo.tablo--kart{display:block; min-width:0; width:100%}
  table.tablo--kart thead{display:none}
  table.tablo--kart tbody{display:block}
  table.tablo.tablo--kart tbody tr{
    display:flex; flex-direction:column; gap:5px; padding:13px 14px;
    border-bottom:1px solid var(--cizgi);
  }
  table.tablo.tablo--kart tbody tr:last-child{border-bottom:none}
  table.tablo.tablo--kart td,
  table.tablo.tablo--kart td + td{
    display:flex; justify-content:space-between; align-items:baseline; gap:14px;
    padding:0; border:0; text-align:right; min-width:0; font-weight:400;
  }
  table.tablo--kart td::before{
    content:attr(data-etiket); flex:none; max-width:42%; text-align:left;
    font-size:.6875rem; font-weight:650; letter-spacing:.05em; text-transform:uppercase; color:var(--metin-3);
  }
  table.tablo--kart td[data-etiket=""]::before{display:none}
  table.tablo--kart .tablo__deger{min-width:0; overflow-wrap:anywhere}
  table.tablo.tablo--kart td:first-child{
    order:-10; justify-content:flex-start; text-align:left; font-size:1rem; font-weight:600; padding-bottom:3px;
  }
  table.tablo--kart td:first-child::before{display:none}
  table.tablo.tablo--kart td[data-onc="dusuk"]{display:none}
  table.tablo.tablo--kart td[data-etiket=""]:last-child{justify-content:flex-end; padding-top:6px}

  table.tablo.tablo--kart-sayi tbody tr{display:grid; grid-template-columns:repeat(auto-fit,minmax(84px,1fr)); gap:8px 12px}
  table.tablo.tablo--kart-sayi td,
  table.tablo.tablo--kart-sayi td + td{flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:1px; text-align:left}
  table.tablo--kart-sayi td::before{max-width:none}
  table.tablo.tablo--kart-sayi td:first-child{grid-column:1 / -1; flex-direction:row; align-items:center}

  /* alt toplam satırları (Fiyat hesaplama dökümü) kart düzeninde iki uçlu satır */
  table.tablo--kart tfoot{display:block}
  table.tablo.tablo--kart tfoot tr{display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:11px 14px; border-top:1px solid var(--cizgi)}
  table.tablo.tablo--kart tfoot td{display:block; padding:0; border:0; min-width:0; text-align:left}
  table.tablo.tablo--kart tfoot td.sag{text-align:right; flex:none}
  table.tablo.tablo--kart tfoot tr.hsp__top{background:var(--ak-2)}
  table.tablo.tablo--kart tfoot tr.hsp__top--son{background:var(--marka-sis)}
  table.tablo.tablo--kart tfoot tr.hsp__top--dolu{background:var(--uyari-sis)}
  table.tablo.tablo--kart tfoot tr.hsp__top td{background:transparent}
}

/* ---- dokunmatik: görsel araç düğmeleri resmin üstünde değil, resmin altında ayrı satırda (44px korunur);
   KAPAK rozeti ve VİDEO etiketi resmin üstünde tek başına kalır ---- */
@media (pointer:coarse){
  .gorsel-k__arac{
    position:static; opacity:1; justify-content:center; gap:4px; padding:5px 3px;
    background:var(--ak-2); border-top:1px solid var(--cizgi-2);
  }
  .gorsel-k__video{bottom:auto; top:5px}
  .dokun-baglanti{display:inline-flex; align-items:center; min-height:44px}
}

/* ---- zaman çizelgesi (Müsaitlik): telefonda gün başına daha geniş sütun, gün numaraları okunur aralıkta ---- */
@media (max-width:620px){
  .gnt{min-width:1160px}
  .gnt__s{grid-template-columns:104px minmax(0,1fr)}
  .gnt__ad{padding:9px 8px; font-size:.75rem}
  .gnt__gunler span{font-size:.6875rem; padding:5px 0}
}

/* ---- yazdırma: boş günler tek satır ---- */
@media print{
  .isl__gun--bos{display:flex; align-items:baseline; gap:12px; padding:3px 12px; margin-bottom:4px}
  .isl__gun--bos .kart__bas{padding:0; border:0; background:none}
  .isl__gun--bos .kart__bas h2{font-size:.875rem; font-weight:600}
  .isl__gun--bos .kart__ic{padding:0}
  .isl__gun--bos .liste-bos{padding:0; font-size:.8125rem}
}

/* ---------- ekran bilgisi (sağ üst bilgi düğmesi + açılan kutu) ---------- */
.ekran-bilgi__dg{
  width:44px; height:44px; display:grid; place-items:center; padding:0; cursor:pointer;
  background:var(--ak); color:var(--marka); border:1px solid var(--cizgi); border-radius:50%;
  transition:background .14s, border-color .14s;
}
@media (hover:hover){.ekran-bilgi__dg:hover{background:var(--marka-sis); border-color:var(--marka-ac)}}
.ekran-bilgi__dg[aria-expanded="true"]{background:var(--marka-sis); border-color:var(--marka-ac)}
.ekran-bilgi__dg:focus-visible{outline:2px solid var(--marka-ac); outline-offset:2px}
.ekran-bilgi__dg svg{display:block}
.ekran-bilgi__kutu{
  position:absolute; right:0; top:calc(100% + 8px); z-index:30;
  width:min(400px, calc(100vw - 32px)); max-height:calc(100dvh - 110px); overflow:auto;
  background:var(--ak); border:1px solid var(--cizgi); border-radius:var(--r);
  box-shadow:var(--golge-2); padding:16px 18px;
}
.ekran-bilgi__kutu:focus{outline:none}
.ekran-bilgi__kutu[hidden]{display:none}
.ekran-bilgi__baslik{font-size:.9375rem; font-weight:650; color:var(--marka); letter-spacing:-.01em}
.ekran-bilgi__liste{margin:10px 0 0; padding-left:18px; display:flex; flex-direction:column; gap:8px}
.ekran-bilgi__liste li{font-size:.875rem; line-height:1.55; color:var(--metin)}
.ekran-bilgi__liste li::marker{color:var(--marka-ac)}
@media print{
  .ekran-bilgi{display:none !important}
}

/* ===== Ana sayfa vitrini (halkalar + gezilecek yerler) ===== */
.vt-dil{width:auto; min-width:140px}
.vt-serit{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 10px}
.vt-hik{flex:0 0 auto; width:92px; display:flex; flex-direction:column; align-items:center; gap:8px; position:relative; text-align:center}
.vt-hik b{font-size:.75rem; font-weight:500; line-height:1.35; color:var(--metin)}
.vt-hal{width:68px; height:68px; border-radius:50%; padding:3px; display:grid; place-items:center}
.vt-ic{width:100%; height:100%; border-radius:50%; background:var(--ak); display:grid; place-items:center; color:var(--marka)}
.vt-hik--gizli .vt-hal,.vt-hik--gizli b{opacity:.38}
.vt-gizli-etiket{font-size:.6875rem; font-weight:600; color:var(--bekle); background:var(--bekle-sis); border-radius:var(--r-b); padding:1px 8px}
.vt-liste{display:flex; flex-direction:column; gap:14px}
.vt-kart{border:1px solid var(--cizgi); border-radius:var(--r); background:var(--ak)}
.vt-kart.suruklenen{opacity:.5}
.vt-kart--gizli{background:var(--ak-2)}
.vt-kart__bas{display:flex; align-items:center; gap:8px; padding:9px 12px; border-bottom:1px solid var(--cizgi-2)}
.vt-kart__ad{font-size:.9375rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0}
.vt-kart__bas .arac__bosluk{flex:1}
.vt-no{display:inline-grid; place-items:center; min-width:24px; height:24px; border-radius:50%; background:var(--marka-sis); color:var(--marka); font-size:.75rem; font-weight:650}
.vt-tut{cursor:grab; color:var(--metin-3); display:inline-flex; padding:6px 4px; touch-action:none}
.vt-tut:active{cursor:grabbing}
.vt-asagi svg{transform:rotate(180deg)}
.vt-kart__ic{display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:20px; padding:14px 14px 4px}
.vt-metin .alan{margin:0}
.vt-satir{display:flex; gap:8px}
.vt-satir .girdi:first-child{flex:1; min-width:0}
.vt-yuzde{width:auto; flex:0 0 138px}
.vt-uyari{margin-top:5px; font-size:.8125rem; line-height:1.45; color:var(--bekle); background:var(--bekle-sis); border-radius:var(--r-k); padding:6px 9px}
.vt-ikon-sec{display:inline-flex; align-items:center; gap:6px; color:var(--marka)}
.vt-temalar{display:flex; flex-wrap:wrap; gap:8px}
.vt-tema{width:34px; height:34px; border-radius:50%; border:3px solid var(--ak); box-shadow:0 0 0 1px var(--cizgi); cursor:pointer; padding:0}
.vt-tema.etkin{box-shadow:0 0 0 2px var(--marka)}
.vt-tema:focus-visible{outline:2px solid var(--marka-ac); outline-offset:3px}
.vt-anahtar{display:flex; align-items:center; gap:6px; font-size:.875rem; margin:4px 0 12px; cursor:pointer}
.vt-ikon-izgara{display:grid; grid-template-columns:repeat(auto-fill,minmax(84px,1fr)); gap:8px}
.vt-ikon-dg{display:flex; flex-direction:column; align-items:center; gap:4px; padding:10px 4px; border:1px solid var(--cizgi); border-radius:var(--r-k); background:var(--ak); color:var(--marka); cursor:pointer}
.vt-ikon-dg small{font-size:.6875rem; color:var(--metin-2)}
@media (hover:hover){.vt-ikon-dg:hover{background:var(--marka-sis)}}
.vt-ikon-dg.etkin{border-color:var(--marka); background:var(--marka-sis); box-shadow:0 0 0 1px var(--marka)}
.vt-izgara{display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:92px; gap:10px}
.vt-yer{position:relative; border-radius:var(--r-k); overflow:hidden; background:var(--ak-3)}
.vt-yer--uzun{grid-row:span 2}
.vt-yer img,.vt-yer video{width:100%; height:100%; object-fit:cover; display:block}
.vt-yer::after{content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.6),rgba(0,0,0,0) 62%)}
.vt-yer__ad{position:absolute; left:10px; right:10px; bottom:8px; z-index:2; color:#fff; font-size:.8125rem; line-height:1.25}
.vt-yer__ad b{display:block; font-weight:600}
.vt-yer__ad span{font-size:.75rem; opacity:.9}
.vt-yer--gizli img{opacity:.35}
.vt-yer .vt-gizli-etiket{position:absolute; top:6px; left:6px; z-index:3}
.vt-gorsel{margin-bottom:14px}
.vt-gorsel img{width:100%; max-height:150px; object-fit:cover; border-radius:var(--r-k); display:block; margin-bottom:8px}
@media (max-width:760px){
  .vt-kart__ic{grid-template-columns:1fr; gap:6px}
  .vt-satir{flex-direction:column}
  .vt-yuzde{flex:0 0 auto; width:100%}
  .vt-izgara{grid-template-columns:repeat(2,1fr)}
}

/* ==========================================================================
   EKİP (EkipGorsel, 2026-11-01): avatar, ekipler, organizasyon şeması, görev dağılımı, kişi detayı, foto
   ========================================================================== */
.av{
  --s:32px; --av:#5F6B64;
  position:relative; display:inline-grid; place-items:center; flex-shrink:0;
  width:var(--s); height:var(--s); border-radius:50%; background:var(--av); color:#fff;
  font-weight:650; font-size:calc(var(--s) * .38); letter-spacing:.02em; line-height:1; overflow:hidden; user-select:none;
}
.av img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.av--satir{vertical-align:middle; margin-right:7px}
.av-satir{display:flex; align-items:center; gap:8px}
.yan__kim{
  display:flex; align-items:center; gap:10px; width:100%; border:0; background:none; color:inherit; text-align:left;
  cursor:pointer; border-radius:var(--r-k); padding:6px; margin:-6px -6px 3px; min-height:44px;
}
@media (hover:hover){.yan__kim:hover{background:rgba(255,255,255,.09)}}
.yan__kim:focus-visible{outline:2px solid #fff; outline-offset:1px}
.yan__kim .yan__avatar{background:none; width:auto; height:auto; display:flex}
.yan__kim .av{box-shadow:0 0 0 2px rgba(255,255,255,.4)}
.yan__kim > span:last-child{display:block; min-width:0}
.yan__kim b,.yan__kim #kimRol{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:block}

/* ekip rozeti / renk noktası / renk seçici */
.ek-rozet{
  --ek:#5F6B64; display:inline-flex; align-items:center; gap:6px; padding:2px 10px 2px 8px; border-radius:var(--r-b);
  background:var(--ak-3); color:var(--metin); font-size:.75rem; font-weight:600;
}
.ek-rozet::before{content:''; width:9px; height:9px; border-radius:50%; background:var(--ek)}
.ek-sec{position:relative; display:flex; align-items:center}
.ek-sec .girdi{padding-left:30px}
.ek-nokta{--ek:#5F6B64; position:absolute; left:11px; width:11px; height:11px; border-radius:50%; background:var(--ek); pointer-events:none}
.ek-renkler{display:flex; flex-wrap:wrap; gap:8px}
.ek-renk{
  --ek:#5F6B64; width:44px; height:44px; border-radius:50%; border:3px solid var(--ak); background:var(--ek); color:#fff;
  box-shadow:0 0 0 1px var(--cizgi); cursor:pointer; display:grid; place-items:center; padding:0;
}
.ek-renk svg{opacity:0}
.ek-renk[aria-checked="true"]{box-shadow:0 0 0 2px var(--ek)}
.ek-renk[aria-checked="true"] svg{opacity:1}
.ek-renk:focus-visible{outline:2px solid var(--marka-ac); outline-offset:3px}

/* ekipler sekmesi */
.ek-blok{
  --ek:#5F6B64; background:var(--ak); border:1px solid var(--cizgi-2); border-top:4px solid var(--ek);
  border-radius:var(--r); box-shadow:var(--golge); margin-bottom:16px; overflow:hidden;
}
.ek-blok__bas{display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid var(--cizgi-2)}
.ek-blok__bas h3{flex:0 1 auto; min-width:0}
.ek-blok__sayi{font-size:.8125rem; color:var(--metin-2); flex:1}
.ek-izgara{display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:12px; padding:14px 16px}
.ek-bos{padding:16px; font-size:.875rem; color:var(--metin-3)}
.kk{
  display:flex; flex-direction:column; gap:9px; text-align:left; padding:12px; min-height:44px; width:100%;
  background:var(--ak); border:1px solid var(--cizgi); border-radius:var(--r); cursor:pointer;
  transition:border-color .15s, box-shadow .15s;
}
@media (hover:hover){.kk:hover{border-color:var(--marka-ac); box-shadow:var(--golge)}}
.kk:focus-visible{outline:2px solid var(--marka-ac); outline-offset:2px}
.kk--pasif{opacity:.62; background:var(--ak-2)}
.kk__ust{display:flex; align-items:center; gap:11px; min-width:0}
.kk__ad{display:flex; flex-direction:column; min-width:0}
.kk__ad b{font-size:.9375rem; font-weight:620; line-height:1.3; overflow-wrap:anywhere}
.kk__ad span{font-size:.8125rem; color:var(--metin-2); line-height:1.35}
.kk__roz{display:flex; flex-wrap:wrap; gap:6px}
.kk__cipler{display:flex; flex-wrap:wrap; gap:5px}
.kk-cip{font-size:.6875rem; font-weight:600; padding:2px 8px; border-radius:var(--r-b); border:1px solid var(--marka); line-height:1.5}
.kk-cip--yonet{background:var(--marka); color:#fff}
.kk-cip--gor{background:var(--ak); color:var(--marka)}
.kk__tum{font-size:.75rem; color:var(--metin-2)}
.kk__tum--yok{color:var(--metin-3)}

/* organizasyon şeması: kütüphanesiz CSS ağacı (geniş ekran), dar ekranda girintili liste */
.sema-bolum + .sema-bolum{margin-top:26px; padding-top:18px; border-top:1px solid var(--cizgi-2)}
.sema-baslik{font-size:.8125rem; font-weight:650; color:var(--metin-2); text-transform:uppercase; letter-spacing:.05em; margin-bottom:12px}
.sema-kap{overflow-x:auto; padding:4px 2px 10px}
.sema-kap:focus-visible{outline:2px solid var(--marka-ac); outline-offset:2px}
.agac,.agac ul{list-style:none; margin:0; padding:0}
.agac ul{display:flex; justify-content:center; position:relative; padding-top:22px}
.agac--kok{display:flex; justify-content:center; gap:28px; width:max-content; min-width:100%}
.agac li{position:relative; display:flex; flex-direction:column; align-items:center; padding:22px 8px 0}
.agac--kok > li{padding-top:0}
.agac li::before,.agac li::after{content:''; position:absolute; top:0; right:50%; width:50%; height:22px; border-top:2px solid var(--cizgi)}
.agac li::after{right:auto; left:50%; border-left:2px solid var(--cizgi)}
.agac--kok > li::before,.agac--kok > li::after{display:none}
.agac li:only-child::before,.agac li:only-child::after{display:none}
.agac li:first-child::before,.agac li:last-child::after{border:0 none}
.agac li:last-child::before{border-right:2px solid var(--cizgi); border-radius:0 8px 0 0}
.agac li:first-child::after{border-radius:8px 0 0 0}
.agac ul::before{content:''; position:absolute; top:0; left:50%; height:22px; border-left:2px solid var(--cizgi)}
.sm{
  --ek:#5F6B64; display:flex; align-items:center; gap:10px; width:204px; min-height:64px; padding:9px 11px; text-align:left;
  background:var(--ak); border:1px solid var(--cizgi); border-top:3px solid var(--ek); border-radius:var(--r-k); cursor:pointer;
  box-shadow:var(--golge);
}
@media (hover:hover){.sm:hover{border-color:var(--marka-ac); border-top-color:var(--ek)}}
.sm:focus-visible{outline:2px solid var(--marka-ac); outline-offset:2px}
.sm--pasif{opacity:.6}
.sm__ad{display:flex; flex-direction:column; min-width:0; line-height:1.3}
.sm__ad b{font-size:.8125rem; font-weight:620; overflow-wrap:anywhere}
.sm__unvan{font-size:.75rem; color:var(--metin-2)}
.sm__ekip{font-size:.6875rem; color:var(--metin-3)}
@media (max-width:720px){
  .sema-kap{overflow-x:visible}
  .agac--kok{display:block; width:auto; min-width:0}
  .agac--kok > li + li{margin-top:12px}
  .agac li,.agac--kok > li{display:block; padding:10px 0 0}
  .agac--kok > li{padding-top:0}
  .agac ul{display:block; padding:0; margin-left:30px; border-left:2px solid var(--cizgi)}
  .agac ul::before{display:none}
  .agac li::before,.agac li::after{display:none !important}
  .agac ul > li{padding-left:18px}
  .agac ul > li:nth-child(n)::before{
    display:block !important; content:''; position:absolute; left:-2px; top:42px; width:18px; height:0; right:auto;
    border:0; border-top:2px solid var(--cizgi); border-radius:0;
  }
  .sm{width:100%; max-width:340px}
}

/* görev dağılımı */
.dd-not{font-size:.8125rem; color:var(--metin-2); margin-bottom:14px; padding:10px 12px; border-radius:var(--r-k); background:var(--ak-3)}
.dd-not--uyari{background:var(--bekle-sis); color:var(--bekle)}
.dd-not b{font-weight:650}
.dd-grup{
  font-size:.6875rem; font-weight:650; color:var(--metin-3); text-transform:uppercase; letter-spacing:.06em;
  padding:12px 16px 6px; background:var(--ak-2); border-bottom:1px solid var(--cizgi-2);
}
.dd-satir{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:14px; align-items:center; padding:10px 16px; border-bottom:1px solid var(--cizgi-2)}
.dd-satir:last-child{border-bottom:0}
.dd-satir--uyari{background:var(--bekle-sis)}
.dd-satir__ad{display:flex; flex-direction:column; gap:2px; min-width:0; align-items:flex-start}
.dd-satir__ad b{font-size:.9375rem; font-weight:620}
.dd-satir__ad > span:not(.rz){font-size:.75rem; color:var(--metin-3); line-height:1.4}
.dd-uyari{margin-top:4px; display:inline-flex; align-items:center; gap:5px}
.dd-satir__kume{display:flex; flex-direction:column; gap:4px; min-width:0}
.dd-kume{display:flex; align-items:center; gap:10px; min-height:44px}
.dd-kume__ad{flex:0 0 58px; font-size:.75rem; font-weight:600; color:var(--metin-2)}
.dd-kume--yonet .dd-kume__ad{color:var(--marka)}
.dd-kume__avatarlar{display:flex; flex-wrap:wrap; gap:0}
.dd-kume__yok{color:var(--metin-3)}
.dd-av{
  width:44px; height:44px; padding:0; border:0; background:none; cursor:pointer; display:grid; place-items:center;
  margin-right:-10px; border-radius:50%;
}
.dd-av .av{box-shadow:0 0 0 2px var(--ak)}
@media (hover:hover){.dd-av:hover .av{box-shadow:0 0 0 2px var(--marka-ac)}}
.dd-av:focus-visible{outline:2px solid var(--marka-ac); outline-offset:0}
.dd-kume--gor .dd-av .av{opacity:.92}
@media (max-width:620px){
  .dd-satir{grid-template-columns:1fr; gap:6px}
}

/* kişi detayı */
.dt__ust{display:flex; align-items:center; gap:16px; margin-bottom:14px}
.dt__kim{min-width:0}
.dt__kim h3{font-size:1.25rem; overflow-wrap:anywhere}
.dt__unvan{color:var(--metin-2); font-size:.9375rem; margin:2px 0 8px}
.dt__roz{display:flex; flex-wrap:wrap; gap:6px; align-items:center}
.dt__liste{margin:0 0 14px; display:grid; gap:8px}
.dt-b{display:grid; grid-template-columns:136px minmax(0,1fr); gap:10px; font-size:.875rem}
.dt-b dt{color:var(--metin-3); font-size:.8125rem}
.dt-b dd{margin:0; overflow-wrap:anywhere}
.dt__baslik{font-size:.75rem; font-weight:650; color:var(--metin-3); text-transform:uppercase; letter-spacing:.06em; margin:14px 0 8px; padding-top:12px; border-top:1px solid var(--cizgi-2)}
.dt-yetki__grup{display:grid; grid-template-columns:76px minmax(0,1fr); gap:10px; align-items:baseline; margin-bottom:7px}
.dt-yetki__ad{font-size:.75rem; font-weight:600; color:var(--metin-2)}
.dt-islem__liste{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px}
.dt-islem__liste li{display:flex; flex-wrap:wrap; gap:2px 8px; font-size:.8125rem; line-height:1.4; padding-bottom:6px; border-bottom:1px solid var(--cizgi-2)}
.dt-islem__ad{font-weight:600}
.dt-islem__det{color:var(--metin-2); overflow-wrap:anywhere}
.dt-islem__z{color:var(--metin-3); margin-left:auto; white-space:nowrap}
@media (max-width:460px){
  .dt__ust{flex-direction:column; align-items:flex-start}
  .dt-b{grid-template-columns:1fr; gap:0}
  .dt-yetki__grup{grid-template-columns:1fr; gap:3px}
}

/* fotoğraf alanı, kırpma, üye penceresindeki profil bloğu */
.ft{display:flex; flex-direction:column; align-items:center; gap:8px}
.ft__dg{display:flex; flex-direction:column; align-items:center; gap:2px}
.ft__mesaj{font-size:.8125rem; color:var(--uyari); background:var(--uyari-sis); border-radius:var(--r-k); padding:6px 9px; max-width:260px; line-height:1.4}
.ek-profil{display:grid; grid-template-columns:auto minmax(0,1fr); gap:16px; align-items:start; margin:2px 0 12px; padding:12px 0; border-top:1px solid var(--cizgi-2); border-bottom:1px solid var(--cizgi-2)}
.ek-profil__alanlar .alan{margin-bottom:8px}
.ek-profil__alanlar .alan:last-child{margin-bottom:0}
.ek-profil__ikili{display:grid; grid-template-columns:1fr 1fr; gap:10px}
.ek-profil__ikili .alan{margin-bottom:0}
@media (max-width:520px){
  .ek-profil{grid-template-columns:1fr; gap:10px}
  .ft{flex-direction:row; align-items:center; gap:12px}
  .ft__dg{align-items:flex-start}
  .ek-profil__ikili{grid-template-columns:1fr}
  .ek-profil__ikili .alan{margin-bottom:8px}
}
.kirp{display:flex; flex-direction:column; align-items:center; gap:8px}
.kirp__alan{position:relative; width:min(280px,100%); aspect-ratio:1; border-radius:var(--r-k); overflow:hidden; background:var(--ak-3)}
.kirp__tuval{width:100%; height:100%; display:block; touch-action:none; cursor:grab}
.kirp__tuval:active{cursor:grabbing}
.kirp__tuval:focus-visible{outline:2px solid var(--marka-ac); outline-offset:-2px}
.kirp__kilavuz{position:absolute; inset:0; border-radius:50%; box-shadow:0 0 0 999px rgba(255,255,255,.62); border:2px solid #fff; pointer-events:none; outline:1px solid rgba(0,0,0,.25); outline-offset:-1px}
.kirp__etiket{font-size:.8125rem; font-weight:550; color:var(--metin-2)}
.kirp__yakin{width:min(280px,100%); min-height:44px}
.profil__ust{display:flex; align-items:center; gap:18px; margin-bottom:12px}
.profil__bilgi{min-width:0; display:flex; flex-direction:column; gap:5px; align-items:flex-start}
.profil__alt{color:var(--metin-2); font-size:.875rem}
.profil__eposta{font-size:.8125rem; color:var(--metin-3); overflow-wrap:anywhere}
@media (max-width:460px){.profil__ust{flex-direction:column; align-items:flex-start}}
@media (max-width:620px){.ekip-form select.girdi,.ekip-form input.girdi,.kirp input{font-size:16px}}
@media (pointer:coarse){.dg--simge{min-width:44px}.ekip-form select.girdi,.ekip-form input.girdi{min-height:44px}}

/* ==========================================================================
   MOBİL VE TABLET DENETİMİ (2026-11-11): gerçek dokunmatik davranış
   ========================================================================== */

/* çift dokunmayla yakınlaşma kapalı (art arda "Sonraki ›" sayfayı büyütmesin); iki parmakla yakınlaştırma açık */
html,body,button,a,input,select,textarea,summary,label,[role=button],.tiklanir{touch-action:manipulation}
a,button,[role=button],.tiklanir,.ist__k,.yan__l{-webkit-tap-highlight-color:rgba(31,92,70,.14)}

/* dokunma geri bildirimi (hover dokunmatikte yok): basılı durum */
.dg:active{background:var(--marka-koyu)}
.dg--cerceve:active,.dg--sade:active{background:var(--ak-3); color:var(--metin)}
.dg--tehlike:active{background:#9a3a31}
.yan__l:active{background:rgba(255,255,255,.18)}
.tablo tbody tr.tiklanir:active{background:var(--marka-sis)}
.ist__k:active{transform:scale(.985)}
.tkv__g:active{border-color:var(--marka-ac)}
.tiklanir:focus-visible,.ist__k:focus-visible,.dol-ay:focus-visible,.gnt__b:focus-visible,.kart[role=button]:focus-visible{outline:2px solid var(--marka-ac); outline-offset:-2px}

/* çentik / güvenli alan (viewport-fit=cover): yatay telefonda içerik çentiğin altına girmesin, sabit öğeler ev çubuğunu açmasın */
.kabuk{padding-left:env(safe-area-inset-left,0px); padding-right:env(safe-area-inset-right,0px)}
.giris-sahne{padding:max(24px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px))}
.icerik{padding-bottom:calc(var(--icerik-pad) + env(safe-area-inset-bottom,0px))}
body.kirli-var .icerik{padding-bottom:calc(var(--icerik-pad) + 84px + env(safe-area-inset-bottom,0px))}
.bildirimler{top:max(16px,env(safe-area-inset-top,0px)); right:max(16px,env(safe-area-inset-right,0px))}
.yan__dip{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}

/* kenar menüsü çekmecesi kapalıyken odaklanamaz / okunamaz (yalnız ≤1000px'te çekmece) */
@media (max-width:1000px){
  .yan{
    visibility:hidden; padding-left:env(safe-area-inset-left,0px); overscroll-behavior:contain;
    transition:transform .22s ease, visibility 0s linear .22s;
  }
  .yan.acik{visibility:visible; transition-delay:0s}
  .ust{padding-top:max(12px,env(safe-area-inset-top,0px))}
}

/* açık pencere / menü varken arka plan kaydırması kilitli */
html.kilit,html.kilit body{overflow:hidden}
html.kilit body.oturum-yok{overflow:auto}

/* pencere: klavye açıkken görünür alanda biter; iç kaydırma sayfaya taşmaz; güvenli alan */
.perde{
  inset:0 0 var(--klavye,0px) 0; overscroll-behavior:contain;
  padding-left:max(20px,env(safe-area-inset-left,0px)); padding-right:max(20px,env(safe-area-inset-right,0px));
}
.pencere{max-height:min(92dvh,calc(100dvh - var(--klavye,0px) - 24px)); overscroll-behavior:contain}
.pencere:focus{outline:none}
.pencere__ic{overscroll-behavior:contain}
.pencere__dip{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
html.klavye-acik .pencere__dip{padding-bottom:14px}
@media (max-width:620px){
  .perde{padding-left:env(safe-area-inset-left,0px); padding-right:env(safe-area-inset-right,0px)}
  .pencere{max-height:min(94dvh,calc(100dvh - var(--klavye,0px)))}
  .bildirimler{left:max(12px,env(safe-area-inset-left,0px)); right:max(12px,env(safe-area-inset-right,0px))}
  .bildirim{max-width:none}
}

/* Kaydet şeridi: klavyenin üstünde, ev çubuğunun altına girmez */
.kirli-serit{
  bottom:var(--klavye,0px);
  padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));
  padding-left:max(24px,env(safe-area-inset-left,0px)); padding-right:max(24px,env(safe-area-inset-right,0px));
}
@media (max-width:620px){
  .kirli-serit{
    padding-top:10px; padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));
    padding-left:max(14px,env(safe-area-inset-left,0px)); padding-right:max(14px,env(safe-area-inset-right,0px));
  }
}
html.klavye-acik .kirli-serit{padding-bottom:10px}
/* odaktaki alan sabit üst çubuğun / alt şeridin altında kalmasın */
.icerik input,.icerik select,.icerik textarea{scroll-margin-top:96px; scroll-margin-bottom:104px}
.pencere input,.pencere select,.pencere textarea{scroll-margin:12px}

/* üst bar: telefonda alt başlık tek satır (sabit çubuk ekranın yarısını yemesin); yatay telefonda daha ince */
@media (max-width:620px){
  .ust__bas p{white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
}
@media (max-height:500px) and (pointer:coarse){
  .ust{padding-top:max(6px,env(safe-area-inset-top,0px)); padding-bottom:6px}
  .ust__bas p{display:none}
}

/* dokunmatik hedefler: açılır listeler ve metin girdileri, onay kutusu satırları.
   iOS/WebKit yerel açılır liste iç boşluğu ve yüksekliği yok sayar (≈25px): appearance:none + kendi oku, seçim yine yerel tekerlek/listeyle yapılır. */
@media (pointer:coarse){
  select.girdi{
    -webkit-appearance:none; appearance:none; padding-right:38px; text-overflow:ellipsis;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235F6B64' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 12px center; background-size:16px 16px;
  }
  select,select.girdi,input.girdi{min-height:44px}
  .isl__sadece,.vt-anahtar{min-height:44px}
  .vt-tema{width:44px; height:44px}
  .tkv__g,.tkv__bos{aspect-ratio:auto; height:44px}
  .tkv-izgara{grid-template-columns:repeat(auto-fit,minmax(min(100%,326px),1fr))}
  .tkv__gunler{gap:2px}
  .gnt__iz{height:52px}
  .gnt__b{top:4px; bottom:4px; min-width:20px}
}
@media (max-width:440px){.kart__ic--tkv{padding-inline:2px}}

/* sürükle-bırak tutamacı dokunmatikte çalışmaz (HTML5 sürükleme): gizli, ok düğmeleri sıralar */
@media (hover:none){.vt-tut{display:none}}

/* galeri sıra düğmeleri (sol/sağ): dokunmatikte sürükleme yerine; dar karta sığmazsa alt satıra iner */
.gorsel-k__arac{flex-wrap:wrap}
@media (pointer:coarse){
  .gorsel-izgara{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
}

/* günlük iş listesi: telefonda (ve alçak yatay ekranda) dönem gezintisi listenin sonunda alta yapışan çubukta, başparmak erişiminde */
.isl__gez{display:contents}
.isl__alt-serit{display:none}
@media (max-width:620px), (pointer:coarse) and (max-height:500px){
  .isl__gez--ust{display:none}
  .isl__alt-serit{
    display:flex; align-items:center; gap:10px; position:sticky; bottom:var(--klavye,0px); z-index:15;
    margin:8px calc(var(--icerik-pad) * -1) calc((var(--icerik-pad) + env(safe-area-inset-bottom,0px)) * -1);
    padding:8px var(--icerik-pad) calc(8px + env(safe-area-inset-bottom,0px));
    background:var(--ak); border-top:1px solid var(--cizgi); box-shadow:0 -4px 16px rgba(20,35,28,.10);
  }
  .isl__alt-baslik{flex:1; min-width:0; text-align:center; font-size:.9375rem; line-height:1.3}
  .isl__alt-serit .dg{min-width:64px; min-height:48px}
  .isl__alt-serit .gezinti-dg__yazi{display:none}
}

/* sıralama sonrası kart sabit üst çubuğun altında kalmasın; galeri düğmeleri */
.vt-kart,.oge{scroll-margin-top:84px; scroll-margin-bottom:84px}
.gorsel-k{scroll-margin-top:84px; scroll-margin-bottom:84px}
.gorsel-k__dg:disabled{opacity:.35; cursor:default}
.birak-alan:focus-visible{outline:2px solid var(--marka-ac); outline-offset:2px}

/* telefonda pencere: düğmeler tek satırda (üç sıra üst üste ekranın yarısını yiyordu), salt-okunur bilgi alanları iki sütun */
.pencere .alan{min-width:0; overflow-wrap:anywhere}
@media (max-width:620px){
  .pencere__dip{flex-direction:row; flex-wrap:wrap; gap:8px}
  .pencere__dip .dg{flex:1 1 auto; width:auto}
  .pencere .alan--ikili:not(:has(input,select,textarea)),
  .pencere .alan--uclu:not(:has(input,select,textarea)){grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px}
}

/* telefonda araç çubukları ve kısa listeler daha az dikey yer kaplar */
@media (max-width:620px){
  .arac select.girdi{width:auto; flex:1 1 calc(50% - 5px); min-width:0}
  .gosterge--izgara{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; font-size:.75rem; line-height:1.3}
  .gosterge--izgara span{align-items:flex-start}
  .ist--dar .ist__k{flex-basis:124px; min-width:124px}
  .ist--dar .ist__k{padding:13px 14px}
}
.akt-izgara{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px}
@media (max-width:520px){.akt-izgara{grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px}}

/* cümle içindeki bağlantı: satır aralığını bozmadan dokunma alanı büyür */
.dokun-baglanti{display:inline; padding-block:14px}

/* yatay kayan sekmeler: gizli sekme olduğunu kenar solmasıyla göster (JS: sekmeler--sag / sekmeler--sol) */
.sekmeler{scroll-snap-type:x proximity; scrollbar-width:none}
.sekmeler::-webkit-scrollbar{display:none}
.sekme{scroll-snap-align:center}
.sekmeler--sag{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 34px),transparent); mask-image:linear-gradient(to right,#000 calc(100% - 34px),transparent)}
.sekmeler--sol{-webkit-mask-image:linear-gradient(to left,#000 calc(100% - 34px),transparent); mask-image:linear-gradient(to left,#000 calc(100% - 34px),transparent)}
.sekmeler--sag.sekmeler--sol{-webkit-mask-image:linear-gradient(to right,transparent,#000 34px,#000 calc(100% - 34px),transparent); mask-image:linear-gradient(to right,transparent,#000 34px,#000 calc(100% - 34px),transparent)}

/* sayfa en üstteyken aşağı çekmek (Android Chrome) sayfayı yenileyip kaydedilmemiş değişikliği silmesin */
html,body{overscroll-behavior-y:contain}
/* giriş: klavye açıkken kart kalan alanın ortasında (alan ve düğme klavyenin arkasında kalmaz) */
.giris-sahne{padding-bottom:calc(max(24px,env(safe-area-inset-bottom,0px)) + var(--klavye,0px))}
html.klavye-acik .giris__logo,html.klavye-acik .giris p.alt{display:none}
html.klavye-acik .giris{padding-block:20px}
/* ayrıntı pencerelerindeki telefon / e-posta bağlantıları (aramak için dokunulur) */
@media (pointer:coarse){
  .pencere a[href^="tel:"],.pencere a[href^="mailto:"]{display:inline-block; padding-block:13px}
}
@media (pointer:coarse){.dol-ay{min-width:44px}}

/* ---------- Fiyatlandırma: sezonlar (Yüksek / Orta / Düşük), takvimli aralık seçici, yıl şeridi, önizleme ----------
   Her tür: --c çubuk/nokta rengi, --t yazı rengi (beyaz zeminde AA), --a / --a2 taralı (dolu) gün zemini. Renk yalnız tek başına anlam taşımaz: ad her yerde yazılıdır. */
.sz-t-yuksek{--c:#C2512F; --t:#8F3418; --a:#FBE6DD; --a2:#F2C6B4}
.sz-t-orta{--c:#D9A21E; --t:#6B4A00; --a:#FBF0CF; --a2:#F0D68A}
.sz-t-dusuk{--c:#2F7FB8; --t:#1D5C8C; --a:#DDEBF6; --a2:#B3D2EA}
.sz-t-diger{--c:#7B5EA7; --t:#5A3F86; --a:#ECE6F5; --a2:#CFC1E4}
.sz-t-taban{--c:#B6BEBA; --t:#4B5550; --a:#EEF0EF; --a2:#DCE0DE}
.sz-ay__bar span.sz-t-yuksek,.sz-ay__bar span.sz-t-orta,.sz-ay__bar span.sz-t-dusuk,.sz-ay__bar span.sz-t-diger,.sz-ay__bar span.sz-t-taban{background:var(--c)}
.sz-nokta{display:inline-block; width:10px; height:10px; border-radius:3px; vertical-align:baseline; flex-shrink:0; background:var(--c, #B6BEBA)}
.sz-nokta.sz-cak{background:repeating-linear-gradient(45deg,#E0A43A,#E0A43A 4px,#C9566B 4px,#C9566B 8px)}
.sz-baslik{font-size:.75rem; font-weight:600; color:var(--metin-2); text-transform:uppercase; letter-spacing:.05em; margin:18px 0 8px}
.sz-baslik:first-child{margin-top:4px}
.sz-serit{display:flex; gap:2px; cursor:pointer}
.sz-ay{min-width:0}
.sz-ay__bar{display:flex; height:28px; border-radius:4px; overflow:hidden}
.sz-ay__bar span{min-width:1px}
.sz-ay__ad{font-size:.6875rem; color:var(--metin-2); text-align:center; margin-top:4px}
.sz-cak{background:repeating-linear-gradient(45deg,#E0A43A,#E0A43A 4px,#C9566B 4px,#C9566B 8px)}
.sz-lej{display:flex; flex-wrap:wrap; gap:6px 16px; font-size:.75rem; color:var(--metin-2); margin-top:10px}
.sz-lej .sz-nokta{margin-right:2px}
.sz-etiket-satir{display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; font-size:.8125rem; color:var(--metin); min-height:0; margin-top:8px}
.sz-etiket-satir:empty{display:none}
.sz-taban-bilgi{font-size:.8125rem; color:var(--metin-2); line-height:1.5; margin-top:8px}
.sz-uyari{margin-top:10px; padding:10px 13px; border-radius:var(--r-k); background:var(--bekle-sis); color:var(--bekle); font-size:.8125rem; line-height:1.55; border:1px solid #F0DFB5}
.sz-kartlar{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:14px; margin-top:18px}
.sz-kart{border:1px solid var(--cizgi-2); border-top:4px solid var(--c); border-radius:var(--r-k); padding:14px 14px 14px; background:var(--ak); min-width:0; display:flex; flex-direction:column}
.sz-kart--diger{margin-top:14px}
.sz-kart__bas{display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:10px; flex-wrap:wrap}
.sz-kart__bas h3{font-size:1rem; color:var(--t); display:flex; align-items:center; gap:6px}
.sz-kart__bas h3 .sz-nokta{width:12px; height:12px}
.sz-kart__sayi{font-size:.75rem; color:var(--metin-2)}
.sz-kart__aciklama{font-size:.8125rem; color:var(--metin-2); line-height:1.5; margin:0 0 10px}
.sz-ornek{margin:-4px 0 10px; min-height:1.2em; overflow-wrap:anywhere}
.sz-aralik-liste{display:flex; flex-direction:column; gap:8px; margin-bottom:12px; flex:1}
.sz-aralik{display:flex; align-items:center; gap:6px; flex-wrap:wrap}
.sz-aralik__tarih{flex:1 1 170px; justify-content:flex-start; text-align:left; min-height:40px; font-variant-numeric:tabular-nums}
.sz-aralik__sil{flex:0 0 auto}
.sz-aralik--diger .sz-aralik__not{flex:1 1 100%; font-size:.75rem; color:var(--metin-2)}
.sz-ata{flex:1 1 150px; min-width:0}
.sz-bos-durum{padding:12px; border:1px dashed var(--cizgi); border-radius:var(--r-k); color:var(--metin-2); font-size:.8125rem; text-align:center}
.sz-kart__ekle{align-self:flex-start}
table.tablo.sz-tablo{min-width:0}
.sz-tablo th,.sz-tablo td{white-space:nowrap}
.sz-tablo th.sz-t-yuksek,.sz-tablo th.sz-t-orta,.sz-tablo th.sz-t-dusuk,.sz-tablo th.sz-t-taban{color:var(--t)}
.sz-th-alt{font-size:.6875rem; font-weight:500; text-transform:none; letter-spacing:0; color:var(--metin-2); margin-top:2px}
.sz-sonuk{color:var(--metin-3)}
/* takvim: masaüstünde açılır pencere, telefonda alttan tam genişlik katman */
.sz-perde{position:fixed; inset:0; z-index:110}
.sz-tk{position:fixed; width:min(330px,calc(100vw - 16px)); background:var(--ak); border:1px solid var(--cizgi); border-top:4px solid var(--c); border-radius:10px; box-shadow:var(--golge-2); padding:12px; outline:none; overflow-y:auto}
.sz-tk__bas{display:grid; grid-template-columns:auto 44px 1fr 44px; align-items:center; gap:4px}
.sz-tk__tur{font-size:.8125rem; font-weight:600; color:var(--t); display:flex; align-items:center; gap:4px}
.sz-tk__ay{font-size:1rem; text-align:center}
.sz-tk__gezin{width:44px; height:44px; display:grid; place-items:center; background:none; border:1px solid transparent; border-radius:var(--r-k); cursor:pointer; color:var(--metin)}
@media (hover:hover){.sz-tk__gezin:hover{background:var(--ak-3)}}
.sz-tk__yon{font-size:.8125rem; color:var(--metin-2); line-height:1.45; margin:6px 0 8px}
.sz-tk__izgara{display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px}
.sz-gun{height:40px; min-width:0; border:1px solid var(--cizgi-2); border-radius:6px; background:var(--ak); color:var(--metin); font:inherit; font-size:.875rem; font-variant-numeric:tabular-nums; cursor:pointer; padding:0}
@media (hover:hover){.sz-gun:not([disabled]):hover{border-color:var(--marka); background:var(--marka-sis)}}
.sz-gun:focus-visible,.sz-tk__gezin:focus-visible{outline:2px solid var(--marka); outline-offset:1px}
.sz-gun--mevcut{background:var(--marka-sis); border-color:var(--marka-ac); font-weight:600}
.sz-gun--sec{background:#1F2A25; border-color:#1F2A25; color:#fff; font-weight:700}
.sz-gun[disabled]{cursor:not-allowed}
.sz-gun--uzak{background:#F4F5F4; color:#6E7872; border-style:dashed}
.sz-gun--dolu{color:var(--t); border-color:var(--a2); background:repeating-linear-gradient(45deg,var(--a),var(--a) 4px,var(--a2) 4px,var(--a2) 6px)}
.sz-tk__not{margin-top:8px; display:flex; flex-direction:column; gap:4px}
.sz-tk__not-satir{font-size:.75rem; line-height:1.45; color:var(--t, var(--metin-2))}
.sz-tk__not-satir:not([class*="sz-t-"]){color:var(--metin-2)}
.sz-tk__dip{display:flex; justify-content:flex-end; gap:8px; margin-top:10px; flex-wrap:wrap}
@media (pointer:coarse){
  .sz-gun{height:44px}
  .sz-aralik__tarih,.sz-aralik__sil,.sz-kart__ekle,.sz-ata,.sz-tk__dip .dg,.sz-etiket-satir .dg{min-height:44px}
  .sz-ay__bar{height:44px}
}
@media (max-width:620px){
  .sz-perde{background:rgba(16,24,20,.55)}
  .sz-tk{left:0 !important; right:0; top:auto !important; bottom:0; width:100%; border-radius:14px 14px 0 0; border-top-width:4px; padding:12px 14px calc(14px + env(safe-area-inset-bottom,0px)); max-height:94dvh; overflow-y:auto}
  .sz-gun{height:44px}
  .sz-aralik__tarih,.sz-aralik__sil,.sz-kart__ekle,.sz-ata,.sz-tk__dip .dg,.sz-etiket-satir .dg{min-height:44px}
  .sz-ay__bar{height:44px}
  .sz-tk__dip .dg{flex:1 1 auto}
  .sz-ay__ad{font-size:.625rem}
  table.tablo.sz-tablo th,table.tablo.sz-tablo td{padding:10px 3px; font-size:.75rem}
  table.tablo.sz-tablo th{letter-spacing:0; font-size:.6875rem}
  table.tablo.sz-tablo th:first-child,table.tablo.sz-tablo td:first-child{white-space:normal; min-width:56px; max-width:78px; padding-left:8px}
  table.tablo.sz-tablo th:last-child,table.tablo.sz-tablo td:last-child{padding-right:8px}
}

/* ---------- Rezervasyon fiyat dökümü (kayıtlı anılık görüntü) ---------- */
.dokum{margin:4px 0 12px; padding:12px 14px; border:1px solid var(--cizgi-2); border-radius:var(--r-k); background:var(--ak-2)}
.dokum__bas{font-size:.75rem; font-weight:600; color:var(--metin-2); text-transform:uppercase; letter-spacing:.05em; margin-bottom:8px}
.dokum__satir{display:flex; justify-content:space-between; gap:12px; font-size:.8125rem; padding:3px 0; line-height:1.45}
.dokum__satir span{min-width:0; overflow-wrap:anywhere; color:var(--metin-2)}
.dokum__satir b{font-weight:600; white-space:nowrap}
.dokum__top{border-top:1px solid var(--cizgi); margin-top:6px; padding-top:8px; font-size:.875rem}
.dokum__top span{color:var(--metin)}
.dokum__not{margin:0 0 8px}
.dokum__gece{margin-bottom:6px}
.dokum__gece summary{cursor:pointer; font-size:.8125rem; color:var(--marka); padding:3px 0}
.dokum__gecmis{border-top:1px dashed var(--cizgi); padding-top:6px}
