:root{--bottom-nav-height:64px}body.review-modal-open{width:100%;position:fixed;overflow:hidden}.review-section{max-width:1200px;margin:0 auto;padding:24px}.review-section-title{color:var(--review-title-color);letter-spacing:-.02em;margin-bottom:24px;font-size:24px;font-weight:700;line-height:1.2}.review-layout{align-items:flex-start;gap:32px;display:flex}.review-layout-sidebar{flex-shrink:0;width:300px;position:sticky;top:24px}.review-content{flex:1;min-width:0}.review-stats-card{background:var(--review-bg);border:1px solid var(--review-border);transition:border-color var(--review-transition), box-shadow var(--review-transition);border-radius:12px;padding:24px}.review-stats-card:hover{border-color:var(--review-border-hover);box-shadow:var(--review-shadow-hover)}.review-stats-header{flex-direction:column;align-items:center;display:flex}.review-stats-big-number{color:var(--review-title-color);letter-spacing:-.03em;font-size:48px;font-weight:800;line-height:1}.review-stars-row{justify-content:center;gap:2px;margin-top:4px;display:flex}.review-stats-label{color:var(--review-meta-color);margin-top:4px;font-size:14px}.review-stats-bars{flex-direction:column;gap:8px;margin-top:20px;display:flex}.review-stats-bar-row{cursor:pointer;transition:background var(--review-transition);border-radius:4px;align-items:center;gap:10px;padding:4px 0;display:flex}.review-stats-bar-row:hover{background:var(--stats-bar-bg)}.review-stats-bar-row.active{background:var(--review-highlight-bg)}.review-stats-bar-label{color:var(--review-body-color);text-align:right;min-width:24px;font-size:14px;font-weight:600}.review-stats-bar-track{height:var(--stats-bar-height);background:var(--stats-bar-bg);border-radius:var(--stats-bar-radius);flex:1;overflow:hidden}.review-stats-bar-fill{background:var(--stats-bar-fill);border-radius:var(--stats-bar-radius);will-change:width;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.review-stats-bar-count{color:var(--review-meta-color);font-variant-numeric:tabular-nums;min-width:32px;font-size:13px}.review-stats-footer{border-top:1px solid var(--review-border);flex-direction:column;gap:8px;margin-top:20px;padding-top:16px;display:flex}.review-stats-footer-item{color:var(--review-body-color);align-items:center;gap:8px;font-size:13px;display:flex}.review-stats-fit-title{color:var(--review-meta-color);text-transform:uppercase;letter-spacing:.04em;margin-top:16px;margin-bottom:8px;font-size:13px;font-weight:600}.review-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.review-filter-count{color:var(--review-title-color);font-size:16px;font-weight:600}.review-filter-sort{appearance:none;background-color:var(--form-input-bg);border:1px solid var(--form-input-border);color:var(--review-body-color);cursor:pointer;transition:border-color var(--review-transition), box-shadow var(--review-transition);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;padding:8px 32px 8px 12px;font-family:inherit;font-size:14px;line-height:1.4}.review-filter-sort:focus{border-color:var(--form-input-focus);outline:none;box-shadow:0 0 0 2px #f59e0b33}.review-filter-pills{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.review-filter-pills::-webkit-scrollbar{display:none}.review-filter-pill{border-radius:var(--filter-radius);background:var(--filter-bg);color:var(--filter-text);cursor:pointer;transition:all var(--review-transition);white-space:nowrap;border:none;outline:none;flex-shrink:0;padding:6px 16px;font-family:inherit;font-size:14px;font-weight:500;line-height:1.4}.review-filter-pill:hover{opacity:.8}.review-filter-pill:active{transform:scale(.97)}.review-filter-pill:focus-visible{box-shadow:0 0 0 2px #f59e0b4d}.review-filter-pill.active{background:var(--filter-bg-active);color:var(--filter-text-active);opacity:1}.review-filter-pill-count{opacity:.7;font-variant-numeric:tabular-nums;margin-left:4px;font-size:12px}.review-card{background:var(--review-bg);border:1px solid var(--review-border);transition:all var(--review-transition);border-radius:12px;padding:20px;animation:.3s reviewFadeIn}.review-card:hover{border-color:var(--review-border-hover);box-shadow:var(--review-shadow-hover);transform:translateY(-2px)}.review-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.review-card-user{align-items:center;gap:12px;min-width:0;display:flex}.review-card-avatar{background:var(--stats-bar-bg);width:40px;height:40px;color:var(--review-body-color);border:2px solid var(--review-border);transition:border-color var(--review-transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:flex;overflow:hidden}.review-card:hover .review-card-avatar{border-color:var(--review-border-hover)}.review-card-avatar img{object-fit:cover;width:100%;height:100%}.review-card-user-info{flex-direction:column;min-width:0;display:flex}.review-card-name{color:var(--review-title-color);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.review-card-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.review-card-date{color:var(--review-meta-color);font-size:13px}.review-verified-badge{background:var(--verified-bg);color:var(--verified-text);border:1px solid var(--verified-border);white-space:nowrap;border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.review-verified-badge svg{flex-shrink:0;width:11px;height:11px}.review-card-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.review-card-status{white-space:nowrap;letter-spacing:.01em;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.review-card-status.pending{background:var(--status-pending-bg);color:var(--status-pending-text)}.review-card-status.approved{background:var(--status-approved-bg);color:var(--status-approved-text)}.review-card-status.rejected{background:var(--status-rejected-bg);color:var(--status-rejected-text)}.review-card-ratings-breakdown{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.review-card-sub-rating{color:var(--review-meta-color);align-items:center;gap:4px;font-size:12px;display:flex}.review-card-sub-rating span{color:var(--review-body-color);font-weight:500}.review-card-title{color:var(--review-title-color);text-overflow:ellipsis;white-space:nowrap;margin-top:16px;font-size:16px;font-weight:600;line-height:1.4;overflow:hidden}.review-card-comment{color:var(--review-body-color);white-space:pre-line;word-break:break-word;margin-top:6px;font-size:14px;line-height:1.7}.review-card-comment.collapsed{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.review-card-read-more{color:var(--form-input-focus);cursor:pointer;transition:opacity var(--review-transition);background:0 0;border:none;outline:none;margin-top:4px;padding:0;font-family:inherit;font-size:14px;font-weight:600}.review-card-read-more:hover{opacity:.8;text-decoration:underline}.review-card-read-more:active{opacity:.6}.review-card-read-more:focus-visible{outline:2px solid var(--form-input-focus);outline-offset:2px;border-radius:2px}.review-card-images{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.review-card-image{object-fit:cover;border:1px solid var(--review-border);cursor:pointer;width:72px;height:72px;transition:all var(--review-transition);border-radius:8px}.review-card-image:hover{border-color:var(--review-border-hover);box-shadow:var(--review-shadow-hover);transform:scale(1.05)}.review-card-image:active{transform:scale(.98)}.review-card-fit-info{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.review-card-fit-tag{background:var(--stats-bar-bg);color:var(--review-body-color);border-radius:12px;padding:3px 10px;font-size:12px;font-weight:500}.review-card-footer{border-top:1px solid var(--review-border);justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;display:flex}.review-card-actions{align-items:center;gap:8px;display:flex}.review-helpful-btn{border:1px solid var(--helpful-border);background:var(--helpful-bg);color:var(--helpful-text);cursor:pointer;transition:all var(--review-transition);border-radius:8px;outline:none;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;display:inline-flex}.review-helpful-btn:hover{border-color:var(--helpful-border-active);background:var(--helpful-bg-active)}.review-helpful-btn:active{transform:scale(.96)}.review-helpful-btn:focus-visible{box-shadow:0 0 0 2px #f59e0b33}.review-helpful-btn.active{background:var(--helpful-bg-active);color:var(--helpful-text-active);border-color:var(--helpful-border-active)}.review-helpful-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.review-helpful-btn .spinner{border:2px solid var(--helpful-border);border-top-color:var(--helpful-text);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.6s linear infinite spin}.review-helpful-btn svg{flex-shrink:0;width:14px;height:14px}.review-delete-btn{color:var(--form-input-error);cursor:pointer;transition:all var(--review-transition);background:0 0;border:none;border-radius:8px;outline:none;padding:6px 10px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.4}.review-delete-btn:hover{background:var(--status-rejected-bg)}.review-delete-btn:active{transform:scale(.96)}.review-delete-btn:focus-visible{box-shadow:0 0 0 2px var(--form-input-error)}.review-card-reply{border-left:3px solid var(--stats-bar-fill);background:var(--form-input-bg);transition:background var(--review-transition);border-radius:0 8px 8px 0;margin-top:16px;margin-left:20px;padding:16px}.review-card-reply-header{color:var(--review-meta-color);margin-bottom:8px;font-size:13px;line-height:1.4}.review-card-reply-header strong{color:var(--review-title-color)}.review-card-reply-message{color:var(--review-body-color);white-space:pre-line;word-break:break-word;font-size:14px;line-height:1.6}.star-rating{align-items:center;gap:2px;display:inline-flex}.star-rating-star{transition:all var(--star-transition);color:var(--star-empty);align-items:center;display:flex}.star-rating-star.filled,.star-rating-star.half{color:var(--star-filled)}.star-rating.interactive .star-rating-star{cursor:pointer}.star-rating.interactive .star-rating-star:hover{color:var(--star-hover);transform:scale(1.15)}.star-rating.interactive .star-rating-star:active{transform:scale(.9)}.star-rating-value{color:var(--review-title-color);font-variant-numeric:tabular-nums;margin-left:6px;font-size:14px;font-weight:600}.star-rating-sm .star-rating-star svg{width:14px;height:14px}.star-rating-md .star-rating-star svg{width:18px;height:18px}.star-rating-lg .star-rating-star svg{width:24px;height:24px}.review-skeleton-shimmer{background:linear-gradient(90deg, var(--skeleton-base) 25%, var(--skeleton-shine) 50%, var(--skeleton-base) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite reviewShimmer}.review-skeleton-avatar{border-radius:50%;width:40px;height:40px}.review-skeleton-line{width:100%;height:14px}.review-skeleton-line-short{width:60%}.review-skeleton-stars{gap:4px;display:flex}.review-skeleton-star{border-radius:2px;width:18px;height:18px}.review-skeleton-bar{height:var(--stats-bar-height);border-radius:var(--stats-bar-radius)}.review-stats-skeleton-number{border-radius:8px;width:80px;height:48px;margin:0 auto}.review-stats-skeleton-stars{justify-content:center;gap:4px;margin-top:8px;display:flex}.review-stats-skeleton-label{border-radius:4px;width:140px;height:14px;margin:8px auto}.review-stats-skeleton-bar-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.review-stats-skeleton-bar-label{border-radius:4px;width:16px;height:14px}.review-stats-skeleton-bar-track{flex:1}.review-stats-skeleton-bar-count{border-radius:4px;width:32px;height:14px}.review-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.review-empty-icon{color:var(--empty-icon-color);opacity:.7;margin-bottom:16px}.review-empty-title{color:var(--empty-title-color);margin-bottom:8px;font-size:20px;font-weight:600;line-height:1.3}.review-empty-desc{color:var(--empty-desc-color);max-width:360px;margin-bottom:24px;font-size:15px;line-height:1.5}.review-empty-btn{background:var(--filter-bg-active);color:var(--filter-text-active);cursor:pointer;transition:all var(--review-transition);border:none;border-radius:10px;outline:none;align-items:center;gap:8px;padding:12px 24px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.review-empty-btn:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.review-empty-btn:active{transform:translateY(0)scale(.97)}.review-empty-btn:focus-visible{box-shadow:0 0 0 3px #f59e0b4d}.review-error-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.review-error-icon{color:var(--form-input-error);opacity:.8;margin-bottom:16px}.review-error-title{color:var(--form-input-error);margin-bottom:8px;font-size:20px;font-weight:600;line-height:1.3}.review-error-desc{color:var(--review-meta-color);max-width:360px;margin-bottom:24px;font-size:15px;line-height:1.5}.review-error-btn{border:2px solid var(--form-input-error);color:var(--form-input-error);cursor:pointer;transition:all var(--review-transition);background:0 0;border-radius:10px;outline:none;align-items:center;gap:8px;padding:12px 24px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.review-error-btn:hover{background:var(--form-input-error);color:#fff}.review-error-btn:active{transform:scale(.97)}.review-error-btn:focus-visible{box-shadow:0 0 0 3px #dc262633}.review-load-more{justify-content:center;margin-top:24px;display:flex}.review-load-more-btn{border:1px solid var(--review-border);color:var(--review-body-color);cursor:pointer;transition:all var(--review-transition);background:#fff;border-radius:10px;outline:none;align-items:center;gap:8px;padding:12px 32px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.review-load-more-btn:hover{border-color:var(--filter-bg-active);color:var(--filter-bg-active);box-shadow:var(--review-shadow-hover);transform:translateY(-1px)}.review-load-more-btn:active{transform:translateY(0)scale(.97)}.review-load-more-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.review-load-more-btn:focus-visible{box-shadow:0 0 0 2px #f59e0b33}.review-load-more-btn .spinner{border:2px solid var(--review-border);border-top-color:var(--filter-bg-active);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.6s linear infinite spin}.review-write-btn-float,.review-write-btn-inline{display:none}.review-write-btn{background:var(--filter-bg-active);color:var(--filter-text-active);cursor:pointer;transition:all var(--review-transition);border:none;border-radius:10px;outline:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:20px;padding:12px 24px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.review-write-btn:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.review-write-btn:active{transform:translateY(0)scale(.97)}.review-write-btn:focus-visible{box-shadow:0 0 0 3px #f59e0b4d}.review-modal-overlay{background:var(--modal-overlay);z-index:99999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:16px;animation:.2s reviewFadeIn;display:flex;position:fixed;inset:0}.review-modal{background:var(--modal-bg);border-radius:var(--modal-radius);width:100%;max-width:560px;max-height:calc(90vh - var(--bottom-nav-height));max-height:calc(90dvh - var(--bottom-nav-height));scrollbar-width:thin;scrollbar-color:var(--review-border) transparent;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) reviewSlideUp;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000026}.review-modal::-webkit-scrollbar{width:6px}.review-modal::-webkit-scrollbar-track{background:0 0}.review-modal::-webkit-scrollbar-thumb{background:var(--review-border);border-radius:3px}.review-modal-header{justify-content:space-between;align-items:center;padding:24px 24px 0;display:flex}.review-modal-title{color:var(--review-title-color);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.2}.review-modal-close{background:var(--stats-bar-bg);cursor:pointer;width:36px;height:36px;color:var(--review-body-color);transition:all var(--review-transition);border:none;border-radius:8px;outline:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.review-modal-close:hover{background:var(--review-border);color:var(--review-title-color)}.review-modal-close:active{transform:scale(.9)}.review-modal-close:focus-visible{box-shadow:0 0 0 2px #f59e0b33}.review-modal-body{flex:1;min-height:0;padding:24px;overflow-y:auto}.review-form-product{background:var(--form-input-bg);border:1px solid var(--review-border);border-radius:10px;align-items:center;gap:12px;margin-bottom:24px;padding:12px;display:flex}.review-form-product-img{object-fit:cover;background:var(--stats-bar-bg);border-radius:8px;flex-shrink:0;width:48px;height:48px}.review-form-product-name{color:var(--review-title-color);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.review-form-group{margin-bottom:20px}.review-form-label{color:var(--review-title-color);margin-bottom:8px;font-size:14px;font-weight:600;line-height:1.3;display:block}.review-form-label .required{color:var(--form-input-error);margin-left:2px}.review-form-error{color:var(--form-input-error);align-items:center;gap:4px;margin-top:6px;font-size:13px;line-height:1.4;display:flex}.review-form-input{border:1px solid var(--form-input-border);width:100%;color:var(--review-title-color);background:var(--form-input-bg);transition:all var(--review-transition);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.5}.review-form-input:focus{border-color:var(--form-input-focus);box-shadow:0 0 0 2px #f59e0b33}.review-form-input.error{border-color:var(--form-input-error);box-shadow:0 0 0 2px #dc26261a}.review-form-input::placeholder{color:var(--review-meta-color)}.review-form-textarea{border:1px solid var(--form-input-border);width:100%;color:var(--review-title-color);background:var(--form-input-bg);transition:all var(--review-transition);resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;min-height:100px;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.6}.review-form-textarea:focus{border-color:var(--form-input-focus);box-shadow:0 0 0 2px #f59e0b33}.review-form-textarea.error{border-color:var(--form-input-error);box-shadow:0 0 0 2px #dc26261a}.review-form-textarea::placeholder{color:var(--review-meta-color)}.review-form-char-count{color:var(--review-meta-color);text-align:right;font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px}.review-form-char-count.over{color:var(--form-input-error);font-weight:600}.review-form-rating-error{background:var(--status-rejected-bg);color:var(--form-input-error);border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;font-size:13px;line-height:1.4;display:flex}.review-form-sub-ratings{flex-wrap:wrap;gap:24px;margin-top:12px;display:flex}.review-form-sub-rating{flex:1;min-width:140px}.review-form-sub-rating-label{color:var(--review-meta-color);margin-bottom:6px;font-size:13px;line-height:1.3}.review-form-fit-select{border:1px solid var(--form-input-border);width:100%;color:var(--review-title-color);background:var(--form-input-bg);transition:all var(--review-transition);appearance:none;cursor:pointer;box-sizing:border-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.5}.review-form-fit-select:focus{border-color:var(--form-input-focus);box-shadow:0 0 0 2px #f59e0b33}.review-form-fit-select.error{border-color:var(--form-input-error);box-shadow:0 0 0 2px #dc26261a}.review-modal-footer{border-top:1px solid var(--review-border);background:var(--modal-bg);z-index:2;flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex;position:sticky;bottom:0}.review-form-cancel{border:1px solid var(--review-border);color:var(--review-body-color);cursor:pointer;transition:all var(--review-transition);background:#fff;border-radius:8px;outline:none;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4}.review-form-cancel:hover{background:var(--stats-bar-bg);border-color:var(--review-border-hover)}.review-form-cancel:active{transform:scale(.97)}.review-form-cancel:focus-visible{box-shadow:0 0 0 2px #f59e0b33}.review-form-submit{background:var(--filter-bg-active);color:var(--filter-text-active);cursor:pointer;transition:all var(--review-transition);border:none;border-radius:8px;outline:none;justify-content:center;align-items:center;gap:8px;min-width:140px;padding:10px 24px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.review-form-submit:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.review-form-submit:active{transform:translateY(0)scale(.97)}.review-form-submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.review-form-submit:focus-visible{box-shadow:0 0 0 3px #f59e0b4d}.review-form-submit .spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.6s linear infinite spin}.review-form-success{text-align:center;padding:40px 24px;animation:.3s reviewFadeIn}.review-form-success-icon{color:var(--status-approved-text);margin-bottom:16px}.review-form-success-title{color:var(--review-title-color);margin-bottom:8px;font-size:18px;font-weight:600;line-height:1.3}.review-form-success-desc{color:var(--review-body-color);font-size:14px;line-height:1.5}.review-form-api-error{background:var(--status-rejected-bg);color:var(--form-input-error);border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;line-height:1.5;animation:.2s reviewFadeIn}@keyframes reviewShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes reviewFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes reviewSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:1023px){.review-layout{flex-direction:column;gap:24px}.review-layout-sidebar{width:100%;position:static}.review-stats-card{padding:20px}}@media (max-width:767px){.review-section{padding:16px}.review-section-title{margin-bottom:20px;font-size:20px}.review-card{padding:16px}.review-card:hover{transform:none}.review-card-avatar{width:36px;height:36px;font-size:14px}.review-card-name{font-size:14px}.review-card-comment{font-size:13px;line-height:1.6}.review-card-image{width:60px;height:60px}.review-card-image:hover{transform:none}.review-card-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.review-card-ratings-breakdown{flex-direction:column;gap:6px}.review-card-footer{flex-direction:column;align-items:flex-start;gap:12px}.review-card-actions{width:100%}.review-helpful-btn{flex:1;justify-content:center}.review-stats-card{padding:16px}.review-stats-big-number{font-size:36px}.review-stats-bars{margin-top:16px}.review-filter-bar{flex-direction:column;align-items:flex-start;gap:10px}.review-filter-sort{width:100%}.review-form-sub-ratings{flex-direction:column;gap:16px}.review-form-sub-rating{min-width:100%}.review-write-btn-float{bottom:calc(20px + var(--bottom-nav-height));z-index:40;border-radius:50px;width:auto;margin-top:0;padding:14px 20px;display:flex;position:fixed;right:20px;box-shadow:0 4px 16px #00000026}.review-write-btn-float:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.review-modal{max-width:100%;max-height:calc(85vh - var(--bottom-nav-height));max-height:calc(85dvh - var(--bottom-nav-height));border-radius:16px 16px 0 0;flex-direction:column;align-self:flex-end;margin:0;display:flex}.review-modal-overlay{padding:0;padding-bottom:var(--bottom-nav-height);box-sizing:border-box;align-items:flex-end}.review-modal-header{padding:20px 20px 0}.review-modal-body{padding:20px}.review-modal-footer{padding:12px 20px 20px;padding-bottom:max(20px, env(safe-area-inset-bottom))}.review-form-product{gap:10px;padding:10px}.review-form-product-img{width:40px;height:40px}.review-form-product-name{font-size:13px}.review-empty-state{padding:40px 16px}.review-empty-title{font-size:18px}.review-empty-desc{font-size:14px}.review-error-state{padding:40px 16px}.review-error-title{font-size:18px}.review-load-more{margin-top:20px}.review-load-more-btn{justify-content:center;width:100%}.review-card-reply{margin-left:12px;padding:12px}}@media (min-width:768px){.review-write-btn-inline{display:inline-flex}.review-write-btn{width:auto;margin-top:20px}.review-filter-pills{flex-wrap:wrap}.review-skeleton-shimmer{will-change:background-position}}@media (min-width:1280px){.review-section{padding:32px}.review-layout{gap:40px}.review-layout-sidebar{width:320px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.review-skeleton-shimmer{opacity:.4;animation:none}.review-card,.review-modal,.review-modal-overlay,.review-form-success,.review-form-api-error{animation:none}}@media (forced-colors:active){.review-card,.review-filter-pill.active,.review-helpful-btn.active{border:2px solid buttontext}.star-rating-star.filled{forced-color-adjust:none}}.review-card:focus-visible,.review-stats-card:focus-visible,.review-filter-pill:focus-visible,.review-helpful-btn:focus-visible,.review-delete-btn:focus-visible,.review-load-more-btn:focus-visible,.review-write-btn:focus-visible,.review-modal-close:focus-visible,.review-form-cancel:focus-visible,.review-form-submit:focus-visible,.review-empty-btn:focus-visible,.review-error-btn:focus-visible{outline:2px solid var(--form-input-focus);outline-offset:2px}@media print{.review-filter-bar,.review-load-more,.review-write-btn,.review-write-btn-float,.review-write-btn-inline,.review-card-actions,.review-helpful-btn,.review-delete-btn,.review-card-read-more{display:none!important}.review-card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}.review-card:hover{box-shadow:none;transform:none}.review-card-comment.collapsed{-webkit-line-clamp:unset;display:block}.review-layout-sidebar{width:100%;position:static}.review-layout{flex-direction:column}}
