/* Continuous category indicator. Buttons remain stable through grid replacement. */
.menu-navigation .cats.flow-cats{position:relative;isolation:isolate}
.menu-navigation .cats.flow-cats:before{content:'';position:absolute;left:0;top:var(--category-y,4px);width:var(--category-w,48%);height:var(--category-h,44px);border-radius:999px;background:#e8b7c8;transform:translateX(var(--category-x,4px));z-index:0;pointer-events:none}
.menu-navigation .cats.flow-ready:before{transition:transform 360ms cubic-bezier(.22,.75,.25,1),width 360ms cubic-bezier(.22,.75,.25,1)}
.menu-heading .cats.flow-cats button,.menu-heading .cats.flow-cats button.active{position:relative;z-index:1;background:transparent}
/* One scroll region, an unobstructed footer and a moving brand background. */
.bag-dialog{padding:0;width:min(580px,100%);height:100dvh;max-height:100dvh;overflow:hidden}
.bag-dialog[open]{display:flex;flex-direction:column}
.bag-dialog:before{content:none!important}
.bag-birds{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.bag-birds .bird-pattern{--tile-x:210px;--tile-y:200px;background-image:url('assets/bird-tile.svg?v=14');opacity:.27;animation-duration:26s;animation-play-state:running}
.bag-dialog:not([open]) .bird-pattern{animation-play-state:paused}
.bag-top{flex:none;padding:16px 22px;border:0;border-bottom:1px solid var(--line);background:transparent;min-height:74px}
.bag-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px 24px;scroll-padding-block:16px;scrollbar-color:#c8a2ae transparent}
.bag-scroll>h2.script{font-size:38px;line-height:1.25;margin:0 0 6px;color:#a16c70;text-wrap:balance}
.bag-sub{font-size:12px;margin:0 0 12px}
.bag-items{padding-bottom:20px}
.bag-item{display:grid;grid-template-columns:144px minmax(0,1fr);gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);overflow:visible}
.bag-photo{position:relative;display:block;width:144px;height:144px;overflow:hidden;flex:none}
.bag-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;max-width:none;mix-blend-mode:normal}
.bag-item-copy{min-width:0}
.bag-item-copy>a{font-size:14px;line-height:1.5;overflow-wrap:normal;word-break:normal;hyphens:none}
.bag-item-prices{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:12px;margin:8px 0 12px}
.bag-item-prices>span{color:var(--muted)}
.bag-item-prices>b{font-weight:400;white-space:nowrap}
.bag-item .quick-qty{width:132px;min-height:44px}
.bag-item .quick-qty button{min-width:44px;min-height:44px}
.bag-bottom{position:relative;bottom:auto;flex:none;padding:14px 22px max(14px,env(safe-area-inset-bottom));margin:0;border-top:1px solid var(--line);background:#faf6ed}
.bag-bottom>.bag-summary{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:12px;font-size:16px}
.bag-summary>b{justify-self:start;font-size:20px;font-weight:400}
.bag-summary>.cart-clear{margin:0;font-size:12px}
.bag-bottom>.pill{min-height:50px}
.bag-bottom>p{font-size:10px;line-height:1.5;margin:10px 0 0}
.bag-feedback{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.bag-motion-layer{position:absolute;inset:0;overflow:hidden;z-index:5;pointer-events:none}
.bag-item-flight{position:absolute;left:0;top:0;object-fit:contain;pointer-events:none}
.bag-dialog .pairing-item{grid-template-columns:76px minmax(0,1fr) 44px;gap:12px}
.bag-dialog .pairing-photo{width:76px;height:76px}
.bag-dialog .pairing-copy>a{font-size:12px}
@media(max-width:600px){
 .bag-top{padding:12px 18px;min-height:68px}.bag-top>span{font-size:10px}
 .bag-scroll{padding:16px 18px 24px}.bag-scroll>h2.script{font-size:30px}
 .bag-item{grid-template-columns:112px minmax(0,1fr);gap:14px;padding:16px 0}
 .bag-photo{width:112px;height:112px}.bag-item-copy>a{font-size:13px}
 .bag-item-prices{font-size:11px;margin:6px 0 10px}.bag-bottom{padding-inline:18px}
 .bag-dialog .pairing-item{grid-template-columns:70px minmax(0,1fr) 44px}.bag-dialog .pairing-photo{width:70px;height:70px}
}
@media(prefers-reduced-motion:reduce){.menu-navigation .cats.flow-ready:before{transition:none}.bag-birds .bird-pattern{animation:none}}
