.cab-head{padding:clamp(1.5rem,4vw,2.5rem) 0 .5rem}.cab-head h1{margin-bottom:.35rem}.cab-lede{color:var(--ink);max-width:60ch;margin:0 0 .4rem;font-size:1.1rem}.cab-fresh{color:var(--ink-2);max-width:60ch}.cab-fresh strong{color:var(--ink)}.cab-snap{color:var(--ink-2);display:inline-block}.cab-devnote{color:var(--marker-ink,#7c3d07);background:var(--marker-bg,#fff7ed);border:1px dashed var(--marker-line,#b45309);border-radius:6px;margin-top:.3rem;padding:.3rem .6rem;font-size:.78rem;display:inline-block}.cab-hint{color:var(--link);margin-top:.6rem;font-size:.9rem;font-weight:600}@media (orientation:landscape) and (width<=960px){.cab-hint{display:none}}#cab-resting.ctx-dark{display:contents}.cab-resting{border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 100% 0%, var(--surface), var(--bg));color:var(--ink);box-shadow:var(--shadow-md);margin:.75rem 0 .25rem;padding:1rem 1.1rem}.cab-resting h2{color:var(--heading);margin:0 0 .2rem;font-size:1.2rem}.cab-resting p{color:var(--ink-2);margin:.15rem 0;font-size:.95rem}.cab-resting .cab-reopen{color:var(--eyebrow);font-weight:600}.cab-resting .bts-link{margin-top:.6rem}.cab-resting .bts-link a{color:var(--link);font-weight:600;text-decoration:underline}.cab-resting .bts-link a:hover{color:var(--link-hover)}#cab-controls{min-height:52px}.cab-controls{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0 .25rem;display:flex}.cab-filter{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:.4rem .85rem;font-size:.9rem;font-weight:600}.cab-filter[aria-pressed=true]{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.cab-filter.t-vegan[aria-pressed=true]{background:var(--type-vegan);border-color:var(--type-vegan)}.cab-filter.t-sorbet[aria-pressed=true]{background:var(--type-sorbet);border-color:var(--type-sorbet)}.cab-filter.t-dairy[aria-pressed=true]{background:var(--type-dairy);border-color:var(--type-dairy)}.cab-allergen-filter{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.4rem;display:flex}.cab-mockchip{letter-spacing:.06em;text-transform:uppercase;color:var(--marker-ink,#7c3d07);background:var(--marker-bg,#fff7ed);border:1px dashed var(--marker-line,#b45309);border-radius:999px;padding:.1em .55em;font-size:.66rem;font-weight:700}.cab-allergen-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:inherit;cursor:pointer;border-radius:999px;padding:.3rem .7rem;font-size:.82rem}.cab-allergen-btn[aria-pressed=true]{color:#fff;background:#14101c;border-color:#14101c}.cab-side{letter-spacing:.14em;text-transform:uppercase;color:var(--choc-700);text-align:center;margin:1rem 0 .15rem;font-size:.7rem;font-weight:700}.cab-side--scooper{color:var(--choc-600);margin:.4rem 0 0}.cab-planogram{flex-direction:column;gap:.5rem;display:flex}.cab-row{gap:.4rem;display:flex}.cab-divide{flex:0 0 16px;align-self:stretch;position:relative}.cab-divide:before{content:"";background:var(--line);border-radius:2px;width:2px;position:absolute;top:8%;bottom:8%;left:50%;transform:translate(-50%)}.cab-tray{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:12px;flex:0 0 clamp(116px,34vw,158px);min-height:104px;transition:transform .1s,box-shadow .1s,border-color .1s;display:flex;position:relative;overflow:hidden;container-type:inline-size}.cab-tray:hover,.cab-tray:focus-within{box-shadow:var(--shadow-md);border-color:var(--brand-text);transform:translateY(-2px)}.cab-tray.is-dim{opacity:.34;filter:grayscale(.55)}.cab-tray.is-picked{border-color:var(--brand-text);box-shadow:inset 0 0 0 2px var(--brand-text), var(--shadow-sm)}.tray-pick{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:auto;margin:0;padding:0;display:flex}.tray-pick:focus-visible{outline:2px solid var(--brand-text);outline-offset:-3px}.tray-i{z-index:2;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);width:24px;height:24px;color:var(--ink-2);font-family:var(--font-display);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.78rem;font-style:italic;font-weight:700;line-height:1;display:none;position:absolute;bottom:3px;right:3px}.cab-planogram.is-building .tray-i{display:flex}.tray-i:hover,.tray-i:focus-visible{border-color:var(--brand-text);color:var(--brand-text)}.tray-color{background:radial-gradient(120% 120% at 32% 24%, color-mix(in srgb, var(--sw) 82%, #fff) 0%, var(--sw) 55%, color-mix(in srgb, var(--sw) 72%, #000) 100%);border-bottom:1px solid color-mix(in srgb, var(--sw) 55%, #000);flex:none;height:52px;position:relative}.tray-pos:after{content:attr(data-pos)}.tray-star:after{content:"★"}.tray-pos{color:#fff;background:#14101c80;border-radius:6px;padding:.02em .35em;font-size:.6rem;font-weight:700;position:absolute;top:4px;right:4px}.tray-star{color:var(--gold-300);background:#14101cb3;border-radius:6px;padding:.06em .3em;font-size:.75rem;line-height:1;position:absolute;top:3px;left:4px}.tray-count{background:var(--brand);min-width:18px;height:18px;color:var(--on-brand);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.62rem;font-weight:700;line-height:1;display:flex;position:absolute;bottom:4px;left:4px;box-shadow:0 1px 3px #0000004d}.tray-count[hidden]{display:none}.tray-info{flex-direction:column;gap:.08rem;min-width:0;padding:.4rem .5rem .5rem;display:flex}.tray-name{font-family:var(--font-display);color:var(--ink);overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:600;line-height:1.08;display:-webkit-box;overflow:hidden}.tray-real{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.tray-type{letter-spacing:.07em;text-transform:uppercase;color:var(--type-ink,var(--ink-2));margin-top:.15rem;font-size:.56rem;font-weight:700}.cab-tray.t-dairy{--type-ink:var(--type-dairy-ink)}.cab-tray.t-vegan{--type-ink:var(--type-vegan-ink)}.cab-tray.t-sorbet{--type-ink:var(--type-sorbet-ink)}@container (width<=116px){.tray-name{-webkit-line-clamp:1;line-clamp:1;font-size:.8rem}.tray-real{font-size:.6rem}.tray-info{padding:.3rem .4rem .4rem}}@container (width<=78px){.tray-name{font-size:.68rem}.tray-color{height:40px}.tray-info{padding:.25rem .3rem .35rem}.tray-pos{font-size:.52rem}}@container (width>=150px){.tray-name{font-size:1rem}.tray-color{height:60px}}@container (width<=116px){.cab-planogram.is-building .tray-info{padding-bottom:26px}.tray-i{border:none;border-top:1px solid var(--line);background:var(--surface);border-radius:0;width:auto;height:24px;bottom:0;left:0;right:0}}@media (orientation:portrait){.cab-planogram{-webkit-overflow-scrolling:touch;padding-bottom:.35rem;overflow-x:auto}.cab-row{width:max-content}}@media (width>=900px),(orientation:landscape){.cab-planogram{overflow:visible}.cab-row{grid-template-columns:repeat(6,minmax(0,1fr)) 16px repeat(6,minmax(0,1fr));display:grid}.cab-row .cab-tray,.cab-row .cab-divide{flex:initial}}@media (orientation:landscape) and (height<=500px){.cab-tray{min-height:84px}.tray-color{height:34px}}.cab-empty{text-align:center;color:var(--ink-2);padding:1.5rem}.cab-key{text-align:center;color:var(--ink-2);margin:.6rem 0 0;font-size:.82rem}.cab-key-star{color:var(--gold-500);margin-right:.15rem}.cab-key a{color:var(--link)}.serve2-actions [data-clear]{color:var(--ink-2);border-color:#0000}.serve2-actions [data-clear]:hover{color:var(--brand-text)}.cab-unavailable{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink-2);max-width:60ch;margin:1.25rem 0;padding:1.25rem 1.4rem}.cab-unavailable a{color:var(--link);font-weight:600}#cab-builder:empty{display:none}.serve2{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);margin:1rem 0 0;padding:1rem 1.1rem}.serve2-head{margin-bottom:.6rem}.serve2-head h2{margin:0 0 .2rem;font-size:1.25rem}.serve2-sub{color:var(--ink-2);max-width:56ch;margin:0;font-size:.95rem}.serve2-sub strong{color:var(--ink);font-weight:700}.serve2-step{margin:.5rem 0 .4rem;font-size:.92rem;font-weight:700}.serve2-steps{color:var(--ink-2);margin:.5rem 0 .6rem;padding-left:1.2rem;font-size:.92rem}.serve2-steps li{margin-bottom:.15rem}.serve2-note-plan{color:var(--ink-2);max-width:60ch;margin:.5rem 0 0;font-size:.88rem}.serve2-sizes{flex-wrap:wrap;gap:.4rem;margin-bottom:.3rem;display:flex}.serve2-note{margin:.4rem 0 0}.serve2-count{margin:.7rem 0 .4rem;font-weight:700}.serve2-count.is-full{color:var(--pistachio-600)}.serve2-hint{color:var(--ink-2);max-width:60ch;margin:.3rem 0 0;font-size:.9rem}.serve2-start{color:var(--ink-2);margin:.4rem 0 0}.serve2-actions{flex-wrap:wrap;gap:.6rem;margin-top:.9rem;display:flex}.serve2-actions .btn{cursor:pointer;text-decoration:none}.serve2-people{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.serve2-name-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.serve2-name-row input{font:inherit;border:1px solid var(--control-line);border-radius:8px;min-width:8rem;padding:.4rem .6rem}.serve2-opt{color:var(--ink-2);font-size:.85rem;font-weight:400}.cab-strip{left:0;right:0;bottom:var(--stickybar-h,0);z-index:190;background:color-mix(in srgb, var(--surface) 95%, transparent);backdrop-filter:blur(6px);border-top:1px solid var(--line);align-items:center;gap:.6rem;padding:.45rem .9rem;display:flex;position:fixed;box-shadow:0 -4px 16px #0000001f}.cab-strip[hidden]{display:none}.cab-strip .strip-size{text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.cab-strip .scoops{flex-wrap:nowrap;flex:none;gap:.3rem;margin:0;overflow:hidden}.cab-strip .scoop{width:22px;height:22px}.cab-strip .strip-count{color:var(--ink-2);font-size:.85rem}.cab-strip .strip-show{white-space:nowrap;margin-left:auto;padding:.4rem .85rem}.cab-strip .strip-hide{cursor:pointer;width:44px;height:44px;color:var(--ink-2);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin-right:-.35rem;font-size:1.35rem;line-height:1;display:grid}.cab-strip .strip-hide:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 8%, transparent)}.cab-strip .strip-hide:focus-visible{outline:2px solid var(--focus,var(--link));outline-offset:2px}@media (width<=480px){.cab-strip{gap:.45rem;padding-left:.6rem;padding-right:.6rem}.cab-strip .scoop{width:18px;height:18px}.cab-strip .strip-size{font-size:.7rem}.cab-strip .strip-show{padding:.4rem .7rem;font-size:.85rem}}.serve-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);margin:2rem 0 0;overflow:hidden}.serve-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;padding:1rem 1.1rem;display:flex}.serve-head h2{margin:0;font-size:1.3rem}.serve-sub{color:var(--ink-2);margin:0;font-size:.9rem}.serve-body{padding:1.1rem}.serve-people{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.serve-tab{border:1px solid var(--line);background:var(--surface-2);font:inherit;cursor:pointer;border-radius:999px;padding:.4rem .8rem;font-weight:600}.serve-tab[aria-current=true]{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.serve-tab-add{color:var(--brand-text);background:0 0;border-style:dashed}.serve-name-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.serve-name-row input{font:inherit;border:1px solid var(--control-line);border-radius:8px;min-width:8rem;padding:.45rem .7rem}.serve-remove{color:var(--eyebrow);font:inherit;cursor:pointer;background:0 0;border:none;margin-left:auto;font-weight:600;text-decoration:underline}.serve-sizes{flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem;display:flex}.size-btn{border:1px solid var(--control-line);background:var(--surface);font:inherit;cursor:pointer;text-align:center;border-radius:12px;padding:.45rem .7rem;line-height:1.15}.size-btn[aria-pressed=true]{border-color:var(--brand-text);background:color-mix(in srgb, var(--brand-text) 8%, transparent)}.size-btn b{font-family:var(--font-display);display:block}.size-btn small{color:var(--ink-2);font-size:.78rem}.scoops{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0 .75rem;display:flex}.scoop{background:radial-gradient(circle at 32% 26%, color-mix(in srgb, var(--sc,#ddd) 80%, #fff), var(--sc,#ddd) 62%, color-mix(in srgb, var(--sc,#ddd) 72%, #000));border-radius:50%;flex:none;width:40px;height:40px;position:relative;box-shadow:inset 0 -3px 5px #00000047,0 2px 3px #0000002e}.scoop.is-empty{border:2px dashed var(--line);box-shadow:none;background:0 0}.scoop button{cursor:pointer;background:0 0;border:none;border-radius:50%;position:absolute;inset:0}.scoop .x{color:#fff;text-align:center;opacity:0;background:#14101c;border-radius:50%;width:16px;height:16px;font-size:11px;line-height:16px;transition:opacity .1s;position:absolute;top:-4px;right:-4px}.scoop:hover .x,.scoop:focus-within .x{opacity:1}.serve-progress{margin:0 0 .4rem;font-weight:600}.serve-progress.is-full{color:var(--pistachio-600)}.serve-pick-note{color:var(--ink-2);margin:.25rem 0 0;font-size:.9rem}.combos{margin-top:1.25rem}.combos h3{margin:0 0 .5rem;font-size:1.05rem}.combo-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.combo{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.85rem}.combo h4{flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .15rem;font-size:1.05rem;display:flex}.combo-idea{letter-spacing:.03em;text-transform:uppercase;color:var(--brand-text);border:1px solid color-mix(in srgb, var(--brand-text) 35%, transparent);background:0 0;border-radius:999px;padding:.1em .55em;font-size:.68rem;font-weight:700}.combo-note{color:var(--ink-2);margin:.25rem 0 .6rem;font-size:.85rem}.combo-members{color:var(--ink-2);margin:0 0 .6rem;font-size:.85rem}.combo-unavail{color:var(--eyebrow);font-size:.85rem;font-weight:600}.combo-use{background:var(--brand);color:var(--on-brand);font:inherit;cursor:pointer;border:none;border-radius:999px;padding:.45rem .9rem;font-weight:600}.combo-use:disabled{background:var(--line);color:var(--ink-2);cursor:not-allowed}.serve-actions{flex-wrap:wrap;gap:.6rem;margin-top:1.25rem;display:flex}.serve-actions .btn{cursor:pointer}.order-summary{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.order-person{margin:0 0 1rem}.order-person h4{margin:0 0 .3rem;font-size:1.05rem}.order-person .scoops{margin:.25rem 0 .4rem}.order-flavours{margin:0;padding-left:1.1rem}.order-flavours li{margin-bottom:.15rem}.cab-sheet-backdrop{z-index:300;background:#14101c8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.cab-sheet-backdrop[hidden]{display:none}.cab-sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:560px;max-height:88vh;padding:1.25rem 1.25rem 2rem;overflow-y:auto;box-shadow:0 -8px 40px #0000004d}@media (width>=620px){.cab-sheet-backdrop{align-items:center}.cab-sheet{border-radius:var(--radius-lg)}}.sheet-close{float:right;background:var(--surface-2);cursor:pointer;border:none;border-radius:50%;width:34px;height:34px;font-size:1.1rem}.sheet-swatch{background:radial-gradient(circle at 32% 28%, color-mix(in srgb, var(--sw) 80%, #fff), var(--sw) 60%, color-mix(in srgb, var(--sw) 72%, #000));border-radius:50%;width:60px;height:60px;margin-bottom:.5rem;box-shadow:inset 0 -3px 6px #00000047}.sheet h3{margin:0 0 .1rem}.sheet-real{color:var(--ink-2);margin:0 0 .5rem}.sheet-type{letter-spacing:.06em;text-transform:uppercase;color:var(--type-ink,var(--brand-text));background:color-mix(in srgb, var(--type-accent,var(--brand-text)) 15%, transparent);border-radius:999px;margin:.1rem 0 .4rem;padding:.2em .7em;font-size:.66rem;font-weight:700;display:inline-block}.sheet-type.t-dairy{--type-ink:var(--type-dairy-ink);--type-accent:var(--type-dairy)}.sheet-type.t-vegan{--type-ink:var(--type-vegan-ink);--type-accent:var(--type-vegan)}.sheet-type.t-sorbet{--type-ink:var(--type-sorbet-ink);--type-accent:var(--type-sorbet)}.sheet-desc.is-placeholder{background:var(--marker-bg,#fff7ed);border:1px dashed var(--marker-line,#b45309);color:var(--marker-ink,#7c3d07);border-radius:8px;padding:.6rem .8rem}.sheet-more{margin:.5rem 0 0;font-size:.92rem}.sheet-more a{color:var(--link)}.sheet-section{margin-top:1rem}.sheet-section h4{margin:0 0 .35rem;font-size:.95rem}.sheet-award{background:color-mix(in srgb, var(--gold-500) 10%, transparent);border-left:4px solid var(--gold-500);border-radius:8px;margin-bottom:.5rem;padding:.6rem .8rem;font-size:.9rem}.sheet-allergens{font-size:.9rem}.sheet-allergens .tags{flex-wrap:wrap;gap:.35rem;margin:.35rem 0;display:flex}.sheet-allergens .tag{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:.15em .6em;font-size:.85rem}.sheet-standing{color:var(--ink-2);margin-top:.4rem;font-size:.85rem}.sheet-add{flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;display:flex}.cab-toast{left:50%;bottom:calc(var(--stickybar-h) + 1rem);color:#fff;z-index:320;box-shadow:var(--shadow-md);background:#14101c;border-radius:999px;padding:.6rem 1rem;font-size:.9rem;font-weight:600;position:fixed;transform:translate(-50%)}.cab-toast[hidden]{display:none}@media (prefers-reduced-motion:reduce){.cab-tray{transition:none}}
