/* Review Modal */
.cf-review-modal{position:fixed;inset:0;z-index:9998;display:none;}
.cf-review-modal.is-open{display:block;}
.cf-review-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35);backdrop-filter:saturate(120%) blur(2px);}
.cf-review-dialog{
  position:relative;margin:6vh auto 0;max-width:560px;background:#fff;border-radius:16px;
  box-shadow:0 20px 60px rgba(0,0,0,.25);padding:16px 16px 18px;overflow:hidden;
}
.cf-review-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:0;border-radius:999px;background:#f3f4f6;cursor:pointer;font-size:20px;line-height:32px;}
.cf-review-header{text-align:center;margin-bottom:8px;}
.cf-review-title{margin:6px 0 4px;font-size:22px;}
.cf-review-sub{margin:0;color:#5f6368;font-size:14px;}

.cf-review-form{display:grid;gap:10px;}
.cf-review-form label span{display:block;font-size:12px;color:#5f6368;margin-bottom:4px;}
.cf-review-form input[type="text"],
.cf-review-form textarea{
  width:100%;padding:10px 12px;border:1px solid #dfe3e8;border-radius:10px;font-size:14px;background:#fff;
}
.cf-stars-picker{display:flex;flex-direction:row-reverse;gap:4px;justify-content:center;margin:6px 0;}
.cf-stars-picker input{display:none;}
.cf-stars-picker label{font-size:28px;color:#cfd4da;cursor:pointer;user-select:none;line-height:1;}
.cf-stars-picker input:checked ~ label,
.cf-stars-picker label:hover,
.cf-stars-picker label:hover ~ label{color:#f59e0b;}

.cf-review-btn{background:#111;color:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;}
.cf-review-btn:disabled{opacity:.6;cursor:not-allowed;}
.cf-review-error{min-height:18px;color:#b00020;font-size:13px;text-align:center;}

.cf-review-foot{margin:6px 10px 4px;color:#9aa0a6;font-size:12px;text-align:center;}

/* List styling reuses your existing classes if present */
.cf-st-reviewlist{list-style:none;margin:0;padding:0;display:grid;gap:12px;}
.cf-review{border:1px solid #eceff3;border-radius:10px;padding:10px;background:#fff;}
.cf-review-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;}
.cf-stars{display:inline-flex;gap:2px;line-height:1;}
.cf-star{font-size:16px;color:#cfd4da;}
.cf-star--filled{color:#f59e0b;}
