/* ═══ ŞARKI BULUCU (v195) — public/sarki-bulucu.js ═══
   Sitenin dili: koyu panel, ince çizgi, kırmızı vurgu (--red). Gradyan ve
   parlama yok (kurucunun "AI kokan görünüm" listesi). Kart ızgarası 375 px'te
   tek sütun; görsel ve tuval boyutları sabit, yüklenince kayma (CLS) yok. */
#tab-sarkibul{--sbl-cizgi:var(--line,#23233A);--sbl-panel:var(--panel,#0F0F1D);--sbl-panel2:var(--panel2,#141428)}
#tab-sarkibul .sbl-sekmeler{margin:4px 0 16px}
.sbl-bolum{display:grid;gap:14px;min-width:0}
.sbl-bolum[hidden]{display:none!important}

/* Arama */
.sbl-ara{display:flex;gap:8px;min-width:0}
.sbl-ara input{flex:1 1 auto;min-width:0;min-height:46px;font-size:16px;border-radius:12px}
.sbl-ara-tus{flex:none;min-height:46px;padding:0 20px}
.sbl-cipler{display:grid;gap:8px}
.sbl-cip-grup{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.sbl-cip-ad{flex:none;width:58px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.sbl-cip{min-height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--sbl-cizgi);background:transparent;color:var(--txt);
  font:inherit;font-size:13px;cursor:pointer;transition:border-color .12s,background .12s}
.sbl-cip:hover{border-color:color-mix(in srgb,var(--red) 60%,var(--sbl-cizgi))}
.sbl-cip.acik{background:color-mix(in srgb,var(--red) 18%,transparent);border-color:var(--red);color:#fff}
.sbl-yorum{margin:0;font-size:13.5px;color:var(--muted)}
.sbl-yorum b{color:var(--txt)}
.sbl-model{font-size:11.5px;border:1px solid var(--sbl-cizgi);border-radius:6px;padding:1px 6px;margin-left:4px}
.sbl-kurulum{margin:0;font-size:13px;color:var(--muted)}

/* Kart ızgarası */
.sbl-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px}
.sbl-izgara[aria-busy="true"]{opacity:.6}
.sbl-kart{display:grid;gap:9px;align-content:start;padding:12px;border-radius:14px;border:1px solid var(--sbl-cizgi);background:var(--sbl-panel);min-width:0}
.sbl-ust{display:flex;gap:11px;align-items:center;min-width:0}
.sbl-kapak{position:relative;flex:none;width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--sbl-panel2)}
.sbl-kapak img{width:64px;height:64px;object-fit:cover;display:block}
.sbl-kapak-yok{display:grid;place-items:center;width:100%;height:100%;font:800 24px var(--disp,inherit);color:var(--muted);text-transform:uppercase}
.sbl-kapak-yok.buyuk{width:72px;height:72px;border-radius:12px;background:var(--sbl-panel2);flex:none}
.sbl-cal{position:absolute;inset:auto 4px 4px auto;width:34px;height:34px;border-radius:50%;border:0;background:var(--red);color:#fff;
  display:grid;place-items:center;cursor:pointer;padding:0}
.sbl-cal svg{width:16px;height:16px}
.sbl-cal.yukleniyor{opacity:.6}
/* 34 px'lik düğmenin dokunma alanı 44'e (CLAUDE.md: iki ölçü de) */
.sbl-cal::after{content:"";position:absolute;inset:-5px}
.sbl-kim{display:grid;gap:2px;min-width:0}
.sbl-ad{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sbl-sanatci{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sbl-olcu{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.sbl-egri{width:100%;height:34px;display:block}
.sbl-rozetler{display:flex;flex-wrap:wrap;gap:5px}
.sbl-rozet{font-size:11.5px;font-weight:600;line-height:1;padding:5px 8px;border-radius:6px;border:1px solid var(--sbl-cizgi);color:var(--muted)}
.sbl-rozet.telif-serbest{color:#7ff0ad;border-color:color-mix(in srgb,#3ddc84 45%,transparent)}
.sbl-rozet.telif-platform{color:#E7C878;border-color:color-mix(in srgb,#E7C878 45%,transparent)}
.sbl-rozet.telif-riskli{color:#ff8a9b;border-color:color-mix(in srgb,var(--red) 45%,transparent)}
.sbl-rozet.mz{color:#fff;border-color:var(--red)}
.sbl-rozet.drop{color:var(--txt)}
.sbl-not{margin:0;font-size:12.5px;color:var(--muted)}
.sbl-eylem{display:flex;gap:8px;align-items:center}
.sbl-yildiz{display:inline-flex;align-items:center;gap:5px;min-height:40px;min-width:44px;padding:0 10px;border-radius:10px;border:1px solid var(--sbl-cizgi);
  background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}
.sbl-yildiz svg{width:17px;height:17px}
.sbl-yildiz.acik{color:#E7C878;border-color:color-mix(in srgb,#E7C878 50%,transparent)}
.sbl-analiz-tus{margin-left:auto;min-height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--sbl-cizgi);background:var(--sbl-panel2);
  color:var(--txt);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}
.sbl-analiz-tus:hover{border-color:var(--red)}
.sbl-daha-kap{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px}
.sbl-daha-kap .btn-outline.small{width:auto;flex:none;min-height:40px;padding:0 16px}
.sbl-sayfa-no{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}

/* Vitrin şeritleri: yatay kayan, kendi kabında (CLAUDE.md: geniş öğe overflow-x kabında) */
.sbl-vitrin{display:grid;gap:14px;min-width:0}
.sbl-serit{display:grid;gap:8px;min-width:0}
.sbl-serit h3{margin:0;font-size:14px;font-weight:700;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.sbl-serit h3 small{font-size:12px;font-weight:500;color:var(--muted)}
.sbl-serit-ic{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,280px);gap:10px;overflow-x:auto;padding-bottom:4px;
  scrollbar-width:thin;overscroll-behavior-x:contain}
.sbl-kart.kucuk{gap:7px;padding:10px}

/* Analiz */
.sbl-birak{min-height:120px}
.sbl-birak.uzerinde{border-color:var(--red)}
.sbl-detay{display:grid;gap:14px;min-width:0}
.sbl-bekle{margin:0;color:var(--muted)}
.sbl-d-bas{display:flex;gap:14px;align-items:center;min-width:0}
.sbl-d-bas img{width:72px;height:72px;border-radius:12px;object-fit:cover;flex:none}
.sbl-d-kim{display:grid;gap:4px;min-width:0;flex:1 1 auto}
.sbl-d-kim h3{margin:0;font-size:20px;line-height:1.2;overflow-wrap:anywhere}
.sbl-d-kim>span{color:var(--muted);font-size:14px}
.sbl-d-oynat{flex:none}
.sbl-d-cal{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px}
.sbl-d-cal svg{width:16px;height:16px}
.sbl-d-uyari{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13.5px;color:var(--muted);
  padding:10px 12px;border:1px solid var(--sbl-cizgi);border-radius:10px}
.sbl-d-uyari .btn-outline.small{width:auto;flex:none}
.sbl-d-cizim{border:1px solid var(--sbl-cizgi);border-radius:12px;background:#07070d;overflow:hidden}
#sblDalga{width:100%;height:150px;display:block;cursor:pointer}
.sbl-d-olcu{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:10px}
.sbl-d-olcu div{padding:10px 12px;border:1px solid var(--sbl-cizgi);border-radius:10px;background:var(--sbl-panel);min-width:0}
.sbl-d-olcu dt{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sbl-d-olcu dd{margin:2px 0 0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;display:grid;gap:2px}
.sbl-d-olcu dd small{font-size:12px;font-weight:500;color:var(--muted);overflow-wrap:anywhere}
.sbl-bolumler{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sbl-bolumler li{font-size:12.5px;padding:5px 9px;border-radius:8px;border:1px solid var(--sbl-cizgi);color:var(--muted);font-variant-numeric:tabular-nums}
.sbl-bolumler li b{color:var(--txt);margin-right:4px}
.sbl-bolumler .sbl-bol-drop{border-color:var(--red)}
.sbl-d-iki{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}
.sbl-d-kart{display:grid;gap:10px;align-content:start;padding:12px;border-radius:12px;border:1px solid var(--sbl-cizgi);background:var(--sbl-panel);min-width:0}
.sbl-d-kart h4{margin:0;font-size:15px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sbl-isk-sec{display:inline-flex;gap:6px}
.sbl-tur-sec{display:flex;flex-wrap:wrap;gap:6px 12px}
.sbl-onay{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-size:13.5px;cursor:pointer}
.sbl-onay input{flex:none;width:auto!important;margin:0}
.sbl-kesme{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto;display:grid;gap:2px;border-top:1px solid var(--sbl-cizgi);padding-top:6px}
.sbl-kesme button{width:100%;display:flex;gap:10px;align-items:center;min-height:36px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--txt);
  font:inherit;font-size:13.5px;cursor:pointer;text-align:left}
.sbl-kesme button:hover{background:color-mix(in srgb,var(--txt) 6%,transparent)}
.sbl-k-zaman{flex:none;width:72px;font-variant-numeric:tabular-nums;color:var(--muted)}
.sbl-k-tur.tur-drop{color:#ff8a9b;font-weight:700}
.sbl-k-tur.tur-cumle8{color:#a9c6ff}
.sbl-k-tur.tur-vurgu{color:#E7C878}
.sbl-k-tur.tur-vokal{color:#7fe0d6}
.sbl-disa{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sbl-disa .btn-red,.sbl-disa .btn-outline.small{width:auto;flex:none;min-height:40px;padding:0 14px;font-size:13.5px}
.sbl-fps{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.sbl-fps select{width:auto!important;min-height:40px}
#sblIskelet{width:100%;height:54px;display:block}
.sbl-adimlar{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sbl-adimlar li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:2px 10px;font-size:13.5px}
.sbl-adimlar li b{font-size:13.5px}
.sbl-adimlar li span:not(.sbl-k-zaman){grid-column:2;color:var(--muted)}
.sbl-adimlar li.sbl-not{display:block}
.sbl-vokal{margin:0;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sbl-vokal .btn-outline.small{width:auto;flex:none}
.sbl-kredi{display:grid;gap:6px}
.sbl-kredi textarea{font:12.5px/1.5 ui-monospace,Consolas,monospace;resize:vertical}
.sbl-kredi .btn-outline.small{width:auto;justify-self:start}

@media (max-width:600px){
  /* Çipler telefonda 8 satıra yayılıp sonuçları ekranın altına itiyordu
     (375 px'te ölçüldü): her grup tek satır, kendi içinde yatay kayar. */
  .sbl-cip-grup{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding-bottom:2px}
  .sbl-cip-grup::-webkit-scrollbar{display:none}
  .sbl-cip{flex:none}
  .sbl-cip-ad{width:52px;flex:none}
  .sbl-d-bas{flex-wrap:wrap}
  .sbl-d-oynat{width:100%}
  .sbl-d-cal{width:100%;justify-content:center}
  .sbl-d-kim h3{font-size:18px}
  .sbl-serit-ic{grid-auto-columns:minmax(232px,82%)}
}
/* Kanıt rozetleri (v195): dublaj kliplerinde tanınan / onlara benzeyen */
.sbl-rozet.kanit{color:#fff;background:color-mix(in srgb,var(--red) 22%,transparent);border-color:var(--red)}
.sbl-rozet.benzer{color:#d9c8ff;border-color:color-mix(in srgb,#B48CF0 55%,transparent)}
/* "FORMAT" 52 px'lik etiket sütununa sığmayıp "FORMA / T" diye bölünüyordu (375 px) */
.sbl-cip-ad{white-space:nowrap}
@media (max-width:600px){ .sbl-cip-ad{width:auto;min-width:56px;padding-right:4px} }
/* Sözlü edit (Faz 2) */
.sbl-soz h4 small{font-size:12px;font-weight:500;color:var(--muted)}
.sbl-soz-ust{display:flex;gap:8px;flex-wrap:wrap}
.sbl-soz-ust input{flex:1 1 220px;min-width:0;min-height:40px;font-size:16px}
.sbl-soz-ust .btn-outline.small{width:auto;flex:none;min-height:40px}
.sbl-soz-ayar{display:flex;flex-wrap:wrap;gap:8px 14px}
.sbl-soz-ayar label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.sbl-soz-ayar input{width:84px!important;min-height:40px;font-size:16px;text-align:center}
.sbl-soz-ayar select{width:auto!important;min-height:40px}
.sbl-soz-liste{list-style:none;margin:0;padding:0;max-height:300px;overflow:auto;display:grid;gap:2px;border-top:1px solid var(--line,#23233A);padding-top:6px}
.sbl-soz-liste button{width:100%;display:flex;gap:10px;align-items:baseline;min-height:36px;padding:4px 6px;border:0;border-radius:6px;background:transparent;
  color:var(--muted);font:inherit;font-size:13.5px;text-align:left;cursor:pointer}
.sbl-soz-liste li.icerde button{color:var(--txt);background:color-mix(in srgb,var(--red) 12%,transparent)}
.sbl-soz-liste button:hover{background:color-mix(in srgb,var(--txt) 6%,transparent)}
/* Trend botu (Faz 2) */
.sbl-rozet.trend-yuk{color:#fff;border-color:#E7C878;background:color-mix(in srgb,#E7C878 18%,transparent)}
.sbl-rozet.trend-doy{color:var(--muted);border-style:dashed}
.sbl-rozet.liste{color:#a9c6ff;border-color:color-mix(in srgb,#7AA8FF 50%,transparent)}
.sbl-yonetim{border:1px solid var(--line,#23233A);border-radius:12px;padding:10px 12px;display:grid;gap:8px}
.sbl-yonetim summary{cursor:pointer;font-weight:600;font-size:14px;min-height:32px;display:flex;align-items:center}
.sbl-yonetim textarea{font:13px/1.5 ui-monospace,Consolas,monospace;resize:vertical}
/* Proje bağı (Faz 2) */
.sbl-proje select{flex:1 1 220px;min-width:0;width:auto!important;min-height:40px}
.sbl-proje-kaldir{background:none;border:0;color:var(--muted);text-decoration:underline;font:inherit;font-size:12.5px;cursor:pointer;min-height:32px}
