/* ============================================================================
   PRODUCT DETAIL · REVIEWS (07-reviews.css — ПОЛНАЯ ЗАМЕНА, greenfield)
   ----------------------------------------------------------------------------
   Заголовок «Отзывы · N», чистые карточки (аватар-инициалы, имя+дата, звёзды).
   Скрыты: пакет в отзыве и «Полезно». Пагинация вместо «Показать ещё».
   Сохранены: модалка написания отзыва, rating-input, admin-reply, no-reviews,
   review-images, состояния hidden-review. Ноль !important.
   ============================================================================ */

.product-reviews-section{
  --cr-ink:#1e293b;--cr-ink2:#475569;--cr-muted:#64748b;--cr-light:#94a3b8;
  --cr-line:#eef1f5;--cr-line2:#e6eaf0;--cr-soft:#f4f6f9;
  --cr-acc:#8ff451;--cr-acc-deep:#16a34a;--cr-acc-tint:#eafcdd;--cr-red:#ff3b3b;--cr-star:#f4b740;
  --cr-r:18px;--cr-r-md:13px;--cr-r-sm:10px;
  background:#fff;border:0;border-radius:var(--cr-r);overflow:hidden;margin-top:0;
  box-shadow:0 1px 2px rgba(15,23,42,.05),0 12px 28px rgba(15,23,42,.045);
}

/* заголовок */
.product-reviews-section .section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px 13px;background:#fff;border-bottom:1px solid var(--cr-line)}
.product-reviews-section .section-header .header-left{display:flex;align-items:center;gap:9px}
.product-reviews-section .section-header .header-left i{color:var(--cr-star);font-size:14px}
.product-reviews-section .section-header h3{margin:0;font-size:13px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--cr-light)}
.product-reviews-section .review-count-badge{font-size:12px;color:var(--cr-ink2);background:var(--cr-soft);padding:6px 12px;border-radius:999px;font-weight:700}

/* обзор рейтинга */
/* line-height:normal — гасит глобальный body line-height:26px, который раздувал
   мелкие лейблы рейтинга (12px → строки 26px). В оригинале (preview) фон без него. */
.product-reviews-section .reviews-overview{padding:16px 20px;border-bottom:1px solid var(--cr-line);line-height:normal}
.product-reviews-section .reviews-summary{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center}
.product-reviews-section .rating-big{display:grid;justify-items:center;gap:10px;min-width:128px}
.product-reviews-section .rating-big .rating-number{font-size:44px;font-weight:900;color:var(--cr-ink);line-height:1;letter-spacing:-.02em}
.product-reviews-section .rating-stars-big{display:flex;gap:4px}
.product-reviews-section .rating-stars-big i{font-size:15px;color:var(--cr-star)}
.product-reviews-section .rating-stars-big i.fa-regular{color:#d8dee6}
.product-reviews-section .rating-big .rating-label{font-size:12.5px;color:var(--cr-muted);font-weight:600;line-height:1.3}
.product-reviews-section .btn-write-review-inline{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;margin-top:4px;background:#fff;border:1.5px solid var(--cr-acc-deep);border-radius:10px;font-size:12.5px;font-weight:700;color:var(--cr-acc-deep);cursor:pointer;transition:.15s}
.product-reviews-section .btn-write-review-inline:hover{background:var(--cr-acc-tint)}
.product-reviews-section .btn-write-review-inline i{font-size:11px}
.product-reviews-section .rating-bars{display:grid;gap:7px}
.product-reviews-section .rating-bar-row{display:grid;grid-template-columns:54px 1fr 26px;align-items:center;gap:12px}
.product-reviews-section .rating-bar-label{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--cr-muted);font-weight:700}
.product-reviews-section .rating-bar-label i{font-size:10px;color:var(--cr-star)}
.product-reviews-section .rating-bar-track{height:8px;background:var(--cr-soft);border-radius:999px;overflow:hidden}
.product-reviews-section .rating-bar-fill{height:100%;background:var(--cr-acc);border-radius:999px;transition:width .2s}
.product-reviews-section .rating-bar-count{font-size:12px;color:var(--cr-ink);font-weight:700;text-align:right}

/* список отзывов */
.product-reviews-section .reviews-list{display:grid;gap:14px;padding:20px}
.product-reviews-section .review-item{display:grid;gap:12px;padding:18px;border:1px solid var(--cr-line2);border-radius:var(--cr-r-md);background:#fff}
.product-reviews-section .review-item.hidden-review{display:none}
.product-reviews-section .review-item:last-child{border-bottom:1px solid var(--cr-line2)}
.product-reviews-section .review-header{display:flex;align-items:center;gap:12px;margin:0}
.product-reviews-section .review-user{display:flex;align-items:center;gap:12px;min-width:0}
.product-reviews-section .review-avatar{width:46px;height:46px;border-radius:50%;background:var(--cr-acc-tint);color:var(--cr-acc-deep);display:grid;place-items:center;overflow:hidden;flex-shrink:0;font-weight:800;font-size:15px}
.product-reviews-section .review-avatar img{width:100%;height:100%;object-fit:cover}
.product-reviews-section .review-avatar i{font-size:16px;color:var(--cr-acc-deep)}
.product-reviews-section .review-user-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.product-reviews-section .review-username{font-weight:800;color:var(--cr-ink);font-size:14px}
.product-reviews-section .review-user-info .review-date{font-size:12px;color:var(--cr-muted);font-weight:600}
.product-reviews-section .verified-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--cr-acc-deep);font-weight:700}
.product-reviews-section .verified-badge i{font-size:11px}
.product-reviews-section .review-meta{margin-left:auto;display:flex;align-items:center}
.product-reviews-section .review-rating-stars{display:flex;gap:2px}
.product-reviews-section .review-rating-stars i{font-size:14px;color:var(--cr-star)}
.product-reviews-section .review-rating-stars i.fa-regular{color:#d8dee6}
.product-reviews-section .review-date{font-size:12px;color:var(--cr-muted)}
.product-reviews-section .review-title{font-size:14px;font-weight:800;color:var(--cr-ink);margin:0}
.product-reviews-section .review-content{font-size:14px;color:var(--cr-ink2);line-height:1.6;font-weight:500}

/* СКРЫТО по требованию: пакет в отзыве и кнопка «Полезно» */
.product-reviews-section .review-plan{display:none}
.product-reviews-section .review-actions{display:none}

/* картинки в отзыве */
.product-reviews-section .review-images{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.product-reviews-section .review-image-item{width:60px;height:60px;border-radius:8px;overflow:hidden;cursor:pointer;transition:transform .12s}
.product-reviews-section .review-image-item:hover{transform:scale(1.03)}
.product-reviews-section .review-image-item img{width:100%;height:100%;object-fit:cover}

/* ответ админа */
.product-reviews-section .review-admin-reply{margin-top:2px;padding:12px 14px;background:var(--cr-soft);border-radius:var(--cr-r-sm);border:0}
.product-reviews-section .admin-reply-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.product-reviews-section .admin-reply-header i{color:var(--cr-acc-deep);font-size:12px}
.product-reviews-section .admin-reply-label{font-weight:800;color:var(--cr-acc-deep);font-size:12px}
.product-reviews-section .admin-reply-date{font-size:11px;color:var(--cr-light);margin-left:auto}
.product-reviews-section .admin-reply-content{font-size:13px;color:var(--cr-ink2);line-height:1.55}

/* ── пагинация (вместо «Показать ещё») ───────────────────────────────── */
.product-reviews-section .reviews-pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 20px 20px}
.product-reviews-section .reviews-pagination button,
.product-reviews-section .reviews-pagination a{min-width:38px;height:38px;padding:0 11px;border:0;border-radius:10px;background:var(--cr-soft);color:var(--cr-ink2);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.product-reviews-section .reviews-pagination button:hover:not(:disabled),
.product-reviews-section .reviews-pagination a:hover{background:var(--cr-acc-tint);color:var(--cr-acc-deep)}
.product-reviews-section .reviews-pagination .is-active,
.product-reviews-section .reviews-pagination a.active{background:var(--cr-acc);color:#0c1c03}
.product-reviews-section .reviews-pagination button:disabled{opacity:.4;cursor:not-allowed}

/* fallback «Показать ещё», если используется */
.product-reviews-section .reviews-load-more{display:flex;justify-content:center;padding:4px 20px 20px}
.product-reviews-section .btn-load-more-reviews{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--cr-soft);color:var(--cr-ink2);font-family:inherit;font-size:13px;font-weight:700;padding:11px 20px;border-radius:11px;cursor:pointer;transition:.15s}
.product-reviews-section .btn-load-more-reviews:hover{background:var(--cr-acc-tint);color:var(--cr-acc-deep)}

/* нет отзывов */
.product-reviews-section .no-reviews-message{display:grid;justify-items:center;gap:5px;padding:48px 20px;text-align:center}
.product-reviews-section .no-reviews-badge{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--cr-acc-tint);margin-bottom:10px}
.product-reviews-section .no-reviews-badge i{font-size:26px;color:var(--cr-acc-deep);margin:0}
.product-reviews-section .no-reviews-message p{font-size:15.5px;color:var(--cr-ink);margin:0;font-weight:800}
.product-reviews-section .no-reviews-message > span{font-size:13px;color:var(--cr-muted);font-weight:500}
.product-reviews-section .no-reviews-message .btn-write-review-inline{margin-top:14px}

/* приглашение войти */
.product-reviews-section .write-review-login-prompt{display:flex;align-items:center;gap:9px;margin:16px 20px;padding:13px 15px;border-radius:var(--cr-r-md);background:var(--cr-soft);border:0;font-size:13px;font-weight:600;color:var(--cr-muted)}
.product-reviews-section .write-review-login-prompt i{color:var(--cr-acc-deep)}
.product-reviews-section .write-review-login-prompt a{color:var(--cr-acc-deep);font-weight:800;text-decoration:underline}

/* ── модалка написания отзыва (зелёный акцент) ───────────────────────── */
.review-modal{display:none;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center}
.review-modal.active{display:flex}
.review-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5);backdrop-filter:blur(3px)}
.review-modal-content{position:relative;background:#fff;border-radius:var(--cr-r,18px);width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 30px 80px -20px rgba(15,23,42,.5);animation:revModalIn .24s ease-out}
@keyframes revModalIn{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
/* анимация закрытия (класс .closing ставится из reviews.js перед снятием .active) */
.review-modal.closing{pointer-events:none}
.review-modal.closing .review-modal-backdrop{animation:revBackdropOut .2s ease forwards}
.review-modal.closing .review-modal-content{animation:revModalOut .2s ease-in forwards}
@keyframes revModalOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(12px) scale(.97)}}
@keyframes revBackdropOut{from{opacity:1}to{opacity:0}}
.review-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border-bottom:1px solid #eef1f5}
.review-modal-header h3{display:flex;align-items:center;gap:9px;margin:0;font-size:16px;font-weight:800;color:#1e293b}
.review-modal-header h3 i{color:#16a34a}
.review-modal-close{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:10px;background:#f4f6f9;color:#64748b;cursor:pointer;transition:.15s}
.review-modal-close:hover{background:#e9edf2;color:#1e293b}
.review-modal-body{padding:20px;overflow-y:auto;max-height:calc(90vh - 64px)}
.write-review-form{display:flex;flex-direction:column;gap:14px}
.review-form-group{display:flex;flex-direction:column;gap:8px}
.review-form-group label{font-size:12px;font-weight:800;color:#475569;text-transform:uppercase;letter-spacing:.02em}
.review-form-group label .required{color:#ff3b3b}
.review-select,.review-textarea,.review-input{padding:12px 14px;border:0;background:#f4f6f9;border-radius:13px;font-size:14px;font-weight:600;color:#1e293b;transition:box-shadow .15s}
.review-select:focus,.review-textarea:focus,.review-input:focus{outline:none;box-shadow:0 0 0 2px rgba(140,255,63,.45)}
.review-input{height:46px}
/* кастомная стрелка вместо нативной (та была «кривая»); ровная высота.
   Высокая специфичность (+ :hover/:focus) — чтобы autoreg-theme не перетирал
   background шорткатом #f6f6f6 и стрелка не пропадала при фокусе/наведении. */
.product-reviews-section .review-modal .review-select,
.product-reviews-section .review-modal .review-select:hover,
.product-reviews-section .review-modal .review-select:focus{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  height:46px;padding:0 42px 0 14px;cursor:pointer;line-height:normal;
  background-color:#f4f6f9;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:14px;
  text-overflow:ellipsis;
}
.review-textarea{resize:vertical;min-height:80px}
.review-char-count{font-size:11px;color:#94a3b8;text-align:right}
.rating-input{display:flex;align-items:center;gap:6px}
.rating-input i{font-size:24px;color:#d8dee6;cursor:pointer;transition:color .12s,transform .12s}
.rating-input i:hover,.rating-input i.fa-solid{color:#f4b740;transform:scale(1.05)}
.rating-text{font-size:13px;color:#64748b;margin-left:6px}
.btn-submit-review{display:flex;align-items:center;justify-content:center;gap:8px;height:50px;border:0;border-radius:13px;font-size:14.5px;font-weight:800;color:#0c1c03;background:#8ff451;cursor:pointer;transition:.15s;box-shadow:0 8px 18px rgba(143,244,81,.32)}
.btn-submit-review:hover{background:#a1f86a}
.btn-submit-review:disabled{opacity:.6;cursor:not-allowed}

/* ── responsive ──────────────────────────────────────────────────────── */
@media (max-width:768px){
  .product-reviews-section .reviews-summary{grid-template-columns:1fr;gap:18px}
  .product-reviews-section .rating-big{justify-items:start}
}

/* ── dark ────────────────────────────────────────────────────────────── */
[data-theme="dark"] .product-reviews-section{background:#282828;box-shadow:0 12px 28px rgba(0,0,0,.3)}
[data-theme="dark"] .product-reviews-section .section-header{background:#282828;border-color:#3a3a3a}
[data-theme="dark"] .product-reviews-section .review-item{background:#222;border-color:#3a3a3a}
[data-theme="dark"] .product-reviews-section .review-username,
[data-theme="dark"] .product-reviews-section .rating-big .rating-number{color:#fff}
[data-theme="dark"] .product-reviews-section .review-content{color:#cfcfcf}
[data-theme="dark"] .product-reviews-section .rating-bar-track,
[data-theme="dark"] .product-reviews-section .review-count-badge{background:#3a3a3a}
