/* Keep plugin behaviour and star widgets; customise presentation only. */
.doctor-reviews { display: flex; flex-direction: column; gap: 20px; max-width: 1000px; margin: 35px auto 0; padding-bottom: 40px; }
.doctorSingleRating .glsr-summary-percentages { display: none; }
.doctor-reviews .glsr { max-width: 100%; min-width: 0; }
.glsr form.glsr-form { padding: 20px; border: 2px solid #ccc; border-radius: 10px; background: #f6fbff; row-gap: 15px; }
.glsr form.glsr-form :is(input[type="text"], input[type="email"], input[type="tel"], textarea) { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; padding: 10px; border: 1px solid #ccc; border-radius: 4px; background: #e9f1f9; color: #001b4d; font-size: 16px; line-height: 1.3; }
.glsr form.glsr-form :is(input, textarea):focus-visible { outline: 2px solid #3580cb; outline-offset: 2px; }
.glsr form.glsr-form :is(input, textarea)[aria-invalid="true"] { border-color: #b42318; }
.glsr form.glsr-form input[type="email"] { direction: ltr; }
.glsr form.glsr-form .glsr-field-rating { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: #001b4d; }
.glsr form.glsr-form .glsr-field-rating label { font-size: 18px; margin: 0; }
.glsr :is(button[type="submit"], .glsr-button) { box-sizing: border-box; max-width: 100%; padding: 15px 20px; border: 1px solid #3580cb; border-radius: 3px; background: #3580cb; color: #fff; font-size: 18px; font-weight: 600; }
.glsr :is(button[type="submit"], .glsr-button):not(:disabled):is(:hover, :focus-visible) { background: #2866a3; color: #fff; }
.glsr :is(button[type="submit"], .glsr-button):focus-visible { outline: 2px solid #001b4d; outline-offset: 3px; }
.glsr .glsr-reviews { display: grid; gap: 20px; }
.glsr .glsr-review { padding: 22px 24px; background: #eef3f7; border: 1px solid #d5dde6; border-radius: 16px; overflow-wrap: anywhere; }
.glsr .glsr-review:hover { border-color: #0f7acb; }
.glsr .glsr-review-date { font-size: 13px; color: #657180; margin-bottom: 12px; }
.glsr .glsr-review-content p { margin: 0; font-size: 16px; line-height: 1.6; color: #4e5965; }
.glsr .glsr-review-author { margin-top: 14px; padding-top: 12px; border-top: 1px solid #dbe3ea; color: #2f3b46; font-size: 15px; font-weight: 600; }
.doctor-reviews .glsr-review-title { display: none; }
@media(max-width: 600px) { .glsr form.glsr-form, .glsr .glsr-review { padding: 16px; } }

/* Match the original form while retaining accessible field names. */
.doctor-reviews .glsr form.glsr-form :is(.glsr-field-text, .glsr-field-email, .glsr-field-textarea) > label {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
.doctor-reviews .glsr form.glsr-form { font: 12px/18px var(--tamc-font-text); }
.doctor-reviews .glsr form.glsr-form textarea { min-height: 122px; padding: 8px 12px; }
.doctor-reviews .glsr :is(button[type="submit"], .glsr-button) { min-width: min(300px, 100%); line-height: 27px; }
.doctor-reviews .glsr .glsr-review-author .glsr-tag-value::before { content: '— '; color: #0f7acb; }
.doctorSingleRating { margin-top: 15px; }
.doctorSingleRating .glsr-summary { font-size: 16px; line-height: 24px; }

/* Site Reviews themes use important field rules; override only this form. */
.doctor-reviews .glsr form.glsr-form {
    gap: 15px !important; padding: 20px !important;
    --glsr-star-size: 32px;
}
.doctor-reviews .glsr form.glsr-form :is(input[type="text"], input[type="email"], input[type="tel"], textarea) {
    background: #e9f1f9 !important; color: #001b4d !important;
    border: 1px solid #ccc !important; border-radius: 4px !important;
    padding: 8px 12px !important; min-height: 44px !important;
    font: 500 16px/1.3 var(--tamc-font-text) !important;
    box-shadow: inset 0 1px 0 rgb(0 0 0 / 5%) !important;
}
.doctor-reviews .glsr form.glsr-form textarea { height: 122px !important; min-height: 122px !important; }
.doctor-reviews .glsr form.glsr-form .glsr-field-rating label { font: 400 18px/1 var(--tamc-font-text) !important; }
.doctor-reviews .glsr form.glsr-form .glsr-field-rating { gap: 10px !important; }
.doctor-reviews .glsr form.glsr-form .glsr-star-rating { --glsr-star-size: 32px; font-size: 16px; }
.doctor-reviews .glsr form.glsr-form .glsr-field-choice label { font: 700 12px/18px var(--tamc-font-text) !important; color: #001b4d !important; }
.doctor-reviews .glsr form.glsr-form button[type="submit"] {
    width: 300px !important; max-width: 100% !important; min-width: 0 !important;
    padding: 15px 20px !important; font: 600 18px/27px var(--tamc-font-text) !important;
}
.doctor-reviews .glsr form.glsr-form :is(input, textarea)[aria-invalid="true"] { border-color: #b42318 !important; }
