
:root {
  --page-bg:#020711;
  --panel:#071020;
  --panel-2:#09152a;
  --row:#0a1629;
  --row-alt:#0b182d;
  --separator:rgba(105,145,212,.15);
  --text:#f7f9ff;
  --muted:#a9b7cf;
  --accent:#2f68ff;
  --accent-2:#5a8cff;
  --logo-dark:#030b19;
  --logo-border:rgba(75,126,220,.48);
}

* {
  box-sizing:border-box;
  -webkit-tap-highlight-color:transparent;
}

html,body {
  margin:0;
  min-height:100%;
}

body {
  min-height:100vh;
  color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 50% -8%, rgba(42,91,255,.17), transparent 34%),
    var(--page-bg);
}

.page {
  width:100%;
  min-height:100vh;
  padding:12px 10px 48px;
  display:flex;
  justify-content:center;
  align-items:flex-start;
}

.aff-card {
  width:100%;
  max-width:840px;
  margin:0 auto;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,255,255,.018),transparent 22%),
    var(--panel);
  border:1px solid rgba(255,255,255,.055);
  border-radius:22px;
  box-shadow:
    0 20px 54px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.025);
}

.top {
  position:relative;
  min-height:54px;
  padding:13px 20px 11px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 0,rgba(255,255,255,.035),transparent 70%),
    var(--panel-2);
  border-bottom:1px solid var(--separator);
}

.top::before,
.top::after {
  content:"";
  width:min(18vw,170px);
  height:1px;
  flex:0 1 170px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22));
}

.top::after {
  background:linear-gradient(90deg,rgba(255,255,255,.22),transparent);
}

.top h1 {
  margin:0 20px;
  min-width:max-content;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#fff;
  font-size:21px;
  font-weight:850;
  letter-spacing:-.35px;
  line-height:1.05;
}

.top h1::before,
.top h1::after {
  content:"★  ★";
  color:var(--accent);
  font-size:14px;
  letter-spacing:8px;
  line-height:1;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.18));
}

.table {
  display:flex;
  flex-direction:column;
  gap:0;
  padding:0 12px 12px;
  background:transparent;
}

.row {
  position:relative;
  display:grid;
  grid-template-columns:31% minmax(0,1fr) 24%;
  align-items:center;
  gap:10px;
  min-height:66px;
  padding:5px 2px;
  color:inherit;
  text-decoration:none;
  background:var(--row);
  border:0;
  border-bottom:1px solid var(--separator);
  border-radius:0;
  box-shadow:none;
  cursor:pointer;
  transition:background .14s ease;
}

.row:nth-child(even) {
  background:var(--row-alt);
}

.row:hover {
  background:color-mix(in srgb,var(--row) 90%,var(--accent) 10%);
}

.row:first-child {
  border-top:0;
}

.row:last-child {
  border-bottom:0;
}

.logoBox {
  width:100%;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:var(--logo-dark);
  border:1px solid var(--logo-border);
  border-radius:9px;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.018),
    0 5px 14px rgba(0,0,0,.12);
}

.logoBox.logo-bg-dark {
  background:var(--logo-dark);
  border-color:var(--logo-border);
}

.logoBox.logo-bg-light {
  background:#fff;
  border-color:rgba(255,255,255,.28);
}

.logoBox img {
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:0 !important;
  margin:0 !important;
}

.logoError::after {
  content:"LOGO";
  color:var(--muted);
  font-size:9px;
  font-weight:850;
  letter-spacing:.8px;
}

.desc {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1.05;
}

.descTop {
  max-width:100%;
  overflow:hidden;
  color:var(--text);
  font-size:20px;
  font-weight:850;
  letter-spacing:.15px;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.descBottom {
  max-width:100%;
  margin-top:4px;
  overflow:hidden;
  color:var(--muted);
  font-size:9px;
  font-weight:520;
  letter-spacing:.05px;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.goBtn {
  width:100%;
  height:43px;
  display:flex;
  align-items:center;
  justify-content:center;
  justify-self:end;
  color:#fff;
  font-size:16px;
  font-weight:850;
  letter-spacing:-.1px;
  background:
    linear-gradient(112deg,var(--accent) 0%,var(--accent-2) 56%,var(--accent) 100%);
  border:1px solid rgba(255,255,255,.10);
  border-radius:9px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 8px 18px rgba(0,0,0,.16);
}

.goBtn::after {
  content:" ✧";
  margin-left:7px;
  font-size:16px;
  font-weight:700;
  transform:translateY(-1px);
}

.empty {
  padding:34px 12px;
  color:var(--muted);
  text-align:center;
  font-size:13px;
}

.loading {
  min-height:520px;
}

.skeleton {
  height:74px;
  border-bottom:1px solid var(--separator);
  background:
    linear-gradient(90deg,transparent,rgba(255,255,255,.045),transparent),
    var(--row);
  background-size:220% 100%;
  animation:pulse 1s infinite linear;
}

@keyframes pulse {
  to { background-position:-220% 0; }
}

@media (max-width:700px) {
  .page {
    padding:6px 5px 30px;
  }

  .aff-card {
    max-width:100%;
    border-radius:18px;
  }

  .top {
    min-height:43px;
    padding:9px 9px 8px;
  }

  .top::before,
  .top::after {
    flex-basis:74px;
    width:74px;
  }

  .top h1 {
    margin:0 9px;
    gap:6px;
    font-size:16px;
  }

  .top h1::before,
  .top h1::after {
    content:"★ ★";
    font-size:9px;
    letter-spacing:3px;
  }

  .table {
    padding:0 7px 9px;
  }

  .row {
    grid-template-columns:33% minmax(0,1fr) 24%;
    gap:5px;
    min-height:55px;
    padding:4px 0;
  }

  .logoBox {
    height:42px;
    border-radius:8px;
  }

  .descTop {
    font-size:14px;
  }

  .descBottom {
    margin-top:4px;
    font-size:9px;
  }

  .goBtn {
    height:37px;
    border-radius:9px;
    font-size:10px;
  }

  .goBtn::after {
    margin-left:4px;
    font-size:9px;
  }

  .skeleton {
    height:60px;
  }
}

@media (max-width:390px) {
  .page {
    padding-left:3px;
    padding-right:3px;
  }

  .aff-card {
    border-radius:15px;
  }

  .top h1 {
    font-size:14px;
  }

  .top h1::before,
  .top h1::after {
    font-size:9px;
  }

  .table {
    padding-left:7px;
    padding-right:7px;
  }

  .row {
    grid-template-columns:34% minmax(0,1fr) 23%;
    gap:5px;
    min-height:55px;
  }

  .logoBox {
    height:41px;
    border-radius:9px;
  }

  .descTop {
    font-size:14px;
  }

  .descBottom {
    font-size:9px;
  }

  .goBtn {
    height:37px;
    font-size:10px;
    border-radius:8px;
  }
}

/* Native link davranışı: mobil uzun basma menüsü korunur, içerik seçilmez/sürüklenmez. */
a.row {
  -webkit-touch-callout: default !important;
  touch-action: pan-y;
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}
a.row, a.row * {
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}
a.row > *, a.row img, a.row span, a.row p, a.row div, a.row strong, a.row small, a.row button {
  pointer-events: none !important;
}
a.row img { -webkit-touch-callout: none !important; }
@media (hover:none) and (pointer:coarse) {
  a.row, a.row:hover, a.row:focus, a.row:active { transform:none !important; }
}

/* ===== SADECE WEB / MOBİLE DOKUNMA =====
   Bu blok 900px altındaki hiçbir ekranda çalışmaz. */
@media (min-width:900px) {
  .page {
    padding:14px 12px 40px !important;
  }

  .aff-card {
    width:100% !important;
    max-width:860px !important;
    margin:0 auto !important;
    border-radius:18px !important;
  }

  .top {
    min-height:50px !important;
    padding:10px 18px 9px !important;
  }

  .top::before,
  .top::after {
    width:90px !important;
    flex:0 1 90px !important;
  }

  .top h1 {
    margin:0 10px !important;
    gap:6px !important;
    font-size:18px !important;
  }

  .top h1::before,
  .top h1::after {
    font-size:11px !important;
    letter-spacing:3px !important;
  }

  .table {
    padding:0 10px 12px !important;
  }

  .row {
    grid-template-columns:175px minmax(0,1fr) 132px !important;
    gap:16px !important;
    min-height:64px !important;
    padding:5px 7px !important;
    align-items:center !important;
  }

  .logoBox {
    width:175px !important;
    height:48px !important;
    border-radius:9px !important;
    justify-self:start !important;
  }

  .desc {
    width:100% !important;
    max-width:260px !important;
    justify-self:center !important;
    align-items:center !important;
    text-align:center !important;
  }

  /* Açıklama metinleri mevcut iyi mobil sürümdeki masaüstü değerleriyle korunur. */
  .descTop {
    font-size:20px !important;
  }

  .descBottom {
    margin-top:4px !important;
    font-size:9px !important;
  }

  .goBtn {
    width:132px !important;
    height:42px !important;
    justify-self:end !important;
    border-radius:9px !important;
    font-size:16px !important;
  }

  .goBtn::after {
    margin-left:4px !important;
    font-size:13px !important;
  }

  .skeleton {
    height:64px !important;
  }
}

@media (min-width:1200px) {
  .aff-card {
    max-width:900px !important;
  }

  .row {
    grid-template-columns:185px minmax(0,1fr) 138px !important;
    gap:18px !important;
  }

  .logoBox {
    width:185px !important;
    height:50px !important;
  }

  .goBtn {
    width:138px !important;
    height:43px !important;
  }
}


/* Çoklu tablo v4 — eski başlık görünümü + çok küçük tablo aralığı */
.top{display:none!important}

.table{
  padding:10px!important;
  gap:6px!important;
  background:transparent!important;
}

.affSection{
  margin:0!important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.018);
  box-shadow:0 6px 18px rgba(0,0,0,.10);
}

.affSection+.affSection{
  margin-top:6px!important;
  padding-top:0!important;
}

.sectionTitle{
  position:relative;
  min-height:52px;
  margin:0;
  padding:10px 18px 9px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:rgba(255,255,255,.02);
  border-bottom:1px solid rgba(255,255,255,.07);
  color:var(--text);
  font-size:18px;
  font-weight:850;
  line-height:1.05;
  text-align:center;
  letter-spacing:-.2px;
}

.sectionTitle::before,
.sectionTitle::after{
  content:"";
  height:1px;
  flex:1 1 72px;
  max-width:120px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20));
}

.sectionTitle::after{
  background:linear-gradient(90deg,rgba(255,255,255,.20),transparent);
}

/* Yıldızlar başlığın iki yanında */
.sectionTitle{
  --star:"★ ★";
}
.sectionTitle span{display:none}

.sectionTitle::selection{background:transparent}

.sectionTitle{
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}

.sectionTitle::marker{display:none}

.sectionRows{
  display:block;
  padding:0 10px 8px;
}

.sectionRows .row:first-child{border-top:0}
.sectionRows .row:last-child{border-bottom:0}

/* Başlık metninin yanına yıldızlar için görsel katman */
.affSection .sectionTitle{
  background-image:
    linear-gradient(90deg,transparent,transparent);
}

@media(min-width:1px){
  .sectionTitle{
    font-size:0;
  }
  .sectionTitle::before{
    content:"★ ★";
    color:var(--accent);
    font-size:12px;
    font-weight:900;
    letter-spacing:3px;
    height:auto;
    flex:0 0 auto;
    max-width:none;
    background:none;
  }
  .sectionTitle::after{
    content:"★ ★";
    color:var(--accent);
    font-size:12px;
    font-weight:900;
    letter-spacing:3px;
    height:auto;
    flex:0 0 auto;
    max-width:none;
    background:none;
  }
  .sectionTitle{
    --title-font-size:18px;
  }
}

/* JS title text görünür kalması için child span kullanılır */
.sectionTitleText{
  display:inline-block;
  position:relative;
  font-size:18px;
  font-weight:850;
  line-height:1.05;
  color:var(--text);
  white-space:nowrap;
}
.sectionTitleText::before,
.sectionTitleText::after{
  content:"";
  position:absolute;
  top:50%;
  width:68px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20));
}
.sectionTitleText::before{
  right:calc(100% + 52px);
}
.sectionTitleText::after{
  left:calc(100% + 52px);
  transform:scaleX(-1);
}

@media(max-width:700px){
  .table{
    padding:7px!important;
    gap:4px!important;
  }
  .affSection{
    border-radius:12px;
  }
  .affSection+.affSection{
    margin-top:4px!important;
  }
  .sectionTitle{
    min-height:44px;
    padding:8px 10px 7px;
    gap:7px;
  }
  .sectionTitle::before,
  .sectionTitle::after{
    font-size:10px;
    letter-spacing:2px;
  }
  .sectionTitleText{
    font-size:15px;
  }
  .sectionTitleText::before,
  .sectionTitleText::after{
    width:34px;
  }
  .sectionTitleText::before{right:calc(100% + 34px)}
  .sectionTitleText::after{left:calc(100% + 34px)}
  .sectionRows{
    padding:0 7px 6px;
  }
}




/* v6 Başlık yazısı düzeltmesi — gerçek yıldız + gerçek başlık DOM'u */
.sectionTitle{
  font-size:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
}
.sectionTitle::before,
.sectionTitle::after{
  content:""!important;
  display:block!important;
  flex:1 1 60px!important;
  max-width:105px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20))!important;
}
.sectionTitle::after{
  background:linear-gradient(90deg,rgba(255,255,255,.20),transparent)!important;
}
.sectionTitleText{
  display:inline-block!important;
  position:static!important;
  font-size:18px!important;
  font-weight:850!important;
  line-height:1.05!important;
  color:var(--text)!important;
  white-space:nowrap!important;
}
.sectionTitleText::before,
.sectionTitleText::after{
  display:none!important;
  content:none!important;
}
.sectionStars{
  display:inline-block!important;
  color:var(--accent)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:3px!important;
  white-space:nowrap!important;
}
@media(max-width:700px){
  .sectionTitle{font-size:15px!important;gap:7px!important}
  .sectionTitleText{font-size:15px!important}
  .sectionStars{font-size:10px!important;letter-spacing:2px!important}
  .sectionTitle::before,.sectionTitle::after{max-width:42px!important}
}

