.venue-comments{scroll-margin-top:24px;border-top:1px solid var(--line);padding:32px 0 16px;margin-top:12px}
.comments-heading{max-width:680px;margin-bottom:28px}.comments-heading h2{margin-bottom:12px}.comments-heading>p{font-size:1rem;line-height:1.8;color:var(--muted)}
.comments-layout{display:grid;gap:28px}.comment-compose{order:0;border:1px solid #d5e1d8;border-radius:12px;padding:22px;background:#f8faf5}.comments-reading{order:1;min-width:0}
.comments-reading>h3,.comment-compose>h3{font-size:1.125rem;font-weight:500;margin-bottom:20px}.venue-comment-form label{display:block;font-size:1rem;font-weight:500}.venue-comment-form label>span{font-weight:400;font-size:.875rem;color:var(--muted)}
.venue-comment-form input,.venue-comment-form textarea{display:block;width:100%;min-width:0;font:400 16px/1.6 'DM Sans',sans-serif;padding:12px;border:1px solid #c8d8cd;border-radius:6px;background:#fff;color:var(--ink);margin:8px 0 20px}.venue-comment-form textarea{min-height:150px;resize:vertical}.venue-comment-form input::placeholder,.venue-comment-form textarea::placeholder{color:#6b7c70;opacity:1}
.venue-comment-form .contact-trap{display:none}.comment-form-note,.comment-guidelines{font-size:.8125rem;line-height:1.75;color:var(--muted)}.comment-form-note{margin-bottom:20px}.comment-submit{width:100%;justify-content:space-between;gap:14px;min-height:52px}.comment-form-status{padding:12px 14px;margin:0 0 18px;background:#e8f2e8;border:1px solid #c8dcca;border-radius:6px;font-size:.9375rem;line-height:1.7}.comment-form-status.is-error{color:#8b362c;background:#fff4ef;border-color:#e1c6ba}.comment-guidelines{margin-top:16px}.comment-guidelines summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.comment-guidelines p{margin:8px 0 12px}
.comments-loading{color:var(--muted);font-size:1rem;line-height:1.8;padding:22px;border:1px solid var(--line);border-radius:10px;background:#fbfcf9}.comments-loading:empty{display:none}.comments-list{display:grid;gap:16px}
.visitor-comment{padding:22px;border:1px solid #d5e1d8;border-radius:10px;background:#fff;min-width:0}.comment-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px;margin-bottom:14px}.comment-meta strong{font-size:1rem;font-weight:500;overflow-wrap:anywhere}.comment-meta time{font-size:.8125rem;color:var(--muted);white-space:nowrap}.comment-body{font-size:1rem;line-height:1.85;color:#466352;white-space:pre-wrap;overflow-wrap:anywhere}.comment-actions{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}.comment-actions button,.comment-manage{min-height:44px;font-size:.875rem;color:var(--accent);text-decoration:underline;text-underline-offset:4px;padding:10px 0}.comment-actions button:disabled{cursor:default;opacity:1;color:var(--muted)}.comments-more{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:12px 0;color:var(--accent);font-size:1rem;margin-top:18px;border-bottom:1px solid #bccfc0}.venue-comments [hidden],.comment-moderation [hidden]{display:none!important}
.comment-moderation{max-width:1000px;padding:40px var(--page-gutter);margin:auto}.comment-moderation h1{font:400 clamp(32px,7vw,48px)/1.3 Prata,Georgia,serif;margin-bottom:20px}.comment-moderation>p{color:var(--muted);line-height:1.8}.moderation-filters{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 20px}.moderation-filters button{padding:10px 14px;border:1px solid #c6d7ca;border-radius:30px;min-height:44px;font-size:.9375rem}.moderation-filters [aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.moderation-list{display:grid;gap:16px;margin-top:22px}.comment-venue-link{display:inline-block;color:var(--accent);text-decoration:underline;text-underline-offset:4px;margin-bottom:10px}.comment-review-reason{font-size:.875rem;line-height:1.7;color:var(--muted);margin-bottom:14px}.comment-manage{display:inline-flex;gap:12px;align-items:center;margin-top:12px}
@media(min-width:768px){.venue-comments{padding-top:40px}.comments-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:32px}.comments-reading{order:0}.comment-compose{order:1;padding:26px}.comments-heading{margin-bottom:32px}}
