.ml-sticky-atc{
    position:fixed;
    right:16px;
    bottom:16px;
    z-index:9999;
    max-width:760px;
    width:calc(100% - 32px);
    background:rgb(3,28,55); /* deep navy */
    color:#fff;
    border-radius:16px;
    box-shadow:0 8px 28px rgba(0,0,0,.25);
  
    /* animation defaults */
    opacity:0;
    transform:translateY(12px) scale(.98);
    transform-origin:100% 100%;
    visibility:hidden;
    pointer-events:none;
    transition:
      opacity .25s ease-out,
      transform .25s ease-out,
      visibility 0s linear .25s;
  
    display:flex;
    align-items:center;
    gap:18px;
    padding:20px 22px;
  }
  .ml-sticky-atc.is-visible{
    opacity:1;
    transform:translateY(0) scale(1);
    visibility:visible;
    pointer-events:auto;
    transition:
      opacity .25s ease-out,
      transform .25s ease-out,
      visibility 0s linear 0s;
  }
  
  .ml-sticky-atc img{
    width:84px;
    height:84px;
    border-radius:10px;
    object-fit:cover;
    flex:0 0 auto;
  }
  .ml-sticky-atc .ml-meta{flex:1 1 auto;min-width:0}
  .ml-sticky-atc .ml-brand{
    opacity:.85;
    font-size:1.1rem;  /* bigger */
    margin-bottom:6px;
  }
  .ml-sticky-atc .ml-title{
    font-weight:700;
    font-size:1.45rem; /* bigger */
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .ml-sticky-atc .ml-price{
    font-size:1.25rem; /* bigger */
    margin-top:8px;
    font-weight:600;
  }
  .ml-sticky-atc .ml-cta{flex:0 0 auto}
  
  /* --- Add to Cart button --- */
  .ml-sticky-atc .button{
    background:linear-gradient(to bottom,#FF7A00,#FF4500);
    color:#fff !important;
    border-radius:36px;
    padding:16px 28px;
    font-weight:700;
    font-size:1.2rem; /* bigger */
    border:none;
    text-shadow:0 1px 1px rgba(0,0,0,.2);
    transition:all .2s ease;
  }
  .ml-sticky-atc .button:hover{
    background:linear-gradient(to bottom,#FF944D,#FF5C33);
    transform:translateY(-2px);
    box-shadow:0 6px 12px rgba(0,0,0,.2), 0 0 6px rgba(255,120,50,.5);
  }
  .ml-sticky-atc .button:active{
    transform:translateY(0);
    box-shadow:0 3px 6px rgba(0,0,0,.15);
  }
  .ml-sticky-atc .button.added{
    opacity:.85;
  }
  
  /* spacing for larger screens */
  @media (min-width: 720px){
    .ml-sticky-atc{right:24px;bottom:24px;width:auto}
    .ml-sticky-atc img{width:92px;height:92px}
  }
  
  /* accessibility: reduce motion */
  @media (prefers-reduced-motion: reduce){
    .ml-sticky-atc,
    .ml-sticky-atc.is-visible,
    .ml-sticky-atc .button,
    .ml-sticky-atc .button:hover,
    .ml-sticky-atc .button:active{
      transition:none;
      transform:none;
    }
  }
  