/* One fixed surface: purchase controls and navigation share its width and flow. */
.shop-dock{position:fixed;z-index:32;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 20px),600px);max-width:100%;min-width:0;border:1px solid #ffffffe6;border-radius:28px;background:linear-gradient(125deg,#fffaf6f5,#fff2f7f5);box-shadow:0 -6px 30px #6624410c,0 12px 32px #60233e24,inset 0 1px 0 #fff;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);isolation:isolate}
.shop-dock .purchase-dock{position:relative;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:12px;align-items:center;width:100%;min-width:0;margin:0;padding:13px 14px 14px;background:transparent;border:0;border-radius:0;box-shadow:none;animation:purchase-dock-arrive .32s cubic-bezier(.22,.8,.32,1) both}
.purchase-dock::after{content:'';position:absolute;bottom:0;left:16px;right:16px;height:1px;background:linear-gradient(90deg,transparent,#dfbccb 12%,#dfbccb 88%,transparent);pointer-events:none}
.purchase-dock-price{min-width:0;display:grid;gap:5px;padding-left:3px}
.purchase-dock-price>span{font-size:.875rem;font-weight:500;line-height:1.3;color:#875367;overflow-wrap:anywhere}
.purchase-dock-price>strong{font-family:Bricolage,Geist,sans-serif;font-size:clamp(1.125rem,5.1vw,1.4375rem);font-weight:750;letter-spacing:-.4px;line-height:1.15;font-variant-numeric:tabular-nums;color:#741d45;overflow-wrap:anywhere}
.purchase-dock .purchase-dock-button{position:relative;isolation:isolate;min-width:0;min-height:56px;margin:0;padding:12px;gap:0;border:1px solid #a83564;border-radius:18px;background:linear-gradient(115deg,#b53169,#861644);color:#fff8ee;box-shadow:0 3px 8px #83144122,inset 0 1px 0 #ffd4e640;font-size:1rem;font-weight:650;line-height:1.25;overflow:hidden;transition:transform .2s,background .2s,box-shadow .2s}
.purchase-dock-button::after{content:'';position:absolute;inset:-100% auto -100% -80%;width:45%;background:linear-gradient(90deg,transparent,#fff0cf24,transparent);transform:rotate(20deg);animation:purchase-dock-sheen 7s ease-in-out infinite;pointer-events:none;z-index:-1}
.purchase-dock-label{min-width:0;overflow-wrap:anywhere;text-align:center}
.purchase-dock .purchase-dock-button:hover{background:linear-gradient(115deg,#c13e77,#951b50);box-shadow:0 4px 12px #83144130,inset 0 1px 0 #ffd4e640}
.purchase-dock .purchase-dock-button:active{transform:scale(.98);box-shadow:0 1px 4px #83144125}
.purchase-dock .purchase-dock-button:disabled{background:#a36b82;box-shadow:none;border-color:#b8879b;opacity:.75;transform:none}
.shop-dock>.bottom-nav{position:relative;left:auto;bottom:auto;transform:none;width:100%;max-width:none;min-width:0;margin:0;padding:7px 8px 8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(68px,1.15fr) minmax(0,1fr) minmax(0,1fr);gap:2px;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:auto}
.shop-dock .bottom-nav button{min-width:0;min-height:66px;padding:6px 1px;gap:5px;font-size:.8125rem;line-height:1.2;font-weight:500;border-radius:17px;color:#846572;transition:background .2s,color .2s}
.shop-dock .bottom-nav button>svg{width:22px;height:22px;stroke-width:1.7}
.shop-dock .brand-nav-icon{width:31px;height:31px;flex:none;object-fit:contain;filter:drop-shadow(0 2px 1px #7a214e18);transition:transform .25s,filter .25s}
.shop-dock .bottom-nav button[aria-current=page] .brand-nav-icon{transform:translateY(-2px);filter:drop-shadow(0 3px 2px #7a214e25)}
.shop-dock .bottom-nav button:active .brand-nav-icon{transform:scale(.92) rotate(-5deg)}
.shop-dock .bottom-nav button[aria-current=page]{color:#831441;background:#f4e0e8;box-shadow:inset 0 1px 0 #fff8}
.shop-dock .bottom-nav .dock-cart{padding:0 1px 2px;gap:2px;background:transparent!important;box-shadow:none}
.shop-dock .dock-bag:has(.cup-basket-icon){width:58px!important;height:52px!important;margin:0;transform:none!important;border-radius:0!important}
.shop-dock .dock-bag .cup-basket-icon{width:52px;height:52px;filter:drop-shadow(0 3px 3px #7e104825)}
.shop-dock .dock-cart:active .cup-basket-icon{transform:scale(.96) rotate(-5deg)}
.shop-dock .dock-cart[aria-current=page] .cup-basket-icon{filter:drop-shadow(0 3px 4px #7e10483b)}
.shop-dock .dock-bag .cart-count{top:0!important;right:0!important;min-width:20px;height:20px;padding-inline:3px;font-size:.75rem;line-height:1}
.shop-dock .dock-total{font-size:.8125rem;font-weight:700;line-height:1.25;letter-spacing:-.2px;white-space:normal;overflow-wrap:anywhere;text-align:center}
.store-header .header-orders{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;flex:none;width:auto;max-width:48%;min-height:44px;padding:4px 8px;border:1px solid #eacbd8;border-radius:16px;background:linear-gradient(125deg,#fff9f0,#f8e0ec);color:#831441;font-size:.875rem;font-weight:600;line-height:1.2;box-shadow:inset 0 1px 0 #fff;transition:transform .2s,background .2s}
.header-orders .brand-nav-icon{width:28px;height:28px;flex:none}
.header-orders>span:not(.order-badge){min-width:0;overflow-wrap:anywhere}
.header-orders .order-badge{top:-5px;right:-4px;font-size:.75rem;min-width:20px;height:20px;border:2px solid #fff9f3}
.store-header .header-orders:active{transform:scale(.97)}
.store-header .brand{flex:1;min-width:0}
.store-header .brand-logo{max-width:100%}
.brand-ui-icon{width:28px;height:28px;object-fit:contain;flex:none}
.title-brand-icon{width:56px;height:56px;object-fit:contain;flex:none;filter:drop-shadow(0 4px 3px #7a214e12)}
.purchase-dock-button[aria-busy=true]{cursor:progress}
.purchase-dock-button[aria-busy=true]::after{animation-duration:1.8s}
.store-shell{padding-bottom:var(--shop-dock-space,calc(190px + env(safe-area-inset-bottom)))}
.store-shell .store-toast{bottom:var(--shop-dock-space,calc(190px + env(safe-area-inset-bottom)));text-align:center}
.store-shell :is(a,button,input,textarea,select,summary){scroll-margin-bottom:var(--shop-dock-space,calc(190px + env(safe-area-inset-bottom)))}
@keyframes purchase-dock-arrive{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@keyframes purchase-dock-sheen{0%,75%{left:-80%}100%{left:150%}}
@media(min-width:480px){.shop-dock .bottom-nav button,.shop-dock .dock-total{font-size:.875rem}.shop-dock .purchase-dock{padding-inline:18px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
@media(max-width:360px){.shop-dock{width:calc(100% - 14px);border-radius:25px}.shop-dock .purchase-dock{padding:11px 11px 12px;gap:9px}.purchase-dock .purchase-dock-button{font-size:.9375rem;padding-inline:9px;border-radius:16px}.shop-dock>.bottom-nav{padding:6px 4px 7px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(64px,1.15fr) minmax(0,1fr) minmax(0,1fr);gap:0}.shop-dock .bottom-nav button{border-radius:15px}}
@media(prefers-reduced-motion:reduce){.purchase-dock,.purchase-dock-button::after{animation:none!important}.purchase-dock-button,.shop-dock .bottom-nav button{transition:none!important}}
