/* Gestion locale des témoignages — page L’institut. */
.reviews-section{scroll-margin-top:140px}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}
.reviews-heading h2{margin:0}
.reviews-management{display:flex;align-items:center;flex-direction:column;gap:10px;flex-shrink:0}
#reviews-manage{min-width:200px;min-height:52px;font-size:16px;background:#8c733d;color:#fff;border:1px solid #8c733d}
#reviews-manage:hover{background:#705b30}
.reviews-management-note{font-size:14px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.reviews-management .reviews-management-note{max-width:480px;margin:0}
.review-quote{transition:opacity .18s ease,transform .18s ease;overflow-wrap:anywhere}
.review-quote.is-changing{opacity:0;transform:translateY(6px)}
.review-quote[hidden],#review-form[hidden],#reviews-list[hidden],#reviews-add[hidden]{display:none}
.review-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:32px;border:1px solid var(--line);background:#fff;color:var(--ink);overflow-y:auto;box-shadow:0 24px 90px #151a1533}
.review-dialog::backdrop{background:#151a1577;backdrop-filter:blur(6px)}
.review-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.review-dialog-heading h2{font-size:36px;margin:0}
.review-close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:28px;cursor:pointer}
.reviews-status{font-size:14px;line-height:1.7;margin:16px 0;overflow-wrap:anywhere}
.reviews-list{display:grid;gap:16px;margin-top:24px}
.review-management-item{border:1px solid var(--line);padding:20px;min-width:0}
.review-management-copy{overflow-wrap:anywhere;white-space:pre-wrap}
.review-management-copy p{margin:0 0 12px}
.review-management-copy span{font-size:14px;color:var(--muted)}
.review-management-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.review-dialog .button:disabled{opacity:.55;cursor:wait}
#review-form h3{font-family:var(--serif);font-size:28px;margin:24px 0 16px}
#review-form .field{margin-top:18px}
#review-text{resize:vertical;min-height:140px}
@media(max-width:600px){.reviews-heading{align-items:flex-start;flex-direction:column}.reviews-management{align-items:flex-start;justify-content:flex-start}.review-dialog{padding:22px 18px}.review-dialog-heading h2{font-size:30px}.review-management-actions .button{flex:1 1 auto}.review-management-item{padding:16px}}