/* === Apátsági Pincészet – Értékesítési pontok CSS === */
.apsl{
    --apsl-primary:var(--wd-primary-color);
    --apsl-ink:#26211f;
    --apsl-muted:rgba(38,33,31,.62);
    --apsl-line:rgba(38,33,31,.12);
    --apsl-card:#f7f5f1;
    --apsl-title:"FreightDisp","Freight Display","Freight Display Pro",serif;
    --apsl-body:"Lexend",sans-serif;
    color:var(--apsl-ink);
    font-family:var(--apsl-body);
}
.apsl{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 16px 44px rgba(38,33,31,.12); padding:20px;}
.apsl-toolbar{display:flex;align-items:center;gap:0;margin-bottom:18px;padding:4px;background:#f7f5f1;border:1px solid color-mix(in srgb,var(--apsl-primary) 22%,var(--apsl-line));border-radius:12px;width:max-content;max-width:100%;box-shadow:0 5px 18px rgba(38,33,31,.06)}
.apsl-toolbar button{border:0!important;background:transparent!important;padding:12px 22px!important;cursor:pointer;font-family:var(--apsl-body)!important;font-size:11px!important;font-weight:600!important;text-transform:uppercase;letter-spacing:.12em;color:var(--apsl-muted)!important;border-radius:8px!important;transition:.2s ease}
.apsl-toolbar button.is-active{background:var(--apsl-primary)!important;color:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.apsl-search-row{display:flex;gap:10px;margin-bottom:20px;align-items:stretch}
.apsl-search{display:flex;align-items:center;gap:12px;border:2px solid var(--apsl-primary)!important;height:58px;padding:0 18px;flex:1;background:#fff;border-radius:12px;box-shadow:0 7px 24px rgba(38,33,31,.10);transition:.2s ease}
.apsl-search:focus-within{border-color:var(--apsl-primary)!important;box-shadow:0 9px 28px rgba(38,33,31,.15),0 0 0 3px color-mix(in srgb,var(--apsl-primary) 12%,transparent)}
.apsl-search span{font-size:21px;line-height:1;color:var(--apsl-primary)}
.apsl-search input{border:0!important;outline:0!important;background:transparent!important;width:100%;height:100%;box-shadow:none!important;font-family:var(--apsl-body)!important;font-size:13px!important}
.apsl-search input::placeholder{color:var(--apsl-muted)}
.apsl .apsl-nearest{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;padding:0!important;margin:0!important;border:2px solid var(--wd-primary-color)!important;background:var(--wd-primary-color)!important;background-color:var(--wd-primary-color)!important;color:#fff!important;display:grid!important;place-items:center!important;cursor:pointer;border-radius:12px!important;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease!important;box-shadow:0 8px 22px rgba(38,33,31,.16)!important;appearance:none!important;-webkit-appearance:none!important}
.apsl .apsl-nearest svg{width:21px!important;height:21px!important;fill:none!important;stroke:#fff!important;stroke-width:1.8!important}
.apsl .apsl-nearest:hover,.apsl .apsl-nearest.is-active{background:var(--wd-primary-color)!important;background-color:var(--wd-primary-color)!important;color:#fff!important;border-color:var(--wd-primary-color)!important;box-shadow:0 10px 26px rgba(38,33,31,.22)!important;transform:translateY(-1px)}
.apsl-nearest.is-loading{opacity:.55;pointer-events:none}
.apsl-layout{display:grid;grid-template-columns:minmax(340px,38%) 1fr;border:1px solid var(--apsl-line);border-radius:18px;overflow:hidden;min-height:650px;background:#fff;box-shadow:0 14px 40px rgba(38,33,31,.10)}
.apsl-list{min-width:0;overflow:auto;max-height:650px;border-right:1px solid var(--apsl-line);padding:14px}
.apsl-count{padding:5px 8px 15px;font-family:var(--apsl-body);font-size:10px;font-weight:500;letter-spacing:.15em;color:var(--apsl-muted)}
.apsl-items{display:grid;gap:8px}
.apsl-item{position:relative;background:var(--apsl-card);border:1px solid var(--apsl-line);border-radius:14px;overflow:hidden;transition:border-color .25s ease,transform .25s ease,background .25s ease,box-shadow .25s ease}
.apsl-item:hover,.apsl-item.is-active{border-color:rgba(122,32,48,.28);background:#fbfaf8;box-shadow:0 8px 24px rgba(38,33,31,.06);transform:translateY(-1px)}
.apsl-item-main{display:block;width:100%;text-align:left;background:transparent;border:0!important;padding:17px 18px 18px;cursor:pointer;color:inherit;box-shadow:none!important}
.apsl-item-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.apsl-item strong{font-family:var(--apsl-title);font-size:23px;line-height:1;font-weight:600;letter-spacing:.005em;color:var(--apsl-primary);display:block;margin:0}
.apsl-item-route{flex:0 0 36px!important;width:36px!important;height:36px!important;margin:0!important;padding:0!important;border:1px solid rgba(38,33,31,.13)!important;border-radius:50%;display:grid!important;place-items:center;background:#fff;text-decoration:none!important;color:var(--apsl-primary)!important;transition:.2s ease}
.apsl-item-route:hover{background:var(--apsl-primary)!important;border-color:var(--apsl-primary)!important;color:#fff!important}
.apsl-item-route svg{width:19px;height:19px;fill:currentColor;stroke:none}
.apsl-distance-badge{display:block!important;width:max-content;white-space:nowrap!important;margin:0 0 10px!important;color:var(--apsl-primary)!important;font-size:9px!important;font-weight:600!important;letter-spacing:.04em!important}
.apsl-item-data{display:grid;gap:4px}
.apsl-item span{display:block;font-family:var(--apsl-body);font-size:12px;line-height:12px;letter-spacing:.08em;color:var(--apsl-muted);margin:0;text-transform:uppercase}
.apsl-item small{display:block;font-family:var(--apsl-body);font-size:12px;line-height:12px;color:var(--apsl-muted);margin:0 0 3px}
.apsl-item-link {
    display: block;
    width: max-content;
    max-width: 100%;
    font-family: var(--apsl-body);
    font-size: 13px;
    line-height: 15px;
    color: var(--apsl-ink) !important;
    font-weight:900;
    text-decoration: none !important;
    overflow-wrap: anywhere;
}
.website {color: var(--apsl-primary) !important;}
.apsl-item-link:hover{color:var(--apsl-primary)!important}
.apsl-map{min-width:0;min-height:650px;background:#eee}
.apsl-map .leaflet-control-attribution{font-size:9px}
.apsl-marker-wrap,.apsl-user-wrap{background:none;border:0}
.apsl-marker{display:block;width:15px;height:15px;border-radius:50%;background:var(--apsl-primary);border:3px solid #fff;box-shadow:0 2px 10px rgba(0,0,0,.24)}
.apsl-user{display:block;width:17px;height:17px;border-radius:50%;background:#c5963a;border:4px solid #fff;box-shadow:0 0 0 4px rgba(197,150,58,.22),0 2px 10px rgba(0,0,0,.28)}
.apsl-popup{font-family:var(--apsl-body);line-height:1.5;min-width:220px;font-size:12px;color:var(--apsl-ink);padding-bottom:6px}
.apsl-popup strong{display:block;font-family:var(--apsl-title);font-size:23px;line-height:1;margin-bottom:9px;color:var(--apsl-primary)}
.apsl-popup-address{margin-bottom:2px}
.apsl-popup-contact{margin-top:8px}
.apsl-distance{margin:8px 0;color:var(--apsl-primary);font-weight:600}
.apsl-popup-actions{display:flex;gap:16px;margin-top:15px;padding-top:12px;padding-bottom:3px;border-top:1px solid var(--apsl-line)}
.apsl-popup-actions a{text-decoration:none!important;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.apsl-popup-actions .apsl-route{color:var(--apsl-primary)}
.apsl-popup-actions .apsl-web{color:var(--apsl-primary)!important}
.apsl-popup-actions span{font-size:14px}
@media(max-width:767px){
.apsl-toolbar{gap:20px}
.apsl-search-row{gap:8px}
.apsl-layout{display:flex;flex-direction:column}
.apsl-map{order:-1;min-height:48vh}
.apsl-list{max-height:none;border-right:0;padding:10px}
.apsl-item strong{font-size:21px}
}
/* === END – Apátsági Pincészet értékesítési pontok CSS === */

/* === Térképi jelölő === */
.apsl-marker-wrap{background:none!important;border:0!important}.apsl-map-pin{position:relative;display:block;width:34px;height:42px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.25))}.apsl-map-pin:before{content:"";position:absolute;left:3px;top:1px;width:28px;height:28px;border-radius:50% 50% 50% 0;background:var(--apsl-primary);border:3px solid #fff;transform:rotate(-45deg);box-sizing:border-box}.apsl-map-pin i{position:absolute;left:11px;top:9px;width:12px;height:12px;border-radius:50%;background:#fff;z-index:2}.apsl-map-pin i:after{content:"";position:absolute;left:3px;top:3px;width:6px;height:6px;border-radius:50%;background:var(--apsl-primary)}
/* === END === */
