:root{
  --ink:#161a1d;          /* neredeyse siyah slate */
  --paper:#eceef0;        /* soğuk açık zemin */
  --surface:#ffffff;
  --line:#d8dce1;
  --line-soft:#e7eaee;
  --muted:#6a7480;
  --brand:#d61f26;        /* Oto İsmail kırmızısı */
  --brand-dk:#a8171d;
  --steel:#1f6feb;        /* bağlantı / aktif */
  --amber:#b45309;        /* yıldızlı / varyant */
  --amber-bg:#fef3e2;
  --ok:#1a7f4b;
  --ok-bg:#e6f4ec;
  --err:#b42318;
  --err-bg:#fdecea;
  --mono:"JetBrains Mono",ui-monospace,"Consolas",monospace;
  --sans:"Inter",-apple-system,"Segoe UI",Roboto,sans-serif;
  --disp:"Space Grotesk","Inter",sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:14px;line-height:1.45;
}
a{color:inherit;text-decoration:none}

/* ── Üst bar ── */
.topbar{
  display:flex;align-items:center;justify-content:space-between;
  background:var(--ink);color:#fff;
  padding:0 24px;height:60px;position:sticky;top:0;z-index:20;
  border-bottom:3px solid var(--brand);
}
.brand{display:flex;flex-direction:column;line-height:1.05}
.brand-mark{font-family:var(--disp);font-weight:700;letter-spacing:.14em;font-size:16px}
.brand-sub{font-size:10px;letter-spacing:.28em;color:#9aa4ad;text-transform:uppercase}
.nav{display:flex;gap:6px}
.nav a{
  padding:8px 14px;border-radius:6px;font-weight:500;color:#c8cfd6;
  font-size:13px;letter-spacing:.02em;transition:background .15s,color .15s;
}
.nav a:hover{background:#242a30;color:#fff}
.nav a.on{background:var(--brand);color:#fff}

/* ── Gövde ── */
.govde{max-width:1160px;margin:0 auto;padding:28px 24px 60px}

/* ── Flash ── */
.flash-alan{max-width:1160px;margin:16px auto 0;padding:0 24px}
.flash{padding:11px 16px;border-radius:8px;font-weight:500;margin-bottom:8px;border:1px solid}
.flash-basari{background:var(--ok-bg);color:var(--ok);border-color:#bfe3cd}
.flash-hata{background:var(--err-bg);color:var(--err);border-color:#f5c6c0}

/* ── Spec şeridi ── */
.spec-serit{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:12px;
  overflow:hidden;margin-bottom:22px;
}
.spec{background:var(--surface);padding:18px 20px;display:flex;flex-direction:column;gap:2px}
.spec-sayi{font-family:var(--disp);font-weight:700;font-size:30px;letter-spacing:-.01em;
  font-variant-numeric:tabular-nums}
.spec-amber{color:var(--amber)}
.spec-et{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* ── Araç çubuğu ── */
.arac-cubugu{display:flex;gap:14px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.arama-kutu{display:flex;align-items:center;gap:0;flex:1;min-width:280px;
  background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.arama-kutu input{
  flex:1;border:0;outline:none;padding:12px 14px;font-size:14px;font-family:var(--sans);
  background:transparent;
}
.arama-kutu button{
  border:0;background:var(--ink);color:#fff;padding:0 20px;align-self:stretch;
  font-family:var(--sans);font-weight:600;cursor:pointer;font-size:13px;
}
.arama-kutu button:hover{background:var(--brand)}
.temizle{padding:0 14px;color:var(--muted);font-size:13px;align-self:center}
.temizle:hover{color:var(--brand)}
.boyut-sec{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.boyut-sec select{border:1px solid var(--line);border-radius:8px;padding:8px 10px;
  background:var(--surface);font-family:var(--sans);font-size:13px}

.sonuc-bilgi{color:var(--muted);font-size:13px;margin:6px 2px 14px}
.sonuc-bilgi strong{color:var(--ink)}

/* ── Tablo ── */
.tablo-sar{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.veri-tablo{width:100%;border-collapse:collapse}
.veri-tablo th{
  text-align:left;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--muted);font-weight:600;padding:12px 16px;background:#f4f6f8;
  border-bottom:1px solid var(--line);
}
.veri-tablo td{padding:12px 16px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
.veri-tablo tbody tr{cursor:pointer;transition:background .1s;position:relative}
.veri-tablo tbody tr:hover{background:#f7f9fb}
.veri-tablo tbody tr:hover .s-kod{box-shadow:inset 3px 0 0 var(--brand)}
.veri-tablo tbody tr:last-child td{border-bottom:0}

.s-kod{width:1%;white-space:nowrap}
.s-oem{width:38%}
.s-sayi{width:1%;text-align:right;white-space:nowrap}

.kod{font-family:var(--mono);font-weight:600;font-size:13px;letter-spacing:-.01em}
.kod-mini{font-size:12px;background:#f4f6f8;padding:2px 8px;border-radius:5px;
  border:1px solid var(--line);color:var(--ink);white-space:nowrap}
.ad{color:var(--ink)}
.oem-onizleme{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:-.02em}
.rozet{display:inline-block;min-width:26px;text-align:center;font-family:var(--mono);
  font-weight:600;font-size:12px;background:#eef1f4;color:var(--ink);
  padding:3px 8px;border-radius:6px;border:1px solid var(--line)}

/* ── Sayfalama ── */
.sayfalama{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:22px}
.s-btn{padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);
  font-size:13px;font-weight:500;transition:border-color .12s,color .12s}
.s-btn:hover{border-color:var(--ink)}
.s-btn.pasif{opacity:.4;pointer-events:none}
.s-durum{font-family:var(--mono);font-size:13px;color:var(--muted);padding:0 8px}

/* ── Boş durum ── */
.bos-durum{background:var(--surface);border:1px dashed var(--line);border-radius:12px;
  padding:48px 24px;text-align:center;color:var(--muted)}
.birincil-btn{display:inline-block;margin-top:14px;background:var(--brand);color:#fff;
  padding:11px 22px;border-radius:9px;font-weight:600;border:0;cursor:pointer;font-size:14px}
.birincil-btn:hover{background:var(--brand-dk)}

/* ── Detay ── */
.geri{color:var(--muted);font-size:13px}
.geri:hover{color:var(--brand)}
.detay-bas{display:flex;align-items:center;gap:14px;margin:14px 0 20px}
.kod-buyuk{font-size:26px;font-family:var(--mono);font-weight:600}
.rozet-buyuk{font-size:13px;padding:5px 12px}
.isim-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0 0 26px}
.isim-grid > div{background:var(--surface);padding:14px 18px}
.isim-grid dt{font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.isim-grid dd{margin:0;font-weight:500}
.alt-baslik{font-family:var(--disp);font-size:16px;font-weight:600;margin:0 0 14px}

.oem-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.oem-hucre{display:flex;align-items:center;gap:10px;background:var(--surface);
  border:1px solid var(--line);border-radius:9px;padding:10px 12px}
.oem-hucre.oem-var{border-color:#f0d3a6;background:var(--amber-bg)}
.oem-sira{font-family:var(--mono);font-size:11px;color:var(--muted);min-width:20px}
.oem-kod{font-family:var(--mono);font-weight:600;font-size:14px;letter-spacing:-.01em}
.oem-etiket{margin-left:auto;color:var(--amber);font-weight:700;font-size:15px}

/* ── İçe aktarma ── */
.sayfa-baslik{font-family:var(--disp);font-weight:700;font-size:24px;margin:0 0 8px}
.aciklama{color:var(--muted);max-width:640px;margin:0 0 22px}
.yukle-form{display:flex;flex-direction:column;gap:16px;max-width:560px}
.dosya-alan{display:flex;align-items:center;justify-content:center;text-align:center;
  border:2px dashed var(--line);border-radius:14px;padding:44px 20px;background:var(--surface);
  cursor:pointer;transition:border-color .15s,background .15s}
.dosya-alan:hover{border-color:var(--brand);background:#fff}
.dosya-alan input{display:none}
.dosya-ipucu{color:var(--muted);font-weight:500}
.onay{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:13.5px}
.mevcut-bilgi{margin-top:22px;color:var(--muted);font-size:13px}
.mevcut-bilgi strong{color:var(--ink);font-family:var(--mono)}

/* ── Temizle sayfası ── */
.spec-3{grid-template-columns:repeat(3,1fr);margin-bottom:26px}
.kart{background:var(--surface);border:1px solid var(--line);border-radius:14px;
  padding:22px 24px;margin-bottom:18px;max-width:720px}
.kart-baslik{font-family:var(--disp);font-size:15px;font-weight:600;margin:0 0 16px;
  padding-bottom:12px;border-bottom:1px solid var(--line-soft)}
.kart-aciklama{color:var(--muted);font-size:13px;margin:0 0 16px;max-width:560px}
.karakter-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.karakter-kutu{position:relative;cursor:pointer}
.karakter-kutu input{position:absolute;opacity:0;inset:0;cursor:pointer}
.karakter-sim{display:flex;align-items:center;justify-content:center;
  width:46px;height:46px;border:1px solid var(--line);border-radius:10px;
  font-family:var(--mono);font-size:18px;font-weight:600;background:#f7f9fb;
  transition:all .12s}
.karakter-kutu input:checked + .karakter-sim{
  background:var(--brand);color:#fff;border-color:var(--brand)}
.karakter-kutu:hover .karakter-sim{border-color:var(--ink)}
.alan-satir{margin-bottom:16px}
.alan{display:flex;flex-direction:column;gap:6px}
.alan-et{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.alan input{border:1px solid var(--line);border-radius:9px;padding:11px 13px;
  font-family:var(--mono);font-size:14px;background:#fff;outline:none;max-width:340px}
.alan input:focus{border-color:var(--ink)}
.onay-satir{display:flex;gap:22px;margin-bottom:20px;flex-wrap:wrap}
.ikincil-btn{background:#fff;color:var(--brand);border:1px solid var(--brand);
  padding:10px 20px;border-radius:9px;font-weight:600;cursor:pointer;font-size:14px;
  font-family:var(--sans)}
.ikincil-btn:hover{background:var(--brand);color:#fff}

/* ── Sorgula ── */
.satir-ici-btn{margin-left:12px;color:var(--brand);font-weight:600;font-size:13px}
.satir-ici-btn:hover{text-decoration:underline}
.ilerleme-bar{height:12px;background:#eef1f4;border-radius:20px;overflow:hidden;margin-bottom:14px}
.ilerleme-dolu{height:100%;background:var(--brand);border-radius:20px;transition:width .4s ease}
.durum-satir{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-size:14px}
.durum-nokta{width:11px;height:11px;border-radius:50%;background:#c2c8ce;flex:none}
.durum-nokta.calisiyor{background:var(--ok);animation:nabiz 1.1s infinite}
.durum-nokta.molada{background:var(--amber);animation:nabiz 1.1s infinite}
.durum-nokta.durdu{background:#c2c8ce}
@keyframes nabiz{0%,100%{opacity:1}50%{opacity:.35}}
.durum-aktif-kod{font-family:var(--mono);color:var(--muted);font-size:13px}
.buton-grup{display:flex;gap:10px;flex-wrap:wrap}
.mini-not{color:var(--muted);font-size:12.5px;margin-top:14px}
.mini-not a{color:var(--brand)}

/* ── Sonuçlar ── */
.export-btn{padding:11px 16px;border:1px solid var(--ok);color:var(--ok);border-radius:10px;
  font-weight:600;font-size:13px;white-space:nowrap}
.export-btn:hover{background:var(--ok);color:#fff}
.sonuc-govde{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:start}
.marka-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;
  position:sticky;top:76px;overflow:hidden}
.marka-panel-bas{display:flex;justify-content:space-between;align-items:center;
  padding:12px 14px;border-bottom:1px solid var(--line-soft);font-weight:600;font-size:13px}
.temizle-mini{color:var(--brand);font-size:12px;font-weight:500}
.marka-liste{max-height:70vh;overflow-y:auto;padding:6px}
.marka-satir{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:13px}
.marka-satir:hover{background:#f4f6f8}
.marka-ad{flex:1;font-weight:500}
.marka-adet{font-family:var(--mono);font-size:11px;color:var(--muted);background:#eef1f4;
  padding:1px 7px;border-radius:10px}
.sonuc-tablo th.s-fiyat,.sonuc-tablo td.s-fiyat{text-align:right;white-space:nowrap}
.sonuc-tablo th.s-depo{width:34px;text-align:center;font-size:9px}
.sonuc-tablo td.s-depo{text-align:center;padding:6px 4px}
.mono{font-family:var(--mono);font-size:12px}
.marka-etiket{font-weight:600;font-size:12px;background:#eef1f4;padding:2px 8px;border-radius:5px;white-space:nowrap}
.stok{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;
  border-radius:5px;font-size:11px;font-weight:600}
.stok-adet{background:var(--ok-bg);color:var(--ok)}
.stok-var{background:var(--ok-bg);color:var(--ok)}
.stok-yolda{background:var(--amber-bg);color:var(--amber)}
.stok-yok{background:#f4f0f0;color:#c88}
.resim-onizle{width:30px;height:30px;object-fit:cover;border-radius:5px;border:1px solid var(--line);
  transition:transform .15s;background:#fff}
.resim-link:hover .resim-onizle{transform:scale(4);position:relative;z-index:30;box-shadow:0 8px 24px rgba(0,0,0,.25)}

/* ── Ayarlar profilleri ── */
.profil-izgara{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:820px}
.profil-kart{position:relative;display:block;background:var(--surface);border:1.5px solid var(--line);
  border-radius:14px;padding:18px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.profil-kart:hover{border-color:var(--ink)}
.profil-kart input{position:absolute;opacity:0;pointer-events:none}
/* Seçili kart: gizli radyo checked olunca (veya JS .secili verince) */
.profil-kart:has(input:checked),
.profil-kart.secili{border-color:var(--brand);box-shadow:0 0 0 3px rgba(214,31,38,.12)}
.profil-bas{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.profil-ad{font-family:var(--disp);font-weight:700;font-size:17px}
.profil-tik{color:var(--brand);font-weight:700;opacity:0;font-size:16px}
.profil-kart:has(input:checked) .profil-tik,
.profil-kart.secili .profil-tik{opacity:1}
.profil-detay{margin:0}
.profil-detay > div{display:flex;justify-content:space-between;padding:5px 0;
  border-bottom:1px solid var(--line-soft);font-size:12.5px}
.profil-detay > div:last-child{border-bottom:0}
.profil-detay dt{color:var(--muted);margin:0}
.profil-detay dd{margin:0;font-family:var(--mono);font-weight:500}

@media (max-width:820px){
  .sonuc-govde{grid-template-columns:1fr}
  .marka-panel{position:static}
  .profil-izgara{grid-template-columns:1fr}
}

/* ── Canlı log ── */
.log-bas{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.log-say{font-family:var(--mono);font-size:12px;color:var(--muted)}
.log-akis{max-height:340px;overflow-y:auto;border:1px solid var(--line-soft);border-radius:10px;
  background:#0f1317;padding:6px}
.log-bos{color:#6a7480;text-align:center;padding:28px;font-size:13px}
.log-satir{display:flex;align-items:baseline;gap:10px;padding:5px 10px;border-radius:6px;
  font-family:var(--mono);font-size:12.5px;color:#c8ced5;border-bottom:1px solid #171c22}
.log-satir:last-child{border-bottom:0}
.log-zaman{color:#5f6a75;flex:none}
.log-kod{color:#e6edf3;font-weight:600;flex:none;min-width:96px}
.log-mesaj{flex:1}
.log-satir.log-ok .log-mesaj{color:#3fb950}
.log-satir.log-yok .log-mesaj{color:#d29922}
.log-satir.log-hata .log-mesaj{color:#f85149}
.log-satir.log-bilgi .log-mesaj{color:#58a6ff}

/* ── Bulunamadı satırı ── */
.satir-bulunamadi{background:#fbf7f0}
.bulunamadi-etiket{color:var(--amber);font-weight:600;font-size:12.5px}

/* ── Karşılaştırma ── */
.kars-ust{width:100%}
.kfiyat-form{display:flex;flex-direction:column;gap:8px}
.kfiyat-satir{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dosya-mini{display:inline-flex;align-items:center;border:1px dashed var(--line);border-radius:9px;
  padding:9px 14px;cursor:pointer;background:#fff;font-size:13px;color:var(--muted)}
.dosya-mini:hover{border-color:var(--brand)}
.dosya-mini input{display:none}
.kars-bilgi{display:flex;align-items:center;gap:10px;margin:18px 0 12px;flex-wrap:wrap;font-size:14px}
.kars-eski{font-family:var(--mono);background:#eef1f4;padding:3px 10px;border-radius:6px;font-weight:600}
.kars-yeni{font-family:var(--mono);background:var(--ink);color:#fff;padding:3px 10px;border-radius:6px;font-weight:600}
.kars-ok{color:var(--muted);font-weight:700}
.degisim{font-family:var(--mono);font-weight:700;font-size:12.5px;padding:2px 8px;border-radius:6px;white-space:nowrap}
.degisim-artis{background:var(--ok-bg);color:var(--ok)}
.degisim-dusus{background:var(--err-bg);color:var(--err)}
.degisim-ayni{background:#eef1f4;color:var(--muted)}

/* ── Snapshot sil ── */
.mini-sil{background:none;border:0;color:var(--muted);cursor:pointer;font-size:12px;text-decoration:underline}
.mini-sil:hover{color:var(--err)}

/* ── Menü (çok sekme) ── */
.nav{flex-wrap:wrap;justify-content:flex-end}
@media (max-width:1100px){
  .topbar{height:auto;flex-direction:column;align-items:stretch;padding:10px 16px;gap:8px}
  .nav{justify-content:flex-start}
}

/* ── Doğrulama ── */
.filtre-grup{display:flex;gap:6px;flex-wrap:wrap}
.filtre-cip{padding:7px 13px;border:1px solid var(--line);border-radius:20px;font-size:12.5px;
  font-weight:500;background:var(--surface);color:var(--muted)}
.filtre-cip:hover{border-color:var(--ink);color:var(--ink)}
.filtre-cip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.dogrula-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:8px}
.dog-kart{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;
  display:flex;flex-direction:column;gap:10px}
.dog-bas{display:flex;align-items:center;justify-content:space-between}
.dog-rozet{font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px}
.dog-onayli{background:var(--ok-bg);color:var(--ok)}
.dog-red{background:var(--err-bg);color:var(--err)}
.dog-bekle{background:#eef1f4;color:var(--muted)}
.dog-yok{background:var(--amber-bg);color:var(--amber)}
.dog-resimler{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dog-resim{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}
.dog-resim img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:9px}
.dog-resim img.resim-yok{opacity:.25}
.dog-resim figcaption{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.resim-bos{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;
  background:#f4f6f8;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:11px}
.dog-bilgi{font-size:12.5px}
.dog-cross{font-family:var(--mono);font-weight:500}
.dog-ad{color:var(--muted);font-size:11.5px;margin-top:2px}
.dog-yok-govde{color:var(--muted);font-size:12.5px;padding:20px 0;text-align:center}
.dog-aksiyon{display:flex;gap:8px;margin-top:auto}
.dog-btn{flex:1;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;
  cursor:pointer;font-weight:600;font-size:12.5px;font-family:var(--sans);transition:all .12s}
.dog-btn-onay:hover,.dog-btn-onay.secili{background:var(--ok);color:#fff;border-color:var(--ok)}
.dog-btn-red:hover,.dog-btn-red.secili{background:var(--err);color:#fff;border-color:var(--err)}

/* ── Durum rozetleri ── */
.durum{font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px}
.durum-aktif{background:var(--ok-bg);color:var(--ok)}
.durum-pasif{background:#eef1f4;color:var(--muted)}

/* ── Duyarlı ── */
@media (max-width:720px){
  .spec-serit{grid-template-columns:repeat(2,1fr)}
  .isim-grid{grid-template-columns:1fr}
  .s-oem{display:none}
  .govde{padding:20px 14px 50px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ── Geniş sayfa (sonuç tabloları) ── */
.genis .govde{max-width:1780px}
.genis .flash-alan{max-width:1780px}
.tablo-kaydir{overflow:auto;max-height:calc(100vh - 188px)}
.tablo-kaydir .veri-tablo{width:100%}
.tablo-kaydir .veri-tablo th,.tablo-kaydir .veri-tablo td{padding-left:12px;padding-right:12px}
/* Sabit başlık: gövde kaydırılırken thead yerinde kalır */
.tablo-kaydir .veri-tablo thead th{position:sticky;top:0;z-index:4}
/* Geniş sonuç tablolarında sütunları dengeli dağıt */
.genis .sonuc-tablo th.s-depo,.genis .sonuc-tablo td.s-depo{width:36px;min-width:36px}
.genis .sonuc-tablo .ad{max-width:320px;white-space:normal}

/* ── Kaynak seçici (Snapshot / Anlık) ── */
.kaynak-sec{display:inline-flex;gap:4px;background:#eef1f4;border:1px solid var(--line);
  border-radius:9px;padding:3px}
.kaynak-sec a{padding:6px 14px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--muted)}
.kaynak-sec a.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.06)}
.kaynak-sec a:hover{color:var(--ink)}

/* ── Doğrulanmış filtre + rozet (Karşılaştır) ── */
.dogr-tik{display:flex;align-items:center;gap:8px;padding:10px 11px;margin:6px 6px 4px;
  border:1px solid var(--line);border-radius:9px;background:#f7f9fb;font-size:12.5px;
  font-weight:600;cursor:pointer;user-select:none}
.dogr-tik:hover{border-color:var(--ok)}
.dogr-tik input{width:16px;height:16px;accent-color:var(--ok);cursor:pointer}
.dogr-rozet{display:inline-block;margin-left:8px;font-size:10.5px;font-weight:700;
  background:var(--ok-bg);color:var(--ok);border:1px solid #bfe3cd;border-radius:20px;
  padding:1px 8px;white-space:nowrap;vertical-align:middle}

/* ── Filtre kolonu (Ürün Adları + Markalar) ── */
.filtre-kolon{display:flex;flex-direction:column;gap:14px}
.filtre-kolon .marka-panel{position:static}
.arac-hucre{color:var(--muted);font-size:12.5px;white-space:normal;max-width:230px}

/* Doğrula kart: araç bilgisi */
.dog-arac{font-size:11px;color:var(--steel);margin-top:3px;font-weight:500}

/* ── Karşılaştır satır hover önizleme (Kautek + B2B) ── */
.kars-onizleme{position:absolute;top:0;right:0;z-index:30;display:none;gap:12px;
  background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px;
  box-shadow:0 10px 30px rgba(15,23,42,.18)}
.kars-onizleme.acik{display:flex}
.kars-onizleme figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:5px}
.kars-onizleme img{width:118px;height:118px;object-fit:contain;background:#fff;
  border:1px solid var(--line);border-radius:8px}
.kars-onizleme figcaption{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ── Doğrula: kart renk dolguları + toplu red ── */
.dog-kart-onayli{background:#eefaf0;border-color:#bfe3cd}
.dog-kart-reddedildi{background:#fdeeee;border-color:#f2c7c7}
.dog-ust-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:12px;flex-wrap:wrap}
.toplu-red-btn{background:#c0392b;color:#fff;border:1px solid #a5342a;border-radius:9px;
  padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer}
.toplu-red-btn:hover{filter:brightness(1.06)}
.toplu-red-btn:disabled{opacity:.45;cursor:not-allowed}

/* ── İstatistik ── */
.ist-ozet{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.ist-kutu{flex:1;min-width:120px;background:var(--surface);border:1px solid var(--line);
  border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.ist-kutu span:last-child{font-size:12px;color:var(--muted)}
.ist-buyuk{font-size:24px;font-weight:700;font-family:var(--mono,monospace)}
.ist-k-onayli{background:#eefaf0;border-color:#bfe3cd}
.ist-k-red{background:#fdeeee;border-color:#f2c7c7}
.ist-k-bekle{background:#fff6e8;border-color:#f0dcb4}
.ist-huc{display:inline-block;min-width:34px;text-align:center;border-radius:6px;padding:1px 7px;font-weight:600;font-size:12.5px}
.ist-onayli{background:#eefaf0;color:#1a7f45}
.ist-red{background:#fdeeee;color:#b3261e}
.ist-bekle{background:#fff6e8;color:#8a5a00}
.ist-oran{width:180px}
.ist-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:#eef1f4}
.ist-bar .b-onayli{background:#3fae6a}
.ist-bar .b-red{background:#d9534f}
.ist-bar .b-bekle{background:#e8b04b}

/* ── Manuel OEM kutusu (Anlık Sorgu) ── */
.oem-kutu{width:100%;box-sizing:border-box;font-family:var(--mono,ui-monospace,monospace);
  font-size:13px;line-height:1.5;padding:12px 14px;border:1px solid var(--line);
  border-radius:10px;background:var(--surface);resize:vertical;min-height:320px}
.oem-kutu:focus{outline:none;border-color:var(--steel,#3a6ea5)}

/* ── Filtre içi arama kutusu ── */
.filtre-ara{width:100%;box-sizing:border-box;margin:2px 0 8px;padding:7px 10px;
  border:1px solid var(--line);border-radius:8px;font-size:12.5px;background:#fbfcfd}
.filtre-ara:focus{outline:none;border-color:var(--steel,#3a6ea5);background:var(--surface)}

/* Filtre arama kutusu liste içinde sabit kalsın */
.marka-liste .filtre-ara{position:sticky;top:0;z-index:2;background:var(--surface)}

/* ── Tıkla-sırala başlıklar ── */
.veri-tablo thead th{cursor:pointer;user-select:none;position:relative}
.veri-tablo thead th.no-sort{cursor:default}
.veri-tablo thead th[data-yon=asc]::after{content:"▲";font-size:8px;margin-left:5px;color:var(--muted)}
.veri-tablo thead th[data-yon=desc]::after{content:"▼";font-size:8px;margin-left:5px;color:var(--muted)}

/* ── "Görünenlerin tümünü seç" kutusu ── */
.marka-liste .filtre-tumu{position:sticky;top:36px;z-index:2;display:flex;align-items:center;gap:8px;
  background:var(--surface);border-bottom:1px solid var(--line);
  padding:6px 2px 8px;margin-bottom:4px;font-size:12px;font-weight:600;color:var(--steel,#3a6ea5);cursor:pointer;user-select:none}
.marka-liste .filtre-tumu input{width:15px;height:15px;cursor:pointer}

/* ── Giriş sayfası ── */
.giris-sayfa{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg,#eef1f4)}
.giris-kart{background:var(--surface,#fff);border:1px solid var(--line);border-radius:16px;
  padding:32px 30px;width:340px;max-width:92vw;box-shadow:0 12px 40px rgba(15,23,42,.12)}
.giris-bas{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
.giris-bas .brand-mark{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;letter-spacing:.02em}
.giris-bas .brand-sub{font-size:11px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}
.giris-baslik{font-size:22px;margin:0 0 18px}
.giris-alan{display:block;margin-bottom:14px}
.giris-alan span{display:block;font-size:12.5px;color:var(--muted);margin-bottom:5px}
.giris-alan input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);
  border-radius:9px;font-size:14px;background:#fbfcfd}
.giris-alan input:focus{outline:none;border-color:var(--steel,#3a6ea5);background:var(--surface)}
.giris-btn{width:100%;margin-top:6px;padding:11px}

/* ── Üst barda kullanıcı kutusu ── */
.kullanici-kutu{display:flex;align-items:center;gap:10px;margin-left:14px;white-space:nowrap}
.kullanici-ad{font-size:12.5px;color:var(--muted)}
.cikis-btn{font-size:12.5px;padding:5px 12px;border:1px solid var(--line);border-radius:8px;
  text-decoration:none;color:var(--ink,#1f2937)}
.cikis-btn:hover{background:#f4f6f8}

/* ── Ayarlar: kullanıcı yönetimi ── */
.kul-tablo{width:100%;border-collapse:collapse;margin-top:10px}
.kul-tablo th,.kul-tablo td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}
.kul-tablo th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.kul-satir-form{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin-top:12px}
.kul-satir-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.kul-satir-form input,.kul-satir-form select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px}
.kul-rol{display:inline-block;padding:1px 8px;border-radius:6px;font-size:11px;font-weight:600}
.kul-rol-yonetici{background:#eef4ff;color:#2456b8}
.kul-rol-kullanici{background:#eef1f4;color:#556}

/* Doğrula: karar veren kişi */
.dog-kim{font-size:10.5px;color:var(--steel,#3a6ea5);margin-top:4px;font-weight:600}

/* ── Stok durumu (Karşılaştır / Analiz) ── */
.stok-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 14px}
.stok-btn{display:inline-block;padding:8px 16px;border:1px solid var(--steel,#3a6ea5);color:var(--steel,#3a6ea5);
  border-radius:9px;font-size:13px;font-weight:600;text-decoration:none;background:var(--surface)}
.stok-btn:hover{background:#eef4ff}
.stok-btn-acik{background:#eef4ff;border-color:#2456b8;color:#2456b8}
.stok-rozet{display:inline-block;padding:1px 8px;border-radius:6px;font-size:11.5px;font-weight:700}
.stok-var-r{background:#e7f7ec;color:#1a7f45;border:1px solid #bfe3cd}
.stok-yok-r{background:#fdecec;color:#c0392b;border:1px solid #f2c7c7}
.s-durum-stok{white-space:nowrap;text-align:center}

/* İstatistik tabloları: ~20 satırlık kaydırmalı kutu (sabit başlıkla) */
.ist-kaydir{max-height:640px}

/* ══════════════════════════════════════════════════════════════════
   MOBİL & TABLET UYUMLULUK
   ══════════════════════════════════════════════════════════════════ */

/* Sayfa hiçbir zaman yatay kaymasın (taşan tablolar kendi kutusunda kayar) */
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%}

/* ── Tablet ve altı (≤1024px) ── */
@media (max-width:1024px){
  /* Geniş veri tabloları küçük ekranda KIRPILMASIN, yatay kaydırılsın */
  .tablo-sar{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .tablo-kaydir{max-height:72vh}
  /* Kullanıcı yönetimi tablosu da kaydırılabilir olsun */
  .kul-tablo{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
}

/* ── Telefon (≤760px) ── */
@media (max-width:760px){
  /* Üst bar: marka + kullanıcı üstte; menü altta TÜM sekmeler satırlara sararak
     görünür (yatay kaydırma YOK, hiçbir sekme gizlenmez). */
  .topbar{position:static;flex-direction:row;flex-wrap:wrap;align-items:center;
          height:auto;gap:8px;padding:9px 14px}
  .brand{flex:0 1 auto;min-width:0}
  .kullanici-kutu{margin-left:auto;margin-right:0;min-width:0}
  .kullanici-ad{overflow:hidden;text-overflow:ellipsis;max-width:44vw}
  .nav{order:3;flex:1 1 100%;min-width:0;flex-wrap:wrap;justify-content:flex-start;
       gap:5px;overflow:visible}
  .nav a{white-space:nowrap;padding:7px 11px;font-size:12.5px}

  /* Form kutuları 16px → iOS odakta otomatik yakınlaşmayı engeller */
  input,select,textarea,.arama-kutu input,.alan input,.giris-alan input{font-size:16px}

  /* Araç çubuğu ve arama tam genişlik, dikey diz */
  .arac-cubugu{gap:10px}
  .arama-kutu{min-width:0;width:100%}
  .boyut-sec{width:100%;justify-content:space-between}

  /* Başlık/rakam boyutlarını küçült */
  .sayfa-baslik{font-size:20px}
  .kod-buyuk{font-size:22px}
  .detay-bas{flex-wrap:wrap;gap:10px}

  /* Kart ve formlar tam genişlik */
  .kart,.yukle-form{max-width:100%}
  .alan input{max-width:100%}

  /* Filtre panelleri tek sütun (zaten 820'de tek kolon; burada boşlukları düzelt) */
  .filtre-kolon{gap:12px}
  .marka-liste{max-height:52vh}

  /* Karşılaştır satır-hover önizleme küçük ekranı taşırmasın */
  .kars-onizleme{position:static;box-shadow:none;flex-wrap:wrap;margin-top:8px}
  .kars-onizleme img{width:96px;height:96px}
  /* Dokunmatikte "resmi büyüt" hover'ı devre dışı (taşma yapmasın) */
  .resim-link:hover .resim-onizle{transform:none;box-shadow:none}
}

/* ── Küçük telefon (≤440px) ── */
@media (max-width:440px){
  .spec-serit{grid-template-columns:repeat(2,1fr)}
  .spec{padding:13px 13px}
  .spec-sayi{font-size:21px}
  .govde{padding:16px 12px 46px}
  .flash-alan{padding:0 12px}
  .sayfalama{flex-wrap:wrap;gap:6px}
  .brand-sub{display:none}   /* çok dar ekranda logo alt yazısını gizle */
}

/* ── Genel düzeltmeler ── */
/* Filtreli grid (Sonuçlar): geniş tablo, içerik sütununu şişirmesin; kendi
   kutusunda yatay kaysın. min-width:0 olmadan grid öğesi tablo kadar genişler
   ve overflow kaydırması çalışmaz (sütunlar kırpılıp erişilemez olur). */
.sonuc-govde{min-width:0}
.sonuc-govde > *{min-width:0}
.sonuc-icerik{min-width:0}

/* Pasif (disabled) butonlar görsel olarak da soluk/gri görünsün */
.birincil-btn:disabled,.ikincil-btn:disabled,
.birincil-btn[disabled],.ikincil-btn[disabled]{
  opacity:.42;cursor:not-allowed;filter:grayscale(.45);box-shadow:none}
.birincil-btn:disabled:hover{background:var(--brand)}
.ikincil-btn:disabled:hover{background:#fff;color:var(--brand)}
