.discussion{max-width:960px;margin:56px auto;padding:24px;border:1px solid #dce4de;border-radius:20px;background:white}.discussion h2,.latest-comments h2{font-size:24px;font-weight:800}.comments-note{font-size:13px;color:#66776c;line-height:1.9;margin:10px 0}.public-comment{padding:20px 0;border-bottom:1px solid #e5eae2}.public-comment header,.comment-moderation header{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}.public-comment time,.comment-moderation time{font-size:12px;color:#66776c}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:2;margin:12px 0}.comments-form{display:grid;gap:12px;margin-top:25px}.comments-form textarea{width:100%;min-height:130px}.comments-form button{justify-self:start}.latest-comments{margin-block:64px}.latest-comments-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.latest-comments-header p{color:#66776c;line-height:1.9}.comment-rail-controls{display:flex;gap:8px;flex-shrink:0}.comment-rail-controls button{border:1px solid #d3ded3;border-radius:10px;background:white;padding:8px 14px;color:#244b38;font:inherit;cursor:pointer}.comment-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 3px 20px;overscroll-behavior-inline:contain}.comment-rail-card{flex:0 0 min(360px,85vw);min-width:0;scroll-snap-align:start;border:1px solid #dde5d9;border-radius:19px;padding:24px;background:#fff;display:flex;flex-direction:column;box-shadow:0 5px 15px #183a2910}.comment-quote{font-size:46px;line-height:1;color:#b68b44}.comment-rail-card>p{line-height:2;overflow-wrap:anywhere;flex:1}.comment-rail-card footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:12px;margin:20px 0 10px}.comment-rail-card a{font-size:12px;color:#44654d;text-decoration:underline;overflow-wrap:anywhere}.comment-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.comment-tabs a{padding:10px 18px;border:1px solid #d8e0d4;border-radius:12px}.comment-tabs [aria-current=page]{background:#184a3b;color:white}.comment-moderation{margin:16px 0}.comment-actions,.comment-pagination{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.comment-pagination{justify-content:center;margin:25px 0}.comments-empty{padding:24px;background:#f3f6ef;border-radius:15px;color:#617266}@media(max-width:640px){.discussion{margin:32px 0;padding:18px}.latest-comments-header{flex-direction:column;align-items:start}.latest-comments{margin-block:40px}.comment-rail-card{padding:18px}.comment-tabs a{padding:8px 12px}}
.product-rating{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0;color:#596755;font-size:12px;line-height:1.9;text-decoration:none}.rating-stars{position:relative;display:inline-block;direction:ltr;unicode-bidi:isolate;white-space:nowrap;font-size:20px;letter-spacing:1px;line-height:1.2;color:#cbd0c9}.rating-stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;color:#b8872b}.demo-review-label{display:inline-block;padding:2px 7px;border:1px solid #d9c49e;border-radius:6px;font-size:10px;color:#886528;background:#fff9ed}.comment-rating{display:flex;gap:10px;align-items:center;font-size:12px;margin:10px 0}.comment-rating>span:first-child{font-size:20px;color:#b8872b;direction:ltr;unicode-bidi:isolate}.rating-input{border:0;padding:0;margin:12px 0}.rating-input legend{font-weight:700;font-size:14px;margin-bottom:10px}.rating-input>div{display:flex;gap:10px;flex-wrap:wrap}.rating-input label{display:flex;gap:6px;align-items:center;border:1px solid #d8d7ca;border-radius:9px;padding:9px 12px;cursor:pointer;color:#886528}.rating-input label:has(input:checked){border-color:#b8872b;background:#fff4db;box-shadow:0 0 0 1px #b8872b}.question-answer{border-inline-start:3px solid #afc5b5;background:#f4f7f1;padding:14px;border-radius:8px;margin-top:14px}.question-answer time{font-size:11px;color:#6c7c6d}[data-product-panel][hidden]{display:none!important}.product-detail-section-nav [aria-selected=true]{color:#143d2e;border-color:#b78c43;background:#f6efe1}.product-detail-section-nav{flex-wrap:wrap}.question-reply-form{display:grid;gap:10px;margin-top:16px}.public-comment strong,.comment-moderation strong,.comment-rail-card strong{min-width:0;max-width:100%;overflow-wrap:anywhere}@media(max-width:640px){.rating-input label{padding:8px 10px}.rating-input>div{gap:6px}.product-detail-section-nav a{font-size:12px}}

/* Public reviews: shared compact typography for the carousel and discussions. */
.latest-comments {
  margin-block: 48px; padding: 24px; border: 1px solid #e1e8f0;
  border-radius: 20px; background: #f1f5f9; min-width: 0;
}
.latest-comments-header { align-items: center; gap: 24px; margin-bottom: 18px; }
.latest-comments-copy { min-width: 0; }
.latest-comments-header .eyebrow { font-size: 10px; color: #6b7e94; margin: 0 0 5px; }
.latest-comments h2 { font-size: 23px; line-height: 1.6; letter-spacing: 0; color: var(--ink); }
.latest-comments-header .latest-comments-intro { font-size: 12px; line-height: 1.8; color: #65758a; margin-top: 5px; }
.comment-rail-controls { gap: 4px; padding: 3px; border: 1px solid #dfe7f0; border-radius: 13px; background: #ffffffa6; }
.comment-rail-controls button {
  display: grid; place-items: center; width: 44px; height: 44px; padding: 0;
  border: 0; border-radius: 9px; color: #46617f; background: transparent;
}
.comment-rail-controls button:hover { color: var(--blue); background: #e9f1fc; }
.comment-rail-controls button .px-icon { width: 18px; height: 18px; }
.comment-rail-controls [data-rail-previous] .px-icon { transform: rotate(180deg); }
html[dir=rtl] .comment-rail-controls [data-rail-previous] .px-icon { transform: none; }
html[dir=rtl] .comment-rail-controls [data-rail-next] .px-icon { transform: rotate(180deg); }
.comment-play-icon { width: 12px; height: 14px; border-inline: 3px solid currentColor; }
[aria-pressed=true] .comment-play-icon { width: 0; height: 0; border: 0; border-block: 7px solid transparent; border-left: 11px solid currentColor; }
.comment-rail { gap: 14px; padding: 4px 3px 12px; scrollbar-width: thin; scrollbar-color: #b8c9dd transparent; align-items: stretch; }
.comment-rail::-webkit-scrollbar { height: 4px; }
.comment-rail::-webkit-scrollbar-thumb { background: #b8c9dd; border-radius: 8px; }
.comment-rail-card {
  flex: 0 0 calc((100% - 28px) / 3); padding: 18px; border: 1px solid #e2e8f0;
  border-radius: 15px; box-shadow: 0 3px 10px #14253b04; gap: 0; color: var(--ink);
}
.comment-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 28px; }
.comment-card-rating { display: inline-flex; align-items: center; gap: 4px; direction: ltr; unicode-bidi: isolate; font-size: 11px; color: #77869a; }
.comment-card-rating > span:first-child { color: #b58228; font-size: 17px; line-height: 1; }
.comment-card-rating b { color: #243c58; font-size: 12px; font-weight: 700; }
.comment-card-symbol { display: flex; align-items: center; color: #8a9bb0; }
.comment-card-symbol .px-icon { width: 19px; height: 19px; }
.comment-card-meta .demo-review-label { width: auto; max-width: 100%; font-size: 9px; padding: 2px 7px; line-height: 1.8; background: #fff9ef; border-color: #ecdabc; border-radius: 6px; }
.comment-rail-card > .comment-card-text {
  font-size: 13px; line-height: 1.9; margin: 12px 0 16px; min-height: 7.6em;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden;
  color: #3c4f66;
}
.comment-rail-card .comment-card-author { display: flex; align-items: center; justify-content: flex-start; gap: 9px; margin: 0; }
.comment-avatar { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background: #eef3f9; color: #7a8fa8; }
.comment-avatar .px-icon { width: 17px; height: 17px; }
.comment-card-author > div { min-width: 0; }
.comment-card-author strong { display: block; font-size: 11px; line-height: 1.7; }
.comment-card-author time { display: block; font-size: 10px; line-height: 1.6; color: #8290a2; }
.comment-rail-card .comment-card-target { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; border-top: 1px solid #edf1f6; margin-top: 14px; padding-top: 9px; font-size: 11px; line-height: 1.7; color: #356494; text-decoration: none; }
.comment-card-target > span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; min-width: 0; }
.comment-card-target > .px-icon { width: 15px; height: 15px; }
html[dir=rtl] .comment-card-target > .px-icon { transform: rotate(180deg); }
.comment-card-target:hover { color: var(--blue); }
.latest-comments .comments-empty { font-size: 13px; background: #fff; border: 1px dashed #d5dfeb; padding: 20px; margin: 0; }
.discussion { margin: 32px auto; padding: 24px; border-color: #e2e8f0; border-radius: 16px; }
.discussion h2 { font-size: 20px; line-height: 1.6; }
.discussion .comments-note { font-size: 12px; color: #768397; line-height: 1.9; }
.discussion .public-comment { padding: 20px 0; border-color: #edf1f6; }
.public-comment header { align-items: center; gap: 8px 16px; }
.public-comment header strong { font-size: 12px; }
.public-comment time { font-size: 10px; color: #8190a2; }
.discussion .comment-body { font-size: 13px; line-height: 1.95; margin: 10px 0; color: #3c4f66; }
.public-comment > .demo-review-label { margin-top: 8px; font-size: 9px; }
.discussion .comment-rating { font-size: 11px; gap: 8px; margin: 8px 0; }
.discussion .comment-rating > span:first-child { font-size: 15px; letter-spacing: 1px; }
.discussion .question-answer { padding: 12px 14px; border-inline-start-width: 2px; background: #f4f7fb; border-color: #b5c9df; }
.question-answer > strong { font-size: 12px; }
.discussion .comments-form { padding: 18px; background: #f7f9fc; border: 1px solid #e5ebf3; border-radius: 12px; gap: 10px; }
.comments-form > label, .comments-form .rating-input legend { font-size: 12px; }
.discussion .comments-form textarea { min-height: 110px; font-size: 14px; background: #fff; }
.discussion .rating-input { margin: 0 0 4px; }
.discussion .rating-input label { font-size: 12px; min-height: 44px; padding: 7px 10px; background: #fff; }
.discussion .comments-form > button { min-height: 44px; font-size: 12px; border-radius: 9px; }
.discussion > .px-btn-light { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; margin-top: 16px; }
@media (min-width: 641px) and (max-width: 1024px) {
  .comment-rail-card { flex-basis: calc((100% - 14px) / 2); }
}
@media (max-width: 640px) {
  .latest-comments { margin-block: 28px; padding: 16px 12px 12px; border-radius: 16px; }
  .latest-comments-header { flex-direction: row; align-items: flex-start; flex-wrap: wrap; gap: 10px; margin-bottom: 12px; }
  .latest-comments-copy { flex: 1 1 180px; }
  .latest-comments-header .eyebrow { font-size: 9px; margin-bottom: 4px; }
  .latest-comments h2 { font-size: 18px; line-height: 1.65; }
  .latest-comments-header .latest-comments-intro { display: none; }
  .comment-rail-controls { margin-inline-start: auto; gap: 0; padding: 0; border: 0; background: transparent; }
  .comment-rail-controls button { width: 44px; height: 44px; }
  .comment-rail { gap: 10px; padding: 3px 2px 10px; }
  .comment-rail-card { flex-basis: calc(100% - 24px); padding: 14px; border-radius: 12px; }
  .comment-rail-card > .comment-card-text { margin: 10px 0 14px; font-size: 13px; }
  .comment-card-meta { min-height: 24px; }
  .comment-rail-card .comment-card-target { margin-top: 12px; }
  .discussion { margin-block: 20px; padding: 16px; border-radius: 12px; }
  .discussion h2 { font-size: 18px; }
  .discussion .public-comment { padding-block: 16px; }
  .discussion .comments-form { padding: 12px; margin-top: 18px; }
  .discussion .rating-input > div { gap: 4px; }
  .discussion .rating-input label { padding-inline: 7px; font-size: 11px; }
}
