/* MISTER FAST V36.6 — Compact Route Dock
   Patch only. Keeps all existing route data, markers and APIs. */
:root{
  --mf366-blue:#003DA5;
  --mf366-deep:#082B5C;
  --mf366-yellow:#FFC400;
  --mf366-white:#FFFFFF;
  --mf366-green:#22C55E;
  --mf366-red:#EF4444;
  --mf366-orange:#F97316;
  --mf366-border:#D9E4F2;
}

.mf-lmc-map-panel{position:relative!important;overflow:hidden}

/* Remove the oversized instruction rectangle; route workflow remains active. */
.mf-lmc-map-message{display:none!important}

/* Compact icon dock at the bottom of the map. */
.mf-v362-route-planner.mf-v366-route-dock{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:14px!important;
  transform:translateX(-50%)!important;
  z-index:820!important;
  width:auto!important;
  max-width:calc(100% - 150px)!important;
  min-height:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:9px!important;
  margin:0!important;
  border:1px solid var(--mf366-border)!important;
  border-radius:21px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 14px 36px rgba(0,61,165,.18)!important;
  backdrop-filter:blur(12px)!important;
}

.mf-v366-route-dock .mf-v362-help{display:none!important}

.mf-v366-route-dock .mf-v362-place,
.mf-v366-route-dock .mf-v362-use-location,
.mf-v366-route-dock .mf-v362-add-stop,
.mf-v366-route-dock .mf-v366-reset{
  position:relative!important;
  flex:0 0 72px!important;
  width:72px!important;
  min-width:72px!important;
  height:66px!important;
  min-height:66px!important;
  margin:0!important;
  padding:7px 5px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid var(--mf366-border)!important;
  border-radius:16px!important;
  background:var(--mf366-white)!important;
  color:var(--mf366-deep)!important;
  box-shadow:0 7px 18px rgba(0,61,165,.10)!important;
  cursor:pointer!important;
  overflow:hidden!important;
}

.mf-v366-route-dock .mf-v362-place:hover,
.mf-v366-route-dock .mf-v362-use-location:hover,
.mf-v366-route-dock .mf-v362-add-stop:hover,
.mf-v366-route-dock .mf-v366-reset:hover{
  transform:translateY(-2px)!important;
  border-color:var(--mf366-yellow)!important;
  background:#FFF9DC!important;
}

.mf-v366-route-dock .mf-v362-place.is-active{
  border:2px solid var(--mf366-blue)!important;
  background:#EEF5FF!important;
}

.mf-v366-route-dock .mf-v362-place i{
  width:27px!important;height:27px!important;min-width:27px!important;
  border-radius:50%!important;display:grid!important;place-items:center!important;
  box-shadow:none!important;margin:0!important;
}
.mf-v366-route-dock .mf-v362-place i.pickup{background:var(--mf366-green)!important}
.mf-v366-route-dock .mf-v362-place i.dropoff{background:var(--mf366-red)!important}
.mf-v366-route-dock .mf-v362-place i:after{content:'📍';font-style:normal;font-size:15px;filter:brightness(0) invert(1)}

.mf-v366-route-dock .mf-v362-place span{display:block!important;min-width:0!important}
.mf-v366-route-dock .mf-v362-place small{display:none!important}
.mf-v366-route-dock .mf-v362-place b,
.mf-v366-route-dock .mf-v362-use-location,
.mf-v366-route-dock .mf-v362-add-stop,
.mf-v366-route-dock .mf-v366-reset{
  font-size:10px!important;font-weight:900!important;line-height:1.15!important;text-align:center!important;
}
.mf-v366-route-dock .mf-v362-place b{font-size:0!important}
.mf-v366-route-dock .mf-v362-place[data-v362-mode="pickup"] b:after{content:'จุดรับ';font-size:10px}
.mf-v366-route-dock .mf-v362-place[data-v362-mode="dropoff"] b:after{content:'จุดส่ง';font-size:10px}
.mf-v366-route-dock .mf-v362-place em{display:none!important}

.mf-v366-route-dock .mf-v362-use-location{font-size:0!important;color:var(--mf366-blue)!important}
.mf-v366-route-dock .mf-v362-use-location:before{content:'◎';font-size:28px;line-height:1;color:var(--mf366-blue)}
.mf-v366-route-dock .mf-v362-use-location:after{content:'ตำแหน่งฉัน';font-size:10px;color:var(--mf366-deep)}

.mf-v366-route-dock .mf-v362-add-stop{font-size:0!important;color:var(--mf366-orange)!important}
.mf-v366-route-dock .mf-v362-add-stop:before{content:'＋';display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--mf366-orange);color:#fff;font-size:23px}
.mf-v366-route-dock .mf-v362-add-stop:after{content:'เพิ่มจุดแวะ';font-size:10px;color:var(--mf366-deep)}
.mf-v366-route-dock .mf-v362-add-stop:disabled{opacity:.5!important;cursor:not-allowed!important}

.mf-v366-route-dock .mf-v366-reset:before{content:'↻';font-size:29px;line-height:1;color:var(--mf366-blue)}
.mf-v366-route-dock .mf-v366-reset:after{content:'เริ่มใหม่';font-size:10px;color:var(--mf366-deep)}

/* Keep route totals visible but compact, using the original live data elements. */
.mf-v362-route-summary.mf-v366-mini-summary{
  position:absolute!important;
  left:14px!important;
  top:14px!important;
  z-index:810!important;
  width:226px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
  padding:9px!important;
  border:1px solid var(--mf366-border)!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 12px 30px rgba(0,61,165,.16)!important;
  backdrop-filter:blur(10px)!important;
}
.mf-v362-route-summary.mf-v366-mini-summary[hidden]{display:none!important}
.mf-v366-mini-summary span{padding:8px!important;border-radius:12px!important;background:#F4F8FF!important;text-align:center!important}
.mf-v366-mini-summary small{display:block!important;font-size:9px!important;color:#6680A3!important}
.mf-v366-mini-summary b{font-size:15px!important;color:var(--mf366-blue)!important}
.mf-v366-mini-summary button{display:none!important}

/* Native locate stays as a small bright icon, never a long bar. */
.mf-lmc-locate{
  left:14px!important;bottom:14px!important;width:46px!important;min-width:46px!important;height:46px!important;
  padding:0!important;font-size:0!important;border-radius:14px!important;background:#fff!important;color:var(--mf366-blue)!important;
}
.mf-lmc-locate:before{content:'◎';font-size:22px;color:var(--mf366-blue)}

/* Fullscreen button remains top-right on the map and icon-first. */
.mf-v365-map-expand{top:14px!important;right:14px!important;width:46px!important;min-width:46px!important;height:46px!important;padding:0!important;justify-content:center!important}
.mf-v365-map-expand b{display:none!important}

@media(max-width:900px){
  .mf-v362-route-planner.mf-v366-route-dock{max-width:calc(100% - 24px)!important;bottom:10px!important;gap:5px!important;padding:7px!important}
  .mf-v366-route-dock .mf-v362-place,.mf-v366-route-dock .mf-v362-use-location,.mf-v366-route-dock .mf-v362-add-stop,.mf-v366-route-dock .mf-v366-reset{
    flex-basis:58px!important;width:58px!important;min-width:58px!important;height:58px!important;min-height:58px!important;border-radius:14px!important
  }
  .mf-v362-route-summary.mf-v366-mini-summary{left:8px!important;top:8px!important;width:188px!important}
  .mf-lmc-locate{display:none!important}
}

@media(max-width:520px){
  .mf-v362-route-planner.mf-v366-route-dock{overflow-x:auto!important;justify-content:flex-start!important;left:8px!important;right:8px!important;transform:none!important;width:auto!important;max-width:none!important;scrollbar-width:none!important}
  .mf-v362-route-planner.mf-v366-route-dock::-webkit-scrollbar{display:none}
  .mf-v366-route-dock .mf-v362-place,.mf-v366-route-dock .mf-v362-use-location,.mf-v366-route-dock .mf-v362-add-stop,.mf-v366-route-dock .mf-v366-reset{flex:0 0 54px!important;width:54px!important;min-width:54px!important;height:54px!important;min-height:54px!important}
  .mf-v366-route-dock .mf-v362-place b:after,.mf-v366-route-dock .mf-v362-use-location:after,.mf-v366-route-dock .mf-v362-add-stop:after,.mf-v366-route-dock .mf-v366-reset:after{font-size:9px!important}
  .mf-v362-route-summary.mf-v366-mini-summary{width:170px!important;padding:7px!important}
}
