
/* v170: isolated demo review form */
.torino-review-action{display:flex;justify-content:center;margin-top:28px}
.torino-review-add{background:#ffca28;color:#31213b;border:0;border-radius:999px;padding:13px 29px;font-family:inherit;font-size:15px;font-weight:700;line-height:1.25;cursor:pointer;box-shadow:0 5px 16px rgba(144,98,0,.13);transition:background .2s,transform .2s}
.torino-review-add:hover{background:#ffdb50;transform:translateY(-1px)}
.torino-review-add:focus-visible,.torino-review-modal button:focus-visible,.torino-review-modal input:focus-visible,.torino-review-modal textarea:focus-visible{outline:3px solid #64237c;outline-offset:3px}
.torino-review-modal[hidden]{display:none!important}
.torino-review-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(23,17,32,.62);box-sizing:border-box}
.torino-review-dialog{position:relative;background:#fff;border-radius:24px;width:min(100%,520px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 25px 90px rgba(0,0,0,.22);padding:36px;box-sizing:border-box;color:#28222f}
.torino-review-close{position:absolute;top:14px;right:15px;border:0;border-radius:50%;width:38px;height:38px;background:#f1eff3;color:#30243a;font-size:25px;line-height:1;cursor:pointer}
.torino-review-dialog h2{font-size:27px;line-height:1.2;margin:0 38px 24px 0;color:#31223d}
.torino-review-form{display:grid;gap:17px}
.torino-review-field{display:grid;gap:7px;font-size:14px;font-weight:700;color:#484152}
.torino-review-field input,.torino-review-field textarea{font-family:inherit;font-size:16px;font-weight:400;line-height:1.5;width:100%;box-sizing:border-box;border:1px solid #d9d5df;border-radius:12px;padding:12px 14px;background:#fff;color:#292332;resize:vertical}
.torino-review-field textarea{min-height:135px}
.torino-review-submit{border:0;border-radius:999px;background:#df1e35;color:white;font-weight:700;font-size:16px;padding:14px 26px;cursor:pointer;margin-top:5px}
.torino-review-submit:hover{background:#bd142c}
.torino-review-demo-note{font-size:12px;color:#76717d;margin:0;line-height:1.5}
.torino-review-step{transition:opacity .28s ease,transform .28s ease;opacity:1;transform:translateY(0)}
.torino-review-step.is-exiting{opacity:0;transform:translateY(-7px)}
.torino-review-success{text-align:center;padding:28px 4px 12px}
.torino-review-success h2{margin:0 0 15px;font-size:26px}
.torino-review-success p{font-size:16px;line-height:1.6;color:#5d5665;margin:0}
@media(max-width:600px){.torino-review-dialog{padding:30px 22px;border-radius:18px}}
/* v489: transformed form step overlaps the mobile close button hit area. */
@media(max-width:600px){.torino-review-close{z-index:1}}
@media(prefers-reduced-motion:reduce){.torino-review-step,.torino-review-add{transition:none!important}}

/* v173: author and demo dates in review cards */
.torino-review-card .torino-review-author{font-weight:700;color:#64237c;font-size:15px;line-height:1.35;margin:12px 0 6px;}
.torino-review-card .torino-review-date small{font-size:10px;color:#8a8490;white-space:nowrap;}

/* v516: review modal star rating; scoped to this field only. */
.torino-review-rating-field{display:grid;gap:7px;color:#484152}
.torino-review-rating-title{font-size:14px;font-weight:700}
.torino-review-rating-stars{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%}
.torino-review-rating-star{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0 2px;color:#d6d1da;font-family:Arial,sans-serif;font-size:38px;line-height:1.2;cursor:pointer;transition:color .12s ease;touch-action:manipulation}
.torino-review-rating-star.is-active{color:#ffb900}
.torino-review-rating-star:focus-visible{outline:2px solid #64237c;outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.torino-review-rating-star{transition:none}}
