/* ══════════════════════════════════════════════════════════════════
   Solestra — ürün değerlendirmeleri + ilgili ürünler carousel'i
   Ürünün altında, bilgi bölümünden sonra, sayfa genişliğinde.
   ══════════════════════════════════════════════════════════════════ */

.sl-rv {
    --rv-black: #000;
    --rv-text: #4d4d4d;
    --rv-muted: #8f8f8f;
    --rv-line: #e0e0e0;
    --rv-soft: #f6f3ef;
    --rv-accent: #6b2332;
    --rv-star: #000;

    display: grid;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
    gap: 56px;
    width: 100%;
    margin: 0 0 72px;
    padding: 56px 0 0;
    border-top: 1px solid var(--rv-line);
    color: var(--rv-black);
}

/* Galeri + özet kutusu içinde kalırsa (betik çalışmazsa) görünmesin */
.qodef-woo-single-inner > .sl-rv { display: none; }

/* ── Özet ── */
.sl-rv__summary { align-self: start; position: sticky; top: 110px; }

.sl-rv__eyebrow {
    margin: 0 0 10px !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--rv-accent);
}

.sl-rv__title {
    margin: 0 0 24px !important;
    font-size: clamp(22px, 2.4vw, 28px) !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: .05em !important;
    text-transform: none !important;
    text-wrap: balance;
}

.sl-rv__score { display: flex; align-items: center; gap: 14px; margin: 0 0 18px; }
.sl-rv__score b { font-size: 48px; font-weight: 300; line-height: 1; letter-spacing: -.01em; }
.sl-rv__score > span { display: flex; flex-direction: column; gap: 6px; }
.sl-rv__score small { font-size: 12px; color: var(--rv-muted); }

/* Yıldızlar: arka plan gri, ön plan siyah, genişlik puan kadar */
.sl-rv__stars { position: relative; display: inline-block; line-height: 0; }
.sl-rv__stars svg { margin-right: 2px; }
.sl-rv__stars-bg svg { fill: #dcdcdc; }
.sl-rv__stars-fg { position: absolute; inset: 0 auto 0 0; width: var(--sl-rv-fill); overflow: hidden; white-space: nowrap; }
.sl-rv__stars-fg svg { fill: var(--rv-star); }

.sl-rv__dist { margin: 0 0 26px !important; padding: 0 !important; list-style: none; }

.sl-rv__dist li {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr) 22px;
    align-items: center;
    gap: 10px;
    margin: 0 0 6px !important;
    padding: 0 !important;
    font-size: 12px;
    color: var(--rv-text);
    font-variant-numeric: tabular-nums;
}

.sl-rv__bar { display: block; height: 4px; background: #ececec; }
.sl-rv__bar i { display: block; height: 100%; background: var(--rv-black); }
.sl-rv__n { text-align: right; color: var(--rv-muted); }

.sl-rv__empty { margin: 0 0 22px !important; font-size: 14px; line-height: 1.7; color: var(--rv-text); }

.sl-rv__notice {
    margin: 0 0 18px !important;
    padding: 12px 14px;
    border-left: 3px solid #1e6b3a;
    background: #f4f8f5;
    font-size: 13px;
    line-height: 1.5;
    color: #1e4d2e;
}

.sl-rv__write {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 50px;
    padding: 0 18px;
    border: 1px solid var(--rv-black);
    background: #fff;
    color: var(--rv-black) !important;
    font: inherit;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none !important;
    cursor: pointer;
    transition: background-color .15s, color .15s;
}

.sl-rv__write:hover,
.sl-rv__write[aria-expanded="true"] { background: var(--rv-black); color: #fff !important; }

/* ── Yorum kartları ── */
.sl-rv__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
}

.sl-rv__card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 0 !important;
    padding: 24px !important;
    border: 1px solid var(--rv-line);
    background: #fff;
}

.sl-rv__card[hidden] { display: none !important; }

.sl-rv__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sl-rv__top time { font-size: 12px; color: var(--rv-muted); }

.sl-rv__text { flex: 1; font-size: 15px; line-height: 1.7; color: var(--rv-text); }
.sl-rv__text p { margin: 0 0 8px !important; }
.sl-rv__text p:last-child { margin-bottom: 0 !important; }

.sl-rv__who {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    padding-top: 14px;
    border-top: 1px solid #f0f0f0;
}

.sl-rv__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--rv-soft);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--rv-accent);
}

.sl-rv__name { font-size: 14px; font-weight: 600; }

.sl-rv__verified {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
    font-size: 11px;
    font-weight: 600;
    color: #1e6b3a;
}

.sl-rv__more {
    display: block;
    margin: 22px auto 0;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--rv-black);
    text-decoration: underline;
    text-underline-offset: 5px;
    cursor: pointer;
}

/* ── Yorum yazma formu ── */
.sl-rv__form { margin: 0 0 24px; padding: 26px; background: var(--rv-soft); }
.sl-rv__form[hidden] { display: none; }
.sl-rv__form .comment-respond { margin: 0; padding: 0; }
.sl-rv__as { margin: 0 0 16px !important; font-size: 13px; color: var(--rv-text); }

.sl-rv__pick { margin: 0 0 18px; padding: 0; border: 0; }

.sl-rv__pick legend,
.sl-rv__field label {
    display: block;
    margin: 0 0 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--rv-black);
}

/* Yıldız seçimi: DOM'da 5→1, görünüşte 1→5 (row-reverse) — seçili ve öncekiler dolu */
.sl-rv__pick-stars { display: inline-flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; }
.sl-rv__pick-stars input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.sl-rv__pick-stars label { cursor: pointer; line-height: 0; }
.sl-rv__pick-stars svg { fill: #fff; stroke: #000; stroke-width: 1.3; transition: fill .12s; }

.sl-rv__pick-stars input:checked ~ label svg,
.sl-rv__pick-stars label:hover svg,
.sl-rv__pick-stars label:hover ~ label svg { fill: #000; }

.sl-rv__pick-stars input:focus-visible + label { outline: 2px solid #000; outline-offset: 2px; }

.sl-rv__field { margin: 0 0 16px !important; }

.sl-rv__field textarea {
    width: 100%;
    min-height: 130px;
    padding: 12px 14px !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 0 !important;
    background: #fff !important;
    font: inherit;
    font-size: 15px;
    line-height: 1.6;
    box-shadow: none !important;
    resize: vertical;
}

.sl-rv__field textarea:focus { outline: none; border-color: #000 !important; }

.sl-rv__form .form-submit { margin: 0 !important; }

.sl-rv__form .sl-rv__submit {
    min-height: 50px;
    padding: 0 28px !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    background: #000 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    cursor: pointer;
}

.sl-rv__form .sl-rv__submit:hover { background: #2a2a2a !important; }
.sl-rv__pick-error { margin: 6px 0 0; font-size: 13px; color: #b32d2e; }

/* ── İlgili ürünler: carousel ── */
section.related.products { position: relative; margin-top: 8px !important; }

section.related.products > h2 {
    margin: 0 0 24px !important;
    padding-right: 110px;
    font-size: clamp(20px, 2.2vw, 26px) !important;
    font-weight: 400 !important;
    letter-spacing: .05em !important;
    text-transform: none !important;
}

.sl-carousel-nav { position: absolute; top: 0; right: 0; display: flex; gap: 8px; }

.sl-carousel-nav button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #000;
    border-radius: 0;
    background: #fff;
    color: #000;
    cursor: pointer;
    transition: background-color .15s, color .15s, opacity .15s;
}

.sl-carousel-nav button:hover:not(:disabled) { background: #000; color: #fff; }
.sl-carousel-nav button:disabled { opacity: .3; cursor: default; }

section.related.products ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 24px;
    margin: 0 !important;
    padding: 0 0 6px !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

section.related.products ul.products::-webkit-scrollbar { display: none; }
section.related.products ul.products::before,
section.related.products ul.products::after { display: none !important; }

section.related.products ul.products > li.product {
    flex: 0 0 calc((100% - 72px) / 4) !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    scroll-snap-align: start;
    float: none !important;
    clear: none !important;
}

/* ── Duyarlı ── */
@media (max-width: 1024px) {
    .sl-rv { grid-template-columns: 1fr; gap: 32px; padding-top: 40px; }
    .sl-rv__summary { position: static; }
    .sl-rv__write { max-width: 360px; }
    section.related.products ul.products > li.product { flex-basis: calc((100% - 24px) / 2.3) !important; }
}

@media (max-width: 680px) {
    .sl-rv__list { grid-template-columns: 1fr; gap: 12px; }
    .sl-rv__card { padding: 20px !important; }
    .sl-rv__write { max-width: none; }
    section.related.products ul.products { gap: 14px; }
    section.related.products ul.products > li.product { flex-basis: 72% !important; }
    .sl-carousel-nav { display: none; }
    section.related.products > h2 { padding-right: 0; }
}

@media (prefers-reduced-motion: reduce) {
    section.related.products ul.products { scroll-behavior: auto; }
}
