:root{
  --lc-mm-primary:#2E7D32;
  --lc-mm-primary-dark:#1B5E20;
  --lc-mm-bg:#ffffff;
  --lc-mm-text:#344054;
  --lc-mm-muted:#667085;
  --lc-mm-border:rgba(16,24,40,.08);
  --lc-mm-shadow:0 -10px 35px rgba(16,24,40,.14);
  --lc-mm-radius:24px;
}

.lc-mobile-menu{
  display:none;
}

@media (max-width: 768px){
  body{
    padding-bottom:82px;
  }

  .lc-mobile-menu{
    position:fixed;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:99999;
    display:block;
    pointer-events:none;
  }

  .lc-mobile-menu__inner{
    pointer-events:auto;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
    min-height:68px;
    background:var(--lc-mm-bg);
    border:1px solid var(--lc-mm-border);
    border-radius:var(--lc-mm-radius);
    box-shadow:var(--lc-mm-shadow);
    padding:7px 7px 8px;
    backdrop-filter:blur(12px);
  }

  .lc-mobile-menu__item{
    position:relative;
    min-width:0;
    height:54px;
    border-radius:18px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:var(--lc-mm-muted);
    text-decoration:none !important;
    line-height:1;
    transition:background .18s ease,color .18s ease,transform .18s ease;
    -webkit-tap-highlight-color:transparent;
  }

  .lc-mobile-menu__item:hover,
  .lc-mobile-menu__item:focus,
  .lc-mobile-menu__item.is-active{
    background:rgba(46,125,50,.10);
    color:var(--lc-mm-primary);
    outline:none;
  }

  .lc-mobile-menu__item:active{
    transform:scale(.96);
  }

  .lc-mobile-menu__icon{
    width:23px;
    height:23px;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .lc-mobile-menu__icon svg{
    width:23px;
    height:23px;
    display:block;
  }

  .lc-mobile-menu__label{
    display:block;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:10.5px;
    font-weight:700;
    letter-spacing:-.01em;
  }

  .lc-mobile-menu__badge{
    position:absolute;
    top:4px;
    right:20px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:#E53935;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-weight:800;
    box-shadow:0 5px 14px rgba(229,57,53,.35);
  }

  .lc-mobile-menu__badge[hidden]{
    display:none !important;
  }
}

@media (max-width: 360px){
  .lc-mobile-menu{
    left:7px;
    right:7px;
    bottom:7px;
  }

  .lc-mobile-menu__inner{
    min-height:64px;
    padding:6px;
  }

  .lc-mobile-menu__label{
    font-size:9.5px;
  }
}
