/* VIVI Lite Pages 0.13.47
 * Formal site-wide overlay Design System.
 * Supported patterns:
 *   1) Desktop centered Popup
 *   2) Desktop right Drawer
 *   3) Mobile Bottom Sheet
 *   4) Nested Overlay / Nested Bottom Sheet
 * Feature modules own content only. Shell geometry, backdrop, header, close,
 * body scrolling, footer, safe-area and transitions live here exclusively.
 */

:root{
  --vivi-popup-standard-width:min(var(--vivi-popup-width,760px),calc(100vw - 20px));
  --vivi-popup-standard-max-height:calc(100dvh - 130px);
  --vivi-popup-standard-radius:var(--vivi-radius,8px);
  --vivi-popup-standard-border:1px solid var(--vivi-color-border,rgba(31,26,23,.12));
  --vivi-popup-standard-bg:var(--vivi-color-card,#fff);
  --vivi-popup-standard-shadow:0 24px 70px rgba(15,23,42,.28);
  --vivi-popup-standard-backdrop:rgba(17,24,39,.52);
  --vivi-popup-standard-backdrop-blur:8px;
  --vivi-popup-transition-duration:.24s;
  --vivi-popup-transition-ease:cubic-bezier(.2,.8,.2,1);
  --vivi-popup-header-height:78px;
  --vivi-popup-header-padding:18px 72px 16px 24px;
  --vivi-popup-body-padding:20px 24px 24px;
  --vivi-popup-footer-padding:16px 24px 20px;
  --vivi-popup-close-size:36px;
  --vivi-popup-close-top:18px;
  --vivi-popup-close-right:18px;
  --vivi-popup-title-size:20px;
  --vivi-popup-eyebrow-size:12px;

  --vivi-drawer-comments-width:min(460px,calc(100vw - 32px));
  --vivi-drawer-comments-max-width:520px;
  --vivi-drawer-product-width:min(560px,100vw);

  --vivi-mobile-sheet-z-index:99980;
  --vivi-mobile-sheet-backdrop-bg:transparent;
  --vivi-mobile-sheet-backdrop-blur:0px;
  --vivi-mobile-sheet-width:100%;
  --vivi-mobile-sheet-max-width:100%;
  --vivi-mobile-sheet-max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,calc(69px + env(safe-area-inset-bottom))) - 8px);
  --vivi-mobile-sheet-height:min(72dvh,590px,var(--vivi-mobile-sheet-max-height));
  --vivi-mobile-sheet-tall-height:var(--vivi-mobile-sheet-max-height);
  --vivi-popup-toolbar-padding:10px 24px;
  --vivi-mobile-sheet-toolbar-padding:8px 16px;
  --vivi-mobile-sheet-bg:var(--vivi-color-card,#fff);
  --vivi-mobile-sheet-border-top:1px solid var(--vivi-color-border,rgba(31,26,23,.12));
  --vivi-mobile-sheet-radius:var(--vivi-radius,8px) var(--vivi-radius,8px) 0 0;
  --vivi-mobile-sheet-shadow:0 -18px 42px rgba(17,24,39,.18);
  --vivi-mobile-sheet-transform-closed:translateY(104%);
  --vivi-mobile-sheet-transform-open:translateY(0);
  --vivi-mobile-sheet-transition:transform .28s cubic-bezier(.2,.8,.2,1);
  --vivi-mobile-sheet-handle-width:38px;
  --vivi-mobile-sheet-handle-height:4px;
  --vivi-mobile-sheet-handle-top:8px;
  --vivi-mobile-sheet-handle-bg:#c4c7c5;
  --vivi-mobile-sheet-header-height:var(--vivi-popup-header-height);
  --vivi-mobile-sheet-header-padding:var(--vivi-popup-header-padding);
  --vivi-mobile-sheet-header-bg:var(--vivi-color-card,#fff);
  --vivi-mobile-sheet-close-size:36px;
  --vivi-mobile-sheet-close-top:var(--vivi-popup-close-top);
  --vivi-mobile-sheet-close-right:var(--vivi-popup-close-right);
  --vivi-mobile-sheet-close-bg:rgba(255,255,255,.96);
  --vivi-mobile-sheet-close-color:var(--vivi-color-heading,#111);
  --vivi-mobile-sheet-kicker-color:var(--vivi-color-primary,var(--vivi-color-orange,#996515));
  --vivi-mobile-sheet-title-color:var(--vivi-color-heading,#393432);
  --vivi-mobile-sheet-body-padding:12px 16px 22px;

  --vivi-popup-scrollbar-width:8px;
  --vivi-popup-scrollbar-track:transparent;
  --vivi-popup-scrollbar-thumb:rgba(153,101,21,.42);
  --vivi-popup-scrollbar-track-margin:18px 0;
}

html.vivi-overlay-runtime-locked,
body.vivi-overlay-runtime-locked{
  overflow:hidden !important;
  overscroll-behavior:none !important;
}
body.vivi-overlay-runtime-locked{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
}

/* ---------- Formal overlay scrollbar ---------- */
.vivi-popup-body,
.vivi-mobile-bottom-sheet-body,
.vivi-nested-overlay__body{
  scrollbar-width:thin !important;
  scrollbar-color:var(--vivi-popup-scrollbar-thumb) var(--vivi-popup-scrollbar-track) !important;
  -webkit-overflow-scrolling:touch;
}
.vivi-popup-body::-webkit-scrollbar,
.vivi-mobile-bottom-sheet-body::-webkit-scrollbar,
.vivi-nested-overlay__body::-webkit-scrollbar{
  width:var(--vivi-popup-scrollbar-width) !important;
  height:var(--vivi-popup-scrollbar-width) !important;
  background:transparent !important;
}
.vivi-popup-body::-webkit-scrollbar-track,
.vivi-mobile-bottom-sheet-body::-webkit-scrollbar-track,
.vivi-nested-overlay__body::-webkit-scrollbar-track{
  background:var(--vivi-popup-scrollbar-track) !important;
  border:0 !important;
  border-radius:var(--vivi-radius,8px) !important;
  box-shadow:none !important;
  margin:var(--vivi-popup-scrollbar-track-margin) !important;
}
.vivi-popup-body::-webkit-scrollbar-thumb,
.vivi-mobile-bottom-sheet-body::-webkit-scrollbar-thumb,
.vivi-nested-overlay__body::-webkit-scrollbar-thumb{
  background:var(--vivi-popup-scrollbar-thumb) !important;
  border:0 !important;
  border-radius:var(--vivi-radius,8px) !important;
  box-shadow:none !important;
}
.vivi-popup-body::-webkit-scrollbar-button,
.vivi-mobile-bottom-sheet-body::-webkit-scrollbar-button,
.vivi-nested-overlay__body::-webkit-scrollbar-button{
  display:none !important;
  width:0 !important;
  height:0 !important;
}

/* ---------- Desktop Center Popup ---------- */
@media (min-width:861px){
  .vivi-popup-modal{
    position:fixed !important;
    top:var(--vivi-header-height,76px) !important;
    right:0 !important;
    bottom:0 !important;
    left:0 !important;
    z-index:99997 !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:18px 24px 24px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    overscroll-behavior:contain !important;
    background:transparent !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:visibility 0s linear var(--vivi-popup-transition-duration) !important;
    font-family:var(--vivi-font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
    color:var(--vivi-color-text,#5a5a5a);
  }
  .admin-bar .vivi-popup-modal,
  body.admin-bar .vivi-popup-modal{top:calc(var(--vivi-header-height,76px) + 32px) !important;}
  .vivi-popup-modal.is-open,
  .vivi-popup-modal.is-active{
    visibility:visible !important;
    pointer-events:auto !important;
    transition-delay:0s !important;
  }
  .vivi-popup-modal[hidden]{display:none !important;}

  .vivi-popup-backdrop{
    position:absolute !important;
    inset:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:var(--vivi-popup-standard-backdrop) !important;
    backdrop-filter:blur(var(--vivi-popup-standard-backdrop-blur)) !important;
    -webkit-backdrop-filter:blur(var(--vivi-popup-standard-backdrop-blur)) !important;
    opacity:0 !important;
    transition:opacity var(--vivi-popup-transition-duration) ease !important;
  }
  .vivi-popup-modal.is-open .vivi-popup-backdrop,
  .vivi-popup-modal.is-active .vivi-popup-backdrop{opacity:1 !important;}

  .vivi-popup-panel{
    position:relative !important;
    z-index:1 !important;
    display:flex !important;
    flex-direction:column !important;
    width:var(--vivi-popup-standard-width) !important;
    max-width:var(--vivi-popup-standard-width) !important;
    height:var(--vivi-popup-standard-max-height) !important;
    min-height:0 !important;
    max-height:var(--vivi-popup-standard-max-height) !important;
    margin:0 !important;
    padding:0 !important;
    border:var(--vivi-popup-standard-border) !important;
    border-radius:var(--vivi-popup-standard-radius) !important;
    background:var(--vivi-popup-standard-bg) !important;
    box-shadow:var(--vivi-popup-standard-shadow) !important;
    overflow:hidden !important;
    outline:none !important;
    box-sizing:border-box !important;
    opacity:0 !important;
    transform:translateY(12px) scale(.992) !important;
    transition:opacity var(--vivi-popup-transition-duration) ease,transform var(--vivi-popup-transition-duration) var(--vivi-popup-transition-ease) !important;
    will-change:transform,opacity !important;
  }
  .vivi-popup-modal.is-open .vivi-popup-panel,
  .vivi-popup-modal.is-active .vivi-popup-panel{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
  }

  /* ---------- Desktop Right Drawer ---------- */
  .vivi-drawer-modal{
    align-items:stretch !important;
    justify-content:flex-end !important;
    padding:0 !important;
  }
  .vivi-drawer-panel{
    width:var(--vivi-drawer-product-width) !important;
    max-width:100vw !important;
    height:100% !important;
    max-height:100% !important;
    margin:0 !important;
    border-width:0 0 0 1px !important;
    border-radius:0 !important;
    box-shadow:-24px 0 70px rgba(15,23,42,.24) !important;
    opacity:1 !important;
    transform:translateX(104%) !important;
    transition:transform .28s var(--vivi-popup-transition-ease) !important;
    will-change:transform !important;
  }
  .vivi-drawer-panel--comments{
    width:var(--vivi-drawer-comments-width) !important;
    max-width:var(--vivi-drawer-comments-max-width) !important;
    border-radius:var(--vivi-popup-standard-radius) 0 0 var(--vivi-popup-standard-radius) !important;
    box-shadow:-18px 0 42px rgba(17,24,39,.20) !important;
  }
  .vivi-drawer-panel--product{
    width:var(--vivi-drawer-product-width) !important;
    max-width:100vw !important;
  }
  .vivi-drawer-modal.is-open .vivi-drawer-panel,
  .vivi-drawer-modal.is-active .vivi-drawer-panel{transform:translateX(0) !important;}

  .vivi-popup-header{
    position:relative !important;
    z-index:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    flex:0 0 auto !important;
    min-height:var(--vivi-popup-header-height) !important;
    margin:0 !important;
    padding:var(--vivi-popup-header-padding) !important;
    border:0 !important;
    border-bottom:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;
    background:var(--vivi-popup-standard-bg) !important;
    box-sizing:border-box !important;
  }
  .vivi-popup-title-wrap{display:flex !important;min-width:0 !important;flex-direction:column !important;gap:3px !important;margin:0 !important;padding:0 !important;}
  .vivi-popup-eyebrow{display:block !important;margin:0 !important;color:var(--vivi-color-primary,var(--vivi-color-orange,#996515)) !important;font-size:var(--vivi-popup-eyebrow-size) !important;font-weight:700 !important;letter-spacing:.06em !important;line-height:1.25 !important;text-transform:none !important;}
  .vivi-popup-title,
  .vivi-popup-header h2,
  .vivi-popup-header h3{overflow:hidden !important;margin:0 !important;color:var(--vivi-color-heading,#393432) !important;font-family:var(--vivi-font-heading,inherit) !important;font-size:var(--vivi-popup-title-size) !important;font-weight:var(--vivi-fw-bold,700) !important;line-height:1.3 !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
  .vivi-popup-close{
    appearance:none !important;
    -webkit-appearance:none !important;
    position:absolute !important;
    top:var(--vivi-popup-close-top) !important;
    right:var(--vivi-popup-close-right) !important;
    left:auto !important;
    bottom:auto !important;
    z-index:7 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:var(--vivi-popup-close-size) !important;
    height:var(--vivi-popup-close-size) !important;
    min-width:var(--vivi-popup-close-size) !important;
    min-height:var(--vivi-popup-close-size) !important;
    margin:0 !important;
    padding:0 !important;
    border:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;
    border-radius:var(--vivi-popup-standard-radius) !important;
    background:rgba(255,255,255,.96) !important;
    color:var(--vivi-color-heading,#111) !important;
    box-shadow:0 8px 22px rgba(15,23,42,.10) !important;
    font-size:0 !important;
    line-height:1 !important;
    cursor:pointer !important;
  }
  .vivi-popup-close::before{content:'×' !important;display:block !important;font-size:var(--vivi-fs-h3,24px) !important;font-weight:var(--vivi-fw-regular,400) !important;line-height:1 !important;transform:none !important;}
  .vivi-popup-close > span,
  .vivi-popup-close > i{display:none !important;}
  .vivi-popup-close:hover,
  .vivi-popup-close:focus-visible{background:#fff !important;color:#111 !important;outline:none !important;}
  .vivi-popup-body{flex:1 1 auto !important;min-height:0 !important;margin:0 !important;padding:var(--vivi-popup-body-padding) !important;overflow-x:hidden !important;overflow-y:auto !important;overscroll-behavior:contain !important;-webkit-overflow-scrolling:touch !important;touch-action:pan-y !important;box-sizing:border-box !important;}
  .vivi-popup-body--viewport{padding:0 !important;overflow:hidden !important;}
  .vivi-popup-toolbar{position:relative !important;z-index:2 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:8px !important;flex:0 0 auto !important;min-height:52px !important;margin:0 !important;padding:var(--vivi-popup-toolbar-padding) !important;border:0 !important;border-bottom:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-popup-standard-bg) !important;box-sizing:border-box !important;}
  .vivi-popup-footer{flex:0 0 auto !important;margin:0 !important;padding:var(--vivi-popup-footer-padding) !important;border:0 !important;border-top:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-popup-standard-bg) !important;box-sizing:border-box !important;}
}

/* ---------- Nested Overlay (desktop) ---------- */
@media (min-width:861px){
  .vivi-nested-overlay{position:absolute !important;inset:0 !important;z-index:40 !important;display:flex !important;align-items:center !important;justify-content:center !important;padding:24px !important;box-sizing:border-box !important;overflow:hidden !important;pointer-events:none !important;visibility:hidden !important;transition:visibility 0s linear .2s !important;}
  .vivi-nested-overlay[hidden]{display:none !important;}
  .vivi-nested-overlay.is-open,
  .vivi-nested-overlay.is-active{pointer-events:auto !important;visibility:visible !important;transition-delay:0s !important;}
  .vivi-nested-overlay__backdrop{position:absolute !important;inset:0 !important;margin:0 !important;padding:0 !important;border:0 !important;background:var(--vivi-popup-standard-backdrop) !important;backdrop-filter:blur(var(--vivi-popup-standard-backdrop-blur)) !important;-webkit-backdrop-filter:blur(var(--vivi-popup-standard-backdrop-blur)) !important;opacity:0 !important;transition:opacity .2s ease !important;}
  .vivi-nested-overlay.is-open .vivi-nested-overlay__backdrop,
  .vivi-nested-overlay.is-active .vivi-nested-overlay__backdrop{opacity:1 !important;}
  .vivi-nested-overlay__panel{position:relative !important;z-index:1 !important;display:flex !important;flex-direction:column !important;width:min(600px,calc(100% - 24px)) !important;max-width:min(600px,calc(100% - 24px)) !important;height:auto !important;max-height:calc(100% - 24px) !important;min-height:0 !important;margin:0 !important;padding:0 !important;border:var(--vivi-popup-standard-border) !important;border-radius:var(--vivi-popup-standard-radius) !important;background:var(--vivi-popup-standard-bg) !important;box-shadow:var(--vivi-popup-standard-shadow) !important;overflow:hidden !important;outline:none !important;box-sizing:border-box !important;opacity:0 !important;transform:translateY(10px) scale(.995) !important;transition:opacity .2s ease,transform .2s ease !important;}
  .vivi-nested-overlay.is-open .vivi-nested-overlay__panel,
  .vivi-nested-overlay.is-active .vivi-nested-overlay__panel{opacity:1 !important;transform:translateY(0) scale(1) !important;}
  .vivi-nested-overlay__handle{display:none !important;}
  .vivi-nested-overlay__header{position:relative !important;z-index:3 !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:16px !important;flex:0 0 auto !important;min-height:var(--vivi-popup-header-height) !important;margin:0 !important;padding:var(--vivi-popup-header-padding) !important;border:0 !important;border-bottom:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-popup-standard-bg) !important;box-sizing:border-box !important;}
  .vivi-nested-overlay__header .vivi-popup-title,
  .vivi-nested-overlay__header h2,
  .vivi-nested-overlay__header h3{margin:0 !important;color:var(--vivi-color-heading,#393432) !important;font-family:var(--vivi-font-heading,inherit) !important;font-size:var(--vivi-popup-title-size) !important;font-weight:700 !important;line-height:1.3 !important;}
  .vivi-nested-overlay__close{appearance:none !important;-webkit-appearance:none !important;position:absolute !important;top:var(--vivi-popup-close-top) !important;right:var(--vivi-popup-close-right) !important;z-index:5 !important;display:flex !important;align-items:center !important;justify-content:center !important;width:var(--vivi-popup-close-size) !important;height:var(--vivi-popup-close-size) !important;min-width:var(--vivi-popup-close-size) !important;min-height:var(--vivi-popup-close-size) !important;margin:0 !important;padding:0 !important;border:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;border-radius:var(--vivi-popup-standard-radius) !important;background:rgba(255,255,255,.96) !important;color:var(--vivi-color-heading,#111) !important;box-shadow:0 8px 22px rgba(15,23,42,.10) !important;font-size:0 !important;line-height:1 !important;cursor:pointer !important;}
  .vivi-nested-overlay__close::before{content:'×' !important;display:block !important;font-size:var(--vivi-fs-h3,24px) !important;font-weight:400 !important;line-height:1 !important;}
  .vivi-nested-overlay__close > span,
  .vivi-nested-overlay__close > i{display:none !important;}
  .vivi-nested-overlay__body{flex:1 1 auto !important;min-height:0 !important;padding:var(--vivi-popup-body-padding) !important;overflow-x:hidden !important;overflow-y:auto !important;overscroll-behavior:contain !important;-webkit-overflow-scrolling:touch !important;touch-action:pan-y !important;box-sizing:border-box !important;}
  .vivi-nested-overlay__footer{flex:0 0 auto !important;margin:0 !important;padding:var(--vivi-popup-footer-padding) !important;border:0 !important;border-top:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-popup-standard-bg) !important;box-sizing:border-box !important;}
}

/* ---------- Mobile Bottom Sheet ---------- */
@media (max-width:860px){
  .vivi-mobile-bottom-sheet-modal{
    position:fixed !important;
    top:var(--vivi-header-height-mobile,66px) !important;
    right:0 !important;
    bottom:var(--vivi-mobile-bottom-nav-height,calc(69px + env(safe-area-inset-bottom))) !important;
    left:0 !important;
    z-index:var(--vivi-mobile-sheet-z-index) !important;
    display:block !important;
    padding:0 !important;
    background:transparent !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    overscroll-behavior:contain !important;
    touch-action:pan-y !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:visibility 0s linear .28s !important;
  }
  body.admin-bar .vivi-mobile-bottom-sheet-modal,
  .admin-bar .vivi-mobile-bottom-sheet-modal{top:calc(var(--vivi-header-height-mobile,66px) + 46px) !important;}
  .vivi-mobile-bottom-sheet-modal.is-open,
  .vivi-mobile-bottom-sheet-modal.is-active{visibility:visible !important;pointer-events:auto !important;transition-delay:0s !important;}
  .vivi-mobile-bottom-sheet-modal[hidden]{display:none !important;}
  .vivi-mobile-bottom-sheet-backdrop{position:absolute !important;inset:0 !important;background:var(--vivi-mobile-sheet-backdrop-bg) !important;opacity:1 !important;backdrop-filter:blur(var(--vivi-mobile-sheet-backdrop-blur)) !important;-webkit-backdrop-filter:blur(var(--vivi-mobile-sheet-backdrop-blur)) !important;}
  .vivi-mobile-bottom-sheet-panel{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:1 !important;
    display:flex !important;
    flex-direction:column !important;
    width:var(--vivi-mobile-sheet-width) !important;
    max-width:var(--vivi-mobile-sheet-max-width) !important;
    height:var(--vivi-mobile-sheet-height) !important;
    max-height:min(var(--vivi-mobile-sheet-max-height),100%) !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-top:var(--vivi-mobile-sheet-border-top) !important;
    border-radius:var(--vivi-mobile-sheet-radius) !important;
    background:var(--vivi-mobile-sheet-bg) !important;
    box-shadow:var(--vivi-mobile-sheet-shadow) !important;
    outline:none !important;
    overflow:hidden !important;
    overscroll-behavior:contain !important;
    transform:var(--vivi-mobile-sheet-transform-closed) !important;
    transition:var(--vivi-mobile-sheet-transition) !important;
    box-sizing:border-box !important;
    will-change:transform !important;
    touch-action:pan-y !important;
  }
  .vivi-mobile-bottom-sheet-modal.is-open .vivi-mobile-bottom-sheet-panel,
  .vivi-mobile-bottom-sheet-modal.is-active .vivi-mobile-bottom-sheet-panel{transform:var(--vivi-mobile-sheet-transform-open) !important;}
  .vivi-mobile-bottom-sheet-panel--tall{height:var(--vivi-mobile-sheet-tall-height) !important;}
  .vivi-mobile-bottom-sheet-handle{position:absolute !important;top:var(--vivi-mobile-sheet-handle-top) !important;left:50% !important;z-index:6 !important;display:block !important;width:var(--vivi-mobile-sheet-handle-width) !important;height:var(--vivi-mobile-sheet-handle-height) !important;margin:0 !important;border-radius:var(--vivi-radius,8px) !important;background:var(--vivi-mobile-sheet-handle-bg) !important;transform:translateX(-50%) !important;pointer-events:none !important;}
  .vivi-mobile-bottom-sheet-header{position:relative !important;z-index:5 !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;flex:0 0 var(--vivi-mobile-sheet-header-height) !important;min-height:var(--vivi-mobile-sheet-header-height) !important;margin:0 !important;padding:var(--vivi-mobile-sheet-header-padding) !important;border:0 !important;border-bottom:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-mobile-sheet-header-bg) !important;box-sizing:border-box !important;}
  .vivi-mobile-bottom-sheet-title-wrap{display:flex !important;min-width:0 !important;flex-direction:column !important;gap:3px !important;margin:0 !important;padding:0 !important;}
  .vivi-mobile-bottom-sheet-title-wrap>span{display:block !important;margin:0 !important;color:var(--vivi-mobile-sheet-kicker-color) !important;font-size:var(--vivi-popup-eyebrow-size) !important;font-weight:700 !important;letter-spacing:.06em !important;line-height:1.25 !important;text-transform:none !important;}
  .vivi-mobile-bottom-sheet-header .vivi-popup-title,
  .vivi-mobile-bottom-sheet-header h2,
  .vivi-mobile-bottom-sheet-header h3{overflow:hidden !important;margin:0 !important;color:var(--vivi-mobile-sheet-title-color) !important;font-family:var(--vivi-font-heading,inherit) !important;font-size:var(--vivi-popup-title-size) !important;font-weight:var(--vivi-fw-bold,700) !important;line-height:1.3 !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
  .vivi-mobile-bottom-sheet-close{
    appearance:none !important;
    -webkit-appearance:none !important;
    position:absolute !important;
    top:var(--vivi-mobile-sheet-close-top) !important;
    right:var(--vivi-mobile-sheet-close-right) !important;
    left:auto !important;
    bottom:auto !important;
    z-index:7 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:var(--vivi-mobile-sheet-close-size) !important;
    height:var(--vivi-mobile-sheet-close-size) !important;
    min-width:var(--vivi-mobile-sheet-close-size) !important;
    min-height:var(--vivi-mobile-sheet-close-size) !important;
    margin:0 !important;
    padding:0 !important;
    border:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;
    border-radius:var(--vivi-popup-standard-radius) !important;
    background:var(--vivi-mobile-sheet-close-bg) !important;
    color:var(--vivi-mobile-sheet-close-color) !important;
    box-shadow:0 8px 22px rgba(15,23,42,.10) !important;
    font-size:0 !important;
    line-height:1 !important;
    cursor:pointer !important;
  }
  .vivi-mobile-bottom-sheet-close::before{content:'×' !important;display:block !important;color:currentColor !important;font-size:var(--vivi-fs-h3,24px) !important;font-weight:var(--vivi-fw-regular,400) !important;line-height:1 !important;transform:none !important;}
  .vivi-mobile-bottom-sheet-close > span,
  .vivi-mobile-bottom-sheet-close > i{display:none !important;}
  .vivi-mobile-bottom-sheet-body{flex:1 1 auto !important;min-height:0 !important;margin:0 !important;padding:var(--vivi-mobile-sheet-body-padding) !important;overflow-y:auto !important;overflow-x:hidden !important;-webkit-overflow-scrolling:touch !important;overscroll-behavior:contain !important;touch-action:pan-y !important;box-sizing:border-box !important;}
  .vivi-popup-body--viewport{padding:0 !important;overflow:hidden !important;}
  .vivi-mobile-bottom-sheet-toolbar{position:relative !important;z-index:4 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:8px !important;flex:0 0 auto !important;min-height:48px !important;margin:0 !important;padding:var(--vivi-mobile-sheet-toolbar-padding) !important;border:0 !important;border-bottom:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-mobile-sheet-bg) !important;box-sizing:border-box !important;}
  .vivi-mobile-bottom-sheet-footer,
  .vivi-nested-overlay__footer{flex:0 0 auto !important;margin:0 !important;padding:16px !important;border:0 !important;border-top:1px solid var(--vivi-color-border,rgba(31,26,23,.12)) !important;background:var(--vivi-mobile-sheet-bg) !important;box-sizing:border-box !important;}
}

@media (prefers-reduced-motion:reduce){
  .vivi-popup-modal,
  .vivi-popup-panel,
  .vivi-popup-backdrop,
  .vivi-drawer-panel,
  .vivi-mobile-bottom-sheet-panel,
  .vivi-nested-overlay,
  .vivi-nested-overlay__panel,
  .vivi-nested-overlay__backdrop{transition:none !important;}
}
