/* gc-gardens.css v1.6 — wider left column, single-select checks, visible buttons, marker fixes */
.gc-wrap { --gap: 16px; margin-top: 24px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }

.gc-grid { display: grid; grid-template-columns: 1fr; gap: var(--gap); }
.gc-grid.wider-left { grid-template-columns: 1fr; }
@media (min-width: 980px){ .gc-grid.wider-left { grid-template-columns: minmax(340px, 520px) 1fr; } }

.gc-col-left { position: relative; }
.gc-col-right { min-height: 200px; }

.gc-box { background: #fff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 12px; margin-bottom: var(--gap); }

/* search + button (same height) */
.gc-where { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center; }
.gc-where input { width: 100%; height: 40px; padding: 8px 10px; border: 1px solid #9ca3af; border-radius: 8px; }
.gc-btn { height: 40px; padding: 0 14px; border: 1px solid #9ca3af; background: #f8fafc; color: #0f172a; border-radius: 8px; cursor: pointer; }
.gc-btn.is-secondary { background: #eef2ff; color: #0f172a; }
.gc-btn:hover { background: #e2e8f0; }

/* category checks */
.gc-checks { display: grid; grid-template-columns: 1fr; gap: 6px; }
.gc-checks label { display: flex; align-items: center; gap: 8px; font-weight: 600; color: #14532d; }
.gc-checks input[type="checkbox"] { width: 18px; height: 18px; }

/* map */
.gc-map { height: 520px; width: 100%; border: 2px solid #2563eb; border-radius: 16px; overflow: hidden; }
.gc-map.is-hidden { display: none; }
@media (min-width: 980px){ .gc-map { height: 580px; } }

/* fix WP theme styles inside Leaflet */
.leaflet-container img { max-width: none !important; }
.leaflet-marker-icon, .leaflet-marker-shadow { image-rendering: auto; }

/* cards */
.gc-cards { display: grid; grid-template-columns: 1fr; gap: var(--gap); }
.gc-card.v { display: grid; grid-template-rows: auto auto auto; border: 1px solid #e5e7eb; border-radius: 12px; overflow: hidden; background: #fff; }
.gc-img { display: block; height: 180px; background: #f3f4f6; }
.gc-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gc-body { padding: 10px 12px; }
.gc-title { margin: 4px 0 6px; font-size: 18px; line-height: 1.3; display: flex; gap: 8px; flex-wrap: wrap; align-items: baseline; }
.gc-badges { display: inline-flex; gap: 6px; }
.gc-badge { display: inline-block; border-radius: 999px; padding: 2px 8px; font-size: 12px; line-height: 1.6; }
.gc-badge.sponsored { background: #fef3c7; color: #92400e; border: 1px solid #f59e0b; }
.gc-badge.featured  { background: #e0e7ff; color: #3730a3; border: 1px solid #6366f1; }
.gc-badge.popular   { background: #dcfce7; color: #065f46; border: 1px solid #10b981; }
.gc-region { color: #6b7280; font-size: 13px; margin-bottom: 6px; }
.gc-links { display: flex; gap: 8px; font-size: 14px; }
.gc-links a { color: #2563eb; text-decoration: none; }
.gc-links a:hover { text-decoration: underline; }
.gc-bottom { border-top: 1px solid #f3f4f6; padding: 10px 12px 12px; }
.gc-bottom-title { font-weight: 700; font-size: 14px; margin-bottom: 6px; }
.gc-events { margin: 0; padding-left: 18px; }
.gc-events li { margin: 2px 0; }
.gc-events .gc-when { color: #6b7280; font-size: 12px; }
.gc-empty { padding: 16px; border: 1px dashed #d1d5db; border-radius: 12px; text-align: center; color: #6b7280; }

/* desktop cards: 2 cols → 3 cols wide */
@media (min-width: 900px){ .gc-cards { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1200px){ .gc-cards { grid-template-columns: repeat(3, 1fr); } }

.gc-sentinel { height: 1px; }
