/* OtoAnglia community platform styles */
.for-you-hero h1 { margin-bottom: 0.35rem; }
.feed-section { margin-top: 1rem; }
.feed-section h2 { font-size: 1.1rem; margin-bottom: 0.75rem; }
.feed-grid { display: grid; gap: 0.75rem; }
.feed-card { padding: 0.85rem 1rem; border: 1px solid var(--border, #e2e8f0); border-radius: 8px; background: var(--card-bg, #fff); }
.feed-card h3 { font-size: 1rem; margin: 0.25rem 0; }
.feed-meta { font-size: 0.85rem; margin-bottom: 0.35rem; }
.feed-list { list-style: none; padding: 0; margin: 0; }
.feed-list .feed-card { margin-bottom: 0.5rem; }
.checklist-card { margin-top: 1.25rem; }
.checklist-bar { height: 8px; background: #e2e8f0; border-radius: 4px; overflow: hidden; margin: 0.5rem 0; }
.checklist-bar span { display: block; height: 100%; background: #2563eb; border-radius: 4px; }
.checklist-list { list-style: none; padding: 0; margin: 0.75rem 0 0; }
.checklist-list li { padding: 0.4rem 0; display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
.checklist-list li.done { opacity: 0.75; }
.comm-cats { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.comm-cats a { padding: 0.35rem 0.65rem; border-radius: 999px; border: 1px solid var(--border, #e2e8f0); text-decoration: none; font-size: 0.9rem; }
.comm-cats a.on { background: #2563eb; color: #fff; border-color: #2563eb; }
.community-card { margin-bottom: 0.75rem; }
.comm-body, .guide-body { line-height: 1.55; }
.comm-comments { list-style: none; padding: 0; }
.comm-comment { padding: 0.75rem 0; border-bottom: 1px solid var(--border, #e2e8f0); }
.badge-accommodation { background: #059669; color: #fff; }
.badge-avail { background: #0ea5e9; color: #fff; }
.insight-card { padding: 0.75rem; background: #f0f9ff; border-radius: 8px; }
.action-list { padding-left: 1.1rem; }
.city-hero { margin-bottom: 1rem; }
.event-list, .event-mini-list { list-style: none; padding: 0; }
.event-mini-list li { padding: 0.35rem 0; }
.home-widget { margin-top: 1.25rem; }
.worker-badges { display: flex; flex-wrap: wrap; gap: 0.35rem; margin: 0.35rem 0; }
.empty-state { text-align: center; padding: 2rem 1rem; }
.report-box { margin-top: 1rem; font-size: 0.9rem; }
@media (min-width: 640px) {
  .feed-grid { grid-template-columns: repeat(2, 1fr); }
}
