[data-bjp-mobile-cart]{display:none}
@media(max-width:767px){
  html.bjp-mobile-cart-ready body.template-product{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  .bjp [data-bjp-mobile-cart]:not([hidden]){display:block;text-transform:none;letter-spacing:normal;color:#111}
  .bjp-mobile-cart-bar{position:fixed;z-index:90;bottom:0;left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr) 56px;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -2px 12px #00000012}
  .bjp .bjp-mobile-cart-add{height:56px;min-height:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 12px;border:1px solid #111;border-radius:4px;background:#111;color:#fff;font-size:17px;font-weight:600;line-height:1.15;text-align:center;text-transform:none;letter-spacing:normal;cursor:pointer}
  .bjp .bjp-mobile-cart-caption{font-size:12px;font-weight:400;line-height:1.2}
  .bjp .bjp-mobile-cart-add:disabled{background:#e8e8e8;border-color:#e8e8e8;color:#666;cursor:default}
  .bjp .bjp-mobile-cart-bar .bjp-favorite{width:56px;height:56px;min-width:56px;border-radius:4px}
  .bjp .bjp-mobile-cart-bar .bjp-favorite svg{width:25px;height:25px}
  .bjp-mobile-cart-bar [data-mobile-bar-error]{grid-column:1 / -1}
  .bjp-mobile-cart-error{font-size:13px;line-height:1.4;color:#a01818;margin:0}
  .bjp:is(.side-cart-open,.site-panel-open,.bjp-mobile-cookie-open) .bjp-mobile-cart-bar,.bjp:has(.bjp-size-dialog[open],.bjp-mobile-size-dialog[open],.cookies-bar.show) .bjp-mobile-cart-bar{visibility:hidden;pointer-events:none}
  .bjp-mobile-cart-ready .sticky-add-to-cart,.bjp-mobile-cart-ready .sticky-toolbar-mobile{display:none!important}
  .bjp .bjp-mobile-size-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:calc(100dvh - 16px);margin:0;padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px));border:0;border-radius:16px 16px 0 0;background:#fff;color:#111;overflow-y:auto;overscroll-behavior:contain;text-transform:none;letter-spacing:normal}
  .bjp .bjp-mobile-size-dialog[open]{display:flex;flex-direction:column;gap:16px;animation:bjp-mobile-panel-in .2s ease-out}
  .bjp-mobile-size-dialog::backdrop{background:#0007}
  .bjp:has(.bjp-mobile-size-dialog[open]){overflow:hidden}
  .bjp-mobile-size-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
  .bjp .bjp-mobile-size-header h2{font-size:22px;line-height:1.2;font-weight:600;text-transform:none;margin:0}
  .bjp-mobile-size-header button{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:0;background:transparent;color:#111}
  .bjp-mobile-size-header svg{width:20px;height:20px}
  .bjp-mobile-size-product{font-size:15px;line-height:1.4;margin:0}
  .bjp-mobile-size-price{font-size:18px;font-weight:600;margin:-8px 0 0}
  .bjp-mobile-size-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:8px}
  .bjp-mobile-size-options button{min-width:44px;min-height:48px;padding:8px 4px;border:1px solid #ccc;border-radius:3px;background:#fff;color:#111;font-size:14px;font-weight:600}
  .bjp-mobile-size-options button[aria-pressed=true]{background:#111;border-color:#111;color:#fff}
  .bjp-mobile-size-options button:disabled{color:#999;background:#f6f6f6;text-decoration:line-through;cursor:default}
  .bjp .bjp-mobile-size-guide{align-self:flex-start;min-height:44px;margin-top:-8px;padding:4px 0;background:transparent;color:#111;text-decoration:underline;text-underline-offset:3px;font-size:14px}
  .bjp-mobile-size-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}
  .bjp-mobile-size-quantity>div{display:flex;border:1px solid #ccc;border-radius:4px;overflow:hidden}
  .bjp-mobile-size-quantity button,.bjp .bjp-mobile-size-quantity input{width:44px;height:44px;min-width:44px;margin:0;padding:0;border:0;background:#fff;color:#111;text-align:center;font-size:16px;appearance:textfield}
  .bjp-mobile-size-quantity input::-webkit-inner-spin-button,.bjp-mobile-size-quantity input::-webkit-outer-spin-button{appearance:none;margin:0}
  .bjp-mobile-size-quantity button:disabled{color:#aaa}
  .bjp [data-bjp-mobile-cart] button:focus-visible,.bjp [data-bjp-mobile-cart] input:focus-visible{outline:2px solid #111;outline-offset:3px}
  .bjp [data-bjp-mobile-cart] [hidden]{display:none!important}
  @keyframes bjp-mobile-panel-in{from{transform:translateY(100%)}to{transform:translateY(0)}}
  @media(prefers-reduced-motion:reduce){.bjp .bjp-mobile-size-dialog[open]{animation:none}}
}
