/* MISTER FAST LiveMapChat WEB V2.1.2
   Google-style pane controls + search results below map.
   UI-only overlay: no API/session/database changes. */
:root{
  --mf212-sidebar:246px;
  --mf212-sidebar-collapsed:76px;
  --mf212-chat:380px;
  --mf212-chat-min:320px;
  --mf212-chat-max:620px;
  --mf212-handle:30px;
}

@media (min-width:901px){
  body.mf-web-google-layout-v212 .mf514-grid,
  body.mf-web-google-layout-v212 .mf514-window.is-expanded .mf514-grid,
  body.mf-web-google-layout-v212 .mf514-window.is-map-fullscreen .mf514-grid,
  body.mf-web-google-layout-v212 .mf514-window.mf593-map-hidden .mf514-grid,
  body.mf-web-google-layout-v212 .mf514-window.mf59-map-open .mf514-grid{
    display:grid!important;
    grid-template-columns:var(--mf212-sidebar) minmax(420px,1fr) var(--mf212-handle) minmax(0,var(--mf212-chat))!important;
    grid-template-areas:"sidebar map handle chat"!important;
    overflow:hidden!important;
    transition:grid-template-columns .18s ease!important;
  }

  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-grid{
    --mf212-sidebar:var(--mf212-sidebar-collapsed);
  }

  body.mf-web-google-layout-v212.mf212-chat-collapsed .mf514-grid{
    --mf212-chat:0px;
    grid-template-columns:var(--mf212-sidebar) minmax(420px,1fr) var(--mf212-handle) 0!important;
  }

  body.mf-web-google-layout-v212 .mf514-sidebar{grid-area:sidebar!important;min-width:0!important;overflow:hidden!important}
  body.mf-web-google-layout-v212 .mf514-map-pane{grid-area:map!important;display:grid!important;grid-template-rows:auto minmax(300px,1fr) auto!important;min-width:0!important;min-height:0!important;overflow:hidden!important}
  body.mf-web-google-layout-v212 .mf514-map-toolbar{grid-row:1!important}
  body.mf-web-google-layout-v212 .mf514-map-wrap{grid-row:2!important;min-height:300px!important;height:auto!important;overflow:hidden!important}
  body.mf-web-google-layout-v212 .mf6192-driver-section{
    grid-row:3!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:190px!important;
    min-height:150px!important;
    max-height:220px!important;
    margin:0!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:0!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 -8px 24px rgba(15,42,79,.08)!important;
    z-index:30!important;
  }
  body.mf-web-google-layout-v212 .mf6192-driver-list{
    display:flex!important;
    gap:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:10px 14px 14px!important;
    scroll-snap-type:x proximity;
  }
  body.mf-web-google-layout-v212 .mf6192-driver-list>*{
    flex:0 0 min(320px,82vw)!important;
    scroll-snap-align:start;
  }

  body.mf-web-google-layout-v212 .mf514-chat-pane{
    grid-area:chat!important;
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
    transition:opacity .15s ease,transform .18s ease!important;
  }
  body.mf-web-google-layout-v212.mf212-chat-collapsed .mf514-chat-pane{
    opacity:0!important;
    pointer-events:none!important;
    transform:translateX(16px)!important;
  }

  body.mf-web-google-layout-v212 .mf59-edge-handle{
    grid-area:handle!important;
    display:grid!important;
    align-self:center!important;
    justify-self:center!important;
    width:28px!important;
    height:78px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #d8e2ef!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#003DA5!important;
    box-shadow:0 7px 20px rgba(15,42,79,.18)!important;
    cursor:col-resize!important;
    place-items:center!important;
    z-index:1250!important;
  }
  body.mf-web-google-layout-v212 .mf59-edge-handle:hover,
  body.mf-web-google-layout-v212 .mf59-edge-handle:focus-visible{background:#003DA5!important;color:#fff!important;border-color:#003DA5!important}
  body.mf-web-google-layout-v212 .mf59-edge-handle span{font-size:25px!important;line-height:1!important;transition:transform .18s ease}
  body.mf-web-google-layout-v212.mf212-chat-collapsed .mf59-edge-handle span{transform:rotate(180deg)}

  body.mf-web-google-layout-v212 .mf212-sidebar-toggle{
    position:absolute;
    left:calc(var(--mf212-sidebar) - 14px);
    top:50%;
    transform:translateY(-50%);
    z-index:1300;
    width:28px;
    height:72px;
    border:1px solid #d8e2ef;
    border-radius:0 14px 14px 0;
    background:#fff;
    color:#003DA5;
    box-shadow:0 7px 20px rgba(15,42,79,.18);
    display:grid;
    place-items:center;
    cursor:pointer;
    transition:left .18s ease,background .15s,color .15s;
  }
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf212-sidebar-toggle{left:calc(var(--mf212-sidebar-collapsed) - 14px)}
  body.mf-web-google-layout-v212 .mf212-sidebar-toggle:hover,
  body.mf-web-google-layout-v212 .mf212-sidebar-toggle:focus-visible{background:#003DA5;color:#fff}
  body.mf-web-google-layout-v212 .mf212-sidebar-toggle span{font-size:23px;font-weight:900;transition:transform .18s ease}
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf212-sidebar-toggle span{transform:rotate(180deg)}

  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-brand b,
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-brand small,
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-user,
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu button b,
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf21-role-strip{display:none!important}
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu button{justify-content:center!important;padding-left:0!important;padding-right:0!important}
  body.mf-web-google-layout-v212.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu button span{margin:0!important}
}

@media (max-width:900px){
  body.mf-web-google-layout-v212 .mf212-sidebar-toggle{display:none!important}
}

/* V2.1.3 reliability hotfix: controls are visible before JavaScript boots. */
@media (min-width:901px){
  body.mf-web-google-layout-v213 .mf514-window{position:relative!important;overflow:hidden!important}
  body.mf-web-google-layout-v213 .mf514-grid{position:relative!important;isolation:isolate!important}

  body.mf-web-google-layout-v213 .mf212-sidebar-toggle{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:absolute!important;
    top:calc(50% + 28px)!important;
    left:calc(var(--mf212-sidebar) - 1px)!important;
    transform:translate(-50%,-50%)!important;
    z-index:2147483000!important;
  }
  body.mf-web-google-layout-v213.mf212-sidebar-collapsed .mf212-sidebar-toggle{
    left:calc(var(--mf212-sidebar-collapsed) - 1px)!important;
  }

  body.mf-web-google-layout-v213 .mf59-edge-handle{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:relative!important;
    inset:auto!important;
    align-self:stretch!important;
    justify-self:stretch!important;
    width:var(--mf212-handle)!important;
    height:auto!important;
    min-height:100px!important;
    margin:0!important;
    border-radius:0!important;
    border-top:0!important;
    border-bottom:0!important;
    cursor:col-resize!important;
    z-index:2147482000!important;
    touch-action:none!important;
    user-select:none!important;
  }
  body.mf-web-google-layout-v213 .mf59-edge-handle::before{
    content:"";
    width:5px;
    height:72px;
    border-radius:999px;
    background:#003DA5;
    opacity:.28;
    position:absolute;
    left:50%;top:50%;transform:translate(-50%,-50%);
  }
  body.mf-web-google-layout-v213 .mf59-edge-handle span{
    position:relative!important;
    z-index:2!important;
    display:grid!important;
    place-items:center!important;
    width:24px!important;
    height:42px!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(0,61,165,.22)!important;
  }
  body.mf-web-google-layout-v213.mf59-resizing,
  body.mf-web-google-layout-v213.mf59-resizing *{cursor:col-resize!important;user-select:none!important}
}
