/* Shared compact catalog surfaces; scroll stays native on both axes. */
:is(#lavaMobile,#lavaActionDock) .lm-cartbar>span:first-child{min-width:0;text-align:left}
:is(#lavaMobile,#lavaActionDock) .lm-cartbar>span:last-child{flex:none;white-space:nowrap}
#lavaMobile .lmx-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 12px}
#lavaMobile .lmx-heading :is(h1,h2){font-size:23px;line-height:1.15;margin:0;font-weight:650;letter-spacing:-.5px}
#lavaMobile .lmx-heading>button{flex:none;font-size:12px;color:var(--ui-accent,#D2AF62);padding:8px 12px;background:#232428;border:1px solid #333439;border-radius:999px;min-height:36px;white-space:nowrap}
#lavaMobile .lm-product-rail,.lmx-rail{display:flex;gap:10px;overflow-x:auto;max-width:100%;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 0 10px}
#lavaMobile .lm-product-rail::-webkit-scrollbar,.lmx-rail::-webkit-scrollbar{display:none}
#lavaMobile .lm-product-rail>.lm-product{flex:0 0 calc((100% - 24px)/2.15);width:calc((100% - 24px)/2.15);max-width:240px;scroll-snap-align:start}
#lavaMobile .lm-grid{align-items:start;gap:12px}
#lavaMobile[data-view] .lm-product{position:relative;height:220px;min-height:0;overflow:hidden;border:0;border-radius:14px;background:#17181b;display:block;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}
#lavaMobile[data-view] .lm-product-preview{position:absolute;inset:0;width:100%;height:100%;padding:0;background:none;border:0;border-radius:inherit;aspect-ratio:auto;transform:none!important;transition:none}
#lavaMobile[data-view] .lm-product img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:auto;border-radius:inherit;opacity:1;transition:none;animation:none}
#lavaMobile[data-view] .lm-product:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(to bottom,transparent 38%,rgba(18,19,21,.72) 68%,#17181b 100%);pointer-events:none}
#lavaMobile[data-view] .lm-product-body{position:absolute;inset:auto 0 0;padding:10px;display:flex;flex-direction:column;gap:3px;background:none;pointer-events:none;z-index:1}
#lavaMobile[data-view] .lm-product h3{font-size:13px;line-height:1.2;font-weight:500;color:#fff;margin:0;min-height:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
#lavaMobile[data-view] .lm-product p{font-size:10px;line-height:1.35;color:#c1c1c4;min-height:0;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}
#lavaMobile[data-view] .lm-product .lm-add{pointer-events:auto;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0;margin-top:4px;background:none;color:#fff;font-size:14px;min-height:36px}
#lavaMobile[data-view] .lm-product .lm-add b{display:grid;place-items:center;min-width:30px;width:30px;height:30px;border-radius:9px;background:#292b2f;color:#f4f2ed;font-size:21px;font-weight:400;transition:transform 100ms}
#lavaMobile[data-view] .lm-product .lm-add:active b{transform:scale(.92)}
#lavaMobile .lm-rail-controls{display:none}
.lmx-rail{gap:6px}
.lmx-card{box-sizing:border-box;position:relative;flex:0 0 calc((100% - 24px)/3.2);max-width:160px;min-width:0;overflow:hidden;background:#18191c;border:1px solid #25262a;border-radius:10px;scroll-snap-align:start}
.lmx-card>img{width:100%;height:auto;aspect-ratio:1;display:block;object-fit:cover;background:#d5d6d8}
.lmx-card>div{position:relative;padding:7px;background:none}
:is(#lavaMobile,.lmx-sheet) .lmx-card h3{color:#f4f2ed;margin:0;font-size:13px;font-weight:500;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:3.75em}
:is(#lavaMobile,.lmx-sheet) .lmx-card button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:2px;color:#f4f2ed;background:none;border:0;padding:0;font-size:13px;min-height:44px;cursor:pointer}
.lmx-card button b{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:8px;background:#292b2f;color:#f4f2ed;font-size:20px;font-weight:400;transition:transform 120ms}
#lavaMobile .lmx-rail .lmx-card>div{padding:6px 5px 0}
#lavaMobile .lmx-rail .lmx-card h3{font-size:11px;line-height:1.2;height:3.6em}
#lavaMobile .lmx-rail .lmx-card button{font-size:10px;letter-spacing:-.2px;white-space:nowrap}
#lavaMobile .lmx-rail .lmx-card button b{width:22px;height:24px;border-radius:6px;font-size:17px}
.lmx-card button:active b{transform:scale(.92)}
.lmx-card button:disabled{opacity:.5;cursor:default}
.lmx-skeleton{flex:0 0 calc((100% - 24px)/3.2);height:166px;border-radius:10px;background:linear-gradient(110deg,#1b1c20,#2a2b30,#1b1c20);background-size:200% 100%;animation:lmx-shimmer 1.5s ease infinite}
.lmx-sheet{box-sizing:border-box;width:min(760px,100%);max-width:100%;height:90dvh;max-height:90dvh;margin:auto auto 0;padding:0;color:#f4f2ed;background:#151619;border:1px solid #303136;border-radius:24px 24px 0 0;overflow:hidden}
.lmx-sheet::backdrop{background:rgba(0,0,0,.68)}
.lmx-sheet header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #2d2e32}
.lmx-sheet header h2{font:600 22px/1.2 system-ui;margin:0}
.lmx-sheet header button{width:44px;height:44px;border:0;border-radius:50%;background:#25262a;color:#fff;font-size:28px;cursor:pointer}
.lmx-content{height:calc(100% - 81px);box-sizing:border-box;overflow-y:auto;padding:12px 16px calc(24px + env(safe-area-inset-bottom));overscroll-behavior:contain}
.lmx-filters{display:flex;gap:8px;overflow-x:auto;padding:0 0 14px;scrollbar-width:none}
.lmx-filters button{flex:none;min-height:44px;border:1px solid #38393e;background:#202125;color:#c3c3c6;border-radius:24px;padding:8px 14px;font:14px system-ui;cursor:pointer}
.lmx-filters button[aria-pressed=true]{background:#f3f1ed;color:#17181b;border-color:#f3f1ed}
.lmx-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.lmx-grid .lmx-card{width:100%;max-width:none;height:auto}
.lmx-target{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:1px solid #37383e;background:#222328;color:#fff;padding:18px 14px;margin-bottom:10px;text-align:left;border-radius:16px;font:15px system-ui;cursor:pointer}
.lmx-target small{display:block;color:#a3a4a8;margin-top:6px}
.lmx-target strong{white-space:nowrap}
.lmx-card button>span{animation:lmx-price 160ms ease-out}
@keyframes lmx-price{from{opacity:.4}to{opacity:1}}
.lmx-target-sheet{height:auto;max-height:75dvh}
.lmx-target-sheet .lmx-content{height:auto;max-height:calc(75dvh - 82px)}
@keyframes lmx-shimmer{to{background-position:-200% 0}}
#lavaMobile .lm-home-catalog>.lm-home-subtitle{font-size:12px;color:var(--ui-muted);margin:-6px 0 10px}
:is(#lavaMobile,#lavaCheckout) .lm-modes button{display:flex;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:6px}
:is(#lavaMobile,#lavaCheckout) .lm-modes .lm-icon{flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
:is(#lavaMobile,#lavaCheckout) .lm-mode-copy{text-align:left;line-height:1.2}
:is(#lavaMobile,#lavaCheckout) .lm-mode-copy small{display:block;font-size:10px;margin-top:3px}
@media(min-width:800px){#lavaMobile .lm-product-rail>.lm-product{flex-basis:210px}#lavaMobile[data-view] .lm-product{height:250px}#lavaMobile .lm-rail-controls{display:flex;justify-content:flex-end;gap:8px}#lavaMobile .lm-rail-controls button{width:44px;height:44px;padding:0;border-radius:50%;font-size:24px}.lmx-card{flex-basis:150px}#lavaMobile .lmx-rail .lmx-card h3{font-size:12px}#lavaMobile .lmx-rail .lmx-card button{font-size:12px}.lmx-grid .lmx-card>img{max-height:280px}}
@media(max-width:380px){#lavaMobile .lmx-heading :is(h1,h2){font-size:21px}#lavaMobile[data-view] .lm-product{height:212px}#lavaMobile[data-view] .lm-product-body{padding:8px}#lavaMobile[data-view] .lm-product h3{font-size:12px}}
@media(prefers-reduced-motion:reduce){.lmx-skeleton,.lmx-card button>span{animation:none}.lmx-card button b,#lavaMobile .lm-add b{transition:none}}

/* A separate editorial invitation after the product rails. */
#lavaMobile .lm-event-promo{position:relative;display:block;isolation:isolate;min-height:210px;margin:30px 0 32px;border:1px solid #38332a;border-radius:20px;background:#191816}
#lavaMobile .lm-event-promo>img{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:65% center;z-index:-2}
#lavaMobile .lm-event-promo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,15,16,.95),rgba(14,15,16,.66) 48%,rgba(14,15,16,.08));z-index:-1;pointer-events:none}
#lavaMobile .lm-event-promo>span{min-height:210px;box-sizing:border-box;width:70%;padding:22px 18px;gap:9px}
#lavaMobile .lm-event-promo strong{font-size:23px;letter-spacing:-.5px}
#lavaMobile .lm-event-promo span span{font-size:12px;line-height:1.4}
#lavaMobile .lm-event-promo small{font-size:10px;color:#aaa6a0;max-width:180px}
#lavaMobile .lm-event-promo .lm-event-link{color:var(--ui-accent,#D2AF62);border-bottom:1px solid #7b6845;padding-bottom:3px;margin-top:10px}
@media(min-width:800px){#lavaMobile .lm-event-promo{min-height:240px}#lavaMobile .lm-event-promo>span{min-height:240px;padding:32px;max-width:440px}#lavaMobile .lm-event-promo>img{object-position:center 48%}#lavaMobile .lm-event-promo strong{font-size:28px}}

#lavaMobile[data-view=home] .lm-tools{width:50px;flex:none;gap:6px}
#lavaMobile[data-view=home] .lm-tools :is(button,a){width:50px;height:50px;min-height:50px}
#lavaMobile[data-view=home] .lm-tools .lm-icon{width:25px;height:25px}
#lavaMobile[data-view=home] .lm-story{width:106px;flex-basis:106px;height:106px}
#lavaMobile .lm-flavor-thumb{width:40px;height:40px;flex:none;border-radius:10px;object-fit:cover}
#lavaMobile .lm-flavor>span:first-of-type{flex:1;min-width:0}
.lm-pickup-choice{display:block;width:100%;padding:16px;margin:8px 0;border:1px solid #38393e;border-radius:12px;background:#242529;color:#f4f2ed;text-align:left}

/* Show the complete kit, including separate bowls and charcoal. */
#lavaMobile[data-view] .lm-product-preview{background:#aeb2b6}
#lavaMobile[data-view] .lm-product img{position:absolute;top:0;left:0;height:auto;aspect-ratio:1;object-fit:contain;object-position:center top;border-radius:0}
