/* V107 — compact quick-action dock; replaces the oversized floating popup */
@media (max-width: 820px){
  .mobile-action-bar{
    position:fixed!important;
    right:16px!important;
    left:auto!important;
    bottom:calc(18px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:calc(100vw - 32px)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    gap:9px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(0,20px,0) scale(.96)!important;
    z-index:99970!important;
    transition:opacity .3s ease, transform .3s ease, visibility .3s ease!important;
    animation:none!important;
  }
  .mobile-action-bar.is-visible{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0) scale(1)!important;
  }
  .mobile-action-bar.is-dismissed{display:none!important}

  .mobile-action-bar .mobile-action-close{
    position:static!important;
    order:5!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    margin:2px 2px 0 0!important;
    background:linear-gradient(145deg,#f52231,#a90010)!important;
    border:1px solid rgba(255,255,255,.38)!important;
    color:#fff!important;
    font:800 26px/1 Arial,sans-serif!important;
    box-shadow:0 10px 28px rgba(239,25,44,.38), inset 0 1px 0 rgba(255,255,255,.3)!important;
    transform:none!important;
    animation:dockClosePulse 3s ease-in-out infinite!important;
  }

  .mobile-action-bar a,
  .mobile-action-bar > button:not(.mobile-action-close){
    width:min(270px,calc(100vw - 48px))!important;
    min-height:58px!important;
    display:grid!important;
    grid-template-columns:46px 1fr 22px!important;
    align-items:center!important;
    gap:10px!important;
    padding:8px 13px 8px 8px!important;
    margin:0!important;
    border-radius:999px!important;
    color:#fff!important;
    text-decoration:none!important;
    background:linear-gradient(145deg,rgba(22,24,31,.97),rgba(7,8,12,.98))!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.48),0 0 0 1px rgba(239,35,51,.13),inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
    overflow:hidden!important;
    transform:none!important;
    animation:none!important;
  }
  .mobile-action-bar a::after,
  .mobile-action-bar > button:not(.mobile-action-close)::after{
    content:'›'!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    background:none!important;
    color:#ff3444!important;
    font:800 30px/1 Arial,sans-serif!important;
    transform:none!important;
    opacity:1!important;
    animation:none!important;
  }
  .mobile-action-bar .mobile-action-icon{
    width:42px!important;
    height:42px!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    color:#fff!important;
    font-size:21px!important;
    background:linear-gradient(145deg,#f31b2d,#9d0010)!important;
    box-shadow:0 0 18px rgba(240,26,44,.38),inset 0 1px 0 rgba(255,255,255,.28)!important;
  }
  .mobile-action-bar .mobile-action-label{
    text-align:left!important;
    font-size:13px!important;
    line-height:1.05!important;
    letter-spacing:.07em!important;
    white-space:nowrap!important;
  }
  .mobile-action-bar .mobile-action-primary{
    background:linear-gradient(135deg,#e81425,#a50010)!important;
    border-color:rgba(255,255,255,.34)!important;
    box-shadow:0 13px 34px rgba(232,20,37,.34),inset 0 1px 0 rgba(255,255,255,.26)!important;
  }
  .mobile-action-bar .mobile-action-primary .mobile-action-icon{
    background:rgba(0,0,0,.23)!important;
    border:1px solid rgba(255,255,255,.25)!important;
  }
  .mobile-action-bar > :not(.mobile-action-close){
    opacity:0;
    transform:translateX(22px)!important;
    transition:opacity .28s ease,transform .34s cubic-bezier(.2,.8,.2,1)!important;
  }
  .mobile-action-bar.is-visible > :not(.mobile-action-close){opacity:1;transform:translateX(0)!important}
  .mobile-action-bar.is-visible > :nth-child(2){transition-delay:.04s!important}
  .mobile-action-bar.is-visible > :nth-child(3){transition-delay:.09s!important}
  .mobile-action-bar.is-visible > :nth-child(4){transition-delay:.14s!important}
  body.modal-open .mobile-action-bar,
  body.menu-open .mobile-action-bar,
  dialog[open] ~ .mobile-action-bar{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
}
@keyframes dockClosePulse{0%,72%,100%{transform:scale(1)}78%{transform:scale(1.08)}84%{transform:scale(.98)}90%{transform:scale(1.04)}}
@media (prefers-reduced-motion:reduce){.mobile-action-bar,.mobile-action-bar *{animation:none!important;transition:none!important}}
