/* Discovery panels stay scoped to this plugin; Elementor styles may override them. */
.phd-explorer{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,2.3fr) minmax(250px,1.2fr);gap:20px;align-items:start;color:#17372f;max-width:100%}
.phd-discovery-part{--phd-primary:#075448;--phd-line:#e4eae7;--phd-muted:#6b7872;--phd-surface:#fff;--phd-ink:#17372f;box-sizing:border-box;min-width:0;font-size:14px;line-height:1.5;color:#17372f}
.phd-discovery-part *, .phd-hours-editor *{box-sizing:border-box}
.phd-part-filters,.phd-part-category,.phd-part-location,.phd-part-radius,.phd-part-budget,.phd-part-button{padding:20px;border:1px solid var(--phd-line);background:#fff;border-radius:14px;box-shadow:0 5px 22px #163e2410}
.phd-part-results{background:transparent}
.phd-filter-form{display:flex;flex-direction:column;gap:20px;margin:0}
.phd-filter-form fieldset{border:0;border-top:1px solid var(--phd-line);padding:18px 0 0;margin:0;min-width:0}
.phd-filter-form legend{font-weight:700;margin-bottom:10px;padding:0 4px 0 0}
.phd-discovery-part h2,.phd-discovery-part h3{margin:0;font-size:20px;line-height:1.3;color:inherit}
.phd-discovery-part h3{font-size:17px}
.phd-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.phd-discovery-part button{font:inherit;cursor:pointer;border:1px solid var(--phd-line);border-radius:7px;padding:8px 12px;background:#fff;color:var(--phd-primary);line-height:1.4}
.phd-filter-heading button{border:0;font-size:12px;padding:2px 0}
.phd-discovery-part .phd-discovery-button{background:var(--phd-primary);color:#fff;border-color:var(--phd-primary);font-weight:600;min-height:42px}
.phd-discovery-part button:hover{filter:brightness(.94)}
.phd-discovery-part button:disabled{cursor:wait;opacity:.55}
.phd-discovery-part :focus-visible{outline:3px solid #80c8b6;outline-offset:3px}
.phd-filter-form label{display:flex;flex-direction:column;gap:6px;font-weight:500;min-width:0}
.phd-filter-form input:not([type=radio]):not([type=range]),.phd-filter-form select,.phd-discovery-toolbar select{width:100%;min-width:0;border:1px solid var(--phd-line);border-radius:8px;background:#fff;color:inherit;padding:10px;font:inherit}
.phd-filter-form input:disabled{background:#f3f5f4;color:#939d97}
.phd-category-filter label{flex-direction:row;align-items:center;gap:10px;padding:8px;border-radius:7px;font-size:14px;cursor:pointer}
.phd-category-filter label:has(input:checked){background:#eaf3ef;color:var(--phd-primary);font-weight:600}
.phd-category-filter input{accent-color:var(--phd-primary);width:16px;height:16px;flex-shrink:0;margin:0}
.phd-location-filter{display:flex;flex-direction:column;gap:10px}
.phd-radius-filter input[type=range]{width:100%;accent-color:var(--phd-primary);margin:6px 0}
.phd-radius-limits{display:flex;justify-content:space-between;color:var(--phd-muted);font-size:12px;margin:0 0 12px}
.phd-radius-hint,.phd-budget-filter small{font-size:12px;color:var(--phd-muted);margin:10px 0}
.phd-radius-filter details{margin-top:12px;font-size:12px}
.phd-radius-filter details label{margin-top:10px}
.phd-budget-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.phd-budget-filter small{display:block}
.phd-discovery-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:0 0 16px}
.phd-discovery-toolbar form{margin:0;flex:0 1 170px}
.phd-discovery-toolbar label{display:flex;gap:6px;align-items:center;font-size:12px}
.phd-discovery-toolbar [data-phd-count]{margin:5px 0 0;color:var(--phd-muted);font-size:12px}
.phd-view-switch{display:flex;gap:5px}
.phd-view-switch [aria-pressed=true],.phd-discovery-pagination [aria-current=page]{background:var(--phd-primary);color:#fff}
.phd-discovery-part [data-phd-result-grid]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.phd-discovery-part [data-phd-result-grid][aria-busy=true]{opacity:.55;pointer-events:none}
.phd-discovery-part .phd-card{border:1px solid var(--phd-line);border-radius:12px;box-shadow:0 3px 12px #163e2408;overflow:hidden;min-width:0;background:#fff}
.phd-discovery-part .phd-card__media{aspect-ratio:1.9;min-height:0}
.phd-discovery-part .phd-card__media img{width:100%;height:100%;object-fit:cover}
.phd-discovery-part .phd-card__body{padding:14px;gap:8px}
.phd-discovery-part .phd-card__title{font-size:16px;overflow-wrap:anywhere}
.phd-discovery-part .phd-card__text{font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.phd-discovery-part .phd-card__foot{flex-wrap:wrap;font-size:12px;align-items:flex-start}
.phd-discovery-part .phd-card__btn{border-radius:6px;padding:7px 12px}
.phd-discovery-part .phd-card__badge{font-size:11px;background:#f8f6e8;color:#234035}
.phd-discovery-part .phd-card-map-button{font-size:11px;border:0;padding:3px 0;text-align:left;align-self:start}
.phd-discovery-part .phd-card.is-map-selected{outline:3px solid var(--phd-primary);outline-offset:-3px}
.phd-discovery-part [data-phd-result-grid].is-list{grid-template-columns:1fr}
.phd-discovery-part .is-list .phd-card{display:grid;grid-template-columns:minmax(100px,35%) minmax(0,1fr)}
.phd-discovery-part .is-list .phd-card__media{height:100%;aspect-ratio:auto}
.phd-discovery-pagination{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:24px 0}
.phd-component-notice:empty,.phd-discovery-notices:empty{display:none}
.phd-component-notice,.phd-discovery-notices{margin:12px 0;padding:10px;background:#fff9e9;border-radius:8px;font-size:13px}
.phd-discovery-part .is-error{color:#a62424;background:#fff0f0}
.phd-part-map{position:sticky;top:20px;border:1px solid var(--phd-line);border-radius:14px;overflow:hidden;background:#fff}
.phd-map-bar{padding:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.phd-map-bar p{margin:4px 0 0;font-size:12px;color:var(--phd-muted)}
.phd-map-bar button{font-size:12px}
.phd-discovery-map{height:640px;min-height:240px;width:100%;z-index:0;background:#eef2ed}
.phd-map-cluster{display:flex;align-items:center;justify-content:center;border-radius:50%;background:#075448;color:#fff;border:3px solid #b9d4c9;font-weight:700;box-shadow:0 0 0 5px #07544820}
.phd-marker-card{max-width:220px;display:flex;flex-direction:column;gap:8px;padding:2px}
.phd-marker-card img{width:100%;max-height:95px;object-fit:cover;border-radius:6px}
.phd-marker-card a{font-weight:700;color:#075448;text-decoration:none}
.phd-marker-card p{margin:0!important;color:#5d6d64;font-size:12px}
.phd-marker-list{max-height:260px;overflow:auto}
.phd-explorer-mobile{display:none}
.phd-discovery-part [hidden]{display:none!important}
.phd-labels-off .phd-label,.phd-hide-labels .phd-search__label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.phd-location-editor{margin:12px 0;grid-column:1/-1;min-width:0}
.phd-location-editor-map{height:280px;border:1px solid #d6e0dc;border-radius:10px;z-index:0}
.phd-location-editor p{font-size:13px;margin:8px 0}
.phd-hours-day{border:1px solid #dbe4de!important;border-radius:10px;padding:12px!important;margin:0 0 12px!important;min-width:0}
.phd-hours-flags{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 10px}
.phd-hours-flags label{display:flex!important;align-items:center;gap:6px}
.phd-hours-periods{display:flex;flex-wrap:wrap;gap:14px}
.phd-hours-period{display:flex;gap:8px;min-width:0}
.phd-hours-period label{display:flex;flex-direction:column;font-size:12px;gap:4px}
.phd-hours-period input{max-width:130px;min-width:0}
.phd-food-menu{color:var(--phd-ink,#17372f)}
.phd-food-menu-section{margin:24px 0}
.phd-food-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.phd-food-menu-item{display:flex;gap:14px;border:1px solid #e0e8e3;border-radius:12px;padding:16px;min-width:0}
.phd-food-menu-item img{width:80px;height:80px;object-fit:cover;border-radius:10px;flex-shrink:0}
.phd-food-menu-item h4{margin:0;font-size:17px}
.phd-food-menu-item p{margin:8px 0;font-size:14px}
.phd-food-menu-price{font-weight:700;color:var(--phd-primary,#075448)}
.phd-food-menu-unavailable{opacity:.65}
@media(max-width:1200px){.phd-explorer{grid-template-columns:minmax(180px,.8fr) minmax(0,2fr)}.phd-explorer>.phd-part-map{grid-column:1/-1;position:static}.phd-explorer .phd-discovery-map{height:400px}}
@media(max-width:767px){.phd-explorer{grid-template-columns:minmax(0,1fr);gap:16px}.phd-explorer-mobile{display:flex;gap:10px}.phd-explorer-mobile button{flex:1;border:1px solid #dce7df;border-radius:8px;padding:10px;background:#fff;color:#075448}.phd-explorer:not(.is-filters-open)>.phd-part-filters,.phd-explorer:not(.is-map-open)>.phd-part-map{display:none}.phd-explorer>.phd-part-map{grid-column:auto}.phd-discovery-toolbar h2{font-size:22px}.phd-discovery-part [data-phd-result-grid]{grid-template-columns:1fr}.phd-food-menu-grid{grid-template-columns:1fr}.phd-food-menu-item img{width:64px;height:64px}.phd-hours-periods{display:grid;grid-template-columns:1fr}.phd-hours-period label{flex:1}.phd-hours-period input{max-width:100%;width:100%}.phd-discovery-part .is-list .phd-card{grid-template-columns:110px minmax(0,1fr)}}

/* 0.7.2: reference sidebar and map; shared by the Sidebar and individual widgets. */
.phd-explorer{grid-template-columns:minmax(190px,.78fr) minmax(0,2.1fr) minmax(250px,1.12fr);gap:16px}
.phd-part-filters,.phd-part-category,.phd-part-location,.phd-part-radius,.phd-part-budget,.phd-part-button{border-radius:7px;padding:18px;background:#fff;box-shadow:0 3px 14px #163e2406}
.phd-filter-form{gap:18px}
.phd-filter-heading{border-bottom:1px solid var(--phd-line);padding-bottom:12px}
.phd-filter-heading h3,.phd-map-bar h3{font-family:Georgia,'Times New Roman',serif;font-weight:700;color:#142f29}
.phd-filter-heading button{color:#a87842;min-height:30px}
.phd-filter-form fieldset{padding-top:0;border:0;position:relative}
.phd-filter-form legend,.phd-location-filter .phd-label{font-size:13px;font-weight:650;margin-bottom:8px}
.phd-ui-icon{width:19px;height:19px;flex:0 0 19px;display:inline-block;vertical-align:middle}
.phd-category-filter label{padding:5px 6px;gap:9px;border-radius:4px;font-size:13px;min-height:32px}
.phd-category-filter label>span{overflow-wrap:anywhere}
.phd-category-filter input[type=radio]{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1px solid #b8c4bf;border-radius:3px;position:relative;background:#fff}
.phd-category-filter input[type=radio]:checked{background:var(--phd-primary);border-color:var(--phd-primary)}
.phd-category-filter input[type=radio]:checked:after{content:'';position:absolute;width:7px;height:4px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff;transform:rotate(-45deg);left:2px;top:3px}
.phd-location-filter{border-top:1px solid var(--phd-line);padding-top:16px}
.phd-location-select{display:block;position:relative;width:100%}
.phd-location-select>.phd-ui-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;pointer-events:none}
.phd-filter-form .phd-location-select select{padding:9px 25px 9px 32px;border-radius:5px;font-size:13px;min-height:38px;text-overflow:ellipsis}
.phd-radius-filter{padding-top:1px!important}
.phd-radius-filter legend{padding-right:62px}
.phd-radius-filter output{position:absolute;right:0;top:0;font-size:12px;font-weight:650;color:var(--phd-ink)}
.phd-radius-filter .phd-range-label{display:block}
.phd-radius-filter input[type=range]{appearance:none;-webkit-appearance:none;height:4px;border:0;padding:0;border-radius:4px;background:linear-gradient(to right,var(--phd-primary) var(--phd-range-progress,18%),#dce4df var(--phd-range-progress,18%));margin:12px 0 10px;cursor:pointer;display:block}
.phd-radius-filter input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;background:var(--phd-primary);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #e1e9e4}
.phd-radius-filter input[type=range]::-moz-range-thumb{width:13px;height:13px;background:var(--phd-primary);border:2px solid #fff;border-radius:50%}
.phd-radius-limits{font-size:11px;margin-bottom:0}
.phd-budget-inputs{grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr);gap:7px;align-items:center}
.phd-budget-inputs>span{text-align:center;color:#7b8781}
.phd-filter-form .phd-budget-inputs input{font-size:13px;border-radius:5px;padding:9px 8px;min-height:38px}
.phd-discovery-part [data-phd-apply]{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;border-radius:5px}
.phd-discovery-part [data-phd-apply] .phd-ui-icon{width:16px;height:16px;flex-basis:16px}
.phd-part-map{position:sticky;top:20px;isolation:isolate;border-radius:9px}
.phd-map-bar{position:absolute;top:12px;left:12px;right:12px;z-index:450;background:#fffffff5;border:1px solid #eef0e8;border-radius:6px;padding:12px;box-shadow:0 3px 14px #142f2914;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-height:calc(100% - 110px);overflow:auto}
.phd-map-bar h3{font-size:17px}
.phd-map-bar p{font-size:11px;margin:2px 0 0}
.phd-map-bar [data-phd-area]{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-size:11px;border-radius:5px}
.phd-map-bar .phd-ui-icon{width:14px;height:14px;flex-basis:14px}
.phd-discovery-map{height:640px;width:100%;min-height:300px}
.phd-map-pin{background:transparent;border:0;filter:drop-shadow(0 2px 2px #123b2940)}
.phd-map-pin svg{display:block;width:30px;height:38px}
.phd-map-cluster{background:var(--phd-primary);font-size:13px;border:2px solid #fff;box-shadow:0 0 0 3px #b9d4c980}
.phd-part-map .leaflet-popup-content-wrapper{border-radius:7px;padding:5px;box-shadow:0 3px 16px #17372f25}
.phd-part-map .leaflet-popup-content{margin:4px;width:auto!important;min-width:170px;max-width:240px}
.phd-marker-card{display:flex;flex-direction:row;align-items:center;gap:9px;max-width:240px;padding:0}
.phd-marker-card img{width:78px;height:60px;max-height:none;flex:0 0 78px;border-radius:4px;object-fit:cover}
.phd-marker-body{min-width:0;display:flex;flex-direction:column;gap:6px}
.phd-marker-body a{font-size:12px;line-height:1.35;overflow-wrap:anywhere;color:var(--phd-primary)}
.phd-marker-body p{font-size:10px;color:#a87842}
.phd-part-map .leaflet-control-zoom{border:1px solid #dce6e0;box-shadow:0 2px 8px #142f2920;border-radius:5px;overflow:hidden}
.phd-part-map .leaflet-control-zoom a{width:32px;height:32px;line-height:32px;background:#fff;color:var(--phd-primary);font-size:20px}
.phd-part-map .leaflet-control-attribution{font-size:9px;max-width:calc(100% - 55px)}
.phd-panel-toggle{display:none!important}
@media(max-width:1199px){.phd-explorer{grid-template-columns:minmax(190px,.8fr) minmax(0,2fr);gap:16px}.phd-explorer>.phd-part-map{grid-column:1/-1;position:relative}.phd-explorer .phd-discovery-map{height:420px}.phd-part-map{position:relative}.phd-map-bar{right:auto;max-width:min(280px,calc(100% - 24px))}}
@media(max-width:767px){.phd-explorer{grid-template-columns:minmax(0,1fr);gap:14px}.phd-explorer>.phd-part-map{grid-column:auto}.phd-part-filters,.phd-part-category,.phd-part-location,.phd-part-radius,.phd-part-budget,.phd-part-button{padding:16px;width:100%}.phd-category-filter label{min-height:40px;font-size:14px}.phd-filter-form input:not([type=radio]):not([type=range]),.phd-filter-form select{font-size:16px!important;min-height:44px}.phd-discovery-part [data-phd-apply]{min-height:44px}.phd-discovery-toolbar{gap:10px;align-items:flex-start}.phd-discovery-toolbar>div:first-child{flex:1 1 100%}.phd-discovery-toolbar form{flex:1 1 160px}.phd-discovery-toolbar select{min-height:42px;font-size:14px}.phd-view-switch button{min-width:42px;min-height:42px}.phd-discovery-pagination button{min-width:40px;min-height:40px}.phd-discovery-part [data-phd-result-grid]{grid-template-columns:minmax(0,1fr);gap:14px}.phd-discovery-map,.phd-explorer .phd-discovery-map{height:clamp(320px,58svh,480px);min-height:300px}.phd-map-bar{top:10px;left:10px;right:10px;max-width:calc(100% - 20px);padding:10px}.phd-map-bar [data-phd-area]{min-height:40px;font-size:12px}.phd-part-map .leaflet-control-zoom a{width:38px;height:38px;line-height:38px}.phd-marker-card img{width:64px;flex-basis:64px}.phd-marker-card{max-width:210px}.phd-part-map{position:relative}.phd-part-filters>.phd-panel-toggle,.phd-part-map>.phd-panel-toggle{display:flex!important;align-items:center;gap:8px;justify-content:flex-start;width:100%;min-height:44px;text-align:left;border:0;background:#fff;font-weight:650;padding:8px 0}.phd-panel-chevron{margin-left:auto}.phd-part-map>.phd-panel-toggle{padding:12px 16px}.phd-part-filters:not(.is-panel-open)>.phd-filter-form,.phd-part-filters:not(.is-panel-open)>.phd-component-notice,.phd-part-map:not(.is-panel-open)>.phd-map-bar,.phd-part-map:not(.is-panel-open)>.phd-discovery-map{display:none}.phd-part-map.is-panel-open>.phd-map-bar{top:64px}.phd-explorer>.phd-part-filters>.phd-panel-toggle,.phd-explorer>.phd-part-map>.phd-panel-toggle{display:none!important}.phd-explorer>.phd-part-filters>.phd-filter-form,.phd-explorer>.phd-part-map>.phd-discovery-map{display:flex}.phd-explorer>.phd-part-map>.phd-discovery-map{display:block}.phd-explorer>.phd-part-map>.phd-map-bar{display:flex;top:10px}.phd-explorer-mobile button{min-height:44px}.phd-discovery-part .is-list .phd-card{grid-template-columns:minmax(88px,30%) minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.phd-discovery-part *{scroll-behavior:auto!important;transition:none!important}}
.phd-discovery-part .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
