/* Figma PDP reviews: shared geometry with real Woo content and native form controls. */
.tempo-product-reviews { --cream-400:#e3c4a8; --sage-50:#edf1ed; position:relative; overflow:hidden; padding:100px 0; background:var(--cream-100); color:var(--brown-600); scroll-margin-top:96px; }
.tempo-product-reviews > .container { position:relative; z-index:1; }
.tempo-reviews-botanical { position:absolute; left:-6.25%; top:67.4%; pointer-events:none; transform:scaleX(-1); }
.tempo-reviews-botanical img { display:block; }
.tempo-product-reviews .pdp-review-overview { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; padding-bottom:24px; margin-bottom:32px; border-color:var(--cream-200); }
.tempo-product-reviews .pdp-review-score { min-width:0; gap:32px; }
.tempo-product-reviews .pdp-review-score strong { font:400 64px/1.1 var(--serif); color:var(--terracotta-600); }
.tempo-product-reviews .pdp-review-score p { margin:0 0 16px; font-size:16px; font-weight:500; }
.tempo-product-reviews .pdp-rating-bars { gap:8px; padding:0; border:0; }
.tempo-product-reviews .pdp-rating-bar { grid-template-columns:8px minmax(0,1fr) 40px; gap:16px; min-height:21px; font-size:14px; }
.tempo-product-reviews .pdp-rating-bar > span:first-child { font-family:var(--serif); }
.tempo-product-reviews .pdp-rating-bar > span:last-child { color:var(--terracotta-600); padding-inline:8px; }
.tempo-product-reviews meter { height:6px; display:block; background:var(--cream-200); border-radius:200px; overflow:hidden; }
.tempo-product-reviews meter::-webkit-meter-bar { height:6px; border:1px solid var(--cream-400); background:var(--cream-200); border-radius:200px; }
.tempo-product-reviews meter::-webkit-meter-optimum-value { background:var(--terracotta-600); border-radius:200px; }
.tempo-product-reviews meter::-moz-meter-bar { background:var(--terracotta-600); border-radius:200px; }
.tempo-product-reviews .commentlist { list-style:none; padding:0; margin:0; display:grid; gap:16px; }
.tempo-product-reviews .pdp-review { padding:16px; border:1px solid var(--cream-200); border-radius:12px; background:var(--cream-50); min-width:0; overflow-wrap:anywhere; }
.tempo-product-reviews .pdp-review-header { gap:16px; margin:0 0 16px; }
.tempo-review-meta { min-width:0; flex:1; }
.tempo-product-reviews .tempo-review-meta h3 { font:var(--title-h6); color:var(--brown-800); margin:0 0 4px; }
.tempo-product-reviews .tempo-review-meta p { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:14px; line-height:1.5; margin:0; }
.tempo-product-reviews .verified { color:var(--sage-600); }
.tempo-product-reviews .description { font-size:16px; line-height:1.5; color:var(--brown-900); }
.tempo-product-reviews .description p { margin:0 0 12px; }
.tempo-product-reviews .description p:last-child { margin:0; }
.tempo-product-reviews .description a { text-decoration:underline; }
.tempo-product-reviews .children { list-style:none; padding:16px 0 0 24px; display:grid; gap:16px; }
.tempo-review-pagination { margin-top:32px; align-items:center; flex-wrap:wrap; }
.tempo-review-pagination .page-numbers { min-width:32px; height:33px; display:grid; place-items:center; padding:6px; border:1px solid var(--cream-400); border-radius:6px; background:var(--cream-200); color:var(--brown-600); font-size:14px; line-height:1; }
.tempo-review-pagination .page-numbers.current { background:var(--sage-50); border-color:var(--sage-600); color:var(--sage-600); }
.tempo-review-pagination a:hover { background:var(--cream-50); }
.tempo-review-pagination .prev,.tempo-review-pagination .next,.tempo-review-pagination .dots { border-color:transparent; background:transparent; }
.tempo-review-pagination img { max-width:none; }
.tempo-reviews-empty { max-width:720px; padding:48px 32px; margin:auto; text-align:center; border:1px solid var(--cream-200); border-radius:12px; background:var(--cream-50); }
.tempo-reviews-empty h2 { font:var(--title-h3); color:var(--brown-800); margin:24px 0 16px; }
.tempo-reviews-empty p { max-width:480px; margin:0 auto 24px; font-size:16px; line-height:1.6; }
.tempo-reviews-empty .button { display:inline-flex; }
.tempo-product-reviews #review_form_wrapper { max-width:840px; margin:48px auto 0; padding:32px; background:var(--cream-50); border:1px solid var(--cream-200); border-radius:12px; scroll-margin-top:96px; }
.tempo-product-reviews #reply-title { font:var(--title-h4); color:var(--brown-800); margin:0 0 12px; }
.tempo-product-reviews #cancel-comment-reply-link { font:14px/1.5 var(--sans); text-decoration:underline; margin-left:16px; }
.tempo-product-reviews .comment-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; max-width:none; margin:0; }
.tempo-product-reviews .comment-form > * { min-width:0; grid-column:1 / -1; }
.tempo-product-reviews .comment-form p { margin:0; }
.tempo-product-reviews .comment-form .comment-form-author,.tempo-product-reviews .comment-form .comment-form-email { grid-column:auto; }
.tempo-product-reviews .comment-form label { font-size:14px; line-height:1.5; color:var(--brown-800); }
.tempo-product-reviews .comment-form input:not([type=submit]):not([type=checkbox]),.tempo-product-reviews .comment-form textarea,.tempo-product-reviews .comment-form select { box-sizing:border-box; min-width:0; width:100%; border:1px solid var(--cream-400); border-radius:8px; background:#fff; color:var(--brown-900); padding:12px 16px; font:16px/1.5 var(--sans); }
.tempo-product-reviews .comment-form textarea { resize:vertical; min-height:144px; }
.tempo-product-reviews .comment-form input:focus-visible,.tempo-product-reviews .comment-form textarea:focus-visible,.tempo-product-reviews .comment-form select:focus-visible,.tempo-product-reviews a:focus-visible { outline:2px solid var(--sage-600); outline-offset:3px; }
.tempo-product-reviews .comment-notes { font-size:14px; line-height:1.5; color:var(--brown-600); }
.tempo-product-reviews .tempo-review-status { margin:0 0 24px; padding:16px; border-radius:8px; background:var(--sage-50); color:var(--sage-700); }
.tempo-product-reviews .comment-form .comment-form-cookies-consent { display:flex; gap:10px; align-items:flex-start; }
.tempo-product-reviews input[type=checkbox] { flex:none; width:18px; height:18px; margin-top:2px; accent-color:var(--sage-600); }
.tempo-product-reviews .form-submit { justify-items:start; }
.tempo-product-reviews input[type=submit] { width:auto; min-height:48px; padding:12px 24px; border:0; border-radius:100px; background:var(--terracotta-600); color:var(--cream-50); font:600 16px/1.5 var(--sans); cursor:pointer; transition:background .2s ease; }
.tempo-product-reviews input[type=submit]:hover { background:var(--brown-800); }
.tempo-product-reviews .woocommerce-verification-required,.tempo-product-reviews .must-log-in,.tempo-reviews-closed { margin:32px 0 0; font-size:16px; text-align:center; }
.tempo-product-reviews .must-log-in a { text-decoration:underline; }
/* Woo owns selection/keyboard behavior; these are the original 20px Figma assets in 44px hit areas. */
.tempo-product-reviews #respond p.stars { margin:8px 0 0; display:block; }
.tempo-product-reviews #respond p.stars > span { display:flex; gap:4px; }
.tempo-product-reviews #respond p.stars a { position:relative; display:block; flex:0 0 44px; width:44px; height:44px; margin:0; font-size:0; line-height:0; text-decoration:none; color:transparent; border-radius:8px; border:1px solid var(--cream-200); background:var(--cream-100); }
.tempo-product-reviews #respond p.stars a::before { content:""; display:block; position:absolute; inset:11px; width:20px; height:20px; background:url('reviews/star-empty.svg') center no-repeat; }
.tempo-product-reviews #respond p.stars.selected a::before,.tempo-product-reviews #respond p.stars:hover a::before { background-image:url('reviews/star.svg'); }
.tempo-product-reviews #respond p.stars.selected a.active ~ a::before,.tempo-product-reviews #respond p.stars a:hover ~ a::before { background-image:url('reviews/star-empty.svg'); }
.tempo-product-reviews #respond p.stars.selected:hover a::before { background-image:url('reviews/star.svg'); }
.tempo-product-reviews #respond p.stars.selected:hover a:hover ~ a::before { background-image:url('reviews/star-empty.svg'); }
.tempo-product-reviews #respond p.stars:has(a:focus-visible) a::before { background-image:url('reviews/star.svg'); }
.tempo-product-reviews #respond p.stars:has(a:focus-visible) a.active ~ a::before { background-image:url('reviews/star-empty.svg'); }
.tempo-product-reviews #respond p.stars a[aria-checked=true] { border-color:var(--sage-600); }
@media (max-width:760px) {
  .tempo-product-reviews > .container { width:calc(100% - 40px); }
  .tempo-reviews-botanical { top:52%; }
  .tempo-product-reviews .pdp-review-overview { grid-template-columns:minmax(0,1fr); }
  .tempo-product-reviews .pdp-rating-bar { grid-template-columns:8px minmax(0,1fr); }
  .tempo-product-reviews .pdp-rating-bar > span:last-child { display:none; }
  .tempo-product-reviews .pdp-review-header { gap:12px; }
  .tempo-product-reviews #review_form_wrapper { padding:24px 20px; }
  .tempo-product-reviews .comment-form { grid-template-columns:minmax(0,1fr); gap:20px; }
  .tempo-product-reviews .form-submit,.tempo-product-reviews input[type=submit] { width:100%; }
  .tempo-reviews-empty { padding:32px 20px; }
  .tempo-reviews-empty h2 { font:var(--title-h4); }
}
@media (max-width:360px) {
  .tempo-product-reviews .pdp-review-header { flex-wrap:wrap; }
  .tempo-product-reviews .tempo-review-meta { flex-basis:100%; }
  .tempo-product-reviews #respond p.stars > span { gap:0; }
  .tempo-product-reviews .pdp-review-score { gap:20px; }
  .tempo-product-reviews .pdp-review-score .tempo-stars { gap:5px; }
}
@media (prefers-reduced-motion:reduce) { .tempo-product-reviews input[type=submit] { transition:none; } }
