/* VinçKart — telefonda sahada kullanım öncelikli */
:root {
  /* 16.10: sade açık tema — lacivert-gri yazı ve düğmeler, sarı yalnız küçük vurgularda (eski mor: #1d0645) */
  --sari: #f5a700; --sari-koyu: #a86f00; --sari-acik: #efefec; --mor: #1e293b; --mor2: #475569; --zemin: #f4f6f9; --yazi: #1e293b; --soluk: #64748b; --cizgi: #e5e8ee; --kart: #fff; --yazi: #1d1d2b; --soluk: #66667a;
  --cizgi: #e2e3ea; --kirmizi: #c62828; --yesil: #2e7d32; --turuncu: #b86e00; --wa: #1fa855; --yaricap: 8px;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 16px/1.45 'Titillium Web', system-ui, -apple-system, 'Segoe UI', sans-serif; color: var(--yazi); background: var(--zemin); }
a { color: var(--mor2); }
h1 { font-size: 1.45rem; line-height: 1.2; margin: 0 0 .4rem; color: var(--mor); }
h2 { font-size: 1.1rem; margin: 0 0 .7rem; color: var(--mor); }
img { max-width: 100%; }

.ust { background: var(--mor); color: #fff; padding: 10px 16px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; position: sticky; top: 0; z-index: 5; }
.ust-logo img { display: block; height: 34px; width: auto; }
.ust-menu { display: flex; gap: 4px; flex-wrap: wrap; margin-left: auto; }
.ust-menu a { color: #fff; text-decoration: none; padding: 6px 10px; border-radius: 8px; font-weight: 600; }
.ust-menu a.on, .ust-menu a:hover { background: rgba(255, 255, 255, .14); }
.rozet { background: var(--sari); color: var(--mor); border-radius: 6px; padding: 0 7px; font-size: .8rem; }
.herkese .ust { justify-content: center; }

.sayfa { max-width: 860px; margin: 0 auto; padding: 14px 16px 30px; }
.alt { text-align: center; color: var(--soluk); font-size: .9rem; padding: 10px 16px 30px; }
.alt a, .bag { color: var(--soluk); }
.bag { background: none; border: 0; padding: 0; font: inherit; text-decoration: underline; cursor: pointer; }
.satir-ici { display: inline; margin: 0; }

.kart { background: var(--kart); border-radius: var(--yaricap); padding: 16px; margin: 0 0 14px; box-shadow: 0 1px 3px rgba(20, 10, 60, .07); }
.kart.dar { max-width: 420px; margin: 30px auto; }
.ortala { text-align: center; }
.soluk { color: var(--soluk); }
.ust-yazi { margin: 0 0 2px; color: var(--soluk); font-weight: 600; font-size: .95rem; }
.gizli { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.not { background: #efefec; border-left: 4px solid var(--sari); padding: 8px 12px; border-radius: 6px; margin-top: 10px; }

.kutu { padding: 10px 14px; border-radius: 8px; margin: 0 0 14px; font-weight: 600; }
.kutu.iyi { background: #efefec; color: var(--yesil); }
.kutu.kotu { background: #efefec; color: var(--kirmizi); }

/* düğmeler */
.dugme { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px 16px; border-radius: 6px; border: 0;
  background: var(--mor); color: #fff; font: 600 1rem 'Titillium Web', system-ui, sans-serif; text-decoration: none; cursor: pointer; text-align: center; }
.dugme:hover { filter: brightness(1.12); }
.dugme.ikincil { background: #ecebf4; color: var(--mor); }
.dugme small { display: block; font-size: .8rem; font-weight: 400; opacity: .85; }
.dugme:has(small) { flex-direction: column; gap: 0; line-height: 1.2; }
.dugme.kirmizi { background: var(--kirmizi); }
.dugme.wa { background: var(--wa); }
.dugme.yesil { background: var(--yesil); }
.dugme.buyuk { min-height: 56px; font-size: 1.15rem; }
.dugme.kucuk { min-height: 36px; padding: 4px 12px; font-size: .92rem; }
.dugme.tam { width: 100%; }
.dugme[disabled] { opacity: .6; cursor: wait; }
.dugmeler { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.dugmeler.iki > * { flex: 1 1 140px; }
.izgara-dugme > * { flex: 1 1 160px; }

/* listeler */
.liste-satir { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 11px 2px; border-top: 1px solid var(--cizgi); color: var(--yazi); text-decoration: none; }
.liste-satir:first-of-type { border-top: 0; }
a.liste-satir:hover, .liste-satir > a:hover { background: #fafafe; }
.liste-satir > a { color: var(--yazi); text-decoration: none; flex: 1; }
.durum { display: inline-block; padding: 2px 10px; border-radius: 6px; font-size: .85rem; font-weight: 600; white-space: nowrap; }
.durum.yesil { background: #ebebe9; color: var(--yesil); }
.durum.turuncu { background: #ebebe9; color: #ef2c0b; }
.durum.kirmizi { background: #ebebe9; color: var(--kirmizi); }
.durum.gri { background: #ebebe9; color: var(--soluk); }
.durumlar { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.ariza { border-top: 1px solid var(--cizgi); padding: 12px 0; }
.ariza:first-of-type { border-top: 0; padding-top: 0; }
.ariza p { margin: 6px 0; }
.kucuk-foto { width: 90px; height: 90px; object-fit: cover; border-radius: 8px; margin: 4px 6px 0 0; }

.ara { display: flex; gap: 8px; margin-bottom: 4px; }
.ara input { flex: 1; min-height: 44px; padding: 8px 12px; border: 1px solid var(--cizgi); border-radius: 6px; font: inherit; }
.sekmeler { display: flex; gap: 6px; margin-bottom: 12px; }
.sekmeler a { padding: 8px 14px; border-radius: 6px; background: #fff; text-decoration: none; font-weight: 600; }
.sekmeler a.on { background: var(--mor); color: #fff; }

/* vinç kartı */
.vinc-bas h1 { font-size: 1.6rem; }
.bilgi { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px 16px; margin: 12px 0 0; }
.bilgi dt { color: var(--soluk); font-size: .85rem; }
.bilgi dd { margin: 0; font-weight: 600; }
.tablo-kap { overflow-x: auto; }
.tablo { width: 100%; border-collapse: collapse; font-size: .95rem; }
.tablo th, .tablo td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--cizgi); }
.belge { border-top: 1px solid var(--cizgi); }
.belge:first-of-type { border-top: 0; }
.belge .liste-satir { border-top: 0; }
.belge-degistir { padding: 0 2px 10px; }
.belge-degistir summary { cursor: pointer; color: var(--mor2); font-size: .92rem; }
.belge-degistir form { margin-top: 8px; }
.belge-yukle { margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--cizgi); }

/* form alanları */
.izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 0 14px; }
.alan { display: block; margin: 0 0 12px; }
.alan > span { display: block; font-weight: 600; font-size: .92rem; margin-bottom: 3px; color: #3a3a50; }
.alan input, .alan select, .alan textarea, .madde-not { width: 100%; min-height: 44px; padding: 8px 11px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; background: #fff; color: inherit; }
.alan textarea { min-height: 90px; resize: vertical; }
.alan input:focus, .alan select:focus, .alan textarea:focus, .madde-not:focus { outline: 2px solid var(--sari); border-color: var(--sari); }
.genis { grid-column: 1 / -1; }
.secim-kutu { display: flex; gap: 8px; align-items: flex-start; margin: 4px 0 12px; }
.secim-kutu input { width: 20px; height: 20px; margin-top: 3px; }
details.yeni-musteri { margin-bottom: 10px; }
details.yeni-musteri summary { cursor: pointer; font-weight: 600; margin-bottom: 10px; color: var(--mor2); }
.secenekler { border: 0; padding: 0; margin: 0 0 12px; display: grid; gap: 8px; }
.secenekler legend { font-weight: 600; margin-bottom: 6px; }
.secenekler label { display: flex; gap: 10px; align-items: center; padding: 10px 12px; border: 1px solid #cfd0dc; border-radius: 8px; cursor: pointer; }
.secenekler input { width: 20px; height: 20px; }
.secenekler label:has(input:checked) { border-color: var(--mor); background: #f4f2fb; }
.taslak-uyari { background: #efefec; border: 1px solid var(--sari); border-radius: 8px; padding: 10px 12px; margin: 10px 0; }

/* bakım maddeleri: telefonda tek elle seçilecek büyüklükte */
.bolum-bas { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 6px; }
.bolum-bas h2 { margin: 0; }
.madde { border-top: 1px solid var(--cizgi); padding: 10px 0; display: grid; gap: 6px; }
.madde-ad { font-weight: 600; }
.madde-sec { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.madde-sec label { position: relative; }
.madde-sec input { position: absolute; opacity: 0; }
.madde-sec span { display: block; text-align: center; padding: 9px 4px; border: 1px solid #cfd0dc; border-radius: 8px; font-weight: 600; cursor: pointer; user-select: none; }
.madde-sec input:focus-visible + span { outline: 2px solid var(--sari); }
.sec-uygun input:checked + span { background: var(--yesil); border-color: var(--yesil); color: #fff; }
.sec-hasarli input:checked + span { background: var(--kirmizi); border-color: var(--kirmizi); color: #fff; }
.sec-yok input:checked + span { background: #6b6b80; border-color: #6b6b80; color: #fff; }
.madde-not { min-height: 38px; font-size: .95rem; }
.madde.eksik .madde-ad::after { content: ' — seçilmedi'; color: var(--turuncu); font-weight: 400; }
@media (min-width: 700px) {
  .madde { grid-template-columns: 1fr 260px; align-items: center; }
  .madde-not { grid-column: 1 / -1; }
}

/* parçalar */
.parca { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 10px 0; border-top: 1px solid var(--cizgi); }
.parca input, .parca select { min-height: 42px; padding: 6px 9px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; width: 100%; }
.parca .p-ad, .parca .p-sec { grid-column: 1 / -1; }
.parca .p-ad[hidden] { display: none; }
@media (min-width: 760px) {
  .parca { grid-template-columns: 1fr 2fr 1.4fr 1fr .7fr .9fr auto; align-items: center; }
  .parca .p-sec { grid-column: auto; }
  .parca .p-ad { grid-column: 2 / 4; grid-row: 2; }
}

/* fotoğraf ve imza */
.foto-alani { margin: 6px 0 14px; }
.foto-liste { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.foto-oge { position: relative; }
.foto-oge img { width: 92px; height: 92px; object-fit: cover; border-radius: 8px; display: block; }
.foto-oge button { position: absolute; top: -6px; right: -6px; width: 28px; height: 28px; border-radius: 50%; border: 0; background: var(--kirmizi); color: #fff; font-weight: 700; cursor: pointer; }
.imzalar { display: grid; gap: 16px; margin: 10px 0 16px; }
@media (min-width: 700px) { .imzalar { grid-template-columns: 1fr 1fr; } }
canvas.imza { width: 100%; height: 230px; border: 1px dashed #b8b9c8; border-radius: 8px; background: #fff; touch-action: none; display: block; margin-bottom: 6px; }

/* QR etiketi */
.etiketler { display: flex; flex-wrap: wrap; gap: 16px; justify-content: center; }
.etiket { width: 70mm; border: 2px solid #111; border-radius: 4mm; padding: 4mm; text-align: center; background: #fff; color: #111; }
.etiket-ust img { height: 11mm; width: auto; }
.etiket-baslik { font-weight: 700; font-size: 11pt; margin: 2mm 0; letter-spacing: .3px; }
.etiket .qr svg { width: 52mm; height: 52mm; display: block; margin: 0 auto; }
.etiket-yazi { font-size: 9pt; margin: 1mm 0 2mm; }
.etiket-alt { font-size: 8.5pt; border-top: 1px solid #111; padding-top: 2mm; line-height: 1.35; }
@media print {
  .ust, .alt, .ekranda { display: none !important; }
  body { background: #fff; }
  .sayfa { padding: 0; max-width: none; }
  .etiket { break-inside: avoid; }
}

/* ---- sürüm 2: sahiplik, devreye alma, izolasyon, teklif/teslim, silme ---- */
.durum.mor { background: #ebebe9; color: var(--mor2); margin: 2px 0 4px; }
.madde-sec.iki { grid-template-columns: repeat(2, 1fr); }
@media (min-width: 700px) { .madde:has(.madde-sec.iki) { grid-template-columns: 1fr 260px; } }
.motor { border: 1px solid var(--cizgi); border-radius: 8px; padding: 12px; margin-bottom: 12px; background: #fcfcfe; }
.motor h3 { margin: 0; font-size: 1.05rem; color: var(--mor); }
.motor h4 { margin: 12px 0 6px; font-size: .98rem; color: var(--mor2); }
.olcumler { display: grid; gap: 6px; }
@media (min-width: 700px) { .olcumler { grid-template-columns: 1fr 1fr; } }
.olcum { display: grid; grid-template-columns: 1fr 96px 112px; align-items: center; gap: 8px; }
.olcum span { font-weight: 600; font-size: .95rem; }
.olcum input { min-height: 42px; padding: 6px 9px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; width: 100%; }
.izo-sonuc { font-size: .88rem; }
.izo-sonuc.iyi { color: var(--yesil); } .izo-sonuc.takip { color: var(--turuncu); } .izo-sonuc.kotu { color: var(--kirmizi); }
.kalem { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 10px 0; border-top: 1px solid var(--cizgi); align-items: center; }
.kalem:first-child { border-top: 0; }
.kalem input, .kalem select { min-height: 42px; padding: 6px 9px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; width: 100%; }
.kalem .k-ad { grid-column: 1 / -1; }
.k-tutar { font-weight: 600; text-align: right; }
@media (min-width: 760px) {
  .kalem { grid-template-columns: 2.4fr 1.3fr .7fr 1fr auto; }
  .kalem.fiyatli { grid-template-columns: 2.4fr .6fr .9fr 1fr .75fr 1.1fr auto; }
  .kalem .k-ad { grid-column: auto; }
}
.teklif-toplam { text-align: right; font-size: 1.15rem; margin: 12px 0 0; }
details.tehlike { border: 1px solid #f3c7c4; }
details.tehlike summary { cursor: pointer; color: var(--kirmizi); font-weight: 600; }
details.tehlike[open] summary { margin-bottom: 10px; }
.adet-sec { margin: 6px 0; }
.adet-sec select { min-height: 38px; padding: 4px 8px; border-radius: 8px; border: 1px solid #cfd0dc; font: inherit; margin-left: 6px; }

/* ---- sürüm 3: müşteri girişi ve iç not ---- */
.ozet { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 10px; }
@media (min-width: 640px) { .ozet { grid-template-columns: repeat(4, 1fr); } }
.ozet > div { background: #f4f3f9; border-radius: 8px; padding: 10px; text-align: center; }
.ozet b { display: block; font-size: 1.6rem; color: var(--mor); line-height: 1.1; }
.ozet span { font-size: .85rem; color: var(--soluk); }
.ozet .kirmizi { background: #efefec; } .ozet .kirmizi b { color: var(--kirmizi); }
.ozet .turuncu { background: #efefec; } .ozet .turuncu b { color: #ef2c0b; }
.gecici-sifre { background: #efefec; border: 1px solid var(--sari); border-radius: 8px; padding: 12px; margin-bottom: 12px; }
.sifre-yazi { font-family: ui-monospace, Consolas, monospace; font-size: 1.15rem; letter-spacing: 1px; }
.ic-not-alan span small { font-weight: 400; color: var(--soluk); }
.ic-not-alan textarea { background: #efefec; }
.ic-not-isaret { background: #efefec; color: #475569; border-radius: 6px; padding: 0 6px; }
/* uzun durum etiketi satırı taşırmasın: sol metin daralabilir, içindeki etiket alt satıra geçebilir */
.liste-satir > span, .liste-satir > a { min-width: 0; }
.liste-satir > span .durum, .liste-satir > a .durum { white-space: normal; }
.liste-satir > .durum { flex-shrink: 0; }

/* ---- sürüm 4: matbaa QR etiketleri ---- */
.etiket-kodu { font-family: ui-monospace, Consolas, monospace; letter-spacing: 2px; font-size: 1.05rem; }
.etiket-ekle { margin-top: 12px; padding-top: 12px; border-top: 1px dashed var(--cizgi); }
.etiket-ekle input, input[name=etiket_kod] { text-transform: uppercase; font-family: ui-monospace, Consolas, monospace; letter-spacing: 2px; }

/* ---- sürüm 5: parça geçmişi ve istatistik ---- */
.parca-gecmis { border-top: 1px solid var(--cizgi); padding: 10px 0; }
.parca-gecmis:first-of-type { border-top: 0; }
.pg-tarihler { margin: 3px 0; font-size: .95rem; }
.pg-tahmin { font-size: .9rem; }
.pg-uyari, .pg-uyari-yazi { color: var(--turuncu); font-size: .9rem; font-weight: 600; }
.pg-alt { font-size: 1rem; margin: 14px 0 4px; color: var(--mor); }
.kucuk-not { font-size: .85rem; margin-top: 10px; }
.suzgec { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.suzgec select { min-height: 40px; padding: 4px 10px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; background: #fff; }
.cubuklar { display: grid; gap: 10px; }
.cubuk-satir { display: grid; grid-template-columns: 1fr 34px; grid-template-areas: "ad deger" "iz iz"; gap: 3px 8px; align-items: center; }
.cubuk-ad { grid-area: ad; font-size: .95rem; min-width: 0; }
.cubuk-deger { grid-area: deger; text-align: right; font-weight: 700; color: var(--yazi); }
.cubuk-iz { grid-area: iz; height: 10px; }
.cubuk { display: block; height: 10px; background: var(--mor2); border-radius: 0 4px 4px 0; }
@media (min-width: 760px) { .cubuk-satir { grid-template-columns: minmax(0, 1.3fr) 1fr 40px; grid-template-areas: "ad iz deger"; } }
.katalog-satir { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 6px 0; border-top: 1px solid var(--cizgi); }
.katalog-satir:first-of-type { border-top: 0; }
.katalog-satir input[type=text] { flex: 1 1 200px; min-height: 40px; padding: 6px 10px; border: 1px solid #cfd0dc; border-radius: 8px; font: inherit; }
.katalog-satir .secim-kutu { margin: 0; }
.katalog-satir.pasif input[type=text] { color: var(--soluk); background: #f4f4f7; }

/* telefonda üst menü tek satıra sığsın */
@media (max-width: 480px) { .ust { gap: 8px; } .ust-logo img { height: 28px; } .ust-menu { gap: 0; } .ust-menu a { padding: 6px 7px; font-size: .92rem; } }

/* ---- vinç başına olası sebep (teşhis) kutuları ---- */
.teshis { border: 1px solid #f1d39a; background: #efefec; border-radius: 8px; padding: 10px 12px; margin: 8px 0; }
.teshis-bas { font-weight: 700; color: var(--turuncu); }
.teshis ul { margin: 4px 0 8px 20px; padding: 0; }
.teshis li { margin: 2px 0; }
.teshis-kanit { color: var(--yazi); font-size: .92rem; }
.teshis-alt { font-size: .95rem; }
.ozet span small { color: var(--soluk); }

/* ---- sürüm 6: sade açık tema (16.10, kullanıcı renk seçimini bıraktı) ---- */
body { background: var(--zemin); color: var(--yazi); }
a { color: #1d4ed8; }

/* Üst çubuk beyaz, renkli logo */
.ust { background: #fff; color: var(--yazi); border-bottom: 1px solid var(--cizgi); box-shadow: 0 1px 8px rgba(15, 23, 42, .05); padding: 10px 20px; }
.ust-menu a { color: var(--mor2); border-radius: 6px; padding: 8px 12px; display: inline-flex; align-items: center; gap: 7px; position: relative; }
.ust-menu a:hover { color: var(--mor); background: #f1f4f8; }
.ust-menu a.on { color: var(--mor); background: #e0e6ef; }
.ust-menu a.on .menu-ikon { color: var(--sari); }
.menu-ikon { width: 18px; height: 18px; flex-shrink: 0; }
.rozet { background: #dc2626; color: #fff; }
.sayfa { padding-top: 22px; }

/* Kartlar ve başlıklar */
.kart { border-radius: 8px; padding: 18px; margin-bottom: 16px; border: 1px solid var(--cizgi); box-shadow: 0 1px 2px rgba(15, 23, 42, .04); }
h1 { color: var(--mor); font-weight: 700; letter-spacing: .1px; }
h2 { color: var(--mor); font-size: 1.08rem; display: flex; align-items: center; gap: 9px; }
.kart > h2::before, .bolum-bas h2::before { content: ''; width: 4px; height: 1.05em; border-radius: 2px; background: var(--sari); flex-shrink: 0; }
.ust-yazi { color: var(--soluk); }
.motor h3, .motor h4, .pg-alt { color: var(--mor); }

/* Düğmeler */
.dugme { background: var(--mor); color: #fff; border-radius: 6px; transition: background .15s, box-shadow .15s; }
.dugme:hover { filter: none; background: #0f172a; }
.dugme.ikincil { background: #fff; color: var(--mor); border: 1px solid #d6dbe3; }
.dugme.ikincil:hover { background: #f6f8fb; border-color: #c3cad5; }
.dugme.kirmizi:hover, .dugme.wa:hover, .dugme.yesil:hover { filter: brightness(1.07); }
.dugme.kirmizi:hover { background: var(--kirmizi); } .dugme.wa:hover { background: var(--wa); } .dugme.yesil:hover { background: var(--yesil); }

/* Hızlı form kutucukları */
.hizli { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; margin-top: 12px; }
.hizli-oge { display: flex; align-items: center; gap: 12px; padding: 13px 14px; border: 1px solid var(--cizgi); border-radius: 8px; background: #fff; color: var(--yazi); text-decoration: none;
  transition: border-color .15s, box-shadow .15s, transform .15s; }
.hizli-oge:hover { border-color: var(--sari); box-shadow: 0 6px 18px rgba(15, 23, 42, .08); transform: translateY(-1px); }
.hizli-ikon { flex: 0 0 44px; height: 44px; border-radius: 8px; background: #fdba01; color: #f1f0ee; display: grid; place-items: center; }
.hizli-oge b { display: block; font-size: 1rem; line-height: 1.2; }
.hizli-oge small { display: block; color: var(--soluk); font-size: .85rem; }

/* Diğer öğeler */
.sekmeler a { color: var(--mor2); border: 1px solid #d6dbe3; border-radius: 8px; background: #fff; }
.sekmeler a.on { background: #007bff; color: #fff; border-color: #007bff; }
.ara input { border-radius: 6px; border-color: #d6dbe3; }
a.liste-satir:hover, .liste-satir > a:hover { background: #f8fafc; }
.alan > span { color: #334155; }
.alan input, .alan select, .alan textarea, .madde-not { border-color: #d6dbe3; border-radius: 6px; }
.alan input:focus, .alan select:focus, .alan textarea:focus, .madde-not:focus { outline: 2px solid var(--sari); outline-offset: 0; border-color: var(--sari); }
.secenekler label:has(input:checked) { border-color: var(--mor); background: #f6f8fb; }
.ozet > div { background: #f6f8fb; border-radius: 8px; box-shadow: 0 1px 3px rgba(15, 23, 42, .12), 0 3px 10px rgba(15, 23, 42, .07); }
.ozet b { color: var(--mor); }
.durum.mor { background: #ebebe9; color: var(--mor2); }
.cubuk { background: var(--sari); }
.alt, .alt a, .bag { color: var(--soluk); }
.logo-ayar { display: grid; gap: 14px; align-items: start; }
@media (min-width: 640px) { .logo-ayar { grid-template-columns: 220px 1fr; } }
.logo-onizleme { border: 1px dashed #cbd2dc; border-radius: 8px; padding: 14px; background: #fff; display: grid; place-items: center; min-height: 100px; }
.logo-onizleme img { max-height: 80px; width: auto; }

/* ---- telefon: uygulama gibi — üstte logo, ana menü altta sabit sekme çubuğu ---- */
@media (max-width: 700px) {
  .ust { padding: 10px 14px; justify-content: center; }
  .ust-logo img { height: 30px; }
  body.menulu { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
  .menulu .ust-menu { position: fixed; left: 0; right: 0; bottom: 0; z-index: 20; margin: 0; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 0;
    background: #fff; border-top: 1px solid var(--cizgi); padding: 6px 4px calc(6px + env(safe-area-inset-bottom)); box-shadow: 0 -4px 16px rgba(15, 23, 42, .06); }
  .menulu .ust-menu a { flex-direction: column; gap: 3px; padding: 6px 2px; font-size: .74rem; font-weight: 600; border-radius: 6px; }
  .menulu .ust-menu .menu-ikon { width: 22px; height: 22px; }
  .menulu .ust-menu .rozet { position: absolute; top: 2px; left: calc(50% + 6px); font-size: .7rem; padding: 0 6px; }
  .alt { padding-bottom: 16px; }
  .sayfa { padding: 14px 12px 24px; }
  .kart { padding: 15px; margin-bottom: 12px; }
  h1 { font-size: 1.32rem; }
  .sayfa > .dugmeler, .izgara-dugme { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .sayfa > .dugmeler > *, .izgara-dugme > * { min-width: 0; padding-left: 8px; padding-right: 8px; }
  .hizli { grid-template-columns: 1fr 1fr; gap: 8px; }
  .hizli-oge { flex-direction: column; align-items: flex-start; gap: 8px; padding: 12px; }
  .hizli-ikon { flex-basis: auto; width: 40px; height: 40px; }
  .hizli-oge b { font-size: .95rem; }
  .hizli-oge small { font-size: .8rem; }
  .liste-satir { padding: 12px 0; }
  .ara input { min-height: 46px; }
}

/* ---- VinçKart: logo yüklenmemiş firmada ad yazıyla, alt bilgideki ürün imzası ---- */
.logo-yazi { font-weight: 700; font-size: 1.15rem; color: var(--mor); letter-spacing: .2px; white-space: nowrap; }
.ust-logo { text-decoration: none; }
.ust-logo img { max-width: 190px; object-fit: contain; }
.vk-imza { margin-top: 6px; font-size: .8rem; }
.vk-imza a { color: var(--soluk); }
.etiket .logo-yazi { display: block; font-size: 15pt; color: #111; margin: 1mm 0; }
.etiket img { max-height: 11mm; width: auto; }

/* ---- VinçKart vitrin ve yönetim ---- */
.vk-logo { display: inline-flex; align-items: center; gap: 9px; text-decoration: none; }
.vk-isaret { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 8px; background: var(--mor); color: var(--sari); font-weight: 700; font-size: .95rem; letter-spacing: .5px; }
.vitrin-ust p { font-size: 1.05rem; max-width: 640px; }
.vitrin-ust .ara { margin-top: 14px; max-width: 480px; flex-wrap: wrap; }
.vitrin-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.vitrin-oge { border: 1px solid var(--cizgi); border-radius: 8px; padding: 12px 14px; }
.vitrin-oge p { margin: 4px 0 0; font-size: .92rem; }

/* teklif listesinde durum + tutar */
.liste-satir .sag { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; flex-shrink: 0; }
.kur-bilgi { margin: 0; font-size: .9rem; }

/* ana sayfa özet sayıları, arşiv süzgeci */
.ana-ozet { margin: 0 0 12px; }
@media (min-width: 640px) { .ana-ozet { grid-template-columns: repeat(5, 1fr); } }
.ana-ozet > a, .ana-ozet > div { background: #fff; border: 1px solid var(--cizgi); text-decoration: none; color: var(--yazi); }
.ana-ozet > a:hover { border-color: var(--sari); }
.ana-ozet small { color: var(--soluk); font-size: .8rem; }
.arsiv-suzgec .izgara { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
input[type=color] { width: 80px; height: 44px; padding: 2px; border: 1px solid #d6dbe3; border-radius: 6px; background: #fff; }

/* ---- vitrin: menü, fiyat kartları, SSS, yasal metinler ---- */
.vitrin .ust { justify-content: space-between; }
.vitrin-menu { display: flex; gap: 2px; flex-wrap: wrap; }
.vitrin-menu a { color: var(--mor2); text-decoration: none; font-weight: 600; padding: 7px 11px; border-radius: 6px; }
.vitrin-menu a:hover, .vitrin-menu a.on { background: var(--sari-acik); color: var(--mor); }
.vitrin-giris { max-width: 480px; flex-wrap: wrap; margin-top: 12px; }
.kart.dar-orta { max-width: 560px; margin: 20px auto; }
.fiyat-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; margin-bottom: 16px; }
.fiyat-kart { margin: 0; display: flex; flex-direction: column; }
.fiyat-sinir { color: var(--soluk); margin: 0; }
.fiyat-tutar { font-size: 1.3rem; margin: 10px 0 4px; }
.fiyat-tutar small { font-size: .8rem; color: var(--soluk); }
.fiyat-liste { margin: 10px 0 0; padding-left: 18px; line-height: 1.7; }
.sss details { border-top: 1px solid var(--cizgi); padding: 12px 0; }
.sss details:first-child { border-top: 0; }
.sss summary { cursor: pointer; font-weight: 600; }
.sss details p { margin: 8px 0 0; color: var(--mor2); }
.yasal h2 { font-size: 1rem; margin-top: 18px; }
.yasal p, .yasal li { line-height: 1.6; }
@media (max-width: 700px) { .vitrin .ust { flex-direction: column; gap: 6px; } .vitrin-menu a { padding: 6px 8px; font-size: .92rem; } }
@media (min-width: 640px) { .vitrin-izgara { grid-template-columns: 1fr 1fr; } }

.dil-satir { margin-top: 6px; }
.dil-sec { font-weight: 600; }
.ana-ozet > a, .ana-ozet > div { display: block; padding: 10px; text-align: center; border-radius: 8px; }
@media (max-width: 639px) { .ana-ozet > :last-child { grid-column: span 2; } }
/* listede bağlantının yanındaki düğme (ör. WhatsApp) genişlemesin */
.liste-satir > a.dugme { flex: 0 0 auto; }

/* ---- ana sayfa özet kutuları: her biri kendi renginde (açık zemin, koyu rakam, üstte renk şeridi) ---- */
.ana-ozet > .oz { position: relative; overflow: hidden; border: 1px solid transparent; transition: transform .15s, box-shadow .15s; }
.ana-ozet > .oz::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--oz); }
.ana-ozet > .oz b { color: var(--oz); }
.ana-ozet > .oz span { color: #334155; }
.ana-ozet > a.oz:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(15, 23, 42, .08); border-color: var(--oz); }
.oz-ariza  { --oz: #dc2626; background: #efefec !important; }
.oz-gecik  { --oz: #9f1239; background: #efefec !important; }
.oz-yakin  { --oz: #b45309; background: #efefec !important; }
.oz-form   { --oz: #15803d; background: #efefec !important; }
.oz-teklif { --oz: #0f766e; background: #efefec !important; }

/* ---- vitrin ana sayfa (17.10): tam genişlik bölümler, ekran görüntüleri ---- */
.vitrin-ana { background: #fff; }
.vt { display: block; }
.vt-ic { max-width: 1160px; margin: 0 auto; padding: 0 20px; }
.vt-dar { max-width: 820px; }
.vt h2 { font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.2rem); line-height: 1.15; margin: 0 0 12px; letter-spacing: -.2px; }
.vt h3 { margin: 0 0 6px; font-size: 1.08rem; color: var(--mor); }
.vt p { line-height: 1.6; }
.vt-ikon { width: 22px; height: 22px; flex: 0 0 auto; }
.vt-ust-etiket { display: inline-block; margin: 0 0 10px; font-size: .82rem; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--sari-koyu); }
.vt-sari { background: var(--sari); color: #1e293b; }
.vt-sari .vt-ikon, .vt-cta .vt-ikon { width: 18px; height: 18px; }
.vt-cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; }
.vt-cta .dugme { min-height: 50px; padding: 10px 20px; font-size: 1.05rem; border-radius: 8px; }

/* üst bölüm */
.vt-kahraman { position: relative; overflow: hidden; color: #e2e8f0; background: radial-gradient(900px 500px at 85% 10%, rgba(245, 167, 0, .18), transparent 60%), linear-gradient(160deg, #0f172a 0%, #1e293b 70%, #24324a 100%); padding: 56px 0 64px; }
.vt-kahraman-ic { display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; align-items: center; }
.vt-kahraman h1 { color: #fff; font-size: clamp(2rem, 1.3rem + 3vw, 3.3rem); line-height: 1.08; letter-spacing: -.5px; margin: 0 0 18px; }
.vt-kahraman h1 span { color: var(--sari); }
.vt-kahraman .vt-ust-etiket { color: var(--sari); }
.vt-giris-metni { font-size: 1.12rem; color: #cbd5e1; max-width: 560px; margin: 0; }
.vt-tikler { list-style: none; padding: 0; margin: 22px 0 0; display: flex; flex-wrap: wrap; gap: 8px 20px; color: #cbd5e1; font-size: .95rem; }
.vt-tikler li { display: flex; align-items: center; gap: 6px; }
.vt-tikler .vt-ikon { width: 18px; height: 18px; color: var(--sari); }
.vt-uyari { margin: 0 0 14px; }
.vt-uyari a { display: inline-block; background: #efefec; color: #991b1b; padding: 8px 12px; border-radius: 8px; text-decoration: none; font-weight: 600; }
.vt-sahne { position: relative; padding: 0 0 40px 0; }
.vt-sahne .vt-tarayici { margin-left: 18%; }
.vt-sahne .vt-tel { position: absolute; left: 0; bottom: 0; width: 34%; max-width: 210px; }

/* cihaz çerçeveleri */
.vt-tarayici { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 30px 60px -20px rgba(2, 6, 23, .55), 0 0 0 1px rgba(148, 163, 184, .25); }
.vt-tarayici-ust { display: flex; align-items: center; gap: 6px; padding: 9px 12px; background: #e9edf3; }
.vt-tarayici-ust i { width: 10px; height: 10px; border-radius: 50%; background: #cbd5e1; flex: 0 0 auto; }
.vt-tarayici-ust i:first-child { background: #f87171; }
.vt-tarayici-ust i:nth-child(2) { background: #fbbf24; }
.vt-tarayici-ust i:nth-child(3) { background: #34d399; }
.vt-tarayici-ust span { margin-left: 10px; flex: 1; min-width: 0; background: #fff; border-radius: 6px; padding: 2px 10px; font-size: .75rem; color: #64748b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vt-tarayici img, .vt-tel img, .vt-kagit img { display: block; width: 100%; height: auto; }
.vt-tel { position: relative; background: #0b1220; border-radius: 34px; padding: 10px; box-shadow: 0 30px 60px -18px rgba(2, 6, 23, .6), 0 0 0 1px rgba(148, 163, 184, .3); }
.vt-tel img { border-radius: 25px; aspect-ratio: 1 / 2; object-fit: cover; object-position: top; }
.vt-tel-kulak { position: absolute; top: 16px; left: 50%; transform: translateX(-50%); width: 28%; height: 14px; border-radius: 10px; background: #0b1220; z-index: 1; }
.vt-kagit { background: #fff; border-radius: 6px; overflow: hidden; box-shadow: 0 24px 50px -20px rgba(15, 23, 42, .35), 0 0 0 1px #e2e8f0; }
.vt-kagit img { aspect-ratio: 900 / 760; object-fit: cover; object-position: top; }

/* rakam şeridi */
.vt-serit { background: #fff; border-bottom: 1px solid var(--cizgi); }
.vt-serit-ic { display: grid; grid-template-columns: 1fr 1fr; }
.vt-serit-ic > div { background: #fff; padding: 22px 16px; border-top: 1px solid var(--cizgi); border-left: 1px solid var(--cizgi); display: flex; flex-direction: column; gap: 4px; }
.vt-serit-ic .vt-ikon { color: var(--sari-koyu); width: 26px; height: 26px; margin-bottom: 4px; }
.vt-serit-ic b { color: var(--mor); font-size: 1.05rem; }
.vt-serit-ic span { color: var(--soluk); font-size: .9rem; line-height: 1.4; }

/* bölümler */
.vt-bolum { padding: 64px 0; }
.vt-acik, .vt-sahne-satir.ters { background: var(--zemin); }
.vt-baslik { max-width: 680px; margin: 0 0 32px; }
.vt-baslik p:not(.vt-ust-etiket) { color: var(--soluk); font-size: 1.05rem; margin: 0; }
.vt-adimlar { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 16px; }
.vt-adimlar li { position: relative; background: #fff; border: 1px solid var(--cizgi); border-radius: 8px; padding: 22px 20px 20px; }
.vt-adimlar .vt-ikon { color: var(--sari-koyu); width: 28px; height: 28px; margin-bottom: 12px; }
.vt-adimlar p { margin: 0; color: var(--soluk); font-size: .95rem; }
.vt-adim-no { position: absolute; top: 14px; right: 18px; font-size: 2.2rem; font-weight: 700; color: #e9edf3; line-height: 1; }
.vt-iki { display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; align-items: center; }
.vt-metin > p:not(.vt-ust-etiket) { color: var(--mor2); font-size: 1.06rem; margin: 0 0 18px; }
.vt-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.vt-liste li { display: flex; gap: 10px; align-items: flex-start; }
.vt-liste .vt-ikon { width: 20px; height: 20px; margin-top: 2px; padding: 3px; border-radius: 50%; background: #ebebe9; color: #15803d; stroke-width: 3; }
.vt-gorsel { display: flex; justify-content: center; }
.vt-gorsel-tel .vt-tel { width: 270px; max-width: 72%; }
.vt-gorsel-kagit .vt-kagit { width: 100%; max-width: 520px; transform: rotate(-1.2deg); }
.vt-gorsel-masa .vt-tarayici { width: 100%; }
.vt-izgara { display: grid; grid-template-columns: 1fr; gap: 14px; }
.vt-oge { background: #fff; border: 1px solid var(--cizgi); border-radius: 8px; padding: 20px; transition: border-color .15s, box-shadow .15s, transform .15s; }
.vt-oge:hover { border-color: var(--sari); box-shadow: 0 10px 24px -12px rgba(15, 23, 42, .18); transform: translateY(-2px); }
.vt-oge .vt-ikon { width: 40px; height: 40px; padding: 9px; border-radius: 8px; background: var(--sari-acik); color: var(--sari-koyu); margin-bottom: 12px; }
.vt-oge p { margin: 0; color: var(--soluk); font-size: .94rem; }

/* karşılaştırma */
.vt-kiyas { display: grid; grid-template-columns: 1fr; gap: 16px; }
.vt-kiyas > div { border-radius: 8px; padding: 24px; }
.vt-kiyas h3 { margin-bottom: 16px; }
.vt-kiyas ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.vt-kiyas li { display: flex; gap: 10px; align-items: flex-start; }
.vt-kiyas li .vt-ikon { width: 20px; height: 20px; margin-top: 2px; padding: 3px; border-radius: 50%; stroke-width: 3; }
.vt-kiyas-once { background: #f8fafc; border: 1px solid var(--cizgi); color: var(--mor2); }
.vt-kiyas-once .vt-ikon { background: #ebebe9; color: #b91c1c; }
.vt-kiyas-sonra { background: #0f172a; color: #e2e8f0; }
.vt-kiyas-sonra h3 { color: var(--sari); }
.vt-kiyas-sonra .vt-ikon { background: var(--sari); color: #0f172a; }

/* fiyat bandı ve son çağrı */
.vt-fiyat-bant { background: linear-gradient(120deg, #efefec, #e2e2dd); }
.vt-fiyat-ic { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.vt-fiyat-ic > div { max-width: 640px; }
.vt-fiyat-ic p:not(.vt-ust-etiket) { margin: 0; color: #5b4a1b; font-size: 1.05rem; }
.vt-fiyat-bant .vt-ust-etiket { color: #8a5a00; }
.vt-fiyat-bant .dugme { background: #1e293b; color: #fff; border-radius: 8px; }
.vt-fiyat-bant .dugme .vt-ikon { width: 18px; height: 18px; }
.vt-sss { background: #fff; border: 1px solid var(--cizgi); border-radius: 8px; padding: 6px 20px; }
.vt-sss summary { padding: 4px 0; }
.vt-tum { margin: 16px 0 0; }
.vt-tum a { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--mor); text-decoration: none; }
.vt-tum .vt-ikon { width: 18px; height: 18px; }
.vt-son { background: linear-gradient(160deg, #0f172a, #1e293b); color: #cbd5e1; padding: 64px 0; }
.vt-son h2 { color: #fff; }
.vt-son-ic { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; align-items: center; }
.vt-eposta { margin: 16px 0 0; font-size: .95rem; }
.vt-eposta a { color: #fff; }
.vt-giris-kutu { background: #fff; color: var(--yazi); border-radius: 8px; padding: 22px; }
.vt-giris-kutu p { margin: 0 0 4px; color: var(--soluk); }
.vt-giris-kutu .vitrin-giris { margin-top: 10px; max-width: none; }
.vitrin-ana .alt { background: #0b1220; color: #94a3b8; padding: 22px 16px 30px; }
.vitrin-ana .alt a { color: #cbd5e1; }

@media (min-width: 640px) {
  .vt-serit-ic { grid-template-columns: repeat(4, 1fr); }
  .vt-serit-ic > div { border-top: 0; }
  .vt-serit-ic > div:first-child { border-left: 0; }
  .vt-adimlar { grid-template-columns: 1fr 1fr; }
  .vt-izgara { grid-template-columns: 1fr 1fr; }
  .vt-kiyas { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 960px) {
  .vt-kahraman { padding: 80px 0 90px; }
  .vt-kahraman-ic { grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); gap: 48px; }
  .vt-adimlar { grid-template-columns: repeat(4, 1fr); }
  .vt-izgara { grid-template-columns: repeat(3, 1fr); }   /* 9 kart: 3x3 (21.10 Excel kartı eklendi) */
  .vt-iki { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
  .vt-sahne-satir.ters .vt-metin { order: 2; }
  .vt-bolum { padding: 88px 0; }
  .vt-son-ic { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 48px; }
}
@media (max-width: 639px) {
  .vt-bolum { padding: 48px 0; }
  .vt-serit-ic > div:nth-child(odd) { border-left: 0; }
  .vt-serit-ic > div:nth-child(-n+2) { border-top: 0; }
  .vt-ic { padding: 0 16px; }
  .vt-cta .dugme { flex: 1 1 100%; }
  .vt-sahne .vt-tarayici { margin-left: 22%; }
  .vt-sahne .vt-tel { width: 38%; border-radius: 24px; padding: 6px; }
  .vt-sahne .vt-tel img { border-radius: 19px; }
  .vt-sahne .vt-tel-kulak { top: 10px; height: 9px; }
}

/* ---- tam ekran imza (17.10): formdaki kutu önizleme, dokununca tüm ekran imza alanı ---- */
canvas.imza { height: 150px; cursor: pointer; touch-action: manipulation; }
canvas.imza:hover, canvas.imza:focus-visible { border-color: var(--sari); outline: none; background: #efefec; }
html.imza-acik, html.imza-acik body { overflow: hidden; }
.imza-ekran { position: fixed; inset: 0; z-index: 1000; background: #fff; display: flex; flex-direction: column; height: 100vh; height: 100dvh;
  -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; overscroll-behavior: contain; }
.imza-ekran[hidden] { display: none; }
.imza-ust { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; padding: 10px 16px; border-bottom: 1px solid var(--cizgi); }
.imza-baslik { font-size: 1.05rem; color: var(--mor); }
.imza-ipucu { display: none; font-size: .88rem; color: var(--sari-koyu); }
@media (orientation: portrait) and (max-width: 700px) { .imza-ipucu { display: inline; } }
.imza-alan { position: relative; flex: 1; min-height: 0; background: #fdfdfb; }
.imza-alan canvas { position: absolute; inset: 0; width: 100%; height: 100%; touch-action: none; cursor: crosshair; }
.imza-cizgi { position: absolute; left: 6%; right: 6%; bottom: 26%; border-bottom: 2px solid #cbd5e1; pointer-events: none; }
.imza-cizgi span { position: absolute; left: 0; bottom: 4px; font-size: 1.6rem; line-height: 1; color: #94a3b8; }
.imza-ad { position: absolute; left: 6%; right: 6%; bottom: calc(26% - 30px); text-align: center; color: var(--soluk); font-size: .95rem; pointer-events: none; }
.imza-alt { display: flex; gap: 8px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); border-top: 1px solid var(--cizgi); background: #fff; }
.imza-alt .dugme { min-height: 46px; padding: 8px 14px; }
.imza-alt .dugme:disabled { opacity: .45; }
.imza-alt [data-i=tamam] { min-width: 110px; }
.imza-bosluk { flex: 1; }
@media (max-width: 420px) { .imza-alt { gap: 6px; } .imza-alt .dugme { padding: 8px 10px; font-size: .95rem; } .imza-alt [data-i=tamam] { min-width: 84px; } }
@media (max-height: 420px) { .imza-ust { padding: 6px 14px; } .imza-alt { padding-top: 6px; padding-bottom: calc(6px + env(safe-area-inset-bottom)); } .imza-alt .dugme { min-height: 40px; } }

/* fiyat sayfası: yıllık öne çıkar, hediye satırı */
.fiyat-kart { position: relative; }
.fiyat-one { box-shadow: 0 0 0 2px var(--sari), 0 10px 30px -14px rgba(15, 23, 42, .25); }
.fiyat-rozet { position: absolute; top: -11px; right: 14px; background: var(--sari); color: #1e293b; font-weight: 700; font-size: .8rem; padding: 2px 10px; border-radius: 6px; }
.fiyat-hediye { display: flex; gap: 8px; align-items: flex-start; background: #efefec; color: #14532d; border-radius: 8px; padding: 8px 10px; margin: 8px 0 0; }
.fiyat-hediye .vt-ikon { width: 20px; height: 20px; margin-top: 1px; color: #15803d; stroke-width: 3; }

/* tanıtım: "sahada doğdu" hikâyesi */
.vt-hikaye { background: var(--zemin); }
.vt-hikaye .vt-metin > p:not(.vt-ust-etiket):not(.vt-imza-satir) { margin: 0 0 14px; }
.vt-imza-satir { display: flex; flex-direction: column; gap: 2px; margin: 22px 0 0; padding-left: 14px; border-left: 3px solid var(--sari); }
.vt-imza-satir b { color: var(--mor); font-size: 1.05rem; }
.vt-imza-satir span { color: var(--soluk); font-size: .92rem; }
.vt-sikinti { background: #fff; border: 1px solid var(--cizgi); border-radius: 8px; padding: 24px; box-shadow: 0 16px 40px -24px rgba(15, 23, 42, .25); }
.vt-sikinti h3 { margin-bottom: 14px; }
.vt-sikinti ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.vt-sikinti li, .vt-sikinti-son { display: flex; gap: 10px; align-items: flex-start; color: var(--mor2); }
.vt-sikinti .vt-ikon { width: 20px; height: 20px; margin-top: 2px; padding: 3px; border-radius: 50%; stroke-width: 3; background: #ebebe9; color: #b91c1c; }
.vt-sikinti-son { margin: 18px 0 0; padding: 12px 14px; border-radius: 8px; background: #efefec; color: #14532d; font-weight: 600; }
.vt-sikinti-son .vt-ikon { background: #bbf7d0; color: #15803d; }

/* sınırsızlık rozetleri (fiyat bandı ve fiyat sayfası) */
.vt-rozetler { list-style: none; margin: 4px 0 14px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.vt-rozetler li { display: inline-flex; align-items: center; gap: 6px; background: #fff; border: 1px solid #f1d58a; color: #1e293b; font-weight: 700; font-size: .95rem; padding: 6px 12px 6px 8px; border-radius: 6px; }
.vt-rozetler .vt-ikon { width: 20px; height: 20px; padding: 3px; border-radius: 50%; background: #ebebe9; color: #15803d; stroke-width: 3; }
.kart .vt-rozetler li { background: var(--sari-acik); }

/* tanıtım: doğa için notu */
.vt-metin > p.vt-doga { display: flex; gap: 12px; align-items: flex-start; margin: 18px 0 0; padding: 14px 16px; border-radius: 8px; background: #efefec; border: 1px solid #bbf7d0; color: #14532d; font-size: 1rem; }
.vt-doga .vt-ikon { width: 30px; height: 30px; color: #16a34a; margin-top: 2px; }
.vt-doga b { display: block; color: #15803d; margin-bottom: 2px; }

/* ---- üyelik (17.10): menü düğmesi, tanıtım düğmeleri, geliştiren firma, başvuru formu ---- */
.vitrin-menu a.menu-uye { background: var(--sari); color: #1e293b; margin-left: 4px; }
.vitrin-menu a.menu-uye:hover, .vitrin-menu a.menu-uye.on { background: #e09a00; color: #1e293b; }
.vt-cerceve { background: transparent; color: #fff; box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .55); }
.vt-cerceve:hover { background: rgba(255, 255, 255, .08); }
.vt-fiyat-dugme { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.vt-fiyat-bag { color: #5b4a1b; font-weight: 600; }
.vt-firma-izgara { display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 760px) { .vt-firma-izgara { grid-template-columns: repeat(3, 1fr); } }
.vt-firma .vt-baslik { max-width: 780px; }
.vt-firma .vt-baslik p:not(.vt-ust-etiket) { color: var(--mor2); margin: 0 0 12px; }
.alt-imza { display: inline-block; margin-top: 8px; }
.gizli-alan { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.uye-adim { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 12px 0 0; padding: 0; list-style: none; counter-reset: u; }
.uye-adim li { counter-increment: u; display: flex; align-items: center; gap: 8px; font-weight: 600; color: var(--mor); }
.uye-adim li::before { content: counter(u); display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--sari); color: #1e293b; font-size: .9rem; font-weight: 700; flex: 0 0 auto; }
.uye-adim.dikey { flex-direction: column; gap: 12px; }
.uye-adim.dikey li { display: block; position: relative; padding: 2px 0 0 36px; min-height: 26px; font-weight: 400; color: var(--yazi); overflow-wrap: anywhere; }
.uye-adim.dikey li::before { position: absolute; left: 0; top: 0; }
.paket-izgara { display: grid; grid-template-columns: 1fr; gap: 10px; margin-bottom: 8px; }
@media (min-width: 560px) { .paket-izgara { grid-template-columns: 1fr 1fr; } }
.paket-sec { display: flex; gap: 12px; align-items: flex-start; border: 1.5px solid var(--cizgi); border-radius: 8px; padding: 14px; cursor: pointer; }
.paket-sec:has(input:checked) { border-color: var(--sari); background: #efefec; }
.paket-sec input { width: 20px; height: 20px; margin-top: 3px; accent-color: #1e293b; }
.paket-sec > span { display: flex; flex-direction: column; gap: 2px; }
.paket-tutar { font-size: 1.1rem; font-weight: 700; color: var(--mor); }
.paket-tutar small { font-size: .8rem; font-weight: 400; color: var(--soluk); }
.paket-not { color: #15803d; }
.alan > .kod-onek, .kod-onek { display: flex; font-weight: 400; margin: 0; align-items: stretch; border: 1px solid #d6dbe3; border-radius: 6px; overflow: hidden; background: #fff; }
.kod-onek > span { display: flex; align-items: center; padding: 0 10px; background: #f1f5f9; color: var(--soluk); font-size: .92rem; white-space: nowrap; border-right: 1px solid #d6dbe3; }
.kod-onek input { border: 0 !important; border-radius: 0 !important; min-width: 0; flex: 1; }
.kucuk-not { font-size: .88rem; margin: 6px 0 0; }
.sozlesme-kutu { max-height: 280px; overflow: auto; border: 1px solid var(--cizgi); border-radius: 8px; padding: 4px 16px 12px; background: #fafbfc; font-size: .92rem; }
.sozlesme-kutu h2 { font-size: .98rem; margin: 14px 0 4px; }
.sozlesme-kutu p { margin: 0 0 6px; }
.onay { display: flex; gap: 10px; align-items: flex-start; margin: 10px 0; cursor: pointer; }
.onay input { width: 20px; height: 20px; margin-top: 2px; flex: 0 0 auto; accent-color: #1e293b; }
.uye-form .imzalar { margin-top: 16px; }
.ortala { text-align: center; }
.odeme-tutar { font-size: 1.15rem; }
.odeme-tutar small { color: var(--soluk); font-size: .85rem; }
.odeme-hesap { display: grid; grid-template-columns: max-content 1fr; gap: 8px 16px; margin: 10px 0 0; }
.odeme-hesap dt { color: var(--soluk); }
.odeme-hesap dd { margin: 0; word-break: break-word; }
.iban { font-size: 1.05rem; letter-spacing: .5px; }
.ref-kod { font-size: 1.15rem; background: var(--sari-acik); padding: 1px 8px; border-radius: 6px; }
.bilgi-listesi { display: grid; grid-template-columns: max-content 1fr; gap: 8px 16px; margin: 0; }
.bilgi-listesi dt { color: var(--soluk); }
.bilgi-listesi dd { margin: 0; word-break: break-word; }
.kirilir { word-break: break-all; }
.basvuru-imza { display: block; max-width: 420px; width: 100%; border: 1px dashed #cbd5e1; border-radius: 8px; padding: 8px; background: #fff; }
@media (max-width: 520px) { .odeme-hesap, .bilgi-listesi { grid-template-columns: 1fr; gap: 2px; } .odeme-hesap dd, .bilgi-listesi dd { margin-bottom: 8px; } }

/* 18.10: menüde kutu yok, üzerine gelince yalnız renk; sarı düğme üzerine gelince koyulaşır, yazı okunur kalır */
.vitrin-menu a, .vitrin-menu a.menu-uye { background: none; border-radius: 0; padding: 7px 10px; transition: color .15s; }
.vitrin-menu a:hover { background: none; color: var(--sari-koyu); }
.vitrin-menu a.on { background: none; color: var(--mor); box-shadow: inset 0 -2px 0 var(--sari); }
.vitrin-menu a.menu-uye { color: var(--sari-koyu); font-weight: 700; margin-left: 2px; }
.vitrin-menu a.menu-uye:hover, .vitrin-menu a.menu-uye.on { background: none; color: var(--mor); }
.dugme.vt-sari:hover { background: #e39c00; color: #1e293b; }

/* ---- 18.10: bölüm başlıkları VakıfBank sarısı (kullanıcı isteği); yanındaki çizgi koyu, iki sarı birbirine karışmasın ---- */
body:not(.vitrin) .kart > h2, body:not(.vitrin) .bolum-bas h2 { color: var(--sari); }
body:not(.vitrin) .kart > h2::before, body:not(.vitrin) .bolum-bas h2::before { background: #1e293b; }

/* ---- 18.10: telefonda dokunma ---- */
a, button, label, summary { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
.dugme:active { transform: scale(.98); }
@media (max-width: 700px) {
  .dugme { min-height: 46px; }
  .dugme.kucuk { min-height: 42px; padding: 6px 14px; }
  .sayfa > .dugmeler > :last-child:nth-child(odd), .izgara-dugme > :last-child:nth-child(odd) { grid-column: 1 / -1; }
  .alt form .bag, .alt .bag { display: inline-block; padding: 12px 18px; }
  .kart > h2 { font-size: 1.08rem; margin-bottom: .8rem; }
  .liste-satir > a.dugme { align-self: center; }
}

/* ---- 18.10: koyu düğmeler VakıfBank sarısı (kullanıcı isteği); yazı koyu kalır, okunur ---- */
.dugme { background: var(--sari); color: #1e293b; }
.dugme:hover { background: #e39c00; color: #1e293b; }
.dugme:disabled { opacity: .6; }
.vt-fiyat-bant .dugme { background: var(--sari); color: #1e293b; box-shadow: 0 6px 16px -8px rgba(120, 80, 0, .55); }
.vt-fiyat-bant .dugme:hover { background: #e39c00; color: #1e293b; }

/* ---- 18.10: QR etiketi baskısı — A4'e 2 sütun, en az 6 etiket (kullanıcı: "en az 4 tane sığsın") ---- */
@media print {
  @page { size: A4; margin: 8mm; }
  .etiket-sayfa .etiketler { display: grid; grid-template-columns: repeat(2, 70mm); gap: 5mm 12mm; justify-content: center; }
  html, body, .etiket-sayfa { background: #fff !important; }
  .etiket-sayfa .etiket { padding: 3mm; border-radius: 2mm; }
  .etiket-sayfa .etiket-ust img, .etiket-sayfa .etiket img { height: 9mm; max-height: 9mm; }
  .etiket-sayfa .etiket-baslik { margin: 1.2mm 0; font-size: 10pt; }
  .etiket-sayfa .etiket .qr svg { width: 44mm; height: 44mm; }
  .etiket-sayfa .etiket-yazi { margin: .5mm 0 1.5mm; }
}

/* ---- 18.10: düğme rengi mavi #007bff (kullanıcının seçtiği iki renkten; sarı başlıklarla karışmasın diye mavi tercih edildi) ---- */
.dugme { background: #007bff; color: #fff; }
.dugme:hover { background: #0069d9; color: #fff; }
.dugme:focus-visible { outline: 3px solid rgba(0, 123, 255, .35); outline-offset: 2px; }
.vt-fiyat-bant .dugme { background: #007bff; color: #fff; box-shadow: 0 6px 16px -8px rgba(0, 80, 180, .55); }
.vt-fiyat-bant .dugme:hover { background: #0069d9; color: #fff; }
/* beyaz zeminli düğmeler üzerine gelince yazı koyu kalır (mavi düğme kuralı yazıyı beyaz yapıyordu) */
.dugme.ikincil:hover { color: var(--mor); }

/* vinç kartında 'Vinci sil' (18.10): beyaz zemin, kırmızı yazı; üzerine gelince açık kırmızı zemin */
.vinc-sil { margin: 4px 0 10px; }
.dugme.sil-dugme { background: #fff; color: var(--kirmizi); border: 1px solid #f3c7c4; }
.dugme.sil-dugme:hover { background: #efefec; color: var(--kirmizi); border-color: var(--kirmizi); }

/* etiket partisi satırı (18.10): telefonda düğmeler yazının altında, ilk düğme (A4 6lı) tam genişlik */
@media (max-width: 700px) {
  .parti-satir { flex-direction: column; align-items: stretch; gap: 10px; }
  .parti-satir > .dugmeler { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
  .parti-satir > .dugmeler > :first-child { grid-column: 1 / -1; }
  .parti-satir > .dugmeler form, .parti-satir > .dugmeler form .dugme { width: 100%; }
}

/* ---- 18.10: tanıtım sitesi panelle aynı renklerde — düğmeler mavi #007bff, kutu başlıkları sarı (yasal metin başlıkları hariç) ---- */
.dugme.vt-sari { background: #007bff; color: #fff; }
.dugme.vt-sari:hover { background: #0069d9; color: #fff; }
.vitrin .kart:not(.yasal) > h2 { color: var(--sari); }
.vitrin .kart:not(.yasal) > h2::before { background: #1e293b; }
.dugme.vt-cerceve { background: transparent; color: #fff; }
.dugme.vt-cerceve:hover { background: rgba(255, 255, 255, .08); color: #fff; }

/* başvuru sonrası: ödeme açıklama kodu (18.10) */
.odeme-kod { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; background: var(--sari-acik); border: 1px solid #f1d58a; border-radius: 8px; padding: 12px 14px; margin: 0 0 12px; }
.odeme-kod span { flex: 1 1 100%; color: #7a5300; font-weight: 600; font-size: .92rem; }
.odeme-kod b { font-size: 1.6rem; letter-spacing: 2px; color: var(--mor); font-family: ui-monospace, Consolas, monospace; }
@media (max-width: 700px) { .vitrin-menu a, .vitrin-menu a.menu-uye { padding: 6px 7px; font-size: .9rem; } }
@media (max-width: 380px) { .vitrin-menu a, .vitrin-menu a.menu-uye { padding: 6px 5px; font-size: .86rem; } }

/* Excel'den vinç aktarma önizlemesi (18.10) */
.tablo-kap { overflow-x: auto; margin: 10px 0 14px; border: 1px solid var(--cizgi); border-radius: 8px; }
.aktar-tablo { border-collapse: collapse; width: 100%; font-size: .9rem; }
.aktar-tablo th, .aktar-tablo td { padding: 7px 10px; border-bottom: 1px solid var(--cizgi); text-align: left; white-space: nowrap; }
.aktar-tablo th { background: #f6f8fb; color: var(--mor2); font-weight: 600; position: sticky; top: 0; }
.aktar-tablo tr.atla td { color: var(--soluk); text-decoration: line-through; }
.aktar-tablo tr.atla td:last-child { text-decoration: none; }

/* ziyaret imzası (18.10): isteğe bağlı seçim ve 'bugünkü imza kullanıldı' notu */
.ziyaret-sec { margin: 8px 0 0; font-size: .92rem; color: var(--mor2); }
.ziyaret-not { margin: 0 0 6px; padding: 7px 10px; border-radius: 6px; background: #efefec; color: #14532d; font-size: .9rem; }
.ziyaret-not .bag { color: #14532d; margin-left: 4px; }
.ziyaret-sec { display: flex; gap: 8px; align-items: flex-start; width: 100%; margin: 10px 0 0; cursor: pointer; }
.ziyaret-sec input { width: 20px; height: 20px; flex: 0 0 auto; margin: 1px 0 0; accent-color: #007bff; }

/* VinçKart logosu (18.10): üst menüde resim; telefonda biraz küçük */
.vk-logo-resim { display: block; height: 44px; width: auto; }
.yonetim-yazi { font-size: .95rem; color: var(--soluk); font-weight: 600; margin-left: 2px; }
@media (max-width: 700px) { .vk-logo-resim { height: 38px; } }

/* tanıtım: 'sistemin aslı' rozeti (18.10) */
.vt-asil { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 6px 12px; border-radius: 6px; border: 1px solid rgba(245, 167, 0, .45); background: rgba(245, 167, 0, .1); color: #e2e8f0; font-size: .92rem; }
.vt-asil .vt-ikon { width: 18px; height: 18px; color: var(--sari); }
.vt-asil b { color: #fff; }

/* 20.10: tanıtım sitesinde "Üye ol", bölüm üst başlıkları ve simgeler #f5a700 (kullanıcı isteği) */
.vitrin-menu a.menu-uye { color: #f5a700; }
.vt-ust-etiket { color: #f5a700; }
.vt-serit-ic .vt-ikon, .vt-adimlar .vt-ikon, .vt-oge .vt-ikon, .vt-tum .vt-ikon { color: #f5a700; }

/* logo bir tık büyük (20.10) */
.vk-logo-resim { height: 52px; }
@media (max-width: 700px) { .vk-logo-resim { height: 44px; } }
/* ezilmesin: genel .ust-logo img kuralından daha özel (20.10) */
.ust-logo img.vk-logo-resim { height: 44px; max-width: none; width: auto; }
@media (max-width: 700px) { .ust-logo img.vk-logo-resim { height: 38px; } }

/* abonelik (20.10): firma panelinde yöneticiye bitiş bandı; yönetimde uzatma formu */
.kutu.abonelik-bant { background: #efefec; border: 1px solid #f1d58a; color: #7a5300; }
.kutu.abonelik-bant a { color: #7a5300; font-weight: 700; }
.uzat-form { margin: 8px 0 12px; padding: 12px 14px; border: 1px solid var(--cizgi); border-radius: 8px; background: #fafbfc; }

/* 'Ayarlar' üst menüde (masaüstü); telefonda alt menü 5 düğmede kalır, Bugün'deki düğmeden açılır (20.10) */
@media (max-width: 700px) { .menulu .ust-menu a.menu-ayar { display: none; } }
.antet-hatirlat { border: 1px solid #f1d58a; background: #efefec; }

/* panel alt bilgisi bir tık büyük ve kalın (21.10, kullanıcı isteği); vitrin alt bilgisi aynı kalır */
body:not(.vitrin) .alt { font-size: 1rem; font-weight: 700; }
body:not(.vitrin) .alt .vk-imza { font-size: .9rem; }

/* Vitrin: elektronik imza bölümü (21.10) — örnek imzalı form kartı + numaralı adımlar */
.vt-eimza .vt-gorsel { display: flex; justify-content: center; }
.ek-kart { width: 100%; max-width: 460px; background: #fff; border: 1px solid var(--cizgi); border-radius: 8px; padding: 20px; box-shadow: 0 18px 40px rgba(15, 23, 42, .10); }
.ek-ust { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.ek-tur { background: var(--sari-acik); color: var(--sari-koyu); font-weight: 700; font-size: .82rem; padding: 3px 9px; border-radius: 5px; }
.ek-no { color: var(--soluk); font-size: .82rem; font-variant-numeric: tabular-nums; }
.ek-vinc { margin: 10px 0 14px; color: var(--mor2); font-size: .92rem; }
.ek-imzalar { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ek-imza { border: 1px solid var(--cizgi); border-radius: 6px; padding: 10px 12px 12px; display: flex; flex-direction: column; min-width: 0; }
.ek-cizim { width: 100%; height: 46px; border-bottom: 1px solid var(--cizgi); margin-bottom: 8px; }
.ek-cizim path { fill: none; stroke: #1e293b; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.ek-imza b { font-size: .92rem; }
.ek-imza small { color: var(--soluk); font-size: .8rem; }
.ek-tamam, .ek-gecerli { display: inline-flex; align-items: center; gap: 4px; color: var(--yesil); font-size: .8rem; font-weight: 600; margin-top: 6px; }
.ek-tamam .vt-ikon, .ek-gecerli .vt-ikon { width: 14px; height: 14px; flex: 0 0 14px; }
.ek-dogrula { display: flex; gap: 12px; align-items: center; margin-top: 12px; background: var(--zemin); border-radius: 6px; padding: 10px 12px; }
.ek-dogrula > .vt-ikon { width: 40px; height: 40px; flex: 0 0 40px; color: var(--mor); }
.ek-dogrula small { display: block; color: var(--soluk); font-size: .78rem; }
.ek-dogrula b { font-family: ui-monospace, Consolas, monospace; letter-spacing: .5px; font-size: .95rem; }
.ek-adimlar { list-style: none; margin: 4px 0 18px; padding: 0; }
.ek-adimlar li { display: flex; gap: 14px; position: relative; padding-bottom: 16px; }
.ek-adimlar li:not(:last-child)::before { content: ""; position: absolute; left: 15px; top: 34px; bottom: 2px; width: 1px; background: var(--cizgi); }
.ek-no-daire { flex: 0 0 32px; height: 32px; border-radius: 50%; border: 1px solid #f1d58a; background: var(--sari-acik); color: var(--sari-koyu); font-weight: 700; font-size: .9rem; display: grid; place-items: center; }
.ek-adimlar h3 { margin: 4px 0 2px; font-size: 1.02rem; }
.ek-adimlar p { margin: 0; color: var(--soluk); font-size: .95rem; }
@media (max-width: 420px) { .ek-imzalar { grid-template-columns: 1fr; } .ek-kart { padding: 16px; } }

/* QR kartı: arıza düğmesinin altında bakım talebi (22.10) */
.bakim-talep { margin-top: 10px; }

/* Portal: arıza / bakım talebi düğmeleri, vinç başına düğmeler, firmadan gelen not; vinç seçimi (22.10) */
.portal-eylem .dugme + .dugme { margin-top: 10px; }
.portal-vinc { border-bottom: 1px solid var(--cizgi); padding-bottom: 10px; }
.portal-vinc:last-child { border-bottom: 0; }
.portal-vinc .liste-satir { border-bottom: 0; }
.portal-vinc-dugme { margin: 0; gap: 8px; }
.portal-not { border: 1px solid #f1d58a; background: #efefec; }
.portal-not-vinc { margin: 0 0 12px; padding-left: 18px; }
.portal-not-vinc li { margin-bottom: 4px; }
.portal-tek-vinc { background: var(--zemin); border-radius: 6px; padding: 10px 12px; }
.kucuk-bag { font-size: .85rem; font-weight: 400; margin-left: 6px; }
.vinc-sec label { align-items: flex-start; }
.vinc-sec label span { line-height: 1.45; }

/* Talepler sayfası (22.10): arıza kırmızı, bakım sarı, parça mavi */
.talep-kart { border-top: 4px solid var(--cizgi); }
.talep-ariza { border-top-color: #dc2626; } .talep-ariza h2 { color: #dc2626 !important; }
.talep-bakim { border-top-color: #f5a700; } .talep-bakim h2 { color: #b77900 !important; }
.talep-parca { border-top-color: #2563eb; } .talep-parca h2 { color: #2563eb !important; }
.talep-sayi { display: inline-block; min-width: 24px; padding: 0 7px; margin-left: 6px; border-radius: 12px; background: currentColor; font-size: .82rem; line-height: 22px; text-align: center; vertical-align: middle; }
.talep-sayi { color: #fff; } .talep-ariza .talep-sayi { background: #dc2626; } .talep-bakim .talep-sayi { background: #f5a700; } .talep-parca .talep-sayi { background: #2563eb; }
.talep-bekleyen { margin: -6px 0 16px; text-align: right; font-weight: 600; }
.portal-eylem .dugme.tam:last-child:not(.buyuk) { margin-top: 10px; }

/* Portal temizliği (22.10): notu kapat, tamamlanan talebi kaldır */
.portal-not { position: relative; }
.not-kapat { position: absolute; top: 12px; right: 12px; margin: 0; }
.portal-not h2 { padding-right: 90px; }
.talep-sag { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.talep-temizle { margin: 12px 0 0; text-align: right; }

/* Bugün > vinç formu aç: müşteri + vinç tek ekranda (22.10) */
.fb-yeni-musteri, .fb-yeni-vinc { background: var(--zemin); border-radius: 6px; padding: 12px; margin: 0 0 14px; }
[data-form-baslat] [hidden] { display: none !important; }

/* Firma girişi: en son girilen firmaya tek dokunuşla dön (22.10, Android uygulaması) */
.son-firma { margin-bottom: 8px; }
.son-firma-not { margin: 6px 0 10px; font-size: .9rem; }

/* ===== Tanıtım sitesi yenileme (23.10): beyaz üst menü (adlar lacivert, üzerine gelince kırmızı, çizgisiz), yumuşak şekiller, müşteri paneli ve uygulama bölümleri ===== */
body.vitrin .ust { position: sticky; top: 0; z-index: 30; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 10px; padding: 12px 28px;
  background: rgba(255, 255, 255, .96); -webkit-backdrop-filter: saturate(160%) blur(12px); backdrop-filter: saturate(160%) blur(12px);
  border-bottom: 1px solid #e8ebf0; box-shadow: 0 6px 20px -16px rgba(15, 23, 42, .45); }
body.vitrin .vitrin-menu { gap: 4px; align-items: center; }
body.vitrin .vitrin-menu a, body.vitrin .vitrin-menu a.on { color: #1e293b; font-weight: 600; padding: 8px 12px; box-shadow: none; background: none; transition: color .15s; }
body.vitrin .vitrin-menu a:hover { color: #dc2626; }
body.vitrin .vitrin-menu a.on { color: #dc2626; font-weight: 700; }
body.vitrin .vitrin-menu a.menu-uye { color: #f5a700; font-weight: 700; }
body.vitrin .vitrin-menu a.menu-uye:hover, body.vitrin .vitrin-menu a.menu-uye.on { color: #dc2626; }
.vt-menu-ac { position: absolute; opacity: 0; pointer-events: none; }
.vt-menu-dugme { display: none; }
@media (max-width: 880px) {
  body.vitrin .ust { padding: 10px 16px; flex-direction: row; }
  .vt-menu-dugme { display: inline-flex; flex-direction: column; justify-content: center; gap: 5px; width: 46px; height: 46px; margin-left: auto; cursor: pointer; border-radius: 8px; }
  .vt-menu-dugme span { display: block; width: 24px; height: 2px; margin: 0 auto; background: #1e293b; border-radius: 2px; transition: transform .2s, opacity .2s, background .15s; }
  .vt-menu-dugme:hover span { background: #dc2626; }
  .vt-menu-ac:focus-visible + .vt-menu-dugme { outline: 2px solid var(--sari); }
  body.vitrin .vitrin-menu { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; margin-top: 6px; padding-top: 4px; border-top: 1px solid #e8ebf0; }
  body.vitrin .vitrin-menu a, body.vitrin .vitrin-menu a.menu-uye { padding: 13px 6px; font-size: 1.05rem; border-bottom: 1px solid #f0f2f5; }
  body.vitrin .vitrin-menu a:last-child { border-bottom: 0; }
  .vt-menu-ac:checked ~ .vitrin-menu { display: flex; }
  .vt-menu-ac:checked + .vt-menu-dugme span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .vt-menu-ac:checked + .vt-menu-dugme span:nth-child(2) { opacity: 0; }
  .vt-menu-ac:checked + .vt-menu-dugme span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
}
/* lacivert bölümlerde yumuşak, bulanık şekiller */
.vt-kahraman, .vt-son, .vt-lacivert, .uyg-panel { position: relative; overflow: hidden; isolation: isolate; }
.vt-kahraman::before, .vt-son::before, .vt-lacivert::before, .uyg-panel::before,
.vt-kahraman::after, .vt-son::after, .vt-lacivert::after, .uyg-panel::after { content: ""; position: absolute; z-index: -1; border-radius: 50%; pointer-events: none; filter: blur(40px); }
.vt-kahraman::before, .vt-son::before, .vt-lacivert::before, .uyg-panel::before { width: 560px; height: 560px; top: -220px; left: -180px; background: radial-gradient(circle at 40% 40%, rgba(59, 130, 246, .38), rgba(59, 130, 246, 0) 68%); }
.vt-kahraman::after, .vt-son::after, .vt-lacivert::after, .uyg-panel::after { width: 520px; height: 520px; bottom: -240px; right: -160px; background: radial-gradient(circle at 50% 50%, rgba(245, 167, 0, .28), rgba(245, 167, 0, 0) 66%); }
.vt-lacivert::before { top: auto; bottom: -260px; left: 10%; background: radial-gradient(circle, rgba(99, 102, 241, .32), rgba(99, 102, 241, 0) 68%); }
.vt-lacivert::after { bottom: auto; top: -260px; right: 5%; }
/* müşteri paneli bandı */
.vt-lacivert { background: linear-gradient(160deg, #0b1220 0%, #16213a 55%, #1e293b 100%); color: #cbd5e1; }
.vt-lacivert h2 { color: #fff; } .vt-lacivert .vt-baslik p:not(.vt-ust-etiket) { color: #cbd5e1; } .vt-lacivert .vt-ust-etiket { color: var(--sari); }
.vt-cam-izgara { display: grid; grid-template-columns: 1fr; gap: 16px; }
.vt-cam { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); border-radius: 12px; padding: 22px; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: transform .15s, border-color .15s; }
.vt-cam:hover { transform: translateY(-2px); border-color: rgba(255, 255, 255, .25); }
.vt-cam h3 { color: #fff; margin: 12px 0 6px; } .vt-cam p { margin: 0; color: #cbd5e1; font-size: .96rem; }
.vt-cam .vt-ikon { width: 44px; height: 44px; padding: 10px; border-radius: 10px; }
.vt-cam-ariza .vt-ikon { color: #f87171; background: rgba(248, 113, 113, .14); }
.vt-cam-bakim .vt-ikon { color: #f5a700; background: rgba(245, 167, 0, .14); }
.vt-cam-parca .vt-ikon { color: #60a5fa; background: rgba(96, 165, 250, .14); }
.vt-cam-zil .vt-ikon { color: #34d399; background: rgba(52, 211, 153, .14); }
.vt-lacivert-not { text-align: center; color: #94a3b8; margin: 22px 0 0; }
/* uygulama paneli */
.uyg-panel { display: grid; grid-template-columns: 1fr; gap: 28px; align-items: center; border-radius: 16px; padding: 36px 26px; color: #cbd5e1; background: linear-gradient(135deg, #0f172a 0%, #1e293b 60%, #24324a 100%); box-shadow: 0 24px 48px -24px rgba(15, 23, 42, .55); }
.uyg-panel h2 { color: #fff; } .uyg-panel .vt-ust-etiket { color: var(--sari); } .uyg-metin p:not(.vt-ust-etiket) { color: #cbd5e1; margin: 0 0 20px; }
.uyg-panel .dugme .vt-ikon { width: 18px; height: 18px; }
.uyg-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.uyg-liste li { display: flex; gap: 14px; align-items: flex-start; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); border-radius: 12px; padding: 14px 16px; }
.uyg-liste .vt-ikon { flex: 0 0 40px; width: 40px; height: 40px; padding: 9px; border-radius: 10px; color: #f5a700; background: rgba(245, 167, 0, .14); }
.uyg-liste b { display: block; color: #fff; } .uyg-liste span { color: #cbd5e1; font-size: .95rem; }
/* uygulama sayfası */
.uyg-iki { display: grid; grid-template-columns: 1fr; gap: 0 16px; }
.uyg-kart.uyg-oneri { border-top: 4px solid var(--sari); }
.uyg-adim { padding-left: 20px; margin: 12px 0 0; } .uyg-adim li { margin-bottom: 6px; }
.uyg-not { padding-left: 20px; margin: 0; } .uyg-not li { margin-bottom: 6px; }
@media (min-width: 640px) { .vt-cam-izgara { grid-template-columns: 1fr 1fr; } .uyg-iki { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .vt-cam-izgara { grid-template-columns: repeat(4, 1fr); } .uyg-panel { grid-template-columns: 1.1fr 1fr; padding: 52px 48px; gap: 48px; } }

.uyg-yakinda { margin: 10px 0 0; font-size: .95rem; }
