.cmr-sidebar-card{margin-top:0}
.cmr-rating-trigger{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:0;border:0;background:transparent;color:#111;cursor:pointer;text-align:center}
.cmr-rating-trigger:not(button){cursor:default}
.cmr-stars{position:relative;display:inline-block;font-size:27px;line-height:1;letter-spacing:2px;white-space:nowrap}
.cmr-stars-base{color:#d1d5db}
.cmr-stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;color:#f5a623;white-space:nowrap}
.cmr-rating-number{font-weight:800;font-size:14px}
.cmr-no-rating{font-size:13px;color:#555}
.cmr-sidebar-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.cmr-submission-notice{margin:12px 0 0;padding:9px;border-radius:10px;background:#edf7ed;color:#174d20;font-size:12.5px;line-height:1.4}
.cmr-modal[hidden]{display:none!important}
.cmr-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}
.cmr-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68)}
.cmr-modal-panel{position:relative;z-index:1;width:min(680px,100%);max-height:min(82vh,760px);overflow:auto;box-sizing:border-box;padding:26px;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35);outline:none}
.cmr-modal-panel h2{margin:0 44px 10px 0;font-size:24px;line-height:1.2;color:#111}
.cmr-modal-close{position:absolute;top:14px;right:14px}
.cmr-review-scroll{max-height:58vh;overflow-y:auto;padding-right:8px}
.cmr-review-item{padding:16px;border:1px solid #e0e0e0;border-radius:14px;background:#fff}
.cmr-review-item+.cmr-review-item{margin-top:16px}
.cmr-review-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.cmr-review-heading .cmr-stars{font-size:22px}
.cmr-review-item p{margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.55;color:#292929}
.cmr-review-form{display:flex;flex-direction:column;gap:16px;margin-top:18px}
.cmr-review-form label,.cmr-star-field legend{font-weight:700;font-size:14px;color:#111}
.cmr-review-form input[type="text"],.cmr-review-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px 12px;border:1px solid #b9bec6;border-radius:10px;background:#fff;color:#111;font:inherit}
.cmr-review-form textarea{resize:vertical;min-height:130px}
.cmr-name-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}
.cmr-star-field{margin:0;padding:0;border:0}
.cmr-star-input{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;margin-top:6px}
.cmr-star-input input{position:absolute;opacity:0;pointer-events:none}
.cmr-star-input label{padding:2px;color:#c7cbd1;font-size:32px;line-height:1;cursor:pointer}
.cmr-star-input input:checked~label,.cmr-star-input label:hover,.cmr-star-input label:hover~label{color:#f5a623}
.cmr-star-input input:focus-visible+label{outline:2px solid #002f55;outline-offset:2px;border-radius:5px}
.cmr-review-limit{display:block;margin-top:5px;color:#555;font-weight:400}
.cmr-review-limit.is-over{color:#b32d2e;font-weight:700}
.cmr-consent{display:flex;align-items:flex-start;gap:9px;font-weight:600!important;line-height:1.45}
.cmr-consent input{margin-top:3px}
.cmr-privacy-note{margin:0;color:#555;font-size:12.5px;line-height:1.4}
.cmr-submit-button{align-self:flex-start}
.cmr-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.cmr-submission-section{max-width:1200px;margin:24px auto 0;padding:0 20px;scroll-margin-top:40px;box-sizing:border-box}
.cmr-submission-inner{padding:24px;border:1px solid #e0e0e0;border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.cmr-submission-inner h2{margin:0 0 8px;font-size:24px;line-height:1.25}
.cmr-submission-inner>p{margin:0;color:#444}
.cmr-submission-inner .cmr-review-form{max-width:780px}
body.cmr-modal-open{overflow:hidden}
@media(max-width:600px){
  .cmr-modal{padding:10px}
  .cmr-modal-panel{max-height:90vh;padding:22px 18px}
  .cmr-name-grid{grid-template-columns:1fr}
  .cmr-review-heading{align-items:flex-start;flex-direction:column}
}
