.wmp{position:relative;height:var(--wmp-h,620px);border-radius:18px;overflow:hidden;border:1px solid #e3e8f0;box-shadow:0 8px 26px rgba(13,40,90,.08);font-family:Sarabun,Tahoma,sans-serif;background:#e8eef6;text-align:left}
.wmp *{box-sizing:border-box}
.wmp-map{position:absolute;inset:0;z-index:1}
.wmp .leaflet-container{font-family:Sarabun,Tahoma,sans-serif}
/* แผงชั้นข้อมูล */
.wmp-panel{position:absolute;z-index:500;left:14px;top:14px;width:290px;max-height:calc(100% - 28px);display:flex;flex-direction:column;background:rgba(255,255,255,.97);border-radius:16px;box-shadow:0 10px 30px rgba(13,40,90,.18);overflow:hidden}
.wmp-ph{display:flex;align-items:center;gap:8px;width:100%;border:0;background:#fff;padding:12px 14px;cursor:pointer;font:600 15.5px Kanit,sans-serif;color:#0d3b8e;border-bottom:1px solid #edf0f5;text-align:left;min-height:0;text-transform:none}
.wmp-ph span{flex:1}.wmp-ph b{font:500 12px Kanit,sans-serif;background:#eef3ff;color:#1557d6;padding:2px 9px;border-radius:12px}
.wmp-ph i{font-style:normal;transition:transform .2s;color:#8a94a3}
.wmp-closed .wmp-ph i{transform:rotate(180deg)}.wmp-closed .wmp-pb{display:none}.wmp-closed .wmp-ph{border-bottom:0}
.wmp-pb{padding:10px;overflow:auto;display:flex;flex-direction:column;gap:6px}.wmp-pb>*{flex-shrink:0}
.wmp-s{display:flex;align-items:center;gap:6px;border:1.5px solid #e3e8f0;border-radius:12px;padding:0 10px;background:#f8fafc;margin:0 0 4px}
.wmp-s input{flex:1;min-width:0;border:0!important;background:transparent!important;padding:9px 0!important;font:inherit;font-size:15px;outline:0;box-shadow:none!important;margin:0}
.wmp-s:focus-within{border-color:#1557d6;background:#fff}
.wmp-pb button{font:inherit;text-transform:none;letter-spacing:0;min-height:0;box-shadow:none}
.wmp-all{border:1px solid #d6e2fb;background:#fff;color:#41506a;border-radius:10px;padding:8px 10px;font-size:14px!important;cursor:pointer;text-align:left}
.wmp-all.on{background:#eef3ff;color:#1557d6;border-color:#b9cdf6}
.wmp-c{display:flex;align-items:center;gap:8px;border:1px solid #e3e8f0;background:#fff;border-radius:10px;padding:6px 10px;cursor:pointer;text-align:left;color:#9aa3b2;transition:.15s}
.wmp-c i{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-style:normal;font-size:15px;background:#f1f3f7;filter:grayscale(1);opacity:.6}
.wmp-c span{flex:1;font-size:14px;line-height:1.3}
.wmp-c b{font:500 12px Kanit,sans-serif;color:#9aa3b2}
.wmp-c.on{color:#17202e;border-color:color-mix(in srgb,var(--c) 40%,#fff);background:color-mix(in srgb,var(--c) 6%,#fff)}
.wmp-c.on i{background:var(--c);filter:none;opacity:1}
.wmp-c.on b{color:var(--c)}
.wmp-c:hover{border-color:var(--c)}
.wmp-res{border-top:1px solid #edf0f5;padding-top:6px;display:flex;flex-direction:column;gap:2px}
.wmp-res button{display:flex;gap:8px;align-items:center;border:0;background:none;padding:6px;border-radius:8px;cursor:pointer;text-align:left;color:#17202e}
.wmp-res button:hover{background:#eef3ff}.wmp-res i{font-style:normal}.wmp-res small{display:block;color:#8a94a3;font-size:12px}.wmp-res p{margin:4px 6px;color:#8a94a3;font-size:14px}
.wmp-me{margin-top:4px;border:0;background:#1557d6;color:#fff;border-radius:10px;padding:9px;font:500 14px Kanit,sans-serif!important;cursor:pointer}
.wmp-me:hover{background:#0d3b8e}
.wmp-none{font-size:13.5px;color:#8a94a3;margin:4px}
.wmp-pb button:focus-visible,.wmp-ph:focus-visible{outline:3px solid #e2a72e;outline-offset:1px}
/* หมุด */
.wmp-pin span{display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--c);border:3px solid #fff;box-shadow:0 4px 10px rgba(0,0,0,.3)}
.wmp-pin i{transform:rotate(45deg);font-style:normal;font-size:16px;line-height:1}
.wmp-home span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#e2a72e,#c98a12);border:3px solid #fff;box-shadow:0 0 0 4px rgba(226,167,46,.35),0 6px 14px rgba(0,0,0,.3);font-size:19px}
.wmp-cl{display:grid;place-items:center;border-radius:50%;background:#1557d6;color:#fff;font:600 14px Kanit,sans-serif;box-shadow:0 0 0 6px rgba(21,87,214,.25),0 4px 10px rgba(0,0,0,.25);border:2px solid #fff}
.wmp-ring span{display:inline-block;transform:translate(-50%,-50%);background:#fff;color:#1557d6;font:500 12px Kanit,sans-serif;padding:2px 9px;border-radius:12px;box-shadow:0 2px 6px rgba(13,40,90,.2);white-space:nowrap}
/* ป๊อปอัป */
.wmp .leaflet-popup-content-wrapper{border-radius:14px;padding:0;overflow:hidden}
.wmp .leaflet-popup-content{margin:0;min-width:230px}
.wmp-pop{padding:0 0 12px}
.wmp-pop img{display:block;width:100%;height:130px;object-fit:cover;margin:0 0 8px}
.wmp-pop>*:not(img){margin-left:14px;margin-right:14px}
.wmp-pop>.wmp-tag:first-child{margin-top:12px}
.wmp-tag{display:inline-block;font:500 11.5px Kanit,sans-serif;color:var(--c);background:color-mix(in srgb,var(--c) 10%,#fff);padding:2px 9px;border-radius:10px}
.wmp-pop b{display:block;font:600 16px/1.35 Kanit,sans-serif;color:#0d3b8e;margin-top:5px}
.wmp-pop p{margin:4px 14px!important;color:#41506a;font-size:13.5px;line-height:1.5}
.wmp-pop ul{list-style:none;padding:0!important;margin:6px 14px!important;font-size:13px;color:#5f6b7d}.wmp-pop li{margin:2px 0}
.wmp-acts{display:flex;gap:8px;margin-top:8px!important}
.wmp-acts a{flex:1;text-align:center;border-radius:20px;padding:6px 8px;font:500 13px Kanit,sans-serif;text-decoration:none!important;border:1px solid #1557d6;color:#1557d6!important}
.wmp-acts a.wmp-go{background:#1557d6;color:#fff!important}
/* ชื่อแผนที่ */
.wmp-title{margin:0 0 12px!important;text-align:center;font:600 24px/1.35 Kanit,sans-serif!important;color:#1a3fb8!important}
.wmp-title::after{content:"";display:block;width:56px;height:3px;margin:6px auto 0;border-radius:3px;background:linear-gradient(90deg,#1557d6,#e2a72e)}
.wmp-title-mini{font-size:19px!important;margin-bottom:10px!important}
/* แผนที่ย่อ */
.wmp-mini{border-radius:14px;box-shadow:0 4px 14px rgba(13,40,90,.1)}
.wmp-mini .leaflet-control-attribution{font-size:9px}
.wmp-mini .wmp-pin span{width:28px;height:28px;border-width:2px}.wmp-mini .wmp-pin i{font-size:13px}
.wmp-mini .wmp-cl{font-size:12px}.wmp-mini .wmp-ring span{font-size:10.5px;padding:1px 7px}
.wmp-full{position:absolute;inset:0;z-index:700;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;text-decoration:none!important;cursor:pointer;background:linear-gradient(180deg,rgba(255,255,255,0) 60%,rgba(13,40,90,.35));transition:background .2s}
.wmp-full:hover{background:linear-gradient(180deg,rgba(21,87,214,.08),rgba(13,40,90,.45))}
.wmp-badge{align-self:flex-start;margin:8px;font:500 12px Kanit,sans-serif;font-style:normal;background:#fff;color:#1557d6;padding:3px 10px;border-radius:12px;box-shadow:0 2px 6px rgba(13,40,90,.2)}
.wmp-badge:empty{display:none}
.wmp-full span{margin:8px;background:#1557d6;color:#fff;text-align:center;padding:9px 10px;border-radius:10px;font:500 15px Kanit,sans-serif;box-shadow:0 4px 12px rgba(13,40,90,.3);transition:transform .15s}
.wmp-full:hover span{background:#0d3b8e;transform:translateY(-2px)}
.wmp-full:focus-visible{outline:3px solid #e2a72e;outline-offset:-3px}
@media(max-width:700px){.wmp .leaflet-top.leaflet-right{top:58px}.wmp:not(.wmp-mini){height:min(var(--wmp-h,620px),78vh);border-radius:12px}.wmp-panel{left:8px;right:8px;top:8px;width:auto;max-height:62%}}
