.feedback-page{max-width:680px;margin:24px auto;padding:24px;line-height:1.8}.feedback-page h1{font-size:1.5rem}.feedback-page fieldset{margin-block:20px;padding:12px;border:1px solid var(--border-color,#aaa);border-radius:12px}.feedback-scale{display:flex;flex-wrap:wrap;gap:8px}.feedback-scale label{display:flex;flex-direction:column;align-items:center;flex:1;min-width:80px;padding:8px;cursor:pointer;border:1px solid var(--border-color,#aaa);border-radius:8px;font-size:.85rem}.feedback-scale input{width:20px;height:20px}.feedback-scale label:has(input:checked){outline:2px solid #b48100}.feedback-consent{display:block;margin-block:20px}.post-visit-actions{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}.post-visit-dialog{width:min(680px,95vw);max-height:88vh;overflow:auto;padding:24px}.post-visit-dialog textarea{min-height:150px}.post-visit-dialog select{margin-block:12px}.post-visit-result{padding:12px;margin-block:8px;border:1px solid var(--border-color,#aaa);border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:600px){.feedback-page{margin:12px;padding:16px}.feedback-scale label{min-width:66px}.post-visit-actions .btn{flex:1}.post-visit-dialog{padding:16px}}
.feedback-scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.feedback-scale label{min-width:0}.rating-label{font-size:.8rem}@media(max-width:600px){.feedback-scale label{min-width:0;padding:8px 4px}.rating-label{display:none}.post-visit-dialog .post-visit-actions .btn{flex-basis:100%;min-height:44px}}
.feedback-page{max-width:820px;margin:32px auto;padding:32px;background:#fff;box-shadow:0 12px 40px #25252508}
.feedback-header{border-block-end:1px solid var(--border-color);padding-block-end:24px;margin-block-end:20px}
.feedback-eyebrow{color:var(--text-muted);font-size:14px;margin:0}
.feedback-page #feedback-clinic{font-size:clamp(26px,4vw,36px);margin-block:8px;font-weight:800;overflow-wrap:anywhere;line-height:1.4}
#feedback-visit-date{display:inline-block;padding:6px 12px;background:#fff5cf;border-radius:20px;margin-block:4px 12px;font-size:14px}
#feedback-visit-date[hidden]{display:none}
.feedback-header h2{font-size:21px;margin-block:12px 4px}
.feedback-intro{color:var(--text-muted);margin:0;font-size:15px}
.feedback-privacy{background:#f6f6f3;border-radius:12px;padding:14px;font-size:13px;color:var(--text-muted);line-height:1.8}
.feedback-page fieldset{padding:20px;margin-block:24px;border-radius:16px}
.feedback-page legend{padding-inline:8px;font-weight:700;font-size:17px}
.feedback-scale{gap:10px}
.feedback-scale label{min-block-size:92px;justify-content:center;gap:10px;padding:12px 8px;background:#fafaf8;font-size:14px;text-align:center;line-height:1.5;transition:background .15s,border-color .15s}
.feedback-scale label:has(input:checked){background:#fff3bc;border-color:#aa7c00;outline:2px solid #aa7c00}
.feedback-scale label:has(input:focus-visible){outline:3px solid #aa7c00;outline-offset:3px}
.feedback-scale input{accent-color:#927000;flex-shrink:0}
.feedback-page #feedback-status{font-size:14px;color:var(--text-muted)}
.feedback-page #feedback-form>button{inline-size:100%;min-block-size:48px;margin-block-start:8px}
.feedback-consent{font-size:14px;line-height:1.8}
@media(max-width:600px){.feedback-page{padding:20px;margin:12px}.feedback-scale{grid-template-columns:1fr;gap:8px}.feedback-scale label{flex-direction:row;justify-content:flex-start;min-block-size:48px;padding:12px;text-align:start;font-size:15px}.feedback-page fieldset{padding:14px}.feedback-page legend{font-size:16px}}
.followup-template-profile{grid-column:1/-1;margin-block-start:20px;min-inline-size:0}
.followup-template-editor{border:1px solid var(--border-color);border-radius:12px;padding:16px;margin-block:16px;min-inline-size:0}
.followup-template-editor legend{font-weight:700;padding-inline:8px}
.followup-template-editor input,.followup-template-editor textarea{margin-block-end:12px}
.followup-template-editor textarea{resize:vertical}
.feedback-submit-error{margin-block:16px 0;padding:14px 16px;border:1px solid #e8a6a6;border-inline-start:4px solid #b42318;border-radius:12px;background:#fff0ee;color:#9c1b12;font-weight:600;line-height:1.8}
.feedback-submit-error:focus{outline:2px solid #b42318;outline-offset:3px}
.feedback-submit-error[hidden]{display:none}
.patient-message-action{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-inline-size:170px}
.patient-message-date{font-size:.78rem;color:var(--text-muted);text-align:center;line-height:1.6;max-inline-size:260px}
#post-visit-actions{align-items:flex-start}
@media(max-width:600px){#post-visit-actions>.patient-message-action{flex:1 1 100%;min-inline-size:0}.patient-message-date{max-inline-size:none}}
