/* Explore's search, mode and result hierarchy. Persistent map layout lives in site.css. */
.discovery-shell { gap: 16px; }
.discovery-shell .discovery-topbar { border: 1px solid #d8e3e5; border-radius: 18px; box-shadow: 0 4px 16px #102a4308; padding: 12px; }
.discovery-shell .discovery-topbar button { min-height: 44px; }
.discovery-shell .discovery-topbar .recent-search-host { min-width: 0; }
.discovery-shell .discovery-topbar input[name="Search"] { min-height: 48px; font-size: 1rem; border-radius: 12px; }
.discovery-shell .segmented-toggle { border-radius: 12px; padding: 3px; background: #f0f5f5; border: 0; }
.discovery-shell .segmented-toggle button { border: 0; border-radius: 9px; box-shadow: none; }
.discovery-shell .segmented-toggle button.active { background: #fff; color: #102a43; box-shadow: 0 1px 5px #102a4320; }
.discovery-shell .discovery-meta { gap: 8px; margin: 0; }
.discovery-shell .discovery-meta > strong { font-size: .95rem; font-weight: 650; line-height: 1.5; }
.discovery-shell .explore-primary-modes .map-mode-switcher { padding: 4px; gap: 4px; border: 1px solid #d8e3e5; border-radius: 14px; background: #f6f9f9; box-shadow: none; }
.discovery-shell .explore-primary-modes .map-mode-button { min-height: 44px; border: 0; box-shadow: none; border-radius: 10px; font-weight: 650; background: transparent; color: #41586a !important; }
.discovery-shell .explore-primary-modes .map-mode-places.is-active { background: #0f6474; color: #fff !important; }
.discovery-shell .explore-primary-modes .map-mode-activities.is-active { background: #e1f4f4; color: #07535e !important; }
.discovery-shell .explore-primary-modes .map-mode-events.is-active { background: #fce8f1; color: #91265a !important; }
.discovery-shell .explore-primary-modes .map-mode-watch.is-active { background: #fff0cc; color: #774505 !important; }
.discovery-shell .explore-empty-state { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 32px 20px; border: 1px solid #d8e3e5; border-radius: 20px; background: #fff; box-shadow: none; text-align: center; }
.discovery-shell .explore-empty-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #e9f5f4; color: #0f6474; font-size: 1.8rem; }
.discovery-shell .explore-empty-state h2 { margin: 0; font-size: 1.25rem; line-height: 1.3; color: #102a43; }
.discovery-shell .explore-empty-state p { max-width: 38ch; margin: 0; color: #526779; line-height: 1.6; }
.discovery-shell .explore-empty-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 8px; }
.discovery-shell .explore-empty-actions button { min-height: 46px; }
@media (max-width: 760px) {
 .discovery-shell .discovery-topbar { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
 .discovery-shell .discovery-topbar .recent-search-host { grid-column: 1 / -1; }
 .discovery-shell .discovery-topbar .explore-near-button { grid-column: 1; grid-row: 2; justify-self: stretch; }
 .discovery-shell .discovery-topbar [data-open-filters] { grid-column: 2; grid-row: 2; justify-self: stretch; }
 .discovery-shell .discovery-topbar .segmented-toggle { grid-column: 1 / -1; grid-row: 3; }
 .discovery-shell .explore-primary-modes .map-mode-button { padding-inline: 12px; font-size: .84rem; }
 .discovery-shell .explore-empty-actions { width: 100%; }
 .discovery-shell .explore-empty-actions button { flex: 1 1 125px; }
}

/* Keep selection clear without competing with the result cards or main action. */
.brand-theme-tripin .discovery-shell .segmented-toggle button.active {
 background: var(--brand-dark, #102a43) !important; color: #fff !important;
}
.brand-theme-tripin .discovery-shell .explore-primary-modes .map-mode-places.is-active {
 background: #0f6474 !important; color: #fff !important;
}
.discovery-shell .discovery-topbar .icon-text-button { box-shadow: none; }
.discovery-shell .explore-empty-state::before { display: none; }
.discovery-shell .premium-spot-card { border-radius: 16px; box-shadow: 0 4px 18px #102a430a; }
.discovery-shell .premium-card-body { padding: 14px; }
.discovery-shell .premium-card-body h3 a { color: #102a43; text-decoration: none; }
@media (max-width: 760px) {
 .discovery-shell .premium-card-media { height: 170px; min-height: 0; aspect-ratio: auto; }
 .discovery-shell .premium-card-media > a, .discovery-shell .premium-card-media img { min-height: 0; }
 .discovery-shell .explore-empty-state { padding: 24px 18px; }
}

.activity-explore-intro { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem; margin: .8rem 0 1rem; }
.activity-explore-intro p { flex: 1 1 20rem; margin: 0; font-size: .88rem; line-height: 1.5; }
@media(max-width:600px) { .activity-explore-intro > a { width: 100%; text-align: center; } }

@media(max-width:600px) {
 .activity-explore-intro { gap: .25rem; margin: .5rem 0; }
 .activity-explore-intro p { font-size: .82rem; line-height: 1.45; }
 .activity-explore-intro > a { min-height: 44px; padding: .5rem; }
 .discovery-shell .activity-explore-media { height: 140px; }
}

/* A search field, a compact utility row, then the results. */
.discovery-shell .discovery-topbar { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.discovery-shell .discovery-topbar .icon-text-button { display:inline-flex; align-items:center; justify-content:center; gap:5px; border-radius:999px; font-size:.82rem; padding:6px 10px; white-space:nowrap; }
.discovery-shell .discovery-topbar .ui-icon { width:18px; height:18px; flex-basis:18px; }
.discovery-shell .discovery-meta { align-items:center; }
.discovery-shell .explore-road-link { margin-left:auto; min-height:44px; display:inline-flex; align-items:center; font-size:.78rem; color:#426973; }
.discovery-shell .discovery-meta [data-active-chips]:empty { display:none; }
.discovery-shell .destination-discovery { padding:0; margin:0; background:transparent; border:0; box-shadow:none; }
.explore-area-control > button { min-width:0; min-height:44px; font-weight:650; font-size:.88rem; text-align:left; }
.explore-area-control > button .ui-icon { width:18px; height:18px; flex:0 0 18px; }
.explore-area-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 12px; }
.explore-area-control > [data-change-explore-area] { justify-self:start; display:inline-flex; align-items:center; gap:6px; }
.explore-area-control [data-discovery-area-label],.explore-area-control .explore-back-location > span { display:inline; height:auto; min-width:0; margin:0; padding:0; border:0; border-radius:0; background:none; color:inherit; font:inherit; overflow-wrap:anywhere; }
.explore-area-control select { max-width:136px; }
.explore-area-control > .explore-back-location[hidden] { display:none; }
.explore-area-control > .explore-back-location { grid-column:1 / -1; justify-self:start; display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:0 4px; border:0; background:transparent; box-shadow:none; color:#126879; font-size:.86rem; }
.discovery-shell .destination-discovery > summary { display:flex; min-height:44px; align-items:center; gap:8px; margin:0; cursor:pointer; list-style:none; font-size:.85rem; color:#235f68; }
.discovery-shell .destination-discovery > summary::-webkit-details-marker { display:none; }
.discovery-shell .destination-discovery > summary::after { content:'⌄'; margin-left:auto; font-size:1.1rem; }
.discovery-shell .destination-discovery[open] > summary::after { transform:rotate(180deg); }
.discovery-shell .destination-discovery > summary small { font-size:.75rem; color:#526779; }
.discovery-shell .destination-discovery-row { margin-top:8px; }
.discovery-shell .discovery-meta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 8px; overflow:visible; }
.discovery-shell .discovery-meta > strong { margin:0; padding:0; }
.discovery-shell .discovery-meta [data-active-chips],.discovery-shell .discovery-meta .nearby-result-status { grid-column:1 / -1; }
.discovery-shell .discovery-meta .explore-road-link { padding:0; border:0; border-radius:0; background:transparent; font-weight:500; }
.product-ui .discovery-shell .explore-near-button::before { display:none; }
.product-ui .discovery-shell .explore-near-button > span { display:inline; height:auto; min-width:0; padding:0; border:0; background:none; color:inherit; font-size:inherit; font-weight:inherit; }
@media(max-width:760px) {
 .discovery-shell { gap:10px; }
 .discovery-shell .discovery-topbar { grid-template-columns:auto auto minmax(0,1fr); gap:8px 6px; }
 .discovery-shell .discovery-topbar .recent-search-host { grid-column:1 / -1; grid-row:1; }
 .discovery-shell .discovery-topbar input[name="Search"] { padding-right:54px; border-radius:16px; background:#fff; }
 .discovery-shell .discovery-topbar .discovery-search-submit { display:flex !important; grid-column:3; grid-row:1; justify-self:end; align-self:center; width:44px; min-height:44px; margin-right:2px; padding:0; justify-content:center; align-items:center; border-radius:13px; z-index:1; background:#126879; }
 .discovery-shell .discovery-search-submit > span { display:none; }
 .discovery-shell .discovery-topbar .explore-near-button { grid-column:1; grid-row:2; font-size:.82rem; }
 .discovery-shell .explore-near-button::after { display:none; }
 .discovery-shell .explore-near-button > span { max-width:62px; overflow:hidden; text-overflow:ellipsis; }
 .discovery-shell .discovery-topbar [data-open-filters] { grid-column:2; grid-row:2; }
 .discovery-shell .discovery-topbar .segmented-toggle { grid-column:3; grid-row:2; width:100%; min-width:0; padding:2px; border-radius:999px; }
 .discovery-shell .segmented-toggle button { min-width:0; padding:5px 8px; font-size:.78rem; border-radius:999px; }
 .discovery-shell .explore-primary-modes .map-mode-switcher { padding:0; border:0; border-bottom:1px solid #d8e3e5; border-radius:0; background:transparent; gap:4px; }
 .discovery-shell .explore-primary-modes .map-mode-button { border-radius:10px 10px 0 0; padding-inline:10px; }
}

/* Home's discovery photography and icons, sized for immediate Explore results. */
.explore-discovery-categories { margin: 8px 0 4px; min-width: 0; }
.explore-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.product-ui .explore-category-grid .explore-category {
    grid-column: auto; min-height: 64px; min-width: 0; padding: 10px; border: 2px solid transparent;
    border-radius: 12px; display: flex; align-items: center; gap: 8px; text-align: left;
    box-shadow: none; cursor: pointer;
}
.product-ui .explore-category-grid .explore-category::before { background: linear-gradient(90deg, #071922d9, #07192270); }
.product-ui .explore-category-grid .explore-category strong { font-size: .85rem; line-height: 1.25; overflow-wrap: anywhere; }
.product-ui .explore-category-grid .explore-category > .ui-icon { width: 22px; height: 22px; flex: 0 0 22px; }
.product-ui .explore-category-grid .explore-category.is-active { border-color: #ffc857; box-shadow: 0 0 0 1px #ffc857; }
.explore-category-check { display: none; margin-left: auto; color: #ffc857; font-weight: 800; }
.explore-category.is-active .explore-category-check { display: inline; }
.explore-category:focus-visible { outline: 3px solid #ffc857; outline-offset: 2px; }
.explore-specialist-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.explore-specialist-actions button { min-height: 44px; }
.explore-watch-action.is-active { background: #fff1d2; border-color: #b67608; color: #714800; }
@media (max-width: 760px) {
    .explore-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
    .product-ui .explore-category-grid .explore-category { min-height: 58px; padding: 8px; gap: 6px; }
}
