:root{
  --tg-bg:#ffffff; --tg-fg:#111; --tg-muted:#666; --tg-soft:#f5f6f7; --tg-line:#e7e7ea;
  --tg-accent:#111; --tg-accent-2:#2b2b2b; --tg-radius:16px; --tg-shadow:0 12px 30px rgba(0,0,0,.08);
}

.tagrean-quiz{max-width:980px;margin:0 auto;padding:6px}
.tagrean-card{background:var(--tg-bg);border-radius:var(--tg-radius);box-shadow:var(--tg-shadow);padding:28px;margin:18px 0;border:1px solid var(--tg-line)}
.tagrean-card h2{margin:0 0 12px;font-size:28px;letter-spacing:-.01em}
.tagrean-card h3{margin:0 0 10px;font-size:20px}
.tagrean-intro{display:block}
.tagrean-intro-text{color:var(--tg-muted);font-size:15px;line-height:1.6;margin-bottom:16px}

/* Stepper */
.tagrean-stepper{
  display:grid;
  grid-template-columns:auto 1fr; /* solda sayı, sağda progress bar */
  align-items:center;
  gap:12px;
  margin:8px 0 18px;
}
.tagrean-progress{
  height:8px;
  background:var(--tg-soft);
  border-radius:999px;
  flex:1;
  overflow:hidden;
  position:relative;
}
.tagrean-progress>span{
  display:block;
  height:100%;
  width:0%;
  background:var(--tg-accent);
  transition:width .25s ease;
}
.tagrean-step-text{
  font-size:13px;
  min-width:0;      /* soldaki gereksiz boşluğu kaldır */
  text-align:left;  /* sola hizala */
  margin:0;
  padding:0;
  color:var(--tg-muted);
}

.tagrean-q-item{display:none}
.tagrean-q-item.active{display:block;animation:tgFade .18s ease}
@keyframes tgFade{from{opacity:.6;transform:translateY(2px)}to{opacity:1;transform:none}}

.tagrean-options{display:grid;gap:10px}
.tagrean-options label{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--tg-line);border-radius:12px;cursor:pointer;user-select:none;background:#fff;transition:.2s box-shadow,.2s border-color}
.tagrean-options label:hover{box-shadow:0 6px 18px rgba(0,0,0,.06)}
.tagrean-options input[type=radio]{margin-top:3px}
.tagrean-options input[type=radio]:focus-visible{outline:2px solid #8aa3ff;outline-offset:2px}
.tagrean-options input[type=radio]:checked + span{font-weight:600}
.tagrean-options label.selected{border-color:#111;box-shadow:0 0 0 2px rgba(0,0,0,.06) inset}

.tagrean-actions{display:flex;gap:12px;margin-top:18px;justify-content:space-between}
.tagrean-actions-left,.tagrean-actions-right{display:flex;gap:10px;flex-wrap:wrap}
.tagrean-btn{appearance:none;border:1px solid var(--tg-accent);border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer;background:#fff;transition:.15s transform,.15s background,.15s color,.15s border-color}
.tagrean-btn:hover{transform:translateY(-1px)}
.tagrean-btn-primary{background:var(--tg-accent);color:#fff}
.tagrean-btn-primary:hover{background:var(--tg-accent-2);border-color:var(--tg-accent-2)}
.tagrean-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

.tagrean-result{display:none}
.tagrean-vibe-info{color:var(--tg-muted);margin:0 0 10px;font-size:14px}
.tagrean-vibe-chosen{display:none} /* JS için var ama görünmesin */
.tagrean-vibe-desc{margin:10px 0 14px;white-space:pre-line;background:var(--tg-soft);border:1px solid var(--tg-line);border-radius:12px;padding:12px 14px;font-size:14px;color:#222}
.tagrean-alert{background:#fff9ed;border:1px dashed #f0d3a3;padding:12px 14px;border-radius:12px;color:#7a5b2b}

.tagrean-switch{margin-top:6px;display:flex;gap:10px;flex-wrap:wrap}
.tagrean-switch button{padding:8px 14px;border-radius:999px;border:1px solid var(--tg-line);cursor:pointer;background:#fff;font-weight:700}
.tagrean-switch button.active{background:var(--tg-accent);color:#fff;border-color:var(--tg-accent)}

/* Grid */
.tagrean-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:14px}
@media (max-width:1100px){ .tagrean-grid{grid-template-columns:repeat(8,1fr)} }
@media (max-width:780px){ .tagrean-grid{grid-template-columns:repeat(6,1fr)} }
@media (max-width:520px){ .tagrean-grid{grid-template-columns:repeat(2,1fr)} }

/* Ürün kartları: yükseklik uyumu + tüm kart tıklanabilir */
.tagrean-product{
  grid-column:span 3;
  background:#fff;
  border:1px solid var(--tg-line);
  border-radius:14px;
  overflow:hidden;
  transition:.2s box-shadow,.2s transform;
  display:flex;
  flex-direction:column;
  position:relative;       /* overlay link için */
  cursor:pointer;
}
@media (max-width:780px){ .tagrean-product{grid-column:span 3} }
@media (max-width:520px){ .tagrean-product{grid-column:span 2} }
.tagrean-product:hover{box-shadow:0 12px 26px rgba(0,0,0,.08);transform:translateY(-2px)}
.tagrean-product img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;background:#fafafa;position:relative;z-index:0}
.tagrean-product .inner{
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:6px;
  flex:1;
  position:relative; z-index:0;
}
.tagrean-product h5{
  font-size:15px;
  line-height:1.35;
  margin:0;
  min-height:38px;              /* başlık alanını eşitle (yaklaşık 2 satır) */
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.tagrean-price{font-weight:700;margin:0}
.tagrean-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.tagrean-badge{font-size:11px;border:1px solid var(--tg-line);padding:4px 8px;border-radius:999px;background:#fff}

/* Kartın tamamını tıklanabilir yapan görünmez link */
.tagrean-product .tagrean-card-link{
  position:absolute;
  inset:0;                 /* top/right/bottom/left = 0 */
  z-index:10;
  display:block;
}
.tagrean-product a{ text-decoration:none; color:inherit; }

/* === Tabs === */
.tagrean-tabs{margin-top:10px;border:1px solid var(--tg-line);border-radius:12px;overflow:hidden;background:#fff}
.tagrean-tab-list{
  display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0;border-bottom:1px solid var(--tg-line);padding:0
}
.tagrean-tab{
  padding:10px 14px;cursor:pointer;border-right:1px solid var(--tg-line);
  background:#fafafa;transition:.15s background,.15s color;font-weight:700;font-size:14px
}
.tagrean-tab:last-child{border-right:none}
.tagrean-tab:hover{background:#f0f0f0}
.tagrean-tab.active{background:var(--tg-accent);color:#fff}
.tagrean-tab-content{padding:14px;white-space:pre-line;font-size:14px;line-height:1.55}

/* Daha Fazlasını Gör butonu — grid bozulmasın */
.tagrean-grid > .tagrean-more{
  grid-column:1 / -1;     /* tüm kolonları kapla */
  width:100%;
  display:flex;
  justify-content:center;
  margin-top:20px;
}
.tagrean-more a{
  background-color:#000;
  color:#fff !important;
  padding:10px 20px;
  border-radius:4px;
  font-size:14px;
  font-weight:500;
  text-decoration:none;
  transition:background-color .2s ease-in-out;
  display:inline-flex;     /* daha sağlam satır içi düzen */
  align-items:center;
  gap:8px;
  white-space:nowrap;      /* tek satırda tut */
  max-width:100%;          /* kolonu zorlamasın */
}
.tagrean-more a:hover{ background-color:#333; }

/* Çok dar ekranlarda sarmasına izin ver (taşma olmasın) */
@media (max-width:420px){
  .tagrean-more a{ white-space:normal; text-align:center; }
}
