.hct-review-summary {display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 16px;margin:12px 0 20px}
.hct-review-stars {position:relative;display:inline-block;color:#ccc;font-size:24px;line-height:1.2;white-space:nowrap}
.hct-review-stars > span {position:absolute;left:0;top:0;overflow:hidden;color:#ffae00;white-space:nowrap}
.hct-review-count {font-size:14px;text-decoration:none}
.hct-review-write {border:0;padding:0;background:transparent;color:#3665f3;text-decoration:underline;cursor:pointer;font:inherit;font-size:14px}
.hct-reviews {margin-top:24px;scroll-margin-top:100px}
.hct-reviews > h2 {border-top:1px solid #ddd;padding-top:16px}
.hct-reviews .hct-review-summary {justify-content:flex-start}
.hct-reviews .hct-review-write {margin-left:auto}
.hct-review {display:flex;gap:24px;border-top:1px solid #ddd;padding:20px 0;overflow-wrap:anywhere}
.hct-review-author {flex:0 0 150px}
.hct-review-text {flex:1;min-width:0}
.hct-review-modal {position:relative;padding:24px;max-width:680px;max-height:calc(100dvh - 64px);overflow:auto}
.hct-review-close {position:absolute;right:8px;top:8px}
.hct-review-rating {border:0;padding:0;text-align:center}
.hct-review-rating input {position:absolute;opacity:0;width:1px;height:1px}
.hct-review-rating label {display:inline-block;color:#ffae00;font-size:38px;cursor:pointer;padding:0 4px}
.hct-review-rating input:focus-visible + label {outline:2px solid #3665f3;outline-offset:2px}
.hct-review-error {display:block;color:#b00020;font-size:13px}
.hct-review-error:empty {display:none}
.hct-review-error[hidden] {display:none}
.hct-product-price {display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:16px;align-items:start}
.hct-product-price-value {grid-column:1;grid-row:1 / span 2}
.hct-product-contact {grid-column:2;grid-row:1}
.hct-product-rating {grid-column:2;grid-row:2;width:90%;margin:0 auto}
.hct-product-rating .hct-review-summary {justify-content:flex-start;margin:8px 0 16px;gap:8px 12px}
@media (max-width:600px) {
    .hct-product-price-value {grid-row:1}
    .hct-product-contact .hct-button-contact {width:100%!important;font-size:12px;padding:8px 6px;white-space:normal}
    .hct-product-rating {grid-column:1 / -1;width:100%}
    .hct-product-rating .hct-review-summary {justify-content:center}
    .hct-review-summary > .hct-review-write {flex-basis:100%;margin-left:0;text-align:center}
    .hct-reviews .hct-review-write {text-align:left}
    .hct-review {flex-direction:column;gap:8px}
    .hct-review-author {flex-basis:auto}
    .hct-review-modal {padding:20px 16px;max-height:calc(100dvh - 32px)}
}
