@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/montserrat-latin-wght-normal-l_AIctKy.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-surface-sunken);color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--text-base);overflow-wrap:break-word}.shop-frame{display:flex;flex-direction:column;min-height:100dvh;max-width:34rem;margin:0 auto;background:var(--color-surface)}.shop-header{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5) var(--space-5) var(--space-4);background:var(--color-surface-inverse);color:var(--color-text-inverse);padding-top:max(var(--space-5),env(safe-area-inset-top))}.shop-header-row{display:flex;align-items:center;gap:var(--space-3)}.shop-brand{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-heavy)}.shop-tag{margin-left:auto;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent-primary);color:var(--color-on-fill-primary);font-size:var(--text-xs);font-weight:var(--weight-heavy)}.shop-header-sub{margin:0;font-size:var(--text-sm);color:var(--color-text-inverse-muted)}.shop-main{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-8);flex:1}.shop-rail{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;padding-bottom:var(--space-1)}.shop-rail::-webkit-scrollbar{display:none}.shop-chip{flex:0 0 auto;min-height:var(--control-touch);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);font-family:inherit;cursor:pointer}.shop-chip.is-chosen{border-color:var(--color-accent-primary);background:var(--color-accent-primary);color:var(--color-on-fill-primary);font-weight:var(--weight-bold)}.shop-chip:focus-visible,.shop-add:focus-visible,.shop-qty-button:focus-visible,.shop-primary:focus-visible,.shop-secondary:focus-visible,.shop-field-input:focus-visible,.shop-otp-input:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.shop-list{display:flex;flex-direction:column;gap:var(--space-3)}.shop-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.shop-card.is-unavailable{opacity:.5}.shop-card-body{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.shop-card-name{margin:0;font-size:var(--text-md);font-weight:var(--weight-bold)}.shop-card-desc{margin:0;font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.4}.shop-card-unavailable{margin:0;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-accent-danger)}.shop-card-price{margin:0;font-size:var(--text-md);font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums}.shop-add{flex:0 0 auto;width:var(--control-touch);height:var(--control-touch);border:none;border-radius:var(--radius-md);background:var(--color-accent-primary);color:var(--color-on-fill-primary);font-size:var(--text-xl);font-family:inherit;line-height:1;cursor:pointer}.shop-qty{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--color-accent-primary);border-radius:var(--radius-md);background:var(--color-fill-primary-subtle)}.shop-qty-button{min-width:var(--control-touch);min-height:var(--control-touch);border:none;background:transparent;color:var(--color-accent-primary);font-size:var(--text-lg);font-weight:var(--weight-heavy);font-family:inherit;cursor:pointer}.shop-qty-count{min-width:1.5rem;text-align:center;font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums}.shop-bar{position:sticky;bottom:0;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-4) calc(-1 * var(--space-4)) calc(-1 * var(--space-8));padding:var(--space-3) var(--space-4);padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface)}.shop-bar-meta{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary)}.shop-bar-estimate{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.shop-bar-fineprint{margin:0;font-size:var(--text-xs);color:var(--color-text-muted)}.shop-primary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:var(--control-large);padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-md);background:var(--color-accent-primary);color:var(--color-on-fill-primary);font-family:inherit;font-size:var(--text-md);font-weight:var(--weight-heavy);cursor:pointer}.shop-primary:disabled{opacity:.6;cursor:default}.shop-primary.is-block{justify-content:center}.shop-primary-amount{font-variant-numeric:tabular-nums}.shop-secondary{width:100%;min-height:var(--control-touch);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-heavy);cursor:pointer}.shop-secondary:disabled{opacity:.6;cursor:default}.shop-tracker{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface)}.shop-tracker.is-rejected{border-color:var(--color-accent-danger);background:var(--color-fill-danger-subtle)}.shop-tracker-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-heavy);color:var(--color-accent-danger)}.shop-tracker-reason{margin:0;font-size:var(--text-md)}.shop-tracker-note,.shop-note{margin:0;font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5}.shop-note.is-dev{font-weight:var(--weight-bold)}.shop-tracker-now{margin:0;font-size:var(--text-md);font-weight:var(--weight-heavy)}.shop-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.shop-step{display:flex;align-items:center;gap:var(--space-3)}.shop-step-marker{flex:0 0 auto;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-pill);border:2px solid var(--color-border)}.shop-step.is-done .shop-step-marker{border-color:var(--color-accent-success);background:var(--color-accent-success)}.shop-step.is-current .shop-step-marker{border-color:var(--color-accent-warning);background:var(--color-accent-warning)}.shop-step.is-pending{opacity:.45}.shop-step-body{display:flex;flex-direction:column}.shop-step-title{font-size:var(--text-base);font-weight:var(--weight-bold)}.shop-step.is-current .shop-step-title{font-weight:var(--weight-heavy)}.shop-step-meta{font-size:var(--text-xs);color:var(--color-text-muted)}.shop-summary{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface)}.shop-summary-title{margin:0;font-size:var(--text-sm);font-weight:var(--weight-heavy)}.shop-summary-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.shop-summary-lines li{display:flex;justify-content:space-between;gap:var(--space-3)}.shop-summary-amount{font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.shop-summary-total{display:flex;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle);font-size:var(--text-md);font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums}.shop-summary-fineprint{margin:0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5}.shop-form,.shop-when{display:flex;flex-direction:column;gap:var(--space-3)}.shop-field{display:flex;flex-direction:column;gap:var(--space-1)}.shop-field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.shop-field-input{min-height:var(--control-touch);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-md)}.shop-field-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.shop-otp{display:flex;flex-direction:column;gap:var(--space-1)}.shop-otp-label{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.shop-otp-input{min-height:var(--control-large);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.5em;text-align:center}.shop-notice{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-sm)}.shop-notice.is-bad{border-style:solid;border-color:var(--color-accent-danger);background:var(--color-fill-danger-subtle)}.shop-notice h2{margin:0;font-size:var(--text-md);font-weight:var(--weight-heavy)}.shop-notice p{margin:0;line-height:1.5}.shop-notice-note{color:var(--color-text-muted)}.shop-empty{margin:0;padding:var(--space-6) 0;text-align:center;color:var(--color-text-muted)}.shop-placed{display:flex;flex-direction:column;gap:var(--space-2)}.shop-placed-title{margin:0;font-size:var(--text-sm);font-weight:var(--weight-heavy);color:var(--color-text-secondary)}.shop-orders{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.shop-orders-row{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.shop-orders-row>div{display:flex;flex-direction:column;gap:2px}.shop-orders-state{text-align:right}.shop-orders-number{font-weight:var(--weight-bold)}.shop-orders-when,.shop-orders-total{font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.shop-orders-state .is-rejected{color:var(--color-accent-danger);font-weight:var(--weight-bold)}.shop-link{align-self:flex-start;color:var(--color-accent-primary);font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-2) 0}.guest-notice{border-style:solid;border-color:var(--color-accent-primary)}.guest-section{display:flex;flex-direction:column;gap:var(--space-2);scroll-margin-top:var(--space-8)}.guest-section-title{margin:var(--space-2) 0 0;font-size:var(--text-sm);font-weight:var(--weight-heavy);letter-spacing:.04em;color:var(--color-text-secondary);overflow-wrap:anywhere}.guest-item-image{flex:none;width:72px;height:72px;object-fit:cover;border-radius:var(--radius-md)}.guest-privacy{margin:var(--space-4) 0 0;font-size:var(--text-xs);color:var(--color-text-muted);text-align:center}a.shop-chip{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;text-decoration:none}.guest-section .shop-card.is-unavailable{opacity:1;background:var(--color-surface-sunken)}.guest-cartbar{position:sticky;bottom:0;z-index:var(--z-sticky);margin-top:var(--space-4);padding:var(--space-3) 0;padding-bottom:max(var(--space-3),env(safe-area-inset-bottom));background:var(--color-surface)}.guest-sheet-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop);display:flex;align-items:flex-end;justify-content:center;background:var(--scrim-modal)}.guest-sheet{z-index:var(--z-modal);display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:34rem;max-height:90dvh;overflow-y:auto;overflow-x:hidden;padding:var(--space-5);padding-bottom:max(var(--space-5),env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--color-surface);box-shadow:var(--shadow-panel)}.guest-sheet-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-heavy);overflow-wrap:anywhere}.guest-sheet-actions{display:flex;gap:var(--space-3)}.guest-sheet-actions>*{flex:1}.guest-group{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;border:none;min-width:0}.guest-group-name{padding:0;margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-heavy)}.guest-group-rule{font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.guest-option{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-touch);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.guest-option input{width:1.25rem;height:1.25rem;accent-color:var(--color-accent-primary)}.guest-option-name{flex:1;min-width:0}.guest-option-price{font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.guest-cart-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.guest-cart-line{display:flex;align-items:center;gap:var(--space-2)}.guest-cart-line-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.guest-cart-line-name{font-weight:var(--weight-bold)}.guest-cart-line-mods{font-size:var(--text-xs);color:var(--color-text-secondary)}.guest-cart-line-total{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.guest-remove{min-width:var(--control-touch);min-height:var(--control-touch);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--text-lg);font-family:inherit;cursor:pointer}.guest-note{min-height:calc(var(--control-touch) * 2);padding:var(--space-2) var(--space-3);resize:vertical}.guest-submitted-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-heavy);color:var(--color-text-primary)}.guest-spinner{display:inline-block;width:1em;height:1em;margin-right:var(--space-2);border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill);animation:guest-spin .8s linear infinite}@keyframes guest-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.guest-spinner{animation-duration:2.4s}}.guest-table-orders{margin-bottom:var(--space-4)}.guest-table-order-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.guest-table-order{display:flex;flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);overflow-wrap:anywhere}.guest-table-order:last-child{border-bottom:0;padding-bottom:0}.guest-table-order-head{display:flex;justify-content:space-between;gap:var(--space-3);font-weight:var(--weight-bold)}.guest-table-order-status{flex-shrink:0;color:var(--color-text-primary)}.guest-table-order.is-rejected .guest-table-order-status{color:var(--color-accent-danger)}.guest-table-order.is-cancelled .guest-table-order-status{color:var(--color-text-secondary);font-weight:var(--weight-regular, 400)}.guest-table-order-lines,.guest-table-order-note{margin:0;color:var(--color-text-secondary);line-height:1.5}.guest-table-order-total{font-weight:var(--weight-bold)}
