/* =========================================================
   Yorum (Değerlendirme) Widget'ı — Silifke Rus Danışmanlık
   Altın yaldızlı, dikkat çekici, Google Yorumlar tarzı slider
   ========================================================= */

.reviews-widget{
  position:relative;
  margin:22px 0;
  padding:16px 18px 14px;
  border-radius:16px;
  background:linear-gradient(135deg,#fffdf5,#fff9ec);
  border:2px solid var(--gold);
  box-shadow:0 10px 30px rgba(201,150,50,.18);
  max-width:560px;
  animation:reviewsGlow 2.6s ease-in-out infinite;
}
@keyframes reviewsGlow{
  0%,100%{ box-shadow:0 10px 30px rgba(201,150,50,.18), 0 0 0 0 rgba(201,150,50,.35); border-color:var(--gold); }
  50%{ box-shadow:0 10px 34px rgba(201,150,50,.28), 0 0 22px 4px rgba(201,150,50,.45); border-color:#e7c35d; }
}
@media (prefers-reduced-motion: reduce){
  .reviews-widget{ animation:none; }
}

.reviews-widget-head{
  display:flex; align-items:center; gap:8px;
  margin-bottom:8px;
}
.reviews-widget-head .rw-stars{ color:var(--gold); font-size:14px; letter-spacing:1px; }
.reviews-widget-head b{ font-size:13px; color:var(--ink); letter-spacing:.3px; }
.rw-google-mark{
  margin-left:auto; width:20px; height:20px; border-radius:50%;
  background:#fff; border:1px solid #e7d9b8; color:#c99632;
  display:grid; place-items:center; font-size:12px; font-weight:900;
}

.reviews-slider{ position:relative; min-height:96px; }
.review-slide{
  display:none;
  animation:reviewFadeIn .5s ease;
}
.review-slide.active{ display:block; }
@keyframes reviewFadeIn{ from{ opacity:0; transform:translateY(4px);} to{ opacity:1; transform:translateY(0);} }

.review-top{ display:flex; align-items:center; gap:10px; margin-bottom:6px; }
.review-avatar{
  width:34px; height:34px; border-radius:50%; flex:none;
  background:var(--teal); color:#fff; font-size:13px; font-weight:800;
  display:grid; place-items:center; letter-spacing:.5px;
}
.review-who{ display:flex; flex-direction:column; gap:2px; }
.review-name{ font-size:13.5px; color:var(--ink); }
.review-stars{ font-size:12px; letter-spacing:1px; color:#d8cba0; }
.review-stars i{ font-style:normal; }
.review-stars i.on{ color:var(--gold); }
.review-text{
  margin:2px 0 0; font-size:13.5px; line-height:1.5; color:#465657;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}

.reviews-empty{ margin:6px 0 2px; font-size:13.5px; color:var(--muted); }

.review-dots{ display:flex; gap:6px; margin-top:10px; }
.review-dots button{
  width:7px; height:7px; padding:0; border-radius:50%; border:0;
  background:#e6d9b3; cursor:pointer;
}
.review-dots button.on{ background:var(--gold); width:16px; border-radius:5px; transition:.25s; }

.review-cta-btn{
  margin-top:2px; margin-bottom:20px;
  animation:reviewCtaBlink 1.7s ease-in-out infinite;
  letter-spacing:.4px;
}
@keyframes reviewCtaBlink{
  0%,100%{ opacity:1; box-shadow:0 6px 18px rgba(201,150,50,.35); }
  50%{ opacity:.82; box-shadow:0 6px 26px rgba(201,150,50,.55); }
}
@media (prefers-reduced-motion: reduce){
  .review-cta-btn{ animation:none; }
}

@media(max-width:900px){
  .reviews-widget{ max-width:none; }
}
@media(max-width:560px){
  .reviews-widget{ padding:14px 14px 12px; }
  .review-text{ font-size:13px; }
}

/* ---------- Yorum Gönderme Modalı ---------- */
.review-modal{
  position:fixed; inset:0; z-index:200; display:none;
}
.review-modal.open{ display:block; }
.review-modal-backdrop{
  position:absolute; inset:0; background:rgba(6,40,42,.55); backdrop-filter:blur(2px);
}
.review-modal-box{
  position:relative; z-index:1; margin:6vh auto; width:min(520px,92vw);
  max-height:88vh; overflow:auto;
  background:#fff; border-radius:18px; padding:28px 26px 24px;
  box-shadow:0 30px 70px rgba(0,0,0,.35);
  border-top:4px solid var(--gold);
}
.review-modal-close{
  position:absolute; top:14px; right:16px; border:0; background:none;
  font-size:26px; line-height:1; color:#8a9596; cursor:pointer;
}
.review-modal-box h3{ margin:0 0 6px; font-size:22px; color:var(--ink); }
.review-modal-sub{ margin:0 0 18px; color:var(--muted); font-size:13.5px; }
.review-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#reviewForm label{ display:block; font-size:12.5px; font-weight:700; color:#41595b; margin-top:12px; }
#reviewForm input, #reviewForm textarea{
  display:block; width:100%; margin-top:6px; border:1px solid #d9e1df; background:#fff;
  border-radius:9px; padding:11px 12px; color:var(--ink); font:inherit; outline:none;
}
#reviewForm input:focus, #reviewForm textarea:focus{ border-color:#c99632; box-shadow:0 0 0 3px rgba(201,150,50,.12); }
#reviewForm textarea{ resize:vertical; min-height:100px; }
#reviewForm button.btn{ margin-top:16px; }
#reviewFormStatus{ margin-left:12px; font-size:13px; color:var(--teal); }
.rate-label{ display:flex; flex-direction:column; }
.star-input{ display:flex; gap:4px; margin-top:6px; }
.star-input button{
  border:0; background:none; font-size:28px; line-height:1; color:#e0d6b8; cursor:pointer; padding:2px;
}
.star-input button.on{ color:var(--gold); }
@media(max-width:560px){
  .review-form-grid{ grid-template-columns:1fr; }
  .review-modal-box{ margin:4vh auto; padding:24px 18px 20px; }
}
