@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300..900&family=Space+Grotesk:wght@300..700&family=Sora:wght@400..700&family=Manrope:wght@300..800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700;800&family=Space+Grotesk:wght@400;500;600;700&family=Sora:wght@400;600;700;800&family=Caveat:wght@500;700&family=JetBrains+Mono:wght@500;700&display=swap";.ui-carousel{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;position:relative}.ui-carousel__viewport{position:relative;min-width:0;overflow:hidden}.ui-carousel__track{display:flex;gap:14px;padding:4px 32px 12px 0;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;cursor:grab}.ui-carousel__track:active{cursor:grabbing}.ui-carousel__track::-webkit-scrollbar{display:none}.ui-carousel__slide{flex:0 0 auto;scroll-snap-align:start;scroll-snap-stop:always}.ui-carousel-dots{display:flex;justify-content:center;align-items:center;padding:12px 16px 8px;user-select:none;-webkit-user-select:none}.ui-carousel-dots__rail{position:relative;display:flex;align-items:center;gap:22px;height:14px}.ui-carousel-dots__dot{width:11px;height:11px;border-radius:999px;border:0;background:#2f1e1938;padding:0;cursor:pointer;transition:background-color .2s ease,transform .15s ease}.ui-carousel-dots__dot:hover{background:#2f1e196b;transform:scale(1.12)}.ui-carousel-dots__dot.is-active{background:transparent}.ui-carousel-dots__dot:focus-visible{outline:2px solid var(--copper, var(--orange-500));outline-offset:3px}.ui-carousel-dots__pill{position:absolute;top:50%;transform:translate(-50%,-50%);width:30px;height:14px;border-radius:999px;background:var(--copper, var(--orange-500));box-shadow:0 2px 6px rgba(var(--color-brand-rgb-500),.32);transition:left .32s cubic-bezier(.22,1,.36,1),width .2s ease,box-shadow .2s ease;pointer-events:none}@media(prefers-reduced-motion:reduce){.ui-carousel-dots__pill,.ui-carousel-dots__dot{transition:none}.ui-carousel__track{scroll-behavior:auto}}@keyframes ui-skeleton-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.ui-skeleton{display:block;background-image:linear-gradient(90deg,var(--surface-muted) 0%,var(--skeleton-mid-color) 50%,var(--surface-muted) 100%);background-size:var(--skeleton-shimmer-bg-size);background-repeat:no-repeat;animation:ui-skeleton-shimmer var(--skeleton-shimmer-duration) linear infinite}.ui-skeleton--rect{border-radius:var(--radius-sm)}.ui-skeleton--circle{border-radius:var(--radius-full)}.ui-skeleton--text{height:var(--skeleton-text-line-height);border-radius:var(--radius-xs)}.ui-skeleton__text-wrapper{display:flex;flex-direction:column;gap:var(--skeleton-text-line-gap)}.ui-skeleton__text-line{width:100%}.ui-skeleton__text-line--last{width:var(--skeleton-text-line-last-width)}@media(prefers-reduced-motion:reduce){.ui-skeleton{animation:none;background-image:linear-gradient(90deg,var(--surface-muted),var(--surface-muted))}}.menu-skeleton{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.menu-skeleton__header,.menu-skeleton__hero,.menu-skeleton__card,.menu-skeleton__bar,.menu-skeleton__row{display:block}.menu-skeleton__header>*{height:var(--space-12);border-radius:var(--radius-md)}.menu-skeleton__hero>*{height:calc(var(--space-32) + var(--space-12));border-radius:var(--radius-lg)}.menu-skeleton__carousel{display:flex;gap:var(--space-3);overflow-x:hidden}.menu-skeleton__card{flex:1 1 0;min-width:0}.menu-skeleton__card>*{height:var(--space-32);border-radius:var(--radius-lg)}.menu-skeleton__bar>*{height:var(--space-10);border-radius:var(--radius-md)}.menu-skeleton__row>*{height:var(--space-16);border-radius:var(--radius-md)}.ui-surface{position:relative;border:var(--border-width-hairline) solid transparent;background-color:var(--surface-raised);color:var(--text-primary);font-family:inherit;isolation:isolate;transition:background-color var(--duration-fast) var(--ease-spring-soft),border-color var(--duration-fast) var(--ease-spring-soft),box-shadow var(--duration-fast) var(--ease-spring-soft)}.ui-surface--bordered{border-color:var(--border-subtle)}.ui-surface--elevation-flat{background-color:var(--surface-base);box-shadow:none}.ui-surface--elevation-raised{box-shadow:var(--shadow-button-rest)}.ui-surface--elevation-elevated{box-shadow:var(--shadow-button-hover)}.ui-surface--elevation-overlay{box-shadow:var(--shadow-overlay);border-color:var(--border-default)}.ui-surface--elevation-modal{box-shadow:var(--shadow-modal)}.ui-surface--radius-none{border-radius:var(--radius-none)}.ui-surface--radius-xs{border-radius:var(--radius-xs)}.ui-surface--radius-sm{border-radius:var(--radius-sm)}.ui-surface--radius-md{border-radius:var(--radius-md)}.ui-surface--radius-lg{border-radius:var(--radius-lg)}.ui-surface--radius-xl{border-radius:var(--radius-xl)}.ui-surface--radius-2xl{border-radius:var(--radius-2xl)}.ui-surface--radius-3xl{border-radius:var(--radius-3xl)}.ui-surface--radius-full{border-radius:var(--radius-full)}.ui-surface--padding-none{padding:var(--space-0)}.ui-surface--padding-xs{padding:var(--space-2)}.ui-surface--padding-sm{padding:var(--space-3)}.ui-surface--padding-md{padding:var(--space-4)}.ui-surface--padding-lg{padding:var(--space-6)}.ui-surface--padding-xl{padding:var(--space-8)}.ui-surface--padding-2xl{padding:var(--space-10)}.ui-surface--tone-base{background-color:var(--surface-base)}.ui-surface--tone-raised{background-color:var(--surface-raised)}.ui-surface--tone-sunken{background-color:var(--surface-sunken)}.ui-surface--tone-muted{background-color:var(--surface-muted)}.ui-surface--tone-accent-soft{background-color:var(--accent-soft);border-color:var(--accent)}.ui-surface--interactive{cursor:pointer;user-select:none;transition:background-color var(--duration-fast) var(--ease-spring-soft),border-color var(--duration-fast) var(--ease-spring-soft),box-shadow var(--duration-fast) var(--ease-spring-soft),transform var(--duration-base) var(--ease-spring-soft)}.ui-surface--interactive:hover{transform:translateY(-1px)}.ui-surface--interactive.ui-surface--elevation-flat:hover{background-color:var(--surface-raised);box-shadow:var(--shadow-button-rest)}.ui-surface--interactive.ui-surface--elevation-raised:hover{box-shadow:var(--shadow-button-hover)}.ui-surface--interactive.ui-surface--elevation-elevated:hover{box-shadow:var(--shadow-overlay)}.ui-surface--interactive.ui-surface--elevation-overlay:hover{box-shadow:var(--shadow-modal)}.ui-surface--interactive.ui-surface--elevation-modal:hover{transform:none}.ui-surface--interactive:focus{outline:none}.ui-surface--interactive:focus-visible{outline:none;box-shadow:var(--shadow-button-rest),0 0 0 var(--surface-focus-halo-width) var(--accent-soft)}.ui-surface--interactive:active{background-color:var(--surface-muted)}@media(prefers-reduced-motion:reduce){.ui-surface,.ui-surface--interactive{transition-duration:1ms}.ui-surface--interactive:hover{transform:none}}@keyframes ui-modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-container-in{0%{opacity:0;transform:scale(.96) translateY(var(--space-2))}to{opacity:1;transform:scale(1) translateY(0)}}.ui-modal{padding:0;border:0;background:transparent;color:var(--text-primary);max-width:none;max-height:none;overflow:visible;inset:0;margin:auto}.ui-modal:focus{outline:none}.ui-modal::backdrop{background-color:var(--backdrop-color);backdrop-filter:blur(var(--backdrop-blur));-webkit-backdrop-filter:blur(var(--backdrop-blur))}.ui-modal[open]{animation:ui-modal-overlay-in var(--duration-base) var(--ease-emphasized)}.ui-modal[open] .ui-modal__container{animation:ui-modal-container-in var(--duration-emphasized) var(--ease-spring-soft)}.ui-modal--sm .ui-modal__container{width:calc(100vw - 2 * var(--modal-edge-gap));max-width:var(--modal-width-sm)}.ui-modal--md .ui-modal__container{width:calc(100vw - 2 * var(--modal-edge-gap));max-width:var(--modal-width-md)}.ui-modal--lg .ui-modal__container{width:calc(100vw - 2 * var(--modal-edge-gap));max-width:var(--modal-width-lg)}.ui-modal--xl .ui-modal__container{width:calc(100vw - 2 * var(--modal-edge-gap));max-width:var(--modal-width-xl)}.ui-modal--full .ui-modal__container{width:calc(100vw - 2 * var(--modal-edge-gap));height:calc(100vh - 2 * var(--modal-edge-gap));max-width:none;max-height:calc(100vh - 2 * var(--modal-edge-gap))}.ui-modal__container{display:flex;flex-direction:column;max-height:calc(100vh - 2 * var(--modal-edge-gap));overflow:hidden;margin:0 auto}.ui-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--modal-padding-header-y) var(--modal-padding-header-x);flex-shrink:0;border-bottom:var(--border-width-hairline) solid var(--border-subtle);position:relative}.ui-modal__header-content{display:flex;flex-direction:column;gap:var(--modal-slot-gap);min-width:0;flex:1}.ui-modal__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:1.25;letter-spacing:-.02em;color:var(--text-primary);margin:0}.ui-modal__description{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:1.5;color:var(--text-muted);margin:0;max-width:60ch}.ui-modal__body{flex:1;min-height:0;overflow-y:auto;padding:var(--modal-padding-body-y) var(--modal-padding-body-x);color:var(--text-primary);font-size:var(--text-sm);line-height:1.55}.ui-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--modal-actions-gap);padding:var(--modal-padding-footer-y) var(--modal-padding-footer-x);flex-shrink:0;background-color:var(--surface-muted);border-top:var(--border-width-hairline) solid var(--border-subtle)}.ui-modal__footer--justify-between{justify-content:space-between}.ui-modal__close{position:absolute;top:var(--space-3);right:var(--space-3);width:var(--modal-close-size);height:var(--modal-close-size);display:inline-flex;align-items:center;justify-content:center;appearance:none;border:var(--border-width-hairline) solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--duration-fast) var(--ease-spring-soft),color var(--duration-fast) var(--ease-spring-soft)}.ui-modal__close:hover{background-color:var(--surface-muted);color:var(--text-primary)}.ui-modal__close:focus-visible{outline:none;box-shadow:0 0 0 var(--ring-width) var(--accent-soft)}.ui-modal__close svg{width:var(--modal-close-icon-size);height:var(--modal-close-icon-size)}@media(prefers-reduced-motion:reduce){.ui-modal[open],.ui-modal[open] .ui-modal__container,.ui-modal__close{animation:none;transition-duration:1ms}}@keyframes ui-button-spin{to{transform:rotate(360deg)}}.ui-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--button-gap-md);margin:0;border:var(--border-width-hairline) solid transparent;background:transparent;text-decoration:none;cursor:pointer;user-select:none;white-space:nowrap;font-family:var(--font-body);font-weight:500;line-height:1.35;color:var(--text-primary);border-radius:var(--radius-button);text-align:center;isolation:isolate;transition:background-color var(--duration-fast) var(--ease-spring-soft),background-image var(--duration-fast) var(--ease-spring-soft),color var(--duration-fast) var(--ease-spring-soft),border-color var(--duration-fast) var(--ease-spring-soft),box-shadow var(--duration-fast) var(--ease-spring-soft),transform var(--duration-base) var(--ease-spring)}.ui-button:before{content:"";position:absolute;inset:50%;width:var(--touch-target-min);height:var(--touch-target-min);transform:translate(-50%,-50%);pointer-events:auto;z-index:-1}.ui-button:focus{outline:none}.ui-button:focus-visible{outline:none;box-shadow:var(--shadow-button-focus-ring-offset),0 0 0 calc(var(--ring-offset) + var(--ring-width) + var(--ring-width)) var(--ring-default)}.ui-button:disabled{cursor:not-allowed;opacity:.4;pointer-events:none;box-shadow:none!important;transform:none!important;background-image:none!important}.ui-button--sm{height:var(--button-height-sm);padding:0 var(--button-padding-x-sm);font-size:var(--button-text-size-sm);gap:var(--button-gap-sm);border-radius:var(--radius-sm)}.ui-button--md{height:var(--button-height-md);padding:0 var(--button-padding-x-md);font-size:var(--button-text-size-md);gap:var(--button-gap-md)}.ui-button--lg{height:var(--button-height-lg);padding:0 var(--button-padding-x-lg);font-size:var(--button-text-size-lg);gap:var(--button-gap-lg)}.ui-button--full-width{width:100%;display:flex}.ui-button__leading-icon,.ui-button__trailing-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ui-button__label{display:inline-block}.ui-button--primary{background-color:var(--accent);background-image:linear-gradient(180deg,var(--accent) 0%,color-mix(in oklch,var(--accent) 92%,var(--black)) 100%);color:var(--text-on-accent);border-color:color-mix(in oklch,var(--accent) 88%,var(--black));box-shadow:var(--shadow-button-rest)}.ui-button--primary:hover:not(:disabled){background-color:color-mix(in oklch,var(--accent) 92%,var(--black));background-image:linear-gradient(180deg,color-mix(in oklch,var(--accent) 92%,var(--black)),color-mix(in oklch,var(--accent) 84%,var(--black)));border-color:color-mix(in oklch,var(--accent) 80%,var(--black));box-shadow:var(--shadow-button-hover)}.ui-button--primary:active:not(:disabled){transform:scale(.96);transition:transform var(--duration-tap) var(--ease-spring);background-image:linear-gradient(180deg,color-mix(in oklch,var(--accent) 84%,var(--black)),color-mix(in oklch,var(--accent) 76%,var(--black)));border-color:color-mix(in oklch,var(--accent) 76%,var(--black));box-shadow:var(--shadow-button-active)}.ui-button--secondary{background:var(--surface-raised);color:var(--text-primary);border-color:var(--border-default);box-shadow:var(--shadow-button-rest)}.ui-button--secondary:hover:not(:disabled){background:var(--surface-muted);border-color:var(--border-strong);box-shadow:var(--shadow-button-hover)}.ui-button--secondary:active:not(:disabled){transform:scale(.96);transition:transform var(--duration-tap) var(--ease-spring);background:var(--surface-sunken);box-shadow:var(--shadow-button-active)}.ui-button--tertiary{background:var(--accent-soft);color:var(--accent-hover);border-color:transparent}.ui-button--tertiary:hover:not(:disabled){background:var(--accent-soft-strong);color:var(--accent-hover)}.ui-button--tertiary:active:not(:disabled){transform:scale(.96);transition:transform var(--duration-tap) var(--ease-spring);background:var(--accent-soft-strong);color:var(--accent-active)}.ui-button--ghost{background:transparent;color:var(--text-primary);border-color:transparent}.ui-button--ghost:hover:not(:disabled){background:var(--surface-muted)}.ui-button--ghost:active:not(:disabled){transform:scale(.96);transition:transform var(--duration-tap) var(--ease-spring);background:var(--surface-sunken)}.ui-button--destructive{background-color:var(--state-error);background-image:linear-gradient(180deg,var(--state-error) 0%,color-mix(in oklch,var(--state-error) 92%,var(--black)) 100%);color:var(--text-on-accent);border-color:color-mix(in oklch,var(--state-error) 88%,var(--black));box-shadow:var(--shadow-button-rest)}.ui-button--destructive:hover:not(:disabled){background-color:color-mix(in oklch,var(--state-error) 92%,var(--black));background-image:linear-gradient(180deg,color-mix(in oklch,var(--state-error) 92%,var(--black)),color-mix(in oklch,var(--state-error) 84%,var(--black)));border-color:color-mix(in oklch,var(--state-error) 80%,var(--black));box-shadow:var(--shadow-button-hover)}.ui-button--destructive:active:not(:disabled){transform:scale(.96);transition:transform var(--duration-tap) var(--ease-spring);background-image:linear-gradient(180deg,color-mix(in oklch,var(--state-error) 84%,var(--black)),color-mix(in oklch,var(--state-error) 76%,var(--black)));border-color:color-mix(in oklch,var(--state-error) 76%,var(--black));box-shadow:var(--shadow-button-active)}.ui-button--destructive:focus-visible{box-shadow:var(--shadow-button-focus-ring-offset),0 0 0 calc(var(--ring-offset) + var(--ring-width) + var(--ring-width)) var(--ring-error)}.ui-button--loading{cursor:progress;pointer-events:none}.ui-button--loading .ui-button__label,.ui-button--loading .ui-button__leading-icon,.ui-button--loading .ui-button__trailing-icon{visibility:hidden}.ui-button__spinner{position:absolute;top:50%;left:50%;width:1.1em;height:1.1em;margin:-.55em 0 0 -.55em;display:inline-flex;color:currentColor}.ui-button__spinner svg{width:100%;height:100%;display:block;animation:ui-button-spin .8s steps(8) infinite;transform-origin:center}@media(prefers-reduced-motion:reduce){.ui-button{transition-duration:1ms}.ui-button:active:not(:disabled){transform:none;transition-duration:1ms}.ui-button__spinner svg{animation-duration:1ms}}.campaign-banner{padding:8px var(--page-gutter) 0}.campaign-banner__heading{margin:0 0 12px;font-family:var(--font-family-display, "Fraunces", Georgia, serif);font-size:clamp(22px,5vw,28px);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--color-ink-900, #2F1E19)}.campaign-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.campaign-row::-webkit-scrollbar{display:none}.campaign-card{flex:0 0 260px;width:260px;scroll-snap-align:start;background:#fbf7f1;border:1px solid var(--mp-border, rgba(var(--color-brand-rgb-600), .1));border-radius:var(--mp-radius-lg, 16px);overflow:hidden;box-shadow:var(--mp-shadow-md, 0 4px 14px rgba(47, 30, 25, .08));cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.campaign-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px #2f1e1924}.campaign-card:focus-visible{outline:2px solid var(--color-brand-500, var(--color-brand-500));outline-offset:2px}.campaign-card__open{position:absolute;bottom:12px;right:12px;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-brand-gradient, var(--color-brand-500));color:#fff;box-shadow:0 6px 20px var(--color-brand-soft-35, rgba(var(--color-brand-rgb-500), .35));transition:transform .16s ease,box-shadow .16s ease}.campaign-card:hover .campaign-card__open{transform:scale(1.08);box-shadow:0 8px 24px var(--color-brand-soft-45, rgba(var(--color-brand-rgb-500), .45))}.campaign-card__media{position:relative;aspect-ratio:16 / 9;background:var(--color-paper-200, #EEE4DA)}.campaign-card__img{width:100%;height:100%;object-fit:cover;display:block}.campaign-card__fallback{display:flex;align-items:flex-end;height:100%;padding:14px;background:radial-gradient(120% 120% at 50% 0%,#fbf7f1,#f7f2ec 55%,#eee4da)}.campaign-card__fallback-title{font-family:var(--font-family-display, "Fraunces", Georgia, serif);font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--color-ink-900, #2F1E19);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.campaign-card__chip{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:var(--radius-full, 999px);background:var(--color-brand-500, var(--color-brand-500));color:#fff;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:12px;font-weight:700;letter-spacing:-.01em;box-shadow:0 6px 16px rgba(var(--color-brand-rgb-500),.34)}.campaign-card__body{padding:16px 16px 18px}.campaign-card__title{margin:0;font-family:var(--font-family-display, "Fraunces", Georgia, serif);font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--color-ink-900, #2F1E19);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.campaign-card__desc{margin:9px 0 0;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:12.5px;line-height:1.5;color:var(--color-ink-500, #8B7E77);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.campaign-card__window{display:inline-flex;align-items:center;gap:6px;margin:14px 0 0;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:11.5px;font-weight:600;color:var(--color-ink-500, #8B7E77)}.campaign-detail__noimg{background:radial-gradient(120% 120% at 50% 0%,#fbf7f1,#f7f2ec 55%,#eee4da)}.campaign-detail__eyebrow{display:block;margin-bottom:6px;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand-600, var(--color-brand-600))}.campaign-detail__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 0}.campaign-detail__chip{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;background:var(--color-brand-500, var(--color-brand-500));color:#fff;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:13px;font-weight:700}.campaign-detail__window{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:13px;font-weight:600;color:var(--color-ink-500, #8B7E77)}.campaign-detail__text{padding:2px 20px 26px}.campaign-detail__p{margin:0 0 14px;font-family:var(--font-family-sans, "Space Grotesk", sans-serif);font-size:15px;line-height:1.6;color:var(--color-ink-700, #4A3B34)}.campaign-detail__p:last-child{margin-bottom:0}.menu-page .modal-sheet.campaign-detail-sheet{max-height:82vh;max-height:82dvh}.campaign-detail-sheet .pdm-hero-img{aspect-ratio:16 / 7}.splash-intro{position:fixed;inset:0;z-index:9999;pointer-events:none;display:flex;align-items:center;justify-content:center;background:var(--cream, #F7F2EC)}.splash-intro__center{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 24px;text-align:center;position:relative}.splash-intro__logo{height:clamp(64px,16vw,110px);max-width:70vw;width:auto;object-fit:contain}.splash-intro__name{font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(26px,6.4vw,44px);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--color-ink-900, #2F1E19);text-wrap:balance;max-width:22ch}.splash-intro__dots{display:flex;gap:7px;margin-top:6px;opacity:0;animation:splash-fade-in .4s ease .9s forwards}.splash-intro__dots span{width:7px;height:7px;border-radius:999px;background:var(--color-brand-500, #E85D04);animation:splash-dot 1.1s ease-in-out infinite}.splash-intro__dots span:nth-child(2){animation-delay:.18s}.splash-intro__dots span:nth-child(3){animation-delay:.36s}.splash-intro__brand{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom,0px));left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:4px;opacity:0;animation:splash-fade-in .5s ease .55s forwards}.splash-intro__brand-logo{height:22px;width:auto;opacity:.85}.splash-intro__brand-text{font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:11px;font-weight:700;letter-spacing:.34em;text-indent:.34em;color:var(--color-ink-700, #7A5C51)}.splash-intro--fade .splash-intro__center:before{content:"";position:absolute;top:50%;left:50%;width:clamp(240px,62vw,400px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) scale(.55);background:radial-gradient(circle,rgba(var(--color-brand-rgb-500, 232, 93, 4),.2) 0%,transparent 65%);opacity:0;animation:splash-bloom 1.1s cubic-bezier(.22,1,.36,1) .05s forwards;pointer-events:none}.splash-intro--fade .splash-intro__logo{opacity:0;animation:splash-settle .7s cubic-bezier(.22,1,.36,1) .18s forwards,splash-breathe 3.2s ease-in-out 1.1s infinite}.splash-intro--fade .splash-intro__name{opacity:0;animation:splash-settle .6s cubic-bezier(.22,1,.36,1) .32s forwards}.splash-intro--rise .splash-intro__logo{opacity:0;animation:splash-rise-up .75s cubic-bezier(.22,1,.36,1) .1s forwards}.splash-intro--rise .splash-intro__name{opacity:0;animation:splash-rise .65s cubic-bezier(.22,1,.36,1) .3s forwards}.splash-intro--rise .splash-intro__center:after{content:"";display:block;height:3px;width:0;border-radius:3px;background:var(--color-brand-500, #E85D04);animation:splash-underline .55s cubic-bezier(.22,1,.36,1) .7s forwards}.splash-intro--zoom .splash-intro__logo{opacity:0;animation:splash-focus .95s cubic-bezier(.22,1,.36,1) .05s forwards}.splash-intro--zoom .splash-intro__name{opacity:0;animation:splash-fade-in .5s ease .7s forwards}.splash-intro--curtain{background:transparent}.splash-intro--curtain .splash-intro__panel{position:absolute;left:0;right:0;height:50.5%;background:var(--cream, #F7F2EC)}.splash-intro--curtain .splash-intro__panel--top{top:0}.splash-intro--curtain .splash-intro__panel--bottom{bottom:0}.splash-intro--curtain .splash-intro__center,.splash-intro--curtain .splash-intro__brand{z-index:1}.splash-intro--curtain .splash-intro__logo,.splash-intro--curtain .splash-intro__name{opacity:0;animation:splash-wipe-reveal .75s cubic-bezier(.65,0,.35,1) .15s forwards}.splash-intro--curtain .splash-intro__center:after{content:"";display:block;height:2px;width:0;border-radius:2px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.5);animation:splash-underline .6s cubic-bezier(.22,1,.36,1) .55s forwards}.splash-intro--ink{background:var(--color-brand-500, #E85D04)}.splash-intro--ink .splash-intro__name{color:#fff}.splash-intro--ink .splash-intro__dots span{background:#ffffffe6}.splash-intro--ink .splash-intro__brand-text{color:#ffffffd9}.splash-intro--ink .splash-intro__brand-logo{filter:brightness(0) invert(1);opacity:.9}.splash-intro--ink .splash-intro__logo{opacity:0;background:#fff;border-radius:18px;padding:10px;animation:splash-zoom .6s cubic-bezier(.22,1,.36,1) .08s forwards}.splash-intro--ink .splash-intro__name{opacity:0;animation:splash-settle .55s cubic-bezier(.22,1,.36,1) .3s forwards}.splash-intro--ink .splash-intro__center:before,.splash-intro--ink .splash-intro__center:after{content:"";position:absolute;top:50%;left:50%;width:clamp(180px,46vw,300px);aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.55);transform:translate(-50%,-50%) scale(.45);opacity:0;animation:splash-sonar 2.4s cubic-bezier(.2,.6,.4,1) .4s infinite;pointer-events:none}.splash-intro--ink .splash-intro__center:after{animation-delay:1.6s;border-width:1.5px}.splash-intro--ripple .splash-intro__logo{opacity:0;animation:splash-settle .6s cubic-bezier(.22,1,.36,1) .1s forwards}.splash-intro--ripple .splash-intro__name{opacity:0;animation:splash-fade-in .5s ease .4s forwards}.splash-intro--ripple .splash-intro__center:before,.splash-intro--ripple .splash-intro__center:after{content:"";position:absolute;top:50%;left:50%;width:clamp(170px,44vw,280px);aspect-ratio:1;border-radius:50%;border:2px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.45);transform:translate(-50%,-50%) scale(.45);opacity:0;animation:splash-sonar 2.4s cubic-bezier(.2,.6,.4,1) .35s infinite;pointer-events:none}.splash-intro--ripple .splash-intro__center:after{animation-delay:1.55s;border-width:1.5px}.splash-intro--glow .splash-intro__center:before{content:"";position:absolute;top:50%;left:50%;width:clamp(320px,86vw,560px);aspect-ratio:1;border-radius:50%;pointer-events:none;background:conic-gradient(from 0deg,transparent 0deg,rgba(var(--color-brand-rgb-500, 232, 93, 4),.55) 40deg,rgba(var(--color-brand-rgb-500, 232, 93, 4),.95) 88deg,rgba(var(--color-brand-rgb-300, 242, 205, 83),1) 118deg,rgba(255,255,255,.95) 132deg,transparent 152deg,transparent 218deg,rgba(var(--color-brand-rgb-500, 232, 93, 4),.35) 268deg,transparent 360deg);-webkit-mask:radial-gradient(closest-side,transparent 58%,#000 64% 84%,transparent 90%);mask:radial-gradient(closest-side,transparent 58%,#000 64% 84%,transparent 90%);filter:blur(7px);opacity:0;animation:splash-halo-in .9s cubic-bezier(.22,1,.36,1) .15s forwards,splash-halo-spin 5.5s linear 1.05s infinite}.splash-intro--glow:before{content:"";position:absolute;top:50%;left:50%;width:clamp(410px,112vw,720px);aspect-ratio:1;border-radius:50%;pointer-events:none;background:conic-gradient(from 180deg,transparent 0deg,rgba(var(--color-brand-rgb-500, 232, 93, 4),.3) 70deg,transparent 130deg,transparent 200deg,rgba(var(--color-brand-rgb-300, 242, 205, 83),.28) 262deg,transparent 320deg);-webkit-mask:radial-gradient(closest-side,transparent 76%,#000 79% 84%,transparent 87%);mask:radial-gradient(closest-side,transparent 76%,#000 79% 84%,transparent 87%);filter:blur(3px);opacity:0;animation:splash-halo-in 1s cubic-bezier(.22,1,.36,1) .3s forwards,splash-halo-spin-rev 9s linear 1.3s infinite}.splash-intro--glow .splash-intro__center:after{content:"";position:absolute;top:50%;left:50%;width:clamp(210px,54vw,350px);aspect-ratio:1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(var(--color-brand-rgb-500, 232, 93, 4),.26) 0%,transparent 65%);transform:translate(-50%,-50%);opacity:0;animation:splash-fade-in .7s ease .25s forwards,splash-halo-pulse 2.6s ease-in-out 1s infinite}.splash-intro--glow .splash-intro__logo{opacity:0;animation:splash-settle .6s cubic-bezier(.22,1,.36,1) .1s forwards}.splash-intro--glow .splash-intro__name{opacity:0;animation:splash-fade-in .55s ease .4s forwards}.splash-intro--bar .splash-intro__logo{opacity:0;animation:splash-settle .6s cubic-bezier(.22,1,.36,1) .1s forwards}.splash-intro--bar .splash-intro__name{opacity:0;animation:splash-fade-in .5s ease .3s forwards}.splash-intro--bar .splash-intro__dots{display:none}.splash-intro__bar{width:clamp(150px,38vw,230px);height:4px;border-radius:999px;margin-top:20px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.16);overflow:hidden;opacity:0;animation:splash-fade-in .4s ease .55s forwards}.splash-intro__bar-fill{display:block;height:100%;width:42%;border-radius:999px;background:linear-gradient(90deg,var(--color-brand-500, #E85D04),rgba(var(--color-brand-rgb-300, 242, 205, 83),.9));animation:splash-bar-slide 1.15s cubic-bezier(.65,0,.35,1) .65s infinite;transform:translate(-110%)}.splash-intro--pulse .splash-intro__dots{display:none}.splash-intro--pulse .splash-intro__logo{opacity:0;animation:splash-settle .5s cubic-bezier(.22,1,.36,1) .08s forwards,splash-logo-pulse 1.6s ease-in-out .7s infinite}.splash-intro--pulse .splash-intro__name{opacity:0;animation:splash-fade-in .5s ease .3s forwards}.splash-intro--pulse .splash-intro__center:before{content:"";position:absolute;top:50%;left:50%;width:clamp(150px,38vw,240px);aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.35);transform:translate(-50%,-50%) scale(.6);opacity:0;animation:splash-sonar 1.6s cubic-bezier(.2,.6,.4,1) .7s infinite;pointer-events:none}.splash-intro.is-held .splash-intro__logo,.splash-intro.is-held .splash-intro__name,.splash-intro.is-held .splash-intro__letter,.splash-intro.is-held .splash-intro__brand,.splash-intro.is-held .splash-intro__dots{animation-delay:0s!important;animation-duration:.01s!important;opacity:1}.splash-intro.is-held .splash-intro__dots span{animation:splash-dot 1.1s ease-in-out infinite}.splash-intro.is-held .splash-intro__dots span:nth-child(2){animation-delay:.18s}.splash-intro.is-held .splash-intro__dots span:nth-child(3){animation-delay:.36s}.splash-intro.is-leaving{animation:splash-root-out .45s ease .1s forwards}.splash-intro--curtain.is-leaving{animation:splash-root-hide .01s linear .59s forwards}.splash-intro--curtain.is-leaving .splash-intro__panel--top{animation:splash-curtain-up .55s cubic-bezier(.65,0,.35,1) forwards}.splash-intro--curtain.is-leaving .splash-intro__panel--bottom{animation:splash-curtain-down .55s cubic-bezier(.65,0,.35,1) forwards}.splash-intro--curtain.is-leaving .splash-intro__center,.splash-intro--curtain.is-leaving .splash-intro__brand{animation:splash-fade-out .25s ease forwards}.splash-intro--ink.is-leaving{animation:splash-wipe-up .55s cubic-bezier(.65,0,.35,1) forwards}.splash-intro:not(.splash-intro--curtain) .splash-intro__panel{display:none}.splash-intro__deco{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.splash-intro__deco-item{position:absolute;display:block}.splash-intro--orbit .splash-intro__logo,.splash-intro--burst .splash-intro__logo,.splash-intro--shapes .splash-intro__logo{height:clamp(46px,11vw,72px)}.splash-intro--orbit .splash-intro__name,.splash-intro--burst .splash-intro__name,.splash-intro--shapes .splash-intro__name{font-size:clamp(21px,5vw,32px)}.splash-intro--orbit .splash-intro__logo{opacity:0;animation:splash-zoom .6s cubic-bezier(.22,1,.36,1) .1s forwards}.splash-intro--orbit .splash-intro__name{opacity:0;animation:splash-fade-in .5s ease .55s forwards}.splash-intro--orbit .splash-intro__center:before{content:"";position:absolute;top:50%;left:50%;width:clamp(180px,46vw,280px);aspect-ratio:1;transform:translate(-50%,-55%);border-radius:50%;background:radial-gradient(circle,rgba(var(--color-brand-rgb-500, 232, 93, 4),.14) 0%,transparent 70%);pointer-events:none}.splash-intro--orbit .splash-intro__deco-item--1,.splash-intro--orbit .splash-intro__deco-item--2,.splash-intro--orbit .splash-intro__deco-item--3{top:50%;left:50%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) scale(.5);opacity:0}.splash-intro--orbit .splash-intro__deco-item--1{width:clamp(230px,62vw,400px);border:1.5px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.4);animation:splash-ring-pop .7s cubic-bezier(.34,1.3,.64,1) .1s forwards}.splash-intro--orbit .splash-intro__deco-item--2{width:clamp(320px,88vw,560px);border:1.5px dashed rgba(var(--color-brand-rgb-500, 232, 93, 4),.35);animation:splash-ring-pop .7s cubic-bezier(.34,1.3,.64,1) .22s forwards,splash-ring-rotate 26s linear .9s infinite}.splash-intro--orbit .splash-intro__deco-item--3{width:clamp(420px,116vw,740px);border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.16);animation:splash-ring-pop .7s cubic-bezier(.34,1.3,.64,1) .34s forwards}.splash-intro__orbiter{position:absolute;top:50%;left:50%;width:0;height:0;opacity:0;animation:splash-orbit-spin var(--orbit-t, 14s) linear infinite,splash-fade-in .45s ease var(--orbit-d, .6s) forwards}.splash-intro__orbiter-inner{display:flex;align-items:center;justify-content:center;width:clamp(30px,8vw,44px);aspect-ratio:1;margin:calc(clamp(30px,8vw,44px)/-2) 0 0 calc(clamp(30px,8vw,44px)/-2);border-radius:50%;background:var(--cream, #F7F2EC);border:1.5px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.4);box-shadow:0 4px 14px rgba(var(--color-brand-rgb-500, 232, 93, 4),.18);color:var(--color-brand-500, #E85D04);animation:splash-orbit-counter var(--orbit-t, 14s) linear infinite}.splash-intro__orbiter-inner svg{width:58%;height:58%}.splash-intro__orbiter--1{--orbit-r: clamp(115px, 31vw, 200px);--orbit-t: 12s;--orbit-d: .55s}.splash-intro__orbiter--2{--orbit-r: clamp(160px, 44vw, 280px);--orbit-t: 17s;--orbit-d: .7s;animation-delay:-6s,.7s}.splash-intro__orbiter--3{--orbit-r: clamp(210px, 58vw, 370px);--orbit-t: 23s;--orbit-d: .85s;animation-delay:-14s,.85s}.splash-intro__orbiter--2 .splash-intro__orbiter-inner{animation-delay:-6s}.splash-intro__orbiter--3 .splash-intro__orbiter-inner{animation-delay:-14s}.splash-intro--burst .splash-intro__logo{opacity:0;animation:splash-zoom .65s cubic-bezier(.34,1.56,.64,1) .18s forwards}.splash-intro--burst .splash-intro__name{opacity:0;animation:splash-settle .5s cubic-bezier(.22,1,.36,1) .6s forwards}.splash-intro--burst .splash-intro__deco-item--1,.splash-intro--burst .splash-intro__deco-item--2,.splash-intro--burst .splash-intro__deco-item--3,.splash-intro--burst .splash-intro__deco-item--4,.splash-intro--burst .splash-intro__deco-item--5,.splash-intro--burst .splash-intro__deco-item--6{top:50%;left:50%;width:3px;height:clamp(110px,28vw,190px);border-radius:3px;background:linear-gradient(180deg,var(--color-brand-500, #E85D04),transparent);transform-origin:50% 0;transform:translate(-50%) rotate(var(--ray-a)) scaleY(0);opacity:0;animation:splash-ray .7s cubic-bezier(.22,1,.36,1) .05s forwards}.splash-intro--burst .splash-intro__deco-item--1{--ray-a: 0deg}.splash-intro--burst .splash-intro__deco-item--2{--ray-a: 60deg;animation-delay:.1s}.splash-intro--burst .splash-intro__deco-item--3{--ray-a: 120deg;animation-delay:.15s}.splash-intro--burst .splash-intro__deco-item--4{--ray-a: 180deg;animation-delay:.08s}.splash-intro--burst .splash-intro__deco-item--5{--ray-a: 240deg;animation-delay:.18s}.splash-intro--burst .splash-intro__deco-item--6{--ray-a: 300deg;animation-delay:.12s}.splash-intro--burst .splash-intro__deco-item--7,.splash-intro--burst .splash-intro__deco-item--8,.splash-intro--burst .splash-intro__deco-item--9,.splash-intro--burst .splash-intro__deco-item--10{top:50%;left:50%;width:9px;height:9px;border-radius:50%;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.65);opacity:0;animation:splash-particle .9s cubic-bezier(.22,1,.36,1) .25s forwards}.splash-intro--burst .splash-intro__deco-item--7{--px: -1;--py: -.7}.splash-intro--burst .splash-intro__deco-item--8{--px: 1;--py: -.9;width:6px;height:6px;animation-delay:.34s}.splash-intro--burst .splash-intro__deco-item--9{--px: -.8;--py: .9;width:6px;height:6px;animation-delay:.3s}.splash-intro--burst .splash-intro__deco-item--10{--px: .9;--py: .8;animation-delay:.4s}.splash-intro--shapes .splash-intro__logo{opacity:0;animation:splash-settle .6s cubic-bezier(.22,1,.36,1) .35s forwards}.splash-intro--shapes .splash-intro__name{opacity:0;animation:splash-settle .55s cubic-bezier(.22,1,.36,1) .55s forwards}.splash-intro--shapes .splash-intro__deco-item{opacity:0;animation:splash-shape-in .8s cubic-bezier(.22,1,.36,1) forwards}.splash-intro--shapes .splash-intro__deco-item--1{top:-6%;left:-8%;width:clamp(140px,36vw,260px);aspect-ratio:1;border-radius:50%;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.16);--sh-x: -60px;--sh-y: -60px;animation-delay:.05s}.splash-intro--shapes .splash-intro__deco-item--2{bottom:6%;right:-10%;width:clamp(160px,42vw,300px);aspect-ratio:1;border-radius:50%;border:clamp(14px,3.4vw,24px) solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.22);--sh-x: 70px;--sh-y: 50px;animation-delay:.15s}.splash-intro__deco-icon{position:absolute;color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.55);opacity:0;animation:splash-shape-in .8s cubic-bezier(.22,1,.36,1) forwards,splash-float 3.4s ease-in-out 1s infinite}.splash-intro__deco-icon--1{top:12%;right:8%;width:clamp(52px,13vw,92px);height:auto;transform:rotate(8deg);--sh-x: 50px;--sh-y: -30px;animation-delay:.15s,1s;color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.7)}.splash-intro__deco-icon--2{top:17%;left:9%;width:clamp(42px,11vw,76px);height:auto;transform:rotate(-12deg);--sh-x: -50px;--sh-y: -26px;animation-delay:.25s,1.4s}.splash-intro__deco-icon--3{bottom:20%;left:10%;width:clamp(46px,12vw,84px);height:auto;transform:rotate(-8deg);--sh-x: -44px;--sh-y: 34px;animation-delay:.35s,.6s;color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.62)}.splash-intro__deco-icon--4{bottom:16%;right:11%;width:clamp(44px,11vw,80px);height:auto;transform:rotate(6deg);--sh-x: 44px;--sh-y: 36px;animation-delay:.45s,1.8s}.splash-intro__deco-icon--5{top:6%;left:34%;width:clamp(30px,8vw,54px);height:auto;transform:rotate(-5deg);--sh-x: 0px;--sh-y: -40px;animation-delay:.55s,2.2s;color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.4)}.splash-intro__deco-icon--6{top:44%;right:5%;width:clamp(26px,7vw,46px);height:auto;transform:rotate(14deg);--sh-x: 34px;--sh-y: 0px;animation-delay:.6s,1.2s;color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.38)}.splash-intro--shapes .splash-intro__deco-item--3,.splash-intro--shapes .splash-intro__deco-item--4,.splash-intro--shapes .splash-intro__deco-item--5,.splash-intro--shapes .splash-intro__deco-item--6,.splash-intro--shapes .splash-intro__deco-item--7,.splash-intro--shapes .splash-intro__deco-item--8,.splash-intro--shapes .splash-intro__deco-item--9,.splash-intro--shapes .splash-intro__deco-item--10{display:none}@keyframes splash-root-out{to{opacity:0;visibility:hidden}}@keyframes splash-root-hide{to{opacity:0;visibility:hidden}}@keyframes splash-fade-in{to{opacity:1}}@keyframes splash-fade-out{to{opacity:0}}@keyframes splash-settle{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes splash-drop{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-rise{0%{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(18px)}to{opacity:1;clip-path:inset(0 0 -10% 0);transform:translateY(0)}}@keyframes splash-zoom{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes splash-bloom{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes splash-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes splash-rise-up{0%{opacity:0;transform:translateY(clamp(40px,10vw,70px)) scale(.94)}70%{opacity:1;transform:translateY(-4px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes splash-underline{to{width:clamp(70px,18vw,120px)}}@keyframes splash-focus{0%{opacity:0;transform:scale(2.3);filter:blur(18px)}55%{opacity:1}82%{transform:scale(.985);filter:blur(0)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes splash-wipe-reveal{0%{opacity:0;clip-path:inset(0 100% 0 0)}30%{opacity:1}to{opacity:1;clip-path:inset(0 -8% 0 0)}}@keyframes splash-sonar{0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}12%{opacity:.85}to{opacity:0;transform:translate(-50%,-50%) scale(1.7)}}@keyframes splash-halo-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes splash-halo-spin{0%{transform:translate(-50%,-50%) scale(1) rotate(0)}to{transform:translate(-50%,-50%) scale(1) rotate(360deg)}}@keyframes splash-halo-spin-rev{0%{transform:translate(-50%,-50%) scale(1) rotate(0)}to{transform:translate(-50%,-50%) scale(1) rotate(-360deg)}}@keyframes splash-halo-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.12);opacity:.75}}@keyframes splash-bar-slide{0%{transform:translate(-110%)}to{transform:translate(280%)}}@keyframes splash-logo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}@keyframes splash-glow{0%,to{opacity:.7;transform:translate(-50%,-55%) scale(1)}50%{opacity:1;transform:translate(-50%,-55%) scale(1.12)}}@keyframes splash-dot{0%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes splash-curtain-up{to{transform:translateY(-102%)}}@keyframes splash-curtain-down{to{transform:translateY(102%)}}@keyframes splash-ring-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}70%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes splash-ring-rotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes splash-orbit-spin{0%{transform:rotate(0) translate(var(--orbit-r, 120px))}to{transform:rotate(360deg) translate(var(--orbit-r, 120px))}}@keyframes splash-orbit-counter{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes splash-ray{0%{opacity:0;transform:translate(-50%) rotate(var(--ray-a, 0deg)) scaleY(0)}60%{opacity:1}to{opacity:.5;transform:translate(-50%) rotate(var(--ray-a, 0deg)) scaleY(1) translateY(clamp(80px,20vw,140px))}}@keyframes splash-particle{0%{opacity:0;transform:translate(0) scale(.4)}30%{opacity:1}to{opacity:0;transform:translate(calc(var(--px, 1) * clamp(150px,40vw,280px)),calc(var(--py, 1) * clamp(150px,40vw,280px))) scale(1)}}@keyframes splash-shape-in{0%{opacity:0;translate:var(--sh-x, 0) var(--sh-y, 0)}to{opacity:1;translate:0 0}}@keyframes splash-float{0%,to{margin-top:0}50%{margin-top:-7px}}@keyframes splash-wipe-up{to{clip-path:inset(0 0 100% 0);visibility:hidden}}@media(prefers-reduced-motion:reduce){.splash-intro{display:none!important}}.music-player__fab{position:fixed;right:14px;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:950;width:42px;height:42px;border-radius:999px;border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.25);background:var(--color-surface-100, #FFFFFF);color:var(--color-brand-500, #E85D04);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px #2f1e192e}.music-player__fab.is-playing{background:var(--color-brand-500, #E85D04);color:#fff;animation:music-fab-pulse 2.2s ease-in-out infinite}.music-drawer__scrim{position:fixed;inset:0;z-index:960;background:#140e0a59;animation:music-scrim-in .2s ease}.music-drawer{position:fixed;top:0;right:0;bottom:0;z-index:970;width:min(320px,88vw);display:flex;flex-direction:column;gap:12px;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--color-surface-100, #FFFFFF);border-left:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.16);box-shadow:-14px 0 44px #2f1e1938;transform:translate(102%);transition:transform .32s cubic-bezier(.32,.72,0,1);visibility:hidden}.music-drawer.is-open{transform:translate(0);visibility:visible}.music-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.music-drawer__title{font-family:var(--font-family-display, "Fraunces", serif);font-size:17px;font-weight:600;color:var(--color-ink-900, #2F1E19)}.music-drawer__close{width:30px;height:30px;flex-shrink:0;border-radius:999px;border:none;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.1);color:var(--color-ink-900, #2F1E19);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.music-drawer__volume-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.07);border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.14)}.music-drawer__mute{width:36px;height:36px;flex-shrink:0;border-radius:999px;border:none;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.14);color:var(--color-brand-500, #E85D04);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.music-drawer__mute.is-on{background:var(--color-brand-500, #E85D04);color:#fff}.music-drawer__volume{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:4px;border-radius:999px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.22);outline:none;cursor:pointer}.music-drawer__volume::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-brand-500, #E85D04);border:2px solid var(--color-surface-100, #fff);box-shadow:0 2px 6px #2f1e1940}.music-drawer__volume::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-brand-500, #E85D04);border:2px solid var(--color-surface-100, #fff)}.music-drawer__label{font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-ink-700, #7A5C51);margin-top:2px}.music-drawer__list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1;min-height:0}.music-drawer__item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:13px;border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.12);background:transparent}.music-drawer__item.is-current{background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.1);border-color:rgba(var(--color-brand-rgb-500, 232, 93, 4),.34)}.music-drawer__demo{width:30px;height:30px;flex-shrink:0;border-radius:999px;border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.3);background:transparent;color:var(--color-brand-500, #E85D04);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.music-drawer__demo.is-playing{background:var(--color-brand-500, #E85D04);border-color:var(--color-brand-500, #E85D04);color:#fff}.music-drawer__pick{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:none;background:transparent;padding:0;cursor:pointer;text-align:left}.music-drawer__track{font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:13px;font-weight:600;color:var(--color-ink-900, #2F1E19);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.music-drawer__mood{font-size:11px;color:var(--color-ink-700, #7A5C51)}.music-drawer__badge{width:20px;height:20px;flex-shrink:0;border-radius:999px;background:var(--color-brand-500, #E85D04);color:#fff;display:inline-flex;align-items:center;justify-content:center}@keyframes music-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes music-fab-pulse{0%,to{box-shadow:0 6px 20px #2f1e192e,0 0 rgba(var(--color-brand-rgb-500, 232, 93, 4),.35)}50%{box-shadow:0 6px 20px #2f1e192e,0 0 0 9px rgba(var(--color-brand-rgb-500, 232, 93, 4),0)}}.ui-footer{width:100%;font-family:var(--font-body)}.ui-footer__powered-band{width:100%;padding:var(--space-5) var(--space-6)}.ui-footer__powered-band--accent{background-color:var(--accent);color:var(--neutral-0)}.ui-footer__powered-band--sunken{background-color:var(--surface-muted);color:var(--text-primary)}.ui-footer__powered-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.ui-footer__powered-brand{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ui-footer__powered-logo{width:24px;height:22px}.ui-footer__powered-band--accent .ui-footer__powered-logo{filter:brightness(0) invert(1)}.ui-footer__powered-text{display:inline-flex;align-items:baseline;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium)}.ui-footer__powered-by{opacity:.85;letter-spacing:.04em}.ui-footer__powered-name{font-weight:var(--weight-bold);letter-spacing:.02em}.ui-footer__powered-dot{opacity:.65;margin:0 var(--space-1)}.ui-footer__powered-tagline{font-size:var(--text-sm);opacity:.92}.ui-footer__powered-cta{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);background-color:var(--neutral-0);color:var(--accent);border-radius:var(--radius-full);text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:background-color var(--duration-fast) var(--ease-out),transform var(--duration-tap) var(--ease-out)}.ui-footer__powered-cta:hover{background-color:var(--neutral-50)}.ui-footer__powered-cta:active{transform:scale(.97)}.ui-footer__powered-cta:focus-visible{outline:none;box-shadow:0 0 0 var(--ring-width) var(--neutral-0);outline-offset:var(--space-1)}.ui-footer__powered-band--sunken .ui-footer__powered-cta{background-color:var(--accent);color:var(--neutral-0)}.ui-footer__powered-band--sunken .ui-footer__powered-cta:hover{background-color:var(--accent-hover)}.ui-footer__main{background-color:var(--surface-base);padding:var(--space-8) var(--space-6)}.ui-footer__columns{max-width:1200px;margin:0 auto var(--space-6);display:grid;grid-template-columns:1fr;gap:var(--space-6);align-items:start}@media(min-width:720px){.ui-footer__columns{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-8)}}.ui-footer__column{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}@media(min-width:720px){.ui-footer__column--brand{grid-column:span 2;max-width:360px}}.ui-footer__column-title{margin:0;font-family:var(--font-display, var(--font-body));font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-primary);opacity:.72}.ui-footer__column-list{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.ui-footer__brand-logo{width:28px;height:auto}.ui-footer__brand-tagline{margin:0;font-family:var(--font-display, var(--font-body));font-size:var(--text-lg);line-height:1.35;color:var(--text-primary)}.ui-footer__brand-cta{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent);text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-medium);padding:var(--space-1) 0;border-bottom:var(--border-width-hairline) solid transparent;transition:border-color var(--duration-base) var(--ease-spring-soft)}.ui-footer__brand-cta:hover{border-bottom-color:var(--accent)}.ui-footer__brand-cta:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:0 0 0 var(--ring-width) var(--accent-soft)}.ui-footer__link,.ui-footer__legal-link{color:var(--text-primary);text-decoration:none;border-bottom:var(--border-width-hairline) solid transparent;padding-bottom:1px;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-base) var(--ease-spring-soft)}.ui-footer__link:hover,.ui-footer__legal-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.ui-footer__link:focus-visible,.ui-footer__legal-link:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:0 0 0 var(--ring-width) var(--accent-soft)}.ui-footer__rgpd{max-width:720px;margin:0 auto var(--space-4);font-size:var(--text-xs);color:var(--text-muted);line-height:1.5;text-align:center}.ui-footer__bottom{display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-wrap:wrap;font-size:var(--text-xs);color:var(--text-muted);border-top:var(--border-width-hairline) solid var(--border-subtle);padding-top:var(--space-4);max-width:1200px;margin:0 auto}.ui-footer__bottom-sep{opacity:.5}.ui-footer__copyright,.ui-footer__made-in{margin:0;display:inline-flex;align-items:center;gap:var(--space-1)}.ui-footer__heart{color:var(--accent);vertical-align:middle}.ui-footer__lang-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background-color:transparent;border:var(--border-width-hairline) solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;font-size:var(--text-xs);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);position:relative}.ui-footer__lang-btn:before{content:"";position:absolute;inset:50%;width:44px;height:44px;transform:translate(-50%,-50%)}.ui-footer__lang-btn:hover{border-color:var(--accent);color:var(--text-primary)}.ui-footer__lang-btn:focus-visible{outline:none;box-shadow:0 0 0 var(--ring-width) var(--accent-soft)}.ui-footer--editorial .ui-footer__main{background-color:var(--accent);color:var(--neutral-0)}.ui-footer--editorial .ui-footer__column-title{color:var(--neutral-0);opacity:.78}.ui-footer--editorial .ui-footer__brand-logo{filter:brightness(0) invert(1)}.ui-footer--editorial .ui-footer__brand-tagline{color:var(--neutral-0)}.ui-footer--editorial .ui-footer__brand-cta,.ui-footer--editorial .ui-footer__link,.ui-footer--editorial .ui-footer__legal-link{color:var(--neutral-0);opacity:.92}.ui-footer--editorial .ui-footer__brand-cta:hover,.ui-footer--editorial .ui-footer__link:hover,.ui-footer--editorial .ui-footer__legal-link:hover{color:var(--neutral-0);opacity:1;border-bottom-color:var(--neutral-0)}.ui-footer--editorial .ui-footer__brand-cta:focus-visible,.ui-footer--editorial .ui-footer__link:focus-visible,.ui-footer--editorial .ui-footer__legal-link:focus-visible{box-shadow:0 0 0 var(--ring-width) #fff6}.ui-footer--editorial .ui-footer__rgpd{color:var(--neutral-0);opacity:.78}.ui-footer--editorial .ui-footer__bottom{color:var(--neutral-0);opacity:.88;border-top-color:#ffffff2e}.ui-footer--editorial .ui-footer__heart{color:var(--neutral-0)}.ui-footer--editorial .ui-footer__lang-btn{background-color:transparent;border-color:#ffffff52;color:var(--neutral-0)}.ui-footer--editorial .ui-footer__lang-btn:hover{background-color:#ffffff1a;border-color:var(--neutral-0);color:var(--neutral-0)}.ui-footer--editorial .ui-footer__lang-btn:focus-visible{box-shadow:0 0 0 var(--ring-width) #fff6}@media(max-width:720px){.ui-footer__powered-band{padding:var(--space-4)}.ui-footer__powered-inner{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.ui-footer__powered-cta{align-self:flex-end}.ui-footer__main{padding:var(--space-6) var(--space-4)}}@media(prefers-reduced-motion:reduce){.ui-footer__powered-cta,.ui-footer__link,.ui-footer__legal-link,.ui-footer__brand-cta,.ui-footer__lang-btn{transition-duration:1ms}.ui-footer__powered-cta:active{transform:none}}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:32px;outline:none;overflow:hidden;padding:0;width:32px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#eee}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 11.7071C4.68342 12.0976 5.31658 12.0976 5.70711 11.7071L9 8.41421L12.2929 11.7071C12.6834 12.0976 13.3166 12.0976 13.7071 11.7071C14.0976 11.3166 14.0976 10.6834 13.7071 10.2929L9.70711 6.29289C9.31658 5.90237 8.68342 5.90237 8.29289 6.29289L4.29289 10.2929C3.90237 10.6834 3.90237 11.3166 4.29289 11.7071Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-down .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 6.29289C4.68342 5.90237 5.31658 5.90237 5.70711 6.29289L9 9.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L9.70711 11.7071C9.31658 12.0976 8.68342 12.0976 8.29289 11.7071L4.29289 7.70711C3.90237 7.31658 3.90237 6.68342 4.29289 6.29289Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media(-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left)>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left) .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{font-size:16px;font-weight:700;text-align:center}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#ccc;color:#000}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}:root{--container-xs: 100%;--container-sm: 100%;--container-md: 720px;--container-lg: 960px;--container-xl: 1140px;--container-fluid: 100%;--container-max: var(--container-sm);--font-size-xs: clamp(10px, 2.5vw, 11px);--font-size-sm: clamp(12px, 2.8vw, 13px);--font-size-base: clamp(14px, 3.2vw, 16px);--font-size-lg: clamp(16px, 3.5vw, 18px);--font-size-xl: clamp(18px, 4vw, 22px);--font-size-2xl: clamp(22px, 5vw, 28px);--font-size-3xl: clamp(28px, 6vw, 36px);--font-size-4xl: clamp(34px, 8vw, 48px);--font-size-5xl: clamp(42px, 10vw, 60px);--space-1: clamp(3px, 1vw, 4px);--space-2: clamp(6px, 1.5vw, 8px);--space-3: clamp(10px, 2vw, 12px);--space-4: clamp(14px, 2.5vw, 16px);--space-5: clamp(18px, 3vw, 20px);--space-6: clamp(20px, 3.5vw, 24px);--space-7: clamp(28px, 4vw, 32px);--space-8: clamp(36px, 5vw, 40px);--space-9: clamp(42px, 6vw, 48px);--space-10: clamp(56px, 8vw, 64px);--page-padding-x: clamp(12px, 4vw, 24px);--page-padding-y: clamp(16px, 5vw, 32px);--page-padding-bottom: calc(100px + env(safe-area-inset-bottom, 20px)) ;--grid-columns: 1;--grid-gap: var(--space-4);--card-min-width: 280px;--color-brand-700: #B8341A;--color-brand-600: #C63A1E;--color-brand-500: var(--orange-500);--color-brand-450: #F06D1B;--color-brand-300: #F1A07A;--color-brand-rgb-700: 184, 52, 26;--color-brand-rgb-600: 198, 58, 30;--color-brand-rgb-500: 232, 93, 4;--color-brand-rgb-550: 214, 90, 31;--color-brand-rgb-450: 240, 109, 27;--color-brand-rgb-300: 241, 160, 122;--color-ink-900: #2F1E19;--color-ink-700: #7A3E2B;--color-ink-500: #8B7E77;--color-ink-rgb: 47, 30, 25;--color-paper-100: #F7F2EC;--color-paper-200: #EEE4DA;--color-paper-300: #D8CFC5;--color-surface-100: #FFFFFF;--color-surface-rgb: 255, 255, 255;--color-brand-soft-03: rgba(var(--color-brand-rgb-600), .03);--color-brand-soft-05: rgba(var(--color-brand-rgb-600), .05);--color-brand-soft-08: rgba(var(--color-brand-rgb-600), .08);--color-brand-soft-10: rgba(var(--color-brand-rgb-600), .1);--color-brand-soft-12: rgba(var(--color-brand-rgb-600), .12);--color-brand-soft-15: rgba(var(--color-brand-rgb-600), .15);--color-brand-soft-18: rgba(var(--color-brand-rgb-600), .18);--color-brand-soft-24: rgba(var(--color-brand-rgb-600), .24);--color-brand-soft-35: rgba(var(--color-brand-rgb-600), .35);--color-brand-soft-45: rgba(var(--color-brand-rgb-600), .45);--color-brand-gradient: linear-gradient(145deg, var(--color-brand-600) 0%, var(--color-brand-500) 100%);--color-brand-gradient-hover: linear-gradient(145deg, var(--color-brand-600) 0%, var(--color-brand-450) 100%);--primary: var(--color-brand-500);--primary-dark: var(--color-brand-600);--primary-light: var(--color-brand-300);--primary-soft: var(--color-brand-soft-12);--primary-gradient: linear-gradient(135deg, var(--color-brand-500) 0%, var(--color-brand-600) 100%);--brown: var(--color-ink-700);--brown-dark: var(--color-ink-900);--brown-light: var(--color-ink-500);--cream: var(--color-paper-200);--cream-dark: var(--color-paper-300);--cream-light: var(--color-paper-100);--white: var(--color-surface-100);--text-primary: var(--color-ink-900);--text-secondary: var(--color-ink-700);--text-muted: var(--color-ink-500);--text-inverse: var(--color-surface-100);--success: #4CAF50;--warning: #FF9800;--error: #F44336;--info: #2196F3;--accent-gold: #D4A853;--accent-sage: #8BA888;--accent-terracotta: #C17767;--glass-bg: rgba(255, 255, 255, .75);--glass-bg-strong: rgba(255, 255, 255, .92);--glass-bg-light: rgba(255, 255, 255, .5);--glass-border: rgba(255, 255, 255, .35);--glass-shadow: 0 8px 32px rgba(92, 61, 46, .12);--glass-blur: blur(20px);--glass-blur-strong: blur(30px);--shadow-xs: 0 1px 2px rgba(92, 61, 46, .04);--shadow-sm: 0 2px 8px rgba(92, 61, 46, .08);--shadow-md: 0 4px 16px rgba(92, 61, 46, .12);--shadow-lg: 0 8px 32px rgba(92, 61, 46, .16);--shadow-xl: 0 16px 48px rgba(92, 61, 46, .2);--shadow-2xl: 0 24px 64px rgba(92, 61, 46, .24);--shadow-inner: inset 0 2px 4px rgba(92, 61, 46, .06);--shadow-glow: 0 0 20px rgba(var(--color-brand-rgb-500), .3);--shadow-glow-strong: 0 0 40px rgba(var(--color-brand-rgb-500), .4);--shadow-premium: 0 1px 2px rgba(92, 61, 46, .04), 0 4px 8px rgba(92, 61, 46, .08), 0 16px 32px rgba(92, 61, 46, .12);--shadow-floating: 0 0 0 1px rgba(255,255,255,.1), 0 20px 60px -10px rgba(92, 61, 46, .25);--radius-xs: clamp(6px, 1.5vw, 8px);--radius-sm: clamp(10px, 2vw, 12px);--radius-md: clamp(14px, 2.5vw, 16px);--radius-lg: clamp(18px, 3vw, 20px);--radius-xl: clamp(20px, 3.5vw, 24px);--radius-2xl: clamp(28px, 4vw, 32px);--radius-3xl: clamp(36px, 5vw, 40px);--radius-full: 9999px;--font-family-sans: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-display: "Fraunces", Georgia, serif;--font-family-body: var(--font-family-sans);--font-family-heading: var(--font-family-display);--font-family-ui: var(--font-family-sans);--font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-base: 1.5;--line-height-relaxed: 1.7;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .02em;--type-display-xl-size: var(--font-size-5xl);--type-display-lg-size: var(--font-size-4xl);--type-title-xl-size: var(--font-size-3xl);--type-title-lg-size: var(--font-size-2xl);--type-title-md-size: var(--font-size-xl);--type-body-lg-size: var(--font-size-lg);--type-body-md-size: var(--font-size-base);--type-body-sm-size: var(--font-size-sm);--type-caption-size: var(--font-size-xs);--type-display-family: var(--font-family-heading);--type-heading-family: var(--font-family-heading);--type-body-family: var(--font-family-body);--type-ui-family: var(--font-family-ui);--type-display-weight: var(--font-weight-bold);--type-heading-weight: var(--font-weight-semibold);--type-body-weight: var(--font-weight-regular);--type-label-weight: var(--font-weight-medium);--type-cta-weight: var(--font-weight-bold);--font-family: var(--font-family-body);--font-display: var(--font-family-heading);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.175, .885, .32, 1.275);--transition-bounce: .6s cubic-bezier(.68, -.55, .265, 1.55);--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 250;--z-modal-backdrop: 290;--z-modal: 300;--z-popover: 350;--z-toast: 400;--z-tooltip: 500;--touch-target-min: 44px;--touch-target-comfortable: 48px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-fadeIn{animation:fadeIn .3s ease}.animate-slideUp{animation:slideUp .4s var(--transition-spring)}.animate-scaleIn{animation:scaleIn .3s var(--transition-spring)}.animate-pulse{animation:pulse 2s ease-in-out infinite}.stagger-item{opacity:0;animation:slideUp .4s var(--transition-spring) forwards}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}.stagger-item:nth-child(9){animation-delay:.4s}.stagger-item:nth-child(10){animation-delay:.45s}.stagger-item:nth-child(11){animation-delay:.5s}.stagger-item:nth-child(12){animation-delay:.55s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-fadeIn,.animate-slideUp,.animate-scaleIn,.animate-pulse,.stagger-item{animation:none!important;opacity:1!important;transform:none!important}}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.press-effect:active{transform:scale(.97)}.hover-glow:hover{box-shadow:var(--shadow-glow)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--cream) 25%,var(--cream-light) 50%,var(--cream) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-bounce{animation:bounce .6s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.animate-shake{animation:shake .4s ease-in-out}@keyframes checkmark{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}#root{min-height:100vh}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-family)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--primary)}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--text-primary);background:var(--cream);min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(255,255,255,.8),transparent),radial-gradient(ellipse 60% 40% at 80% 20%,rgba(var(--color-brand-rgb-500),.05),transparent),radial-gradient(ellipse 70% 50% at 20% 80%,rgba(92,61,46,.04),transparent),linear-gradient(180deg,var(--cream-light) 0%,var(--cream) 50%,var(--cream-dark) 100%);pointer-events:none;z-index:-1}.app-container{width:100%;max-width:var(--container-max);margin:0 auto;padding:var(--page-padding-y) var(--page-padding-x);padding-bottom:var(--page-padding-bottom);transition:max-width var(--transition-base),padding var(--transition-base)}.app-container--full{max-width:100%;padding-left:0;padding-right:0}.app-container--compact{max-width:560px}.app-container--wide{max-width:1400px}.page{display:flex;flex-direction:column;gap:var(--space-5);width:100%;min-height:100vh;min-height:100dvh}.menu-page{display:flex;flex-direction:column;gap:var(--space-5)}.grid{display:grid;gap:var(--grid-gap);width:100%}.grid--auto{grid-template-columns:repeat(auto-fit,minmax(var(--card-min-width),1fr))}.grid--1{grid-template-columns:1fr}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.grid--responsive{grid-template-columns:1fr}@media(min-width:480px){.grid--responsive{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.grid--responsive{grid-template-columns:repeat(2,1fr)}.grid--responsive-3{grid-template-columns:repeat(3,1fr)}}@media(min-width:1024px){.grid--responsive{grid-template-columns:repeat(3,1fr)}.grid--responsive-4{grid-template-columns:repeat(4,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-5{padding-left:var(--space-5);padding-right:var(--space-5)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-5{padding-top:var(--space-5);padding-bottom:var(--space-5)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.w-auto{width:auto}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.min-w-0{min-width:0}.hide-mobile{display:none}.hide-tablet,.hide-desktop{display:block}@media(min-width:768px){.hide-mobile{display:block}.hide-tablet{display:none}.show-tablet{display:block}}@media(min-width:1024px){.hide-desktop{display:none}.show-desktop{display:block}}.header{position:relative;display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0 var(--space-2);margin-bottom:var(--space-2)}.header-left,.header-right{display:flex;align-items:center;gap:var(--space-2)}.header-logo{position:absolute;left:50%;transform:translate(-50%);background:none;border:none;padding:0;margin:0;line-height:0}.header-logo-img{height:200px;width:auto;display:block}.header-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);transition:var(--transition-base)}.header-pill:hover{background:var(--glass-bg-strong);transform:translateY(-1px)}.header-pill svg{width:16px;height:16px;color:var(--primary)}.header-icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);transition:var(--transition-base)}.header-icon-btn:hover{background:var(--glass-bg-strong);transform:translateY(-1px)}.header-icon-btn svg{width:18px;height:18px;color:var(--text-secondary)}.brand-section{text-align:center;padding:var(--space-4) 0}.brand-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--brown);letter-spacing:-.02em;margin-bottom:var(--space-1)}.brand-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary)}.sticky-bar{position:sticky;top:0;z-index:var(--z-sticky);background:var(--cream);padding:var(--space-1) 0;margin:0 calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4);overflow:visible}.sticky-bar:before{content:"";position:absolute;inset:0;background:var(--cream);opacity:.95;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:-1}.menu-page .header-bell-btn{position:relative;width:36px;height:36px;border-radius:999px;border:1px solid rgba(var(--color-brand-rgb-600),.12);background:var(--paper);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.menu-page .header-bell-btn:hover,.menu-page .header-bell-btn.is-open{border-color:rgba(var(--color-brand-rgb-600),.3);color:var(--copper);background:#fff}.menu-page .header-bell-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,var(--color-brand-600),var(--color-brand-500));color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--menu-surface);box-shadow:0 2px 8px rgba(var(--color-brand-rgb-600),.3);pointer-events:none}.notif-center__backdrop{position:fixed;inset:0;z-index:9998;background:transparent}.notif-center__panel{position:fixed;z-index:9999;width:min(360px,calc(100vw - 16px));max-height:min(72vh,520px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid rgba(47,30,25,.08);border-radius:18px;box-shadow:0 2px 8px #2f1e190f,0 18px 44px #2f1e192e;font-family:Space Grotesk,sans-serif;transform-origin:top right;animation:notif-center-in .22s cubic-bezier(.22,1,.36,1)}@keyframes notif-center-in{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-center__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 14px 10px 18px;border-bottom:1px solid rgba(47,30,25,.07)}.notif-center__title{margin:0;font-family:Fraunces,serif;font-size:16px;font-weight:600;color:#2f1e19;letter-spacing:-.01em}.notif-center__close{flex-shrink:0;width:28px;height:28px;border-radius:8px;border:none;background:#2f1e190d;color:#8a7868;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease,color .18s ease}.notif-center__close:hover{background:#2f1e191a;color:#2f1e19}.notif-center__list{list-style:none;margin:0;padding:6px;overflow-y:auto;-webkit-overflow-scrolling:touch}.notif-order{width:100%;display:flex;align-items:center;gap:12px;padding:10px;border:none;background:transparent;border-radius:12px;cursor:pointer;text-align:left;transition:background .16s ease}.notif-order:hover{background:rgba(var(--color-brand-rgb-500),.06)}.notif-order__icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.notif-order__icon--ready{color:#0f8a4f;background:#0f8a4f21}.notif-order__icon--preparing,.notif-order__icon--new{color:var(--color-brand-500);background:rgba(var(--color-brand-rgb-500),.12)}.notif-order__icon--pending{color:#b7791f;background:#b7791f24}.notif-order__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notif-order__status{font-family:Fraunces,serif;font-size:15px;font-weight:600;color:#2f1e19;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-order__meta{font-size:12px;color:#7a6858;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-order__chevron{flex-shrink:0;color:#c4b5a8}.notif-center__empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 20px 34px;color:#7a6858;text-align:center}.notif-center__empty p{margin:0;font-size:14px}.btn-primary{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-4) var(--space-6);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:var(--radius-full);font-size:var(--font-size-lg);font-weight:600;color:var(--white);box-shadow:var(--shadow-lg),var(--shadow-glow);transition:var(--transition-base)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl),0 0 30px rgba(var(--color-brand-rgb-500),.4)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:var(--shadow-md)}.btn-primary svg{width:20px;height:20px}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-4) var(--space-6);background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);box-shadow:var(--shadow-sm);transition:var(--transition-base)}.btn-secondary:hover{background:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary:active{transform:translateY(0)}.cart-fab-container{position:fixed;bottom:0;left:0;right:0;padding:var(--page-padding-x);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,16px));z-index:var(--z-fixed);animation:fabContainerEnter .4s var(--transition-spring);pointer-events:none}.cart-fab-container>*{pointer-events:auto}@keyframes fabContainerEnter{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cart-fab{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:min(var(--container-max),560px);margin:0 auto;padding:clamp(12px,3vw,16px) clamp(16px,4vw,20px);background:var(--brown);border-radius:var(--radius-xl);box-shadow:var(--shadow-floating);transition:var(--transition-base)}@media(min-width:768px){.cart-fab-container{left:50%;right:auto;transform:translate(-50%);width:min(100%,600px);padding-left:0;padding-right:0}}.cart-fab:hover{transform:translateY(-2px);box-shadow:0 12px 40px #5c3d2e66,0 4px 12px #00000026}.cart-fab:active{transform:translateY(0) scale(.99)}.cart-fab-left{display:flex;align-items:center;gap:var(--space-3)}.cart-fab-icon{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff26;border-radius:var(--radius-lg);color:var(--white)}.cart-fab-badge{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary);border-radius:var(--radius-full);font-size:11px;font-weight:700;color:var(--white);box-shadow:0 2px 8px rgba(var(--color-brand-rgb-500),.4)}.cart-fab-info{display:flex;flex-direction:column;gap:2px}.cart-fab-label{font-size:var(--font-size-base);font-weight:600;color:var(--white)}.cart-fab-items{font-size:var(--font-size-xs);color:#ffffffb3}.cart-fab-right{display:flex;align-items:center;gap:var(--space-3)}.cart-fab-price-group{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.cart-fab-price{font-size:var(--font-size-lg);font-weight:700;color:var(--white);line-height:1.1}.cart-fab-price-local{font-size:10px;font-weight:500;color:#ffffffa6;line-height:1}.cart-fab-arrow{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--primary);border-radius:var(--radius-full);color:var(--white);transition:var(--transition-fast)}.cart-fab:hover .cart-fab-arrow{transform:translate(2px)}.cart-item{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1px solid rgba(47,30,25,.08);border-radius:14px;margin-bottom:10px;width:100%;transition:all .2s ease}.cart-item:hover{border-color:#2f1e191f;box-shadow:0 4px 12px #2f1e190f}.cart-item-image{width:64px;height:64px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--cream)}.cart-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.cart-item-name{font-size:15px;font-weight:600;color:var(--ink);margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item-price{font-size:14px;font-weight:700;color:var(--copper)}.cart-item-bundle-details{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.cart-item-bundle-tag{font-size:11px;font-weight:500;color:var(--clay);background:var(--cream);padding:2px 8px;border-radius:6px}.cart-item-qty,.cart-item .quantity-control{display:flex;align-items:center;background:var(--cream);border-radius:10px;flex-shrink:0;border:1px solid rgba(47,30,25,.06)}@media(max-width:360px){.cart-item{flex-wrap:wrap}.cart-item-qty,.cart-item .quantity-control{margin-left:auto}}.qty-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--white);border:none;outline:none;border-radius:var(--radius-full);font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);box-shadow:var(--shadow-sm);transition:var(--transition-fast);cursor:pointer}.qty-btn:hover{background:var(--cream-light)}.qty-btn:active{transform:scale(.95)}.qty-value{min-width:24px;text-align:center;font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.cart-summary{padding:16px;background:linear-gradient(180deg,#f7f2ec80,#f7f2eccc);border-radius:14px;margin-top:16px;border:1px solid rgba(47,30,25,.06)}.cart-summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.cart-summary-row.total{padding-top:14px;margin-top:8px;border-top:1px solid rgba(47,30,25,.1)}.cart-summary-label{font-size:14px;color:var(--clay)}.cart-summary-value{font-size:14px;font-weight:600;color:var(--ink)}.cart-summary-row.total .cart-summary-label{font-size:16px;font-weight:600;color:var(--ink)}.cart-summary-row.total .cart-summary-value{font-size:20px;font-weight:700;color:var(--copper)}.tip-section{margin-top:var(--space-5)}.tip-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3)}.tip-options{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.tip-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-3);background:var(--glass-bg);border:2px solid transparent;border-radius:var(--radius-lg);transition:var(--transition-base)}.tip-btn:hover{background:var(--glass-bg-strong)}.tip-btn.active{background:var(--primary-soft);border-color:var(--primary)}.tip-percent{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary)}.tip-amount{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--space-1)}.tip-btn.active .tip-percent,.tip-btn.active .tip-amount{color:var(--primary)}.cart-buckets{display:flex;flex-direction:column;gap:12px}.cart-bucket{border-radius:16px;overflow:hidden;border:1.5px solid rgba(47,30,25,.1);background:#fff;transition:box-shadow .2s ease}.cart-bucket--open{box-shadow:0 4px 16px #2f1e1912}.cart-bucket-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--paper, #F7F2EC);cursor:pointer;border:none;width:100%;text-align:left;transition:background .15s;gap:8px}.cart-bucket-header:hover{background:#eee4da}.cart-bucket-header-left{display:flex;align-items:center;gap:10px}.cart-bucket-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;flex-shrink:0}.cart-bucket--pickup .cart-bucket-icon{background:rgba(var(--color-brand-rgb-500),.1);color:var(--primary, var(--orange-500))}.cart-bucket--delivery .cart-bucket-icon{background:#1078c81a;color:#1078c8}.cart-bucket-title-group{display:flex;flex-direction:column;gap:2px}.cart-bucket-title{font-size:14px;font-weight:700;color:var(--ink, #2F1E19);line-height:1.2}.cart-bucket-count{font-size:11px;color:var(--clay, #7A5C4F);font-weight:500}.cart-bucket-header-right{display:flex;align-items:center;gap:8px;margin-left:auto}.cart-bucket-subtotal{font-size:14px;font-weight:700;color:var(--ink, #2F1E19)}.cart-bucket-chevron{display:flex;align-items:center;color:var(--clay, #7A5C4F);transition:transform .2s ease}.cart-bucket-body{padding:12px;display:flex;flex-direction:column;gap:0;border-top:1px solid rgba(47,30,25,.07)}.cart-bucket-body .cart-item{margin-bottom:8px}.cart-bucket-body .cart-item:last-of-type{margin-bottom:0}.cart-bucket-footer{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(47,30,25,.07)}.cart-bucket-fee-row{display:flex;justify-content:space-between;font-size:13px;color:var(--clay, #7A5C4F);padding:0 2px}.cart-bucket-total-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--ink, #2F1E19);padding:0 2px}.cart-bucket-total-row strong{font-size:16px;font-weight:700;color:var(--copper, #C0622A)}.cart-bucket-cta{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;border-radius:12px;border:none;cursor:pointer;font-size:14px;font-weight:700;margin-top:4px;gap:8px;transition:transform .15s,box-shadow .15s}.cart-bucket-cta:active{transform:scale(.98)}.cart-bucket-cta--pickup{background:var(--primary, var(--orange-500));color:#fff;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.3)}.cart-bucket-cta--pickup:hover{box-shadow:0 6px 16px rgba(var(--color-brand-rgb-500),.4)}.cart-bucket-cta--delivery{background:#1078c8;color:#fff;box-shadow:0 4px 12px #1078c840}.cart-bucket-cta--delivery:hover{box-shadow:0 6px 16px #1078c859}.cart-bucket-cta span:first-child{flex:1;text-align:left}.cart-bucket-cta-price{font-size:13px;font-weight:600;opacity:.9}.search-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);transition:var(--transition-base)}.search-bar:focus-within{background:var(--glass-bg-strong);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.search-bar svg{width:18px;height:18px;color:var(--text-muted);flex-shrink:0}.search-bar input{flex:1;border:none;background:transparent;font-size:var(--font-size-base);color:var(--text-primary);outline:none}.search-bar input::placeholder{color:var(--text-muted)}.category-tabs{display:flex;gap:var(--space-2);padding:var(--space-2) var(--page-padding-x);margin:0 calc(-1 * var(--page-padding-x));overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-padding:0 var(--page-padding-x);scroll-snap-type:x proximity}.menu-controls{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.sticky-bar{position:sticky;top:8px;z-index:var(--z-sticky);background:linear-gradient(to bottom,var(--cream) 0%,var(--cream) 80%,transparent 100%);padding-bottom:var(--space-2);margin:0 calc(-1 * var(--page-padding-x));padding-left:var(--page-padding-x);padding-right:var(--page-padding-x)}.category-tabs::-webkit-scrollbar{display:none}.category-tabs:after{content:"";flex-shrink:0;width:var(--page-padding-x)}.category-tab{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:clamp(8px,2vw,12px) clamp(14px,3vw,20px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:var(--transition-base);min-height:var(--touch-target-min);scroll-snap-align:start}.category-tab:hover{background:var(--glass-bg-strong);color:var(--text-primary)}.category-tab:active{transform:scale(.97)}.category-tab.active{background:var(--brown);color:var(--white);border-color:var(--brown);box-shadow:var(--shadow-md)}@media(min-width:1024px){.category-tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}.category-tabs:after{display:none}}.toast{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));top:auto;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:var(--z-toast);animation:toastIn .4s cubic-bezier(.32,.72,0,1)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(100%)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast.toast-out{animation:toastOut .3s ease forwards}@keyframes toastOut{to{opacity:0;transform:translate(-50%) translateY(100%)}}.toast-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--success);border-radius:var(--radius-full)}.toast-icon svg{width:18px;height:18px;color:var(--white)}.toast-message{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:flex-end;justify-content:center;opacity:1;padding:0}@media(min-width:768px){.modal-overlay{align-items:center;padding:var(--space-6)}}.modal-sheet{width:100%;max-width:100%;max-height:90vh;max-height:90dvh;background:var(--cream-light);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;box-shadow:0 -10px 40px #0003;overflow:hidden;animation:sheetUp .25s cubic-bezier(.34,1.56,.64,1) both;display:flex;flex-direction:column}@media(min-width:768px){.modal-sheet{max-width:560px;max-height:85vh;border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);animation:modalScale .3s cubic-bezier(.34,1.56,.64,1) both}}@media(min-width:1024px){.modal-sheet{max-width:640px}}@keyframes sheetUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes modalScale{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-handle{display:flex;justify-content:center;padding:var(--space-3);cursor:grab}.modal-handle:before{content:"";width:40px;height:4px;background:var(--text-muted);border-radius:var(--radius-full);opacity:.5}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:0 var(--page-padding-x) var(--space-4);flex-shrink:0}@media(min-width:768px){.modal-header{padding:var(--space-5) var(--space-6) var(--space-4)}}.modal-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.modal-close{display:flex;align-items:center;justify-content:center;width:var(--touch-target-min);height:var(--touch-target-min);background:var(--glass-bg);border-radius:var(--radius-full);transition:var(--transition-fast);flex-shrink:0}.modal-close:hover{background:var(--cream-dark)}.modal-close:active{transform:scale(.95)}.modal-close svg{width:20px;height:20px;color:var(--text-secondary)}.modal-body{padding:0 var(--page-padding-x);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@media(min-width:768px){.modal-body{padding:0 var(--space-6);max-height:none}}.modal-footer{padding:var(--space-4) var(--page-padding-x);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--glass-border);flex-shrink:0;background:var(--cream-light)}@media(min-width:768px){.modal-footer{padding:var(--space-5) var(--space-6);padding-bottom:var(--space-5)}}.product-detail{padding:var(--space-5)}.product-detail-image-container{position:relative;margin-bottom:var(--space-5)}.product-detail-image{width:100%;height:200px;object-fit:cover;border-radius:var(--radius-xl)}.product-detail-favorite{position:absolute;top:12px;right:12px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-secondary);transition:var(--transition-base);z-index:2}.product-detail-favorite:hover{background:var(--glass-bg-medium);color:var(--primary);transform:scale(1.1)}.product-detail-favorite.is-favorite{color:#fff;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);border-color:transparent;box-shadow:0 6px 20px rgba(var(--color-brand-rgb-600),.35)}.product-detail-favorite svg{width:24px;height:24px}.product-detail-name{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.product-detail-description{font-size:var(--font-size-base);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-4)}.product-detail-allergens{margin-bottom:var(--space-4);padding:var(--space-3);background:#fff8f0;border:1px solid #f0d9c0;border-radius:var(--radius-lg)}.product-detail-allergens-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600;color:#b45309;margin-bottom:var(--space-2)}.product-detail-allergens-list{display:flex;flex-wrap:wrap;gap:var(--space-1)}.product-detail-allergen-chip{display:inline-block;padding:2px 8px;font-size:var(--font-size-xs);font-weight:500;color:#92400e;background:#fef3c7;border-radius:var(--radius-full)}.product-detail-price{font-size:var(--font-size-2xl);font-weight:700;color:var(--primary);margin-bottom:var(--space-5)}.product-detail-options{margin-bottom:var(--space-5)}.option-group{margin-bottom:var(--space-4)}.option-group-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3)}.option-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--glass-bg);border:2px solid transparent;border-radius:var(--radius-lg);margin-bottom:var(--space-2);cursor:pointer;transition:var(--transition-fast)}.option-item:hover{background:var(--glass-bg-strong)}.option-item.selected{background:var(--primary-soft);border-color:var(--primary)}.option-radio{width:20px;height:20px;border:2px solid var(--text-muted);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition-fast)}.option-item.selected .option-radio{border-color:var(--primary)}.option-item.selected .option-radio:after{content:"";width:10px;height:10px;background:var(--primary);border-radius:50%}.option-label{flex:1;font-size:var(--font-size-base);color:var(--text-primary)}.option-price{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}.option-item.selected .option-price{color:var(--primary)}.bundle-modal{max-height:95vh;display:flex;flex-direction:column}.bundle-header{display:flex;align-items:flex-start;justify-content:space-between;padding:0 var(--space-5) var(--space-4)}.bundle-header-content{display:flex;align-items:center;gap:var(--space-4)}.bundle-header-image{width:64px;height:64px;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-md)}.bundle-header-info{display:flex;flex-direction:column;gap:var(--space-1)}.bundle-header-title{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary)}.bundle-header-price{font-size:var(--font-size-base);font-weight:600;color:var(--primary)}.bundle-progress{padding:0 var(--space-5) var(--space-4)}.bundle-progress-bar{height:4px;background:var(--cream-dark);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-3)}.bundle-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:var(--radius-full);transition:width .4s var(--transition-spring)}.bundle-steps{display:flex;justify-content:center;gap:var(--space-3)}.bundle-step{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--cream-dark);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;color:var(--text-muted);transition:var(--transition-fast)}.bundle-step.active{background:var(--primary);color:var(--white);transform:scale(1.1);box-shadow:var(--shadow-glow)}.bundle-step.completed{background:var(--success);color:var(--white)}.bundle-step.completed svg{width:14px;height:14px}.bundle-step-header{padding:0 var(--space-5) var(--space-4)}.bundle-step-number{font-size:var(--font-size-xs);font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.05em}.bundle-step-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin-top:var(--space-1)}.bundle-items-list{flex:1;overflow-y:auto;padding:0 var(--space-5);max-height:40vh}.bundle-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--glass-bg);border:2px solid transparent;border-radius:var(--radius-xl);margin-bottom:var(--space-3);cursor:pointer;transition:var(--transition-base)}.bundle-item:hover{background:var(--glass-bg-strong);transform:translate(4px)}.bundle-item.selected{background:var(--primary-soft);border-color:var(--primary)}.bundle-item-image{width:56px;height:56px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0}.bundle-item-info{flex:1;min-width:0}.bundle-item-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.bundle-item-desc{font-size:var(--font-size-sm);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bundle-item-check{flex-shrink:0;width:24px;height:24px}.bundle-item-check-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--primary);border-radius:var(--radius-full);color:var(--white);animation:scaleIn .2s var(--transition-spring)}.bundle-summary{margin:var(--space-4) var(--space-5);padding:var(--space-4);background:var(--glass-bg);border-radius:var(--radius-lg);border:1px solid var(--glass-border)}.bundle-summary-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-3)}.bundle-summary-items{display:flex;flex-direction:column;gap:var(--space-2)}.bundle-summary-item{display:flex;justify-content:space-between;font-size:var(--font-size-sm)}.bundle-summary-label{color:var(--text-muted)}.bundle-summary-value{font-weight:500;color:var(--text-primary)}.bundle-footer{display:flex;gap:var(--space-3)}.bundle-footer .btn-secondary{width:auto;flex-shrink:0;padding:var(--space-4)}.bundle-footer .btn-primary{flex:1}.bundle-footer .btn-primary svg{flex-shrink:0}.cart-item-bundle-details{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.cart-item-bundle-tag{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--cream-dark);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.bundle-info-hint svg{flex-shrink:0}.hours-list{display:flex;flex-direction:column;gap:var(--space-2)}.hours-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--glass-bg);border-radius:var(--radius-lg);transition:var(--transition-fast)}.hours-item.today{background:var(--primary-soft);border:1px solid var(--primary)}.hours-day{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.hours-item.today .hours-day{color:var(--primary)}.hours-item.today .hours-day svg{color:var(--primary)}.hours-time{font-size:var(--font-size-sm);color:var(--text-secondary)}.hours-item.today .hours-time{color:var(--primary);font-weight:500}.hours-note{margin-top:var(--space-4);padding:var(--space-4);background:var(--cream-dark);border-radius:var(--radius-lg)}.hours-note p{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5;margin:0}.checkout-handle{display:flex;justify-content:center;align-items:center;padding:16px 0 12px;flex-shrink:0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.checkout-handle:active{cursor:grabbing}.checkout-handle-bar{width:44px;height:4px;background:#5c3d2e40;border-radius:2px;pointer-events:none}.checkout-success-overlay{position:absolute;inset:0;background:#fffffff5;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100}.checkout-success-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.checkout-success-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--success),#81C784);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 32px #4caf5066}.checkout-success-content p{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin:0}.checkout-header-premium{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-3)}.checkout-header-content{display:flex;align-items:center;gap:var(--space-3)}.checkout-header-icon-premium{width:40px;height:40px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary),var(--primary-dark));display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.checkout-header-text{display:flex;flex-direction:column;gap:2px}.checkout-title-premium{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.02em}.checkout-subtitle-premium{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.checkout-close-btn{width:36px;height:36px;border-radius:50%;background:#ffffffd9;border:none;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.checkout-close-btn:hover{background:var(--cream-dark);color:var(--text-primary)}.checkout-body-premium{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-5);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:var(--space-6);width:100%;box-sizing:border-box}.checkout-step-panel{display:flex;flex-direction:column;gap:var(--space-5);width:100%;box-sizing:border-box}.checkout-step-content{display:flex;flex-direction:column;gap:var(--space-4)}.checkout-step-surface{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background:#ffffffa8;border:1px solid rgba(92,61,46,.1);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}.checkout-service-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--primary-soft);border-radius:var(--radius-full);border:1px solid rgba(var(--color-brand-rgb-500),.2)}.checkout-service-icon-premium{color:var(--primary)}.checkout-service-text{font-size:var(--font-size-sm);font-weight:600;color:var(--primary)}.checkout-hero-card{background:linear-gradient(180deg,#fff,#fff7f1);border:1px solid rgba(255,255,255,.9);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:0 16px 40px #5c3d2e14;display:flex;flex-direction:column;gap:var(--space-3)}.checkout-hero-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.checkout-hero-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:600}.checkout-hero-amount{display:flex;align-items:baseline;gap:var(--space-1);color:var(--text-primary);letter-spacing:-.02em;font-family:var(--font-display)}.checkout-amount-whole{font-size:clamp(28px,7vw,36px);font-weight:700}.checkout-amount-decimals{font-size:var(--font-size-base);font-weight:600;color:var(--text-secondary)}.checkout-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-sm)}.checkout-meta-divider{color:var(--text-muted)}.checkout-hero-items{font-weight:500}.checkout-hero-foot{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);color:var(--text-secondary);border-top:1px dashed rgba(92,61,46,.2);padding-top:var(--space-3)}.checkout-payments-section{display:flex;flex-direction:column;gap:var(--space-4)}.checkout-section-title-premium{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0}.checkout-payment-grid{display:flex;flex-direction:column;gap:var(--space-3)}.checkout-payment-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:#fff;border:1px solid rgba(92,61,46,.12);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast);text-align:left;position:relative;min-height:86px;box-shadow:var(--shadow-xs)}.checkout-payment-card:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.checkout-payment-card-content{display:flex;align-items:center;gap:var(--space-3);flex:1}.checkout-payment-card:hover:not(:disabled):not(.unavailable){border-color:rgba(var(--color-brand-rgb-500),.35);box-shadow:0 10px 24px #5c3d2e1f;transform:translateY(-2px)}.checkout-payment-card.active{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.15),0 14px 28px #5c3d2e29}.checkout-payment-card.unavailable{opacity:.5;cursor:not-allowed}.checkout-payment-card-icon{width:44px;height:44px;border-radius:var(--radius-lg);background:#f5ede8cc;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.checkout-payment-card.active .checkout-payment-card-icon{background:var(--primary-soft);color:var(--primary)}.checkout-payment-card-info{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.checkout-payment-card-top{display:flex;align-items:center;gap:var(--space-2)}.checkout-payment-card-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:var(--space-1)}.checkout-recommended-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#8b5a2b;background:#d4a8532e}.checkout-payment-card-desc{font-size:var(--font-size-xs);color:var(--text-muted);line-height:1.3}.checkout-payment-card-end{display:flex;align-items:center;gap:var(--space-2)}.checkout-payment-badge{position:static;padding:2px var(--space-2);background:#5c3d2e14;border-radius:var(--radius-sm);font-size:10px;font-weight:600;color:var(--text-muted)}.checkout-payment-check{position:static;width:22px;height:22px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;color:#fff}.checkout-card-form{background:var(--cream-light);border-radius:var(--radius-xl);padding:var(--space-4);margin-bottom:var(--space-5);overflow:hidden}.checkout-card-input-group{margin-bottom:var(--space-3)}.checkout-card-input-group:last-of-type{margin-bottom:0}.checkout-card-label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.checkout-card-input-wrapper{position:relative}.checkout-card-input-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.checkout-card-input{width:100%;padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-3) + 24px);background:#fff;border:2px solid var(--glass-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:inherit;color:var(--text-primary);transition:all var(--transition-fast)}.checkout-card-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.checkout-card-input::placeholder{color:var(--text-muted)}.checkout-card-input-group:not(:first-child) .checkout-card-input{padding-left:var(--space-4)}.checkout-card-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.checkout-card-secure{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--font-size-xs);color:var(--text-muted)}.checkout-card-secure svg{color:var(--success)}.checkout-summary-premium{background:var(--cream);border-radius:var(--radius-xl);padding:var(--space-4);margin-bottom:var(--space-4)}.checkout-summary-row-premium{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;font-size:var(--font-size-sm);color:var(--text-secondary)}.checkout-summary-row-premium.total{padding-top:var(--space-3)}.checkout-summary-row-premium.total span:first-child{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.checkout-total-amount{font-size:var(--font-size-xl);font-weight:700;color:var(--primary)}.checkout-summary-divider-premium{height:1px;background:var(--glass-border);margin:var(--space-2) 0}.checkout-vouchers-carousel-wrap{margin-top:var(--space-2)}.checkout-vouchers-carousel-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--text-tertiary);margin-bottom:var(--space-2)}.checkout-vouchers-carousel{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none}.checkout-vouchers-carousel::-webkit-scrollbar{display:none}.checkout-voucher-chip{display:flex;flex-direction:row;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1.5px solid transparent;cursor:pointer;flex-shrink:0;white-space:nowrap;transition:transform .12s ease,box-shadow .12s ease}.checkout-voucher-chip:hover{transform:translateY(-1px);box-shadow:0 3px 10px #00000014}.checkout-voucher-chip:active{transform:scale(.97)}.checkout-voucher-chip-emoji{font-size:14px;line-height:1}.checkout-voucher-chip-amount{font-size:13px;font-weight:800;line-height:1}.checkout-voucher-chip-name{font-size:11px;font-weight:500;color:var(--text-secondary);line-height:1}.checkout-voucher-chip-expiry{font-size:10px;color:var(--text-tertiary);line-height:1}.checkout-voucher-section{margin-bottom:var(--space-4)}.checkout-voucher-input-row{display:flex;align-items:center;gap:var(--space-2);background:var(--cream);border:1.5px dashed var(--cream-dark);border-radius:var(--radius-xl);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);transition:border-color .2s}.checkout-voucher-input-row:focus-within{border-color:var(--primary);border-style:solid;background:#fff}.checkout-voucher-field{display:flex;align-items:center;gap:var(--space-2);flex:1;color:var(--text-tertiary)}.checkout-voucher-text-input{flex:1;border:none;background:transparent;outline:none;font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);letter-spacing:.02em;font-family:inherit}.checkout-voucher-text-input::placeholder{color:var(--text-tertiary);font-weight:400;letter-spacing:0}.checkout-voucher-apply-btn{flex-shrink:0;padding:var(--space-2) var(--space-4);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background .2s,opacity .2s;display:flex;align-items:center;gap:var(--space-1);white-space:nowrap}.checkout-voucher-apply-btn:hover:not(:disabled){background:var(--primary-dark)}.checkout-voucher-apply-btn:disabled{opacity:.4;cursor:not-allowed}.checkout-spinner-inline{animation:spin .8s linear infinite}.checkout-voucher-applied{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#4caf5014;border:1.5px solid rgba(76,175,80,.25);border-radius:var(--radius-xl);color:var(--success)}.checkout-voucher-applied-code{flex:1;font-size:var(--font-size-sm);font-weight:600;letter-spacing:.05em;color:var(--text-primary)}.checkout-voucher-applied-amount{font-size:var(--font-size-sm);font-weight:700;color:var(--success)}.checkout-voucher-remove{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:#4caf5026;border:none;border-radius:50%;color:var(--success);cursor:pointer;transition:background .2s;padding:0}.checkout-voucher-remove:hover{background:#4caf5047}.checkout-voucher-error{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef444414;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--error, #ef4444);font-weight:500}.checkout-free-badge{padding:2px var(--space-2);background:#4caf5026;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;color:var(--success)}.voucher-list{list-style:none;margin:0 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-2);max-height:296px;overflow-y:auto}.voucher-row{display:grid;grid-template-columns:40px 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);min-height:64px;background:var(--white);border:1.5px solid var(--cream-dark);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:border-color .2s ease,background .2s ease,opacity .15s ease}.voucher-row__icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-md);flex-shrink:0}.voucher-row__body{min-width:0;display:flex;flex-direction:column;gap:3px}.voucher-row__amount{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.015em;line-height:1.1;color:var(--text-primary);font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:var(--space-2)}.voucher-row__amount-initial{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);text-decoration:line-through}.voucher-row__meta{font-size:var(--font-size-xs);color:var(--text-muted);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.voucher-row__code{font-family:var(--font-family-mono);font-weight:500;letter-spacing:.04em;color:var(--text-muted);user-select:all}.voucher-row__expiry{white-space:nowrap}.voucher-row__action{flex-shrink:0}.voucher-row .btn--sm{min-height:44px}.voucher-row[data-state=applied]{background:var(--primary-soft);border-color:var(--primary);box-shadow:var(--shadow-sm)}.voucher-row[data-state=applied] .voucher-row__icon{background:var(--primary);color:#fff}.voucher-row[data-state=disabled]{opacity:.5}.voucher-row[data-state=disabled] .btn{cursor:not-allowed}.voucher-row[data-state=expired]{opacity:.6}.voucher-row[data-state=expired] .voucher-row__amount{text-decoration:line-through;color:var(--text-muted)}.voucher-row[data-state=expired] .voucher-row__icon{background:var(--cream-dark);color:var(--text-muted)}.voucher-manual{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-2);margin-bottom:var(--space-4)}.voucher-manual .input{font-family:var(--font-family-mono);letter-spacing:.04em;text-transform:uppercase;padding:var(--space-3) var(--space-4);background:var(--white);border:1.5px solid var(--cream-dark);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-primary);outline:none}.voucher-manual .input:focus{border-color:var(--primary)}.voucher-row .btn,.voucher-manual .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);font-family:var(--font-family-sans);font-weight:600;cursor:pointer;border:1.5px solid transparent;white-space:nowrap;transition:background .18s ease,border-color .18s ease,opacity .18s ease}.voucher-row .btn--sm{padding:0 var(--space-3);font-size:var(--font-size-sm)}.voucher-manual .btn--md{padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm)}.btn--secondary{background:var(--primary-soft);color:var(--primary-dark);border-color:var(--primary-soft)}.btn--secondary:hover:not(:disabled){background:var(--primary);color:#fff}.btn--secondary:disabled{opacity:.4;cursor:not-allowed}.btn--tertiary{background:transparent;color:var(--text-secondary);border-color:var(--cream-dark)}.btn--tertiary:hover{background:var(--cream)}.reward-value{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-family-display);font-weight:600;font-size:var(--font-size-base);letter-spacing:-.01em;color:var(--text-primary);font-variant-numeric:tabular-nums}.reward-value__icon{display:inline-flex;color:var(--primary)}.reward-value[data-muted=true]{color:var(--text-muted)}.reward-value[data-muted=true] .reward-value__icon{color:var(--primary)}.checkout-info-note{padding:var(--space-3);background:#2196f314;border-radius:var(--radius-lg);text-align:center}.checkout-info-note p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.checkout-primary-action{display:flex;flex-direction:column;gap:var(--space-3);margin-top:0}.checkout-action-note{margin:0;font-size:var(--font-size-sm);color:var(--text-secondary);text-align:center}.checkout-reassurance{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--text-muted);text-align:center;padding-bottom:var(--space-2)}.checkout-reassurance svg{color:var(--success)}.checkout-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--glass-bg);border-radius:50%;color:var(--text);cursor:pointer;flex-shrink:0;transition:background .2s}.checkout-back-btn:hover{background:var(--glass-bg-hover, rgba(0, 0, 0, .08))}.checkout-stepper{display:flex;align-items:center;justify-content:center;gap:0;padding:var(--space-3) var(--space-5);padding-top:0}.checkout-stepper-step{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:500;color:var(--text-muted);transition:color .2s;white-space:nowrap}.checkout-stepper-step.active{color:var(--orange-500)}.checkout-stepper-step.completed{color:var(--success, #22c55e)}.checkout-stepper-dot{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:11px;font-weight:700;background:var(--glass-bg);color:var(--text-muted);transition:all .2s}.checkout-stepper-step.active .checkout-stepper-dot{background:var(--orange-500);color:#fff}.checkout-stepper-step.completed .checkout-stepper-dot{background:var(--success, #22c55e);color:#fff}.checkout-stepper-line{width:34px;height:2px;background:var(--glass-border);margin:0 var(--space-2);border-radius:1px;overflow:hidden}.checkout-stepper-line-fill{width:0;height:100%;background:var(--orange-500);border-radius:1px;transition:width .3s ease}.checkout-stepper-line-fill.filled{width:100%}.checkout-info-subtitle{font-size:var(--font-size-sm);color:var(--text-muted);text-align:center;margin:0;line-height:1.4}.checkout-info-form{display:flex;flex-direction:column;gap:var(--space-3);margin:0}.checkout-review-list{display:flex;flex-direction:column;gap:var(--space-2)}.checkout-review-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:#fff;border:1px solid rgba(92,61,46,.12);border-radius:var(--radius-lg)}.checkout-review-item-media{width:56px;height:56px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--cream)}.checkout-review-item-media img{width:100%;height:100%;object-fit:cover}.checkout-review-item-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.checkout-review-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.checkout-review-item-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);line-height:1.25}.checkout-review-item-meta{font-size:var(--font-size-xs);color:var(--text-muted)}.checkout-review-item-total{font-size:var(--font-size-sm);font-weight:700;color:var(--primary-dark);white-space:nowrap}.checkout-info-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);width:100%;min-width:0}.checkout-info-group{display:flex;flex-direction:column;gap:4px;min-width:0;width:100%}.checkout-info-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text)}.checkout-info-input-wrap{display:flex;align-items:center;gap:var(--space-2);background:#fff;width:100%;min-width:0;border:1.5px solid var(--glass-border);border-radius:var(--radius-md);padding:0 var(--space-3);height:44px;transition:border-color .2s,box-shadow .2s}.checkout-info-input-wrap:focus-within{border-color:var(--orange-500);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.1)}.checkout-info-input-wrap.has-error{border-color:var(--danger, #F44336)}.checkout-info-input-wrap.has-error:focus-within{box-shadow:0 0 0 3px #f443361a}.checkout-info-input-wrap svg{color:var(--text-muted);flex-shrink:0}.checkout-info-input-wrap input{flex:1;min-width:0;width:0;border:none;outline:none;background:transparent;font-size:var(--font-size-sm);font-family:inherit;color:var(--text);height:100%}.checkout-info-input-wrap input::placeholder{color:var(--text-muted);opacity:.5}.checkout-info-error{font-size:11px;color:var(--danger, #F44336);font-weight:500}.checkout-footer-premium{padding:var(--space-4) var(--space-5);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--glass-border)}.checkout-confirm-btn-premium{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-xl);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 12px 30px rgba(var(--color-brand-rgb-500),.3);min-height:56px}.checkout-confirm-btn-premium:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 40px rgba(var(--color-brand-rgb-500),.4)}.checkout-confirm-btn-premium:active:not(:disabled){transform:translateY(0)}.checkout-confirm-btn-premium.disabled,.checkout-confirm-btn-premium:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 4px 16px rgba(var(--color-brand-rgb-500),.2)}.checkout-loading-premium{display:flex;align-items:center;gap:var(--space-3)}.checkout-spinner-premium{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.checkout-payment-logo{width:32px;height:32px;object-fit:contain}.checkout-error-alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#f443361a;border:1px solid rgba(244,67,54,.2);border-radius:var(--radius-lg);margin-bottom:var(--space-4);color:var(--error);font-size:var(--font-size-sm)}.checkout-payment-flow{padding:var(--space-2) 0}.stripe-payment-form{display:flex;flex-direction:column;gap:var(--space-4);background:#fff;border:1px solid rgba(92,61,46,.12);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-xs)}.stripe-submit-btn{margin-top:var(--space-3)}.stripe-secure-badge{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);color:var(--text-muted);font-size:var(--font-size-xs)}.stripe-secure-badge svg{color:var(--success)}.stripe-badge-logo{height:20px;width:auto}.wallet-button-container{padding:var(--space-2) 0}.wallet-unavailable{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);background:var(--cream);border-radius:var(--radius-xl);color:var(--text-secondary);text-align:center}.checkout-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-8)}.checkout-loading-state p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.StripeElement{padding:var(--space-4);background:#fff;border:2px solid var(--glass-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.StripeElement--focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.StripeElement--invalid{border-color:var(--error)}.checkout-timeslot-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.checkout-timeslot-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:10px 14px;border:1.5px solid var(--glass-border, rgba(47,30,25,.12));border-radius:12px;background:#fff;cursor:pointer;transition:all .15s ease;gap:2px}.checkout-timeslot-chip:hover{border-color:var(--primary, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.04)}.checkout-timeslot-chip.active{border-color:var(--primary, var(--orange-500));background:linear-gradient(135deg,rgba(var(--color-brand-rgb-500),.08),rgba(var(--color-brand-rgb-600),.06));box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.12)}.checkout-timeslot-label{font-size:14px;font-weight:700;color:var(--text-primary, #2F1E19)}.checkout-timeslot-chip.active .checkout-timeslot-label{color:var(--primary, var(--orange-500))}.checkout-timeslot-sub{font-size:10px;font-weight:500;color:var(--text-muted, #8B7E77)}.checkout-schedule-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--clay, #7A5C4F);margin:0 0 8px}.checkout-day-selector{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.checkout-day-selector::-webkit-scrollbar{display:none}.checkout-day-chip{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:12px;border:1.5px solid rgba(47,30,25,.12);background:#fff;cursor:pointer;flex-shrink:0;transition:all .15s ease;min-width:72px}.checkout-day-chip:hover{border-color:var(--primary, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.04)}.checkout-day-chip.active{border-color:var(--primary, var(--orange-500));background:linear-gradient(135deg,rgba(var(--color-brand-rgb-500),.1),rgba(var(--color-brand-rgb-600),.07))}.checkout-day-label{font-size:13px;font-weight:700;color:var(--ink, #2F1E19);white-space:nowrap}.checkout-day-chip.active .checkout-day-label{color:var(--primary, var(--orange-500))}.checkout-day-sub{font-size:10px;font-weight:500;color:var(--clay, #7A5C4F)}.checkout-day-chip.active .checkout-day-sub{color:var(--primary, var(--orange-500));opacity:.8}.checkout-address-form{display:flex;flex-direction:column;gap:12px;margin-top:8px}.checkout-address-row{width:100%}.checkout-address-row--two{display:grid;grid-template-columns:120px 1fr;gap:10px}.checkout-delivery-fee-note{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 16px;background:rgba(var(--color-brand-rgb-500),.06);border-radius:12px;border:1px solid rgba(var(--color-brand-rgb-500),.15);font-size:13px;color:var(--text-primary, #2F1E19)}.checkout-delivery-fee-note strong{color:var(--primary, var(--orange-500));font-weight:700}.checkout-delivery-schedule{margin-top:4px}.checkout-card-payment-panel{background:var(--surface-1, #fff);border:1.5px solid rgba(var(--color-brand-rgb-500),.15);border-radius:var(--radius-xl, 20px);overflow:hidden}.checkout-card-payment-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3, 12px) var(--space-4, 16px);background:var(--cream, #F7F2EC);border-bottom:1px solid rgba(47,30,25,.07)}.checkout-card-back-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary, #8B7E77);font-size:var(--font-size-sm, 13px);font-weight:600;cursor:pointer;padding:4px 8px;border-radius:8px;transition:background .15s}.checkout-card-back-btn:hover{background:#2f1e190f}.checkout-card-payment-title{display:flex;align-items:center;gap:8px;font-size:var(--font-size-sm, 13px);font-weight:600;color:var(--text-secondary, #8B7E77)}.checkout-stripe-logo-header{height:20px;width:auto}.checkout-card-payment-panel .stripe-payment-form{padding:var(--space-4, 16px)}.auth-overlay{z-index:500;overscroll-behavior:contain;touch-action:none}.auth-overlay .auth-modal-body{touch-action:pan-y}.auth-modal{max-height:90vh;position:relative;display:flex;flex-direction:column}.auth-modal .modal-close{position:absolute;top:var(--space-4);right:var(--space-4);z-index:10}.auth-modal-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-5);padding-bottom:var(--space-3);flex-shrink:0}.auth-back-btn{width:36px;height:36px;border-radius:50%;background:var(--cream);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.auth-back-btn:hover{background:var(--cream-dark)}.auth-modal-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin:0}.auth-modal-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin:var(--space-1) 0 0 0}.auth-modal-body{padding:var(--space-4) var(--space-5);overflow-y:auto;flex:1 1 auto;min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.auth-provider-section{display:flex;justify-content:center;margin-bottom:var(--space-4)}.auth-google-button{display:flex;justify-content:center}.auth-provider-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--space-3);position:relative}.auth-provider-btn.email{background:var(--cream);color:var(--text-primary);border:1.5px solid var(--cream-dark)}.auth-provider-btn.email:hover{background:var(--cream-dark);border-color:var(--brown-light)}.auth-badge{position:absolute;right:var(--space-3);padding:var(--space-1) var(--space-2);background:#fff3;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--text-muted);font-size:var(--font-size-sm)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--glass-border)}.auth-guest-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:var(--primary);border:none;border-radius:var(--radius-xl);color:#fff;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-top:var(--space-3)}.auth-guest-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.auth-guest-btn span{flex:1;text-align:left;margin-left:var(--space-2)}.auth-error{padding:var(--space-3);background:#f443361a;border:1px solid rgba(244,67,54,.3);border-radius:var(--radius-md);color:var(--error);font-size:var(--font-size-sm);text-align:center;margin-top:var(--space-4)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.auth-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.auth-form-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.auth-form-group input{padding:var(--space-3) var(--space-4);border:1.5px solid var(--cream-dark);border-radius:var(--radius-md);font-size:var(--font-size-base);background:#fff;width:100%;box-sizing:border-box;transition:all var(--transition-fast)}.auth-form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.auth-form-group input.error{border-color:var(--error)}.auth-form-hint{display:block;margin-top:4px;font-size:11px;color:var(--text-muted, #9B8175);line-height:1.4}.auth-input-icon{position:relative}.auth-input-icon svg{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.auth-input-icon input{padding-left:calc(var(--space-3) + 24px)}.auth-field-error{font-size:var(--font-size-xs);color:var(--error)}.auth-privacy-note{font-size:var(--font-size-xs);color:var(--text-muted);text-align:center;margin-top:var(--space-2)}.auth-section-header{margin-top:var(--space-2);margin-bottom:var(--space-1);padding-top:var(--space-4);border-top:1px solid var(--cream-dark)}.auth-section-header-top{display:flex;align-items:center;gap:var(--space-2);margin-bottom:3px}.auth-section-header-top svg{color:var(--primary);flex-shrink:0}.auth-section-label{font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.auth-section-badge{font-size:11px;font-weight:600;color:var(--primary);background:rgba(var(--color-brand-rgb-500),.1);border-radius:99px;padding:2px 9px}.auth-section-desc{font-size:var(--font-size-xs);color:var(--text-secondary);margin:0;padding-left:20px;font-weight:500}.auth-text-btn{background:none;border:none;color:var(--primary);font-size:var(--font-size-sm);cursor:pointer;text-align:center;margin-top:var(--space-2)}.auth-text-btn:hover{text-decoration:underline}.auth-links{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.auth-modal-footer{padding:var(--space-4) var(--space-5) var(--space-6);flex-shrink:0}.auth-submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;border-radius:var(--radius-xl);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 16px rgba(var(--color-brand-rgb-500),.3)}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px rgba(var(--color-brand-rgb-500),.4)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed}.header-profile-btn{position:relative}.header-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--primary-soft)}.header-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;border:2px solid var(--primary-soft)}.account-guest{display:flex;flex-direction:column;align-items:center;padding:var(--space-6) var(--space-4);text-align:center}.account-guest-icon{width:100px;height:100px;border-radius:50%;background:linear-gradient(145deg,var(--primary-soft),rgba(var(--color-brand-rgb-500),.08));border:2px solid var(--primary);display:flex;align-items:center;justify-content:center;color:var(--primary);margin-bottom:var(--space-6);box-shadow:0 8px 24px rgba(var(--color-brand-rgb-500),.15)}.account-guest-icon svg{width:48px;height:48px}.account-guest-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.account-guest-text{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.6;max-width:280px;margin-bottom:var(--space-7)}.account-benefits{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.account-benefit{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--glass-bg);border-radius:var(--radius-lg);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.account-benefit-icon{width:44px;height:44px;border-radius:var(--radius-md);background:var(--primary-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-benefit svg{color:var(--primary);width:22px;height:22px}.account-benefit span{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:500}.account-profile-hero{display:flex;flex-direction:column;align-items:center;padding:var(--space-5) 0 var(--space-4);gap:var(--space-2)}.account-avatar-lg{width:88px;height:88px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 3px var(--cream),0 4px 20px #00000024;margin-bottom:var(--space-1);flex-shrink:0}.account-avatar-lg img{width:100%;height:100%;object-fit:cover}.account-avatar-initials{width:100%;height:100%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700}.account-profile-name{font-size:20px;font-weight:700;color:var(--text-primary);margin:0;text-align:center}.account-profile-email{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;text-align:center}.account-stats-bar{display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5);padding:var(--space-3) var(--space-6);background:var(--glass-bg-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-base)}.account-stat:hover{background:var(--cream)}.account-stat-value{font-size:26px;font-weight:700;color:var(--text-primary);line-height:1}.account-stat-label{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}.account-stat-divider{width:1px;height:38px;background:#5c3d2e1f;margin:0 var(--space-2);flex-shrink:0}.account-loyalty-card{margin-bottom:var(--space-4);padding:var(--space-4);background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:var(--radius-lg);color:#fff;box-shadow:0 4px 20px rgba(var(--color-brand-rgb-500),.3)}.account-loyalty-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);opacity:.9;margin-bottom:var(--space-2)}.account-loyalty-points{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-1)}.account-points-value{font-size:36px;font-weight:700}.account-points-label{font-size:var(--font-size-base);opacity:.9}.account-loyalty-tier{font-size:var(--font-size-xs);opacity:.95;padding:var(--space-1) var(--space-3);background:#fff3;border-radius:var(--radius-full);display:inline-block;font-weight:500}.account-menu{margin-bottom:var(--space-4);background:var(--glass-bg-strong);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.account-menu-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:none;border-bottom:1px solid rgba(92,61,46,.08);color:var(--text-primary);text-align:left;cursor:pointer;transition:background var(--transition-base)}.account-menu-item:last-child{border-bottom:none}.account-menu-item:hover{background:var(--cream)}.account-menu-item:active{background:var(--cream-dark)}.account-menu-icon-wrap{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-menu-icon-wrap--history{background:var(--primary);color:#fff}.account-menu-icon-wrap--favorites{background:var(--primary-soft);color:var(--primary)}.account-menu-icon-wrap--settings{background:var(--glass-bg-strong);color:var(--text-secondary)}.account-menu-text{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.account-menu-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.account-menu-sub{font-size:12px;color:var(--text-secondary)}.account-menu-arrow{color:var(--text-muted);flex-shrink:0}.account-contact{padding:var(--space-3) var(--space-4);background:var(--glass-bg-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-section-title{font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2)}.account-contact-item{display:flex;align-items:center;gap:var(--space-3);color:var(--text-primary);font-size:var(--font-size-sm);padding:var(--space-1) 0}.account-contact-item svg{color:var(--primary);flex-shrink:0;width:16px;height:16px}.account-logout-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:#f4433614;border:1.5px solid var(--error);border-radius:var(--radius-lg);color:var(--error);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.account-logout-btn:hover:not(:disabled){background:var(--error);color:#fff;box-shadow:0 4px 16px #f443364d}.account-logout-btn:active:not(:disabled){transform:scale(.98)}.account-logout-btn:disabled{opacity:.6;cursor:not-allowed}.modal-header-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.modal-header-nav .modal-title{text-align:center;font-size:var(--font-size-lg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-header-nav .modal-close{justify-self:end}.modal-back{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;transition:var(--transition-base)}.modal-back:hover{background:var(--glass-bg-medium)}.modal-back:active{transform:scale(.95)}.modal-back svg{width:20px;height:20px}.account-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.account-empty svg{color:var(--text-muted);margin-bottom:var(--space-4);opacity:.5}.account-empty h3{color:var(--text-primary);font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.account-empty p{color:var(--text-muted);font-size:var(--font-size-sm)}.account-orders{display:flex;flex-direction:column;gap:var(--space-4)}.account-order-card{background:var(--glass-bg-strong);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.account-order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.account-order-code{display:flex;align-items:center;gap:var(--space-2);font-weight:600;color:var(--text-primary)}.account-order-code svg{color:var(--primary)}.account-order-status{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600}.account-order-status.delivered{background:#22c55e1a;color:#22c55e}.account-order-date{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--font-size-xs);margin-bottom:var(--space-3)}.account-order-items{border-top:1px dashed rgba(92,61,46,.15);padding-top:var(--space-3)}.account-order-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;font-size:var(--font-size-sm)}.account-order-qty{color:var(--primary);font-weight:600;min-width:24px}.account-order-name{flex:1;color:var(--text-primary)}.account-order-price{color:var(--text-muted)}.account-order-footer{display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--text-primary);margin-top:var(--space-3);padding-top:var(--space-3)}.account-order-points{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:6px 12px;background:linear-gradient(135deg,rgba(var(--color-brand-rgb-500),.1),#ffc3642e);border:1px solid rgba(var(--color-brand-rgb-500),.22);border-radius:999px;width:fit-content}.account-order-points--detail{margin:12px 0 4px;padding:10px 16px;background:linear-gradient(135deg,#fff,#fff6ee);border:1.5px solid rgba(var(--color-brand-rgb-500),.28);box-shadow:0 4px 14px rgba(var(--color-brand-rgb-500),.14);width:100%;justify-content:center}.account-order-points__sparkle{font-size:14px;display:inline-block}.account-order-points--detail .account-order-points__sparkle{font-size:18px;animation:accountPointsSparkle 1.8s ease-in-out infinite}@keyframes accountPointsSparkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(15deg)}}.account-order-points__amount{font-size:14px;font-weight:800;color:var(--color-brand-600);letter-spacing:-.01em;font-family:var(--font-family-display, "Fraunces"),serif}.account-order-points--detail .account-order-points__amount{font-size:20px;color:var(--orange-500)}.account-order-points__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5a3a2f}.account-order-points--detail .account-order-points__label{font-size:12px;letter-spacing:.06em}.account-order-total-label{font-weight:600;color:var(--text-primary)}.account-order-total{font-size:var(--font-size-lg);font-weight:700;color:var(--primary)}.account-order-reorder{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;margin-top:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--cream);border:1.5px solid var(--primary);border-radius:var(--radius-lg);color:var(--primary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.account-order-reorder:hover{background:var(--primary);color:#fff}.account-favorites{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-8)}.account-favorites-count{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--space-2)}.account-favorite-card{display:flex;align-items:stretch;gap:var(--space-3);background:var(--glass-bg-strong);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.account-favorite-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.account-favorite-image{width:80px;height:80px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;position:relative;background:var(--cream)}.account-favorite-image img{width:100%;height:100%;object-fit:cover}.account-favorite-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--cream) 0%,var(--cream-dark) 100%);display:flex;align-items:center;justify-content:center;font-size:32px}.account-favorite-placeholder.hidden{display:none}.account-favorite-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.account-favorite-category{display:inline-block;font-size:10px;color:var(--primary);font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;background:#ff6b351a;padding:2px 8px;border-radius:var(--radius-full);width:fit-content}.account-favorite-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.account-favorite-desc{font-size:var(--font-size-xs);color:var(--text-muted);margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.account-favorite-price{font-size:var(--font-size-base);font-weight:700;color:var(--primary)}.account-favorite-actions{display:flex;flex-direction:column;gap:var(--space-2);justify-content:center}.account-favorite-add,.account-favorite-remove{width:40px;height:40px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base)}.account-favorite-add{background:var(--primary);color:#fff}.account-favorite-add:hover:not(:disabled){background:var(--primary-dark);transform:scale(1.1)}.account-favorite-add.added{background:#22c55e}.account-favorite-add:disabled{cursor:default}.account-favorite-remove{background:#f443361a;color:#f44336}.account-favorite-remove:hover{background:#f44336;color:#fff;transform:scale(1.1)}.account-empty--favorites,.account-empty{padding:56px 24px 40px;text-align:center}.account-empty-visual{position:relative;width:148px;height:148px;margin:0 auto 28px;display:grid;place-items:center}.account-empty-visual-ring{position:absolute;top:50%;left:50%;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%)}.account-empty-visual-ring--outer{width:148px;height:148px;background:radial-gradient(circle at 50% 50%,var(--primary-soft, rgba(var(--color-brand-rgb-500),.1)) 0%,transparent 70%);animation:accountEmptyPulse 4s ease-in-out infinite}.account-empty-visual-ring--inner{width:112px;height:112px;border:1.5px dashed var(--primary, var(--orange-500));opacity:.35}.account-empty-visual-core{position:relative;width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary, var(--orange-500));background:linear-gradient(145deg,#ffffff 0%,var(--cream, #F7F2EC) 100%);box-shadow:0 10px 28px #00000014,inset 0 0 0 1px #0000000a}.account-empty-visual-core svg{display:block}.account-empty-visual-dot{position:absolute;border-radius:50%;background:var(--primary, var(--orange-500))}.account-empty-visual-dot--1{top:4%;left:50%;transform:translate(-30px);width:8px;height:8px;opacity:.55}.account-empty-visual-dot--2{top:14%;right:4%;width:10px;height:10px;opacity:.75}.account-empty-visual-dot--3{bottom:8%;left:8%;width:7px;height:7px;opacity:.5}@keyframes accountEmptyPulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.06);opacity:1}}.account-empty-title{font-family:var(--font-family-display, Georgia, serif);font-size:22px;font-weight:700;color:var(--text-primary, #2F1E19);margin:0 0 10px;line-height:1.2}.account-empty-desc{max-width:360px;margin:0 auto 28px;color:var(--text-muted, #7A5C51);font-size:14px;line-height:1.6}.account-empty-btn{display:block;margin:0 auto;padding:12px 28px;background:var(--primary, var(--orange-500));color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;box-shadow:0 6px 18px var(--primary-shadow, rgba(var(--color-brand-rgb-500),.28))}.account-empty-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px var(--primary-shadow, rgba(var(--color-brand-rgb-500),.34))}.account-empty-btn:active{transform:translateY(0)}.account-points-balance{display:flex;align-items:center;gap:var(--space-4);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4)}.account-points-icon{width:48px;height:48px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.account-points-info{display:flex;flex-direction:column}.account-points-info .account-points-label{font-size:var(--font-size-xs);color:#fffc;text-transform:uppercase;letter-spacing:.5px}.account-points-info .account-points-value{font-size:32px;font-weight:700;color:#fff;line-height:1}.account-rewards{margin-bottom:var(--space-4)}.account-rewards-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-3)}.account-reward-card{display:flex;align-items:center;gap:var(--space-3);background:var(--glass-bg-strong);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.account-reward-card.disabled{opacity:.6}.account-reward-icon{width:48px;height:48px;background:var(--cream);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.account-reward-info{flex:1;min-width:0}.account-reward-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin:0 0 2px}.account-reward-desc{font-size:var(--font-size-xs);color:var(--text-muted);margin:0 0 4px}.account-reward-points{display:flex;align-items:center;gap:var(--space-1);color:var(--primary);font-size:var(--font-size-xs);font-weight:600}.account-reward-btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:none;font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.account-reward-btn.active{background:var(--primary);color:#fff}.account-reward-btn.active:hover{background:var(--primary-dark)}.account-reward-btn:not(.active){background:var(--cream);color:var(--text-muted);cursor:not-allowed}.account-rewards-info{text-align:center;padding:var(--space-3);background:var(--cream);border-radius:var(--radius-md)}.account-rewards-info p{font-size:var(--font-size-xs);color:var(--text-muted);margin:0}.account-settings{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-8)}.account-settings-profile-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--glass-bg-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-settings-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center}.account-settings-avatar img{width:100%;height:100%;object-fit:cover}.account-settings-avatar span{color:#fff;font-size:20px;font-weight:700}.account-settings-profile-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.account-settings-profile-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-settings-profile-email{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-soon{font-size:10px;font-weight:600;color:var(--text-muted);background:var(--cream-dark);border-radius:var(--radius-full);padding:3px 9px;white-space:nowrap;flex-shrink:0}.account-setting-version{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500;flex-shrink:0}.account-settings-section{background:var(--glass-bg-strong);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.account-settings-section--danger{border:1px solid rgba(220,53,40,.18)}.account-settings-title{font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:var(--space-3) var(--space-4) var(--space-1)}.account-settings-title--danger{color:#dc3520}.account-setting-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid rgba(92,61,46,.08);background:transparent;border-left:none;border-right:none;border-bottom:none;width:100%;text-align:left}.account-setting-item.clickable{cursor:pointer;transition:background var(--transition-base)}.account-setting-item.clickable:hover{background:var(--cream)}.account-setting-item--danger .account-setting-label{color:#dc3520}.account-setting-icon-wrap{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-setting-icon-wrap--lang{background:#5e82e61f;color:#5e82e6}.account-setting-icon-wrap--notif{background:var(--primary-soft);color:var(--primary)}.account-setting-icon-wrap--map{background:#34c7591f;color:#34c759}.account-setting-icon-wrap--payment{background:#ff95001f;color:#ff9500}.account-setting-icon-wrap--security{background:var(--primary-soft);color:var(--primary)}.account-setting-icon-wrap--sessions{background:#5e82e61f;color:#5e82e6}.account-setting-icon-wrap--doc{background:var(--glass-bg-strong);color:var(--text-secondary)}.account-setting-icon-wrap--info{background:#5e82e61f;color:#5e82e6}.account-setting-icon-wrap--danger{background:#dc35281a;color:#dc3520}.account-setting-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.account-setting-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.account-setting-value{font-size:12px;color:var(--text-secondary)}.account-setting-arrow{color:var(--text-muted);flex-shrink:0}.account-setting-langs{display:flex;gap:var(--space-2);flex-shrink:0}.lang-btn{padding:5px 11px;border-radius:var(--radius-full);border:1.5px solid var(--border-color);background:transparent;font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);cursor:pointer;transition:all var(--transition-base)}.lang-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.lang-btn:hover:not(.active){border-color:var(--primary);color:var(--primary)}.toggle-btn{position:relative;width:48px;height:28px;background:var(--border-color);border:none;border-radius:14px;cursor:pointer;transition:background var(--transition-base);flex-shrink:0}.toggle-btn.active{background:var(--primary)}.toggle-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;transition:transform var(--transition-base)}.toggle-btn.active .toggle-knob{transform:translate(20px)}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.header-account-btn{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:120px;height:36px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.header-account-btn:hover{background:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}.header-account-btn:active{transform:scale(.97)}.header-btn-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);border-radius:50%;flex-shrink:0}.header-btn-icon svg{color:#fff}.header-btn-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover;flex-shrink:0}.header-btn-text{font-size:12px;font-weight:600;color:var(--text-primary)}.header-hari-btn{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:120px;height:36px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.header-hari-btn:hover{background:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}.header-hari-btn:active{transform:scale(.97)}.hari-btn-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);border-radius:50%;flex-shrink:0}.hari-btn-icon img{width:12px;height:12px;object-fit:contain;filter:brightness(0) invert(1)}.header-ai-btn{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:120px;height:36px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.header-ai-btn:hover{background:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}.header-ai-btn:active{transform:scale(.97)}.ai-btn-robot{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);border-radius:50%;flex-shrink:0;padding:2px}.ai-btn-robot-img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.header-ai-btn .header-btn-text{font-size:var(--font-size-xs);font-weight:600;color:var(--text-primary);letter-spacing:.02em}.ai-badge{display:none}.header-logo{cursor:pointer;background:none;border:none;padding:0;transition:transform .2s ease}.header-logo:hover{transform:scale(1.05)}.header-logo:active{transform:scale(.95)}.hari-modal{max-height:85vh}.hari-hero{display:flex;flex-direction:column;align-items:center;padding:var(--space-6) var(--space-4) var(--space-6);text-align:center}.hari-logo-container{position:relative;width:100px;height:100px;border-radius:24px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5);background:radial-gradient(circle at 30% 107%,#fed373,#f15245 5%,#d92e7f 45%,#9b36b7 60%,#515ecf 90%),linear-gradient(135deg,#FF6B35 0%,#F7931E 25%,var(--orange-500) 50%,#D45A04 75%,#C44D00 100%);background-size:100% 100%;-webkit-mask-image:-webkit-radial-gradient(white,black);box-shadow:0 10px 40px rgba(var(--color-brand-rgb-500),.4),0 4px 12px rgba(var(--color-brand-rgb-500),.3),inset 0 1px 1px #fff3;animation:logoGlow 3s ease-in-out infinite}.hari-logo-container:before{content:"";position:absolute;inset:0;border-radius:24px;background:radial-gradient(ellipse at 20% 0%,rgba(255,200,100,.5) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(200,60,0,.6) 0%,transparent 50%),radial-gradient(ellipse at 100% 30%,rgba(255,140,50,.4) 0%,transparent 40%),radial-gradient(ellipse at 0% 70%,rgba(180,50,0,.5) 0%,transparent 40%);z-index:1}.hari-logo-container:after{content:"";position:absolute;top:2px;left:2px;right:2px;height:40%;border-radius:22px 22px 50% 50%;background:linear-gradient(180deg,rgba(255,255,255,.25) 0%,transparent 100%);z-index:2}@keyframes logoGlow{0%,to{box-shadow:0 10px 40px rgba(var(--color-brand-rgb-500),.4),0 4px 12px rgba(var(--color-brand-rgb-500),.3),inset 0 1px 1px #fff3}50%{box-shadow:0 12px 50px rgba(var(--color-brand-rgb-500),.5),0 6px 16px rgba(var(--color-brand-rgb-500),.35),inset 0 1px 1px #ffffff40}}.hari-logo{position:relative;z-index:3;width:56px;height:56px;filter:brightness(0) invert(1) drop-shadow(0 2px 4px rgba(0,0,0,.15))}.hari-tagline{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);max-width:260px;line-height:1.4}.hari-trust-section{padding:0 0 var(--space-4)}.hari-section-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3)}.hari-section-title svg{color:var(--primary)}.hari-trust-badges{display:flex;flex-direction:column;gap:var(--space-2)}.hari-trust-badge{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border)}.hari-badge-icon{width:40px;height:40px;background:var(--primary-soft);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.hari-badge-icon svg{color:var(--primary)}.hari-badge-content{display:flex;flex-direction:column;gap:2px}.hari-badge-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.hari-badge-desc{font-size:var(--font-size-xs);color:var(--text-secondary)}.hari-app-section{padding:var(--space-4) 0}.hari-app-card{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);background:linear-gradient(135deg,var(--cream-light),var(--cream));border-radius:var(--radius-lg);border:1px solid var(--glass-border)}.hari-app-icon{position:relative;width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 20% 0%,rgba(255,200,100,.4) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(180,50,0,.5) 0%,transparent 50%),linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 50%,#C44D00 100%);flex-shrink:0;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.25)}.hari-app-icon svg{color:#fff}.hari-app-content{flex:1}.hari-app-title{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1)}.hari-app-desc{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5;margin-bottom:var(--space-2)}.hari-app-rating{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--text-secondary)}.hari-app-rating svg{color:#ffb800}.hari-footer{display:flex;flex-direction:column;gap:var(--space-2)}.hari-install-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.hari-btn-logo{width:20px;height:20px;object-fit:contain;filter:brightness(0) invert(1)}.btn-text{background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;padding:var(--space-2);cursor:pointer;transition:color var(--transition-fast)}.btn-text:hover{color:var(--text-primary)}.account-history-filters{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0 var(--space-4);border-bottom:1px solid var(--border-light, rgba(0,0,0,.08));margin-bottom:var(--space-3)}.account-history-filter-row{display:flex;gap:var(--space-2);align-items:flex-end;flex-wrap:wrap}.account-history-filter-group{display:flex;flex-direction:column;gap:4px;flex:1;min-width:120px}.account-history-filter-group label{font-size:var(--font-size-xs, 11px);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.account-history-date-input{border:1.5px solid var(--border-default, #e0e0e0);border-radius:8px;padding:6px 10px;font-size:var(--font-size-sm, 13px);color:var(--text-primary);background:var(--surface-primary, #fff);outline:none;width:100%;box-sizing:border-box}.account-history-date-input:focus{border-color:var(--color-primary, #e8732a);box-shadow:0 0 0 3px #e8732a26}.account-history-filter-search{padding:6px 16px;border-radius:8px;border:none;background:var(--color-primary, #e8732a);color:#fff;font-size:var(--font-size-sm, 13px);font-weight:600;cursor:pointer;white-space:nowrap;height:34px;align-self:flex-end}.account-history-filter-search:hover{opacity:.9}.account-history-filter-reset{padding:6px 12px;border-radius:8px;border:1.5px solid var(--border-default, #e0e0e0);background:transparent;color:var(--text-secondary);font-size:var(--font-size-sm, 13px);cursor:pointer;white-space:nowrap;height:34px;align-self:flex-end}.account-history-filter-reset:hover{border-color:var(--color-primary, #e8732a);color:var(--color-primary, #e8732a)}.account-orders{padding-bottom:var(--space-8)}.account-order-card--clickable{width:100%;text-align:left;cursor:pointer;background:var(--surface-secondary, #fafafa);border:1.5px solid var(--border-light, rgba(0,0,0,.08));border-radius:12px;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2);position:relative;transition:border-color .15s,box-shadow .15s,transform .1s}.account-order-card--clickable:hover{border-color:var(--color-primary, #e8732a);box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.account-order-card--clickable:active{transform:translateY(0)}.account-order-summary{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm, 13px)}.account-order-items-count{color:var(--text-secondary)}.account-order-card--clickable .account-order-total{font-weight:700;color:var(--text-primary)}.account-order-card-arrow{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);color:var(--text-tertiary, #bbb)}.account-order-status-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}.account-order-status-badge.delivered,.account-order-status-badge.completed{background:#e6f7ee;color:#1a7a4a}.account-order-status-badge.pending,.account-order-status-badge.confirmed{background:#fff4e0;color:#b36a00}.account-order-status-badge.preparing,.account-order-status-badge.ready{background:#e8f0ff;color:#2a5be8}.account-order-status-badge.cancelled{background:#ffeaea;color:#c0392b}.account-order-detail{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-8)}.account-order-detail-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.account-order-detail-date{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:var(--font-size-sm, 13px)}.account-order-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-3)}.account-order-image-cell{position:relative;width:100%;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--surface-secondary, #f5f5f5)}.account-order-image-cell img{width:100%;height:100%;object-fit:cover}.account-order-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px}.account-order-image-qty{position:absolute;bottom:6px;right:6px;background:#000000b8;color:#fff;font-size:12px;font-weight:700;padding:2px 7px;border-radius:8px}.account-order-items-list{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border-light, rgba(0,0,0,.06));border-bottom:1px solid var(--border-light, rgba(0,0,0,.06))}.account-history-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4) 0 var(--space-8)}.account-pagination-btn{display:flex;align-items:center;gap:4px;padding:8px 14px;border-radius:8px;border:1.5px solid var(--border-default, #e0e0e0);background:transparent;color:var(--text-primary);font-size:var(--font-size-sm, 13px);font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}.account-pagination-btn:hover:not(:disabled){border-color:var(--color-primary, #e8732a);color:var(--color-primary, #e8732a)}.account-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.account-pagination-info{font-size:var(--font-size-sm, 13px);color:var(--text-secondary);font-weight:500;min-width:60px;text-align:center}.account-history-loading{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) 0 var(--space-8)}.account-history-skeleton{height:90px;border-radius:12px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.account-member-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);padding:3px 10px;width:fit-content}.account-fun-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--primary-soft);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.account-fun-banner-emoji{font-size:28px;flex-shrink:0;line-height:1}.account-fun-banner-title{font-size:var(--font-size-sm);font-weight:700;color:var(--primary);margin:0 0 2px}.account-fun-banner-sub{font-size:12px;color:var(--primary-dark);margin:0;opacity:.75}.account-badges-section{margin-bottom:var(--space-5)}.account-badges-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.account-badges-title{font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary)}.account-badges-count{font-size:12px;font-weight:700;color:var(--primary);background:var(--primary-soft);padding:3px 10px;border-radius:var(--radius-full)}.account-badges-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.account-badge-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-3) var(--space-2);border-radius:var(--radius-lg);text-align:center;background:none;border:none;cursor:pointer;transition:transform .15s ease}.account-badge-card:hover{transform:scale(1.05)}.account-badge-card:active{transform:scale(.97)}.account-badge-card--earned{background:var(--glass-bg-strong);box-shadow:var(--shadow-sm)}.account-badge-card--locked{background:var(--cream-dark);opacity:.65}.account-badge-circle-wrap{position:relative;width:52px;height:52px}.account-badge-hari-icon{width:28px;height:28px;object-fit:contain}.account-badge-circle{width:52px;height:52px;border-radius:50%;background:var(--cream-dark);display:flex;align-items:center;justify-content:center;font-size:24px}.account-badge-check{position:absolute;bottom:-1px;right:-1px;width:18px;height:18px;background:var(--primary);color:#fff;border-radius:50%;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--cream-light)}.account-badge-lock{position:absolute;bottom:-1px;right:-1px;font-size:12px;line-height:1}.account-badge-name{font-size:10px;font-weight:700;color:var(--text-secondary);line-height:1.2}.account-badge-obtained{font-size:9px;font-weight:600;color:var(--primary)}.account-badge-progress-bar{width:100%;height:3px;background:#0000001a;border-radius:2px;overflow:hidden;margin-top:2px}.account-badge-progress-fill{height:100%;border-radius:2px;transition:width .4s ease}.account-badge-progress-text{font-size:9px;color:var(--text-muted)}.hari-network-section{background:linear-gradient(140deg,var(--color-brand-600) 0%,var(--orange-500) 60%,var(--color-brand-450) 100%);border-radius:20px;overflow:hidden;margin-top:var(--space-5)}.hari-network-header{display:flex;align-items:center;gap:12px;padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.2)}.hari-network-logo{width:48px;height:48px;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1)}.hari-network-header-text{flex:1;display:flex;flex-direction:column;gap:2px}.hari-network-title{font-size:14px;font-weight:800;color:#fff;letter-spacing:.01em}.hari-network-subtitle{font-size:11px;color:#ffffffb3;line-height:1.3}.hari-network-counter{font-size:20px;font-weight:900;color:#fff;flex-shrink:0}.hari-network-counter span{font-size:13px;font-weight:600;color:#ffffffa6}.hari-network-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}.hari-network-card{display:flex;flex-direction:column;align-items:center;gap:5px;padding:14px 8px 12px;background:#ffffffeb;border-radius:14px;border:none;cursor:pointer;transition:background .15s,transform .15s;text-align:center}.hari-network-card:hover{background:#fff;transform:translateY(-1px)}.hari-network-card--earned{background:#fff}.hari-network-card--locked{opacity:.6}.hari-network-card-top{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center}.hari-network-card-emoji{font-size:26px}.hari-network-card--earned .hari-network-card-top:after{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.12);box-shadow:0 0 0 2px rgba(var(--color-brand-rgb-500),.5)}.hari-network-card-check{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:var(--orange-500);color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;z-index:1}.hari-network-card-name{font-size:10px;font-weight:800;color:#2f1e19;line-height:1.1}.hari-network-card-reward{font-size:9px;color:var(--color-brand-600);font-weight:700;line-height:1.2}.hari-network-card-progress{width:100%;display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:2px}.hari-network-card-progress-fill-wrap{width:100%;height:3px;background:#2f1e191f;border-radius:2px;overflow:hidden}.hari-network-card-progress-fill{height:3px;background:var(--orange-500);border-radius:2px;transition:width .4s ease}.hari-network-card-progress span{font-size:8px;color:#2f1e1973}.badge-detail-voucher--hari{background:#fff3ee;border-color:rgba(var(--color-brand-rgb-500),.35)}.badge-detail-voucher--hari .badge-detail-voucher-icon{color:var(--orange-500)}.badge-detail-voucher--hari .badge-detail-voucher-title{color:#2f1e19}.badge-detail-voucher--hari .badge-detail-voucher-amount{color:var(--orange-500);font-weight:700}.badge-detail-hari-reward-desc{font-size:13px;color:#2f1e19b3;line-height:1.5;margin:var(--space-3) 0;padding:0 var(--space-1)}.badge-detail-voucher-reveal-btn--hari{display:block;text-align:center;text-decoration:none;background:linear-gradient(120deg,var(--color-brand-600) 0%,var(--orange-500) 100%);color:#fff;font-weight:800;font-size:14px;padding:13px 20px;border-radius:var(--radius-lg);border:none;cursor:pointer;transition:opacity .15s;width:100%;letter-spacing:.02em}.badge-detail-voucher-reveal-btn--hari:hover{opacity:.88}.account-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-5)}.account-stat-card{display:flex;flex-direction:column;gap:2px;padding:var(--space-4);background:var(--glass-bg-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-stat-card-value{font-size:30px;font-weight:800;color:var(--text-primary);line-height:1}.account-stat-card-value--sm{font-size:20px}.account-stat-card-label{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.account-stat-card-fun{font-size:11px;font-weight:600;color:var(--primary);margin-top:var(--space-1)}.account-fav-dish{margin-bottom:var(--space-8)}.account-fav-dish-label{display:block;font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.account-fav-dish-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--glass-bg-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-fav-dish-img{width:52px;height:52px;border-radius:12px;overflow:hidden;background:var(--cream-dark);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.account-fav-dish-img img{width:100%;height:100%;object-fit:cover}.account-fav-dish-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.account-fav-dish-name{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-fav-dish-price{font-size:12px;color:var(--text-secondary)}.account-fav-dish-heart{color:var(--primary);flex-shrink:0}.account-menu-icon-wrap--profile{background:var(--primary);color:#fff}.badge-detail{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-8)}.badge-detail-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4) var(--space-4)}.badge-detail-circle{width:110px;height:110px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.badge-detail-circle:hover{transform:scale(1.04)}.badge-detail-emoji{font-size:56px;line-height:1}.badge-detail-emoji--hari{width:56px;height:56px;object-fit:contain}.badge-detail-name{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin:0}.badge-detail-pills{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.badge-detail-rarity-pill{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.badge-detail-earned-pill{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;background:#2d9a4e1f;color:#2d9a4e;border:1px solid rgba(45,154,78,.3);letter-spacing:.04em}.badge-detail-card{background:var(--glass-bg-strong);border-radius:var(--radius-xl);padding:var(--space-4)}.badge-detail-story{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.65;margin:0}.badge-detail-stats{display:flex;align-items:center;background:var(--glass-bg-strong);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-2);gap:var(--space-2)}.badge-detail-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.badge-detail-stat-value{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);line-height:1}.badge-detail-stat-label{font-size:11px;color:var(--text-tertiary);text-align:center}.badge-detail-stat-divider{width:1px;height:32px;background:var(--border-light);flex-shrink:0}.badge-detail-voucher{background:var(--glass-bg-strong);border-radius:var(--radius-xl);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);border:1.5px solid rgba(var(--color-brand-rgb-500),.15)}.badge-detail-voucher--used{opacity:.6;border-color:var(--border-light)}.badge-detail-voucher-header{display:flex;align-items:center;gap:var(--space-3)}.badge-detail-voucher-icon{font-size:28px;flex-shrink:0}.badge-detail-voucher-info{display:flex;flex-direction:column;gap:2px}.badge-detail-voucher-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.badge-detail-voucher-amount{font-size:var(--font-size-base);font-weight:700;color:var(--primary)}.badge-detail-voucher-reveal-btn{width:100%;padding:var(--space-3) var(--space-4);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .15s ease}.badge-detail-voucher-reveal-btn:hover{opacity:.9;transform:translateY(-1px)}.badge-detail-voucher-revealed{display:flex;flex-direction:column;gap:var(--space-3)}.badge-detail-voucher-code-wrap{display:flex;align-items:center;gap:var(--space-2);background:var(--cream-light);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);border:1.5px dashed var(--primary)}.badge-detail-voucher-code{flex:1;font-family:Space Mono,monospace;font-size:var(--font-size-base);font-weight:700;color:var(--primary);letter-spacing:.08em;word-break:break-all}.badge-detail-voucher-copy{background:none;border:none;cursor:pointer;font-size:18px;padding:4px;border-radius:var(--radius-sm);transition:transform .15s ease;flex-shrink:0}.badge-detail-voucher-copy:hover{transform:scale(1.15)}.badge-detail-voucher-instructions{font-size:12px;color:var(--text-tertiary);margin:0;text-align:center}.badge-detail-voucher-use-btn{width:100%;padding:var(--space-2) var(--space-4);background:none;border:1.5px solid var(--border-medium);border-radius:var(--radius-lg);font-size:12px;color:var(--text-secondary);cursor:pointer;transition:opacity .2s ease}.badge-detail-voucher-use-btn:hover{opacity:.7}.badge-detail-voucher-used-state{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) 0}.badge-detail-voucher-used-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}.badge-detail-voucher-badge-note{font-size:11px;color:var(--text-tertiary);margin:0;text-align:center}.badge-detail-share-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--glass-bg-strong);border:1.5px solid var(--border-light);border-radius:var(--radius-xl);font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);cursor:pointer;transition:background .2s ease,transform .15s ease}.badge-detail-share-btn:hover{background:var(--border-light);transform:translateY(-1px)}.badge-detail-progress-card{display:flex;flex-direction:column;gap:var(--space-3)}.badge-detail-progress-header{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.badge-detail-progress-fraction{color:var(--text-secondary);font-weight:500}.badge-detail-progress-track{height:8px;background:var(--border-light);border-radius:999px;overflow:hidden}.badge-detail-progress-fill{height:100%;border-radius:999px;transition:width .4s cubic-bezier(.34,1.56,.64,1)}.account-menu-badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;border-radius:999px;margin-right:4px}.account-menu-icon-wrap--vouchers{background:#f59e0b1f;color:#d97706}.merch-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(var(--color-brand-rgb-600),.06);border-radius:20px;overflow:hidden;cursor:pointer;text-align:left;transition:transform .2s ease,box-shadow .2s ease;width:100%;box-shadow:0 2px 12px #2f1e190f}.merch-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #2f1e191f}.merch-card:active{transform:translateY(0)}.merch-card-image-wrap{position:relative;width:100%;aspect-ratio:4 / 5;overflow:hidden;background:#fff0ec}.merch-card-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.merch-card:hover .merch-card-image{transform:scale(1.04)}.merch-card-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#fff0ec,#ffd8cc)}.merch-card-badge{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:4px;padding:4px 10px;background:#2f1e19b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:999px;font-size:10.5px;font-weight:600;color:#fff;letter-spacing:.02em;white-space:nowrap}.merch-card-badge-star{color:var(--orange-500);font-size:9px}.merch-card-free-badge{position:absolute;bottom:12px;left:50%;transform:translate(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);border-radius:999px;font-size:13px;font-weight:800;color:#fff;white-space:nowrap;box-shadow:0 4px 16px rgba(var(--color-brand-rgb-500),.4)}.merch-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}.merch-card-name{font-family:var(--font-display);font-size:17px;font-weight:700;color:#2f1e19;line-height:1.2;margin:0;letter-spacing:-.02em}.merch-card-desc{font-size:12.5px;color:#2f1e198c;line-height:1.45;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.merch-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.merch-card-price-wrap{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.merch-card-price-base{font-size:17px;font-weight:800;color:var(--color-brand-600)}.merch-card-price-original{font-size:13px;color:#2f1e1961;text-decoration:line-through}.merch-card-price-reduced{font-size:17px;font-weight:800;color:var(--orange-500)}.merch-card-price-free{font-size:15px;font-weight:800;color:var(--orange-500)}.merch-card-btn{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 3px 10px rgba(var(--color-brand-rgb-500),.35)}.merch-modal{max-height:96vh;max-height:96dvh;display:flex;flex-direction:column;border-radius:28px 28px 0 0}.merch-modal-close{position:absolute;top:14px;right:14px;z-index:20;background:#140a0873!important;border:none!important;color:#fff!important;width:34px!important;height:34px!important;border-radius:50%!important;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.merch-modal-close svg{color:#fff!important}.merch-modal-carousel-wrap{position:relative;flex-shrink:0;background:#f5ede4;border-radius:28px 28px 0 0;overflow:hidden;max-height:min(52vh,420px)}.merch-modal-carousel{display:flex;overflow-x:scroll;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.merch-modal-carousel-slide{flex-shrink:0;width:100%;height:min(52vh,420px);scroll-snap-align:start;overflow:hidden}.merch-modal-carousel-img{width:100%;height:100%;object-fit:cover;display:block}.merch-modal-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:38px;height:38px;border-radius:50%;border:none;background:#ffffffd9;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 10px #0000001f;transition:background .15s ease,transform .15s ease;color:#2f1e19}.merch-modal-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.06)}.merch-modal-arrow--prev{left:12px}.merch-modal-arrow--next{right:12px}.merch-modal-badge-overlay{position:absolute;top:12px;left:12px;z-index:10;display:inline-flex;align-items:center;gap:5px;padding:5px 11px;background:#140a088c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:999px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.02em}.merch-modal-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:5px}.merch-modal-dot{width:6px;height:6px;border-radius:50%;background:#ffffff73;border:none;padding:0;cursor:pointer;transition:background .2s,transform .2s,width .2s}.merch-modal-dot--active{background:#fff;width:18px;border-radius:3px;transform:none}.merch-modal-body{flex:1;overflow-y:auto;padding:20px 20px 8px!important;display:flex;flex-direction:column;gap:16px}.merch-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.merch-modal-title{font-family:var(--font-display);font-size:26px;font-weight:700;color:#2f1e19;letter-spacing:-.02em;line-height:1.15;margin:0}.merch-modal-promo-tag{flex-shrink:0;padding:4px 10px;background:var(--orange-500);color:#fff;font-size:13px;font-weight:800;border-radius:8px;margin-top:4px}.merch-modal-desc{font-size:14px;color:#2f1e1994;line-height:1.65;margin:-8px 0 0}.merch-modal-unlock-section{background:#fff9f5;border:1.5px solid rgba(var(--color-brand-rgb-500),.15);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.merch-modal-unlock-section--reduced{border-color:#22c55e40;background:#f4fef7}.merch-modal-unlock-section--free{border-color:#22c55e66;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}.merch-modal-unlock-icon{font-size:18px;line-height:1;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(var(--color-brand-rgb-500),.08);border-radius:50%;color:var(--orange-500)}.merch-modal-unlock-section--free .merch-modal-unlock-icon{background:#22c55e1a;color:#16a34a}.merch-modal-unlock-title{font-size:13px;font-weight:700;color:#2f1e19;line-height:1.3}.merch-modal-unlock-sub{font-size:12px;color:#2f1e1980}.merch-modal-unlock-prices{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.merch-modal-unlock-old{font-size:11px;color:#2f1e1959;text-decoration:line-through}.merch-modal-unlock-price{font-size:17px;font-weight:800;color:var(--color-brand-600)}.merch-modal-unlock-free{font-size:14px;font-weight:900;color:#16a34a;letter-spacing:.03em}.merch-modal-progress-wrap{display:flex;flex-direction:column;gap:5px}.merch-modal-progress-track{width:100%;height:8px;background:#2f1e1914;border-radius:99px;overflow:hidden}.merch-modal-progress-fill{height:100%;background:linear-gradient(90deg,var(--orange-500),#F59E0B);border-radius:99px;transition:width .5s cubic-bezier(.34,1.56,.64,1);min-width:6px}.merch-modal-progress-labels{display:flex;justify-content:space-between;font-size:11px;color:#2f1e1973;font-weight:600}.merch-modal-progress-goal{color:var(--orange-500)}.merch-modal-milestones{display:flex;justify-content:space-between;padding-top:2px}.merch-modal-milestone{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;color:#2f1e1959;font-weight:600;transition:color .2s}.merch-modal-milestone--done{color:var(--orange-500)}.merch-modal-milestone-dot{width:8px;height:8px;border-radius:50%;background:#2f1e191f;transition:background .2s}.merch-modal-milestone--done .merch-modal-milestone-dot{background:var(--orange-500)}.merch-modal-milestone-dot--gift{background:#2f1e191f}.merch-modal-milestone--done .merch-modal-milestone-dot--gift{background:#22c55e}.merch-modal-milestone-label{font-size:9px;letter-spacing:.03em;text-transform:uppercase}.merch-modal-option-group{display:flex;flex-direction:column;gap:8px}.merch-modal-option-label{font-size:13px;font-weight:700;color:#2f1e19;margin:0;display:flex;align-items:center;gap:4px}.merch-modal-option-required{color:var(--orange-500)}.merch-modal-option-chip{padding:7px 14px;border-radius:999px;border:1.5px solid rgba(47,30,25,.13);background:#fafafa;font-size:13px;font-weight:500;color:#2f1e19;cursor:pointer;transition:all .15s ease}.merch-modal-option-chip:hover{border-color:rgba(var(--color-brand-rgb-500),.4);background:rgba(var(--color-brand-rgb-500),.04)}.merch-modal-option-chip--active{background:rgba(var(--color-brand-rgb-500),.08);border-color:var(--orange-500);color:var(--color-brand-600);font-weight:700}.merch-modal-option-chip-price{font-weight:600;color:#8b7e77}.merch-modal-option-chip--active .merch-modal-option-chip-price{color:var(--color-brand-600)}.merch-modal-details{background:#2f1e1908;border-radius:14px;overflow:hidden}.merch-modal-detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(47,30,25,.05)}.merch-modal-detail-row:last-child{border-bottom:none}.merch-modal-detail-key{font-size:12px;font-weight:600;color:#2f1e1973;text-transform:uppercase;letter-spacing:.04em}.merch-modal-detail-val{font-size:13px;font-weight:600;color:#2f1e19;text-align:right}.merch-modal-footer{display:flex;align-items:center;gap:12px;padding:14px 16px!important;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;border-top:1px solid rgba(47,30,25,.07);background:#fefaf8;flex-shrink:0}.merch-modal-footer-price-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.merch-modal-footer-old{font-size:11px;color:#2f1e1959;text-decoration:line-through;line-height:1}.merch-modal-footer-current{font-size:22px;font-weight:900;color:var(--color-brand-600);line-height:1}.merch-modal-footer-free{font-size:18px;font-weight:900;color:#16a34a}.merch-modal-cta{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 16px;border-radius:16px;font-size:14px;font-weight:700;background:var(--orange-500);color:#fff;border:none;cursor:pointer;transition:background .15s,transform .1s}.merch-modal-cta:hover{background:var(--color-brand-600);transform:translateY(-1px)}.merch-modal-cta:active{transform:scale(.97)}.merch-modal-cta--locked{background:#2f1e191a;color:#2f1e1973;cursor:not-allowed}.merch-modal-cta--locked:hover{background:#2f1e191a;transform:none}.fo-body{padding-top:4px}.fo-hero{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#fff5ee,#fff0e6);border:1px solid rgba(var(--color-brand-rgb-500),.12);border-radius:16px;padding:14px 16px;margin-bottom:16px}.fo-hero-icon{font-size:36px;flex-shrink:0;width:52px;height:52px;background:linear-gradient(135deg,#ffe8d4,#ffd0a8);border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(var(--color-brand-rgb-500),.18)}.fo-hero-text{flex:1;min-width:0}.fo-hero-label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--orange-500);margin:0 0 4px}.fo-hero-claim{font-size:15px;font-weight:800;color:#2f1e19;margin:0;line-height:1.35}.fo-amount{color:var(--orange-500)}.fo-benefits{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:7px}.fo-benefit{display:flex;align-items:center;gap:8px;background:#f9f5f2;border-radius:11px;padding:9px 11px;font-size:11.5px;font-weight:600;color:#2f1e19;border:1px solid rgba(47,30,25,.06)}.fo-benefit-icon{color:var(--orange-500);flex-shrink:0}.fo-network{display:flex;align-items:center;gap:7px;font-size:11.5px;color:#2f1e196b;margin:0}.fo-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;flex-shrink:0;box-shadow:0 0 0 3px #4ade8038}.fo-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:15px;border-radius:14px;border:none;background:var(--orange-500);color:#fff;font-size:14.5px;font-weight:800;letter-spacing:-.2px;cursor:pointer;transition:background .15s,transform .1s;margin-bottom:4px}.fo-cta:hover{background:var(--color-brand-600);transform:translateY(-1px)}.fo-cta:active{transform:scale(.98)}.fo-cta:disabled{opacity:.7;cursor:not-allowed;transform:none}.fo-spinner{animation:spin .8s linear infinite}.fo-skip{display:block;width:100%;padding:8px;border:none;background:transparent;color:#2f1e1959;font-size:12px;font-weight:600;cursor:pointer;text-align:center}.fo-prefilled{background:#b7202a0a!important;color:#2f1e1999!important;font-style:italic}.fo-password-highlight input{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--color-brand-soft-12)!important}.account-menu-icon-wrap--messages{background:linear-gradient(135deg,#1d4ed8,#6366f1);color:#fff}.account-menu-icon-wrap--notif,.account-menu-badge-count--notif{background:linear-gradient(135deg,var(--color-brand-600),var(--orange-500));color:#fff}.notif-clear-btn{font-size:12px;font-weight:600;color:var(--color-brand-500, var(--orange-500));background:none;border:none;cursor:pointer;padding:4px 8px;margin-left:auto}.notif-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:60px 20px;text-align:center}.notif-empty-emoji{font-size:40px}.notif-empty p{font-size:15px;font-weight:700;color:var(--text-primary);margin:0}.notif-empty span{font-size:13px;color:var(--text-secondary)}.notif-list{display:flex;flex-direction:column;gap:2px;padding:8px 0}.notif-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:14px;position:relative;transition:background .15s}.notif-item--unread{background:rgba(var(--color-brand-rgb-500),.06)}.notif-item--read{background:transparent}.notif-item-emoji{font-size:26px;flex-shrink:0;line-height:1;margin-top:2px}.notif-item-body{flex:1;min-width:0}.notif-item-title{font-size:13px;font-weight:700;color:var(--text-primary);margin:0 0 2px;line-height:1.3}.notif-item-message{font-size:12px;color:var(--text-secondary);margin:0 0 4px;line-height:1.4}.notif-item-time{font-size:10px;color:var(--text-tertiary, #9ca3af)}.notif-item-dot{width:8px;height:8px;border-radius:50%;background:var(--orange-500);flex-shrink:0;margin-top:5px}.merch-modal{max-height:92dvh;overflow:hidden;display:flex;flex-direction:column;padding:0;border-radius:24px 24px 0 0}.merch-modal-close{position:absolute;top:12px;right:12px;z-index:10;width:32px;height:32px;border-radius:50%;border:none;background:#00000059;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(4px)}.merch-modal-carousel-wrap{position:relative;flex-shrink:0;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f0e8de}.merch-modal-carousel{display:flex;width:100%;height:100%;overflow-x:scroll;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.merch-modal-carousel::-webkit-scrollbar{display:none}.merch-modal-carousel-slide{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start}.merch-modal-carousel-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.merch-modal-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:none;background:#0006;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;backdrop-filter:blur(4px);transition:background .15s}.merch-modal-arrow:hover{background:#0009}.merch-modal-arrow--prev{left:10px}.merch-modal-arrow--next{right:10px}.merch-modal-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:5}.merch-modal-dot{width:6px;height:6px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;padding:0;transition:background .2s,transform .2s}.merch-modal-dot--active{background:var(--orange-500);transform:scale(1.4)}.merch-modal-badge-overlay{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:5px;background:#0000008c;color:#fff;font-size:10px;font-weight:700;letter-spacing:.03em;padding:4px 8px;border-radius:20px;backdrop-filter:blur(4px);z-index:5;text-transform:uppercase}.merch-modal-body{flex:1 1 auto;overflow-y:auto;padding:16px 16px 8px;scrollbar-width:none}.merch-modal-body::-webkit-scrollbar{display:none}.merch-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.merch-modal-title{font-size:18px;font-weight:700;color:var(--mp-text, #1a1a1a);margin:0;line-height:1.3}.merch-modal-promo-tag{flex-shrink:0;background:var(--orange-500);color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:20px;margin-top:3px}.merch-modal-desc{font-size:13px;color:var(--mp-text-muted, #6b7280);line-height:1.5;margin:0 0 14px}.merch-modal-unlock-section{background:#fff8f2;border:1.5px solid #fcd9b8;border-radius:14px;padding:14px;margin-bottom:14px;transition:border-color .3s,background .3s}.merch-modal-unlock-section--reduced{background:#fff4ed;border-color:var(--orange-500)}.merch-modal-unlock-section--free{background:#f0faf0;border-color:#4caf50}.merch-modal-unlock-header{display:flex;align-items:flex-start;gap:10px}.merch-modal-unlock-icon{font-size:20px;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.12);border-radius:50%;color:var(--orange-500)}.merch-modal-unlock-text{flex:1;display:flex;flex-direction:column;gap:2px}.merch-modal-unlock-title{font-size:13px;font-weight:700;color:var(--mp-text, #1a1a1a);line-height:1.3}.merch-modal-unlock-sub{font-size:11px;color:var(--mp-text-muted, #6b7280)}.merch-modal-unlock-prices{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.merch-modal-unlock-old{font-size:11px;color:var(--mp-text-muted, #6b7280);text-decoration:line-through}.merch-modal-unlock-price{font-size:16px;font-weight:800;color:var(--orange-500)}.merch-modal-unlock-free{font-size:14px;font-weight:800;color:#4caf50;letter-spacing:.05em}.merch-modal-progress-wrap{margin-top:12px}.merch-modal-progress-track{height:6px;background:#00000014;border-radius:3px;overflow:hidden}.merch-modal-progress-fill{height:100%;background:linear-gradient(90deg,var(--orange-500),var(--color-brand-450));border-radius:3px;transition:width .5s ease}.merch-modal-progress-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--mp-text-muted, #6b7280);margin-top:4px}.merch-modal-progress-goal{font-weight:700;color:var(--orange-500)}.merch-modal-milestones{display:flex;justify-content:space-between;margin-top:10px}.merch-modal-milestone{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:9px;color:var(--mp-text-muted, #9ca3af);text-align:center;opacity:.7;transition:opacity .2s,color .2s}.merch-modal-milestone--done{color:var(--orange-500);opacity:1}.merch-modal-milestone-dot{width:8px;height:8px;border-radius:50%;background:#00000026;border:1.5px solid currentColor;transition:background .2s}.merch-modal-milestone--done .merch-modal-milestone-dot{background:var(--orange-500);border-color:var(--orange-500)}.merch-modal-milestone-dot--gift{background:transparent;border:2px dashed var(--orange-500)}.merch-modal-milestone--done .merch-modal-milestone-dot--gift{background:#4caf50;border-color:#4caf50}.merch-modal-milestone-label{font-weight:700;font-size:8px;letter-spacing:.02em}.merch-modal-option-group{margin-bottom:14px}.merch-modal-option-label{font-size:13px;font-weight:600;color:var(--mp-text, #1a1a1a);margin:0 0 8px}.merch-modal-option-required{color:var(--orange-500);margin-left:2px}.merch-modal-option-choices{display:flex;flex-wrap:wrap;gap:8px}.merch-modal-option-chip{padding:6px 14px;border-radius:20px;border:1.5px solid rgba(0,0,0,.15);background:#fff;font-size:13px;color:var(--mp-text, #1a1a1a);cursor:pointer;transition:border-color .15s,background .15s,color .15s;display:flex;align-items:center;gap:4px}.merch-modal-option-chip:hover{border-color:var(--orange-500);background:#fff8f2}.merch-modal-option-chip--active{border-color:var(--orange-500);background:#fff4ed;color:var(--orange-500);font-weight:600}.merch-modal-option-chip-price{font-size:11px;opacity:.8}.merch-modal-details{border-top:1px solid rgba(0,0,0,.07);padding-top:12px;margin-top:4px;display:flex;flex-direction:column;gap:8px}.merch-modal-detail-row{display:flex;justify-content:space-between;font-size:12px}.merch-modal-detail-key{color:var(--mp-text-muted, #6b7280)}.merch-modal-detail-val{font-weight:600;color:var(--mp-text, #1a1a1a);text-align:right}.merch-modal-footer{flex-shrink:0;display:flex;align-items:center;gap:12px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid rgba(0,0,0,.07);background:#fff}.merch-modal-footer-price{flex-shrink:0}.merch-modal-footer-free{font-size:16px;font-weight:800;color:#4caf50;letter-spacing:.04em}.merch-modal-footer-price-stack{display:flex;flex-direction:column;align-items:flex-start}.merch-modal-footer-old{font-size:11px;color:var(--mp-text-muted, #6b7280);text-decoration:line-through}.merch-modal-footer-current{font-size:18px;font-weight:800;color:var(--mp-text, #1a1a1a);line-height:1}.merch-modal-cta{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;border-radius:14px;border:none;background:var(--mp-accent, var(--orange-500));color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s}.merch-modal-cta:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.merch-modal-cta--locked,.merch-modal-cta:disabled{background:#0000001f;color:#0006;cursor:not-allowed;transform:none;opacity:1}.merch-modal-cta--locked span,.merch-modal-cta:disabled span{font-size:12px}.account-pwd-overlay{position:fixed;inset:0;background:#0f0a088c;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:account-pwd-fade .18s ease-out}@keyframes account-pwd-fade{0%{opacity:0}to{opacity:1}}.account-pwd-modal{background:#f7f2ec;border-radius:22px;width:100%;max-width:420px;box-shadow:0 24px 60px #0f0a0852;display:flex;flex-direction:column;overflow:hidden;animation:account-pwd-slide .22s ease-out}.account-pwd-modal--wide{max-width:560px}@keyframes account-pwd-slide{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.account-pwd-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid rgba(47,30,25,.08);background:#fff}.account-pwd-header h2{display:inline-flex;align-items:center;gap:10px;margin:0;font-family:Fraunces,serif;font-size:19px;font-weight:600;color:#2f1e19}.account-pwd-close{border:0;background:#2f1e190f;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#2f1e19;transition:background .15s ease}.account-pwd-close:hover{background:#2f1e191f}.account-pwd-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 200px);overflow-y:auto}.account-pwd-intro{margin:0 0 4px;color:#5a4a3f;font-size:13.5px;line-height:1.5}.account-pwd-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#5a4a3f;margin-top:4px}.account-pwd-field{position:relative;display:flex;align-items:center}.account-pwd-field input{flex:1;border:1px solid rgba(47,30,25,.18);background:#fff;border-radius:10px;padding:11px 14px;font-size:15px;font-family:inherit;color:#2f1e19;transition:border-color .15s ease;outline:none;width:100%}.account-pwd-field input:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.12)}.account-pwd-eye{position:absolute;right:8px;background:transparent;border:0;padding:8px;cursor:pointer;color:#5a4a3f;border-radius:6px}.account-pwd-eye:hover{color:#2f1e19;background:#2f1e190d}.account-pwd-error{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;background:rgba(var(--color-brand-rgb-600),.08);border:1px solid rgba(var(--color-brand-rgb-600),.25);border-radius:8px;color:var(--color-brand-600);font-size:13px;font-weight:500}.account-pwd-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:0;border-radius:999px;background:var(--orange-500);color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease,transform .1s ease;margin-top:6px;font-family:inherit}.account-pwd-cta:hover:not(:disabled){background:#d14f00}.account-pwd-cta:active:not(:disabled){transform:scale(.98)}.account-pwd-cta:disabled{opacity:.55;cursor:not-allowed}.account-pwd-cta--ghost{background:transparent;color:var(--color-brand-600);border:1px solid rgba(var(--color-brand-rgb-600),.35)}.account-pwd-cta--ghost:hover:not(:disabled){background:rgba(var(--color-brand-rgb-600),.06)}.account-pwd-cta--danger{background:#dc3520}.account-pwd-cta--danger:hover:not(:disabled){background:#b82c19}.account-delete-warn{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:#dc352014;color:#b82c19;font-size:13.5px;margin-bottom:14px}.account-delete-warn svg{flex-shrink:0}.account-delete-actions{display:flex;gap:10px;margin-top:14px}.account-delete-actions .account-pwd-cta{flex:1;margin-top:0}.account-delete-cancel{flex:1;padding:12px 18px;border:1px solid var(--border, rgba(47, 30, 25, .15));border-radius:999px;background:transparent;color:var(--ink, #2F1E19);font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .15s ease}.account-delete-cancel:hover:not(:disabled){background:#2f1e190d}.account-delete-cancel:disabled{opacity:.55;cursor:not-allowed}.account-pwd-spin{animation:account-pwd-spin .9s linear infinite}@keyframes account-pwd-spin{to{transform:rotate(360deg)}}.account-pwd-success{padding:28px 22px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.account-pwd-success__check{width:64px;height:64px;border-radius:50%;background:#16a34a;color:#fff;display:grid;place-items:center;margin-bottom:4px}.account-pwd-success h3{margin:0;font-family:Fraunces,serif;font-size:20px;color:#2f1e19}.account-pwd-success p{margin:0 0 8px;color:#5a4a3f;font-size:13.5px}.account-sessions-loading,.account-sessions-empty{padding:24px;text-align:center;color:#5a4a3f;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px}.account-sessions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.account-session{display:flex;align-items:center;gap:14px;padding:14px;background:#fff;border:1px solid rgba(47,30,25,.1);border-radius:14px;transition:border-color .15s ease}.account-session.is-current{border-color:#16a34a66;background:#16a34a0a}.account-session__icon{width:42px;height:42px;border-radius:10px;background:#2f1e190f;display:grid;place-items:center;color:#5a4a3f;flex-shrink:0}.account-session.is-current .account-session__icon{background:#16a34a1f;color:#16a34a}.account-session__main{flex:1;min-width:0}.account-session__title{font-size:14px;font-weight:600;color:#2f1e19;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-session__current{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#16a34a;background:#16a34a1f;padding:2px 8px;border-radius:999px}.account-session__meta{font-size:12px;color:#7a6a5f;margin-top:3px;word-break:break-word}.account-session__revoke{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid rgba(var(--color-brand-rgb-600),.35);background:transparent;color:var(--color-brand-600);border-radius:8px;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .15s ease;font-family:inherit;flex-shrink:0}.account-session__revoke:hover:not(:disabled){background:rgba(var(--color-brand-rgb-600),.06)}.account-session__revoke:disabled{opacity:.55;cursor:not-allowed}.account-addr-types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:4px}.account-addr-type{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:2px solid rgba(47,30,25,.1);background:#fff;border-radius:14px;cursor:pointer;transition:all .15s ease;font-family:inherit}.account-addr-type:hover{border-color:rgba(var(--color-brand-rgb-500),.35)}.account-addr-type.is-active{border-color:var(--orange-500);background:rgba(var(--color-brand-rgb-500),.06)}.account-addr-type__emoji{font-size:22px;line-height:1}.account-addr-type__label{font-size:11px;font-weight:600;color:#2f1e19;letter-spacing:.02em}.voucher-manual__scan-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;border-radius:var(--radius-md);border:1.5px solid var(--cream-dark);background:var(--white);color:var(--primary-dark);cursor:pointer;transition:background .18s ease,border-color .18s ease,opacity .18s ease}.voucher-manual__scan-btn:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary)}.voucher-manual__scan-btn:disabled{opacity:.5;cursor:not-allowed}.voucher-scan-overlay{position:fixed;inset:0;z-index:2200;background:#0f0b09c7;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.voucher-scan-card{width:min(420px,100%);background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #0006}.voucher-scan-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--cream-dark);color:var(--text-primary)}.voucher-scan-header>svg{color:var(--primary-dark);flex-shrink:0;margin-top:2px}.voucher-scan-header-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.voucher-scan-header-text strong{font-family:var(--font-family-display);font-weight:700;font-size:var(--font-size-md);color:var(--text-primary)}.voucher-scan-header-text span{font-size:var(--font-size-xs);color:var(--text-muted)}.voucher-scan-close{width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-md)}.voucher-scan-close:hover{background:var(--cream)}.voucher-scan-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.voucher-scan-body--error{gap:var(--space-4)}.voucher-scan-video-wrap{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-md);overflow:hidden;background:#000}.voucher-scan-video-wrap video{width:100%;height:100%;object-fit:cover;display:block}.voucher-scan-frame{position:absolute;inset:14%;border:2px solid rgba(255,255,255,.6);border-radius:var(--radius-sm);pointer-events:none;transition:border-color .12s ease-out,box-shadow .12s ease-out}.voucher-scan-frame.is-success{border-color:var(--success);box-shadow:0 0 0 2px #4caf5059}.voucher-scan-frame.is-error{border-color:var(--error);box-shadow:0 0 0 2px #f4433659}.voucher-scan-feedback{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary-dark);font-size:var(--font-size-xs);font-weight:600;margin:0}.voucher-scan-feedback.is-error{background:#f443361a;color:var(--error)}.voucher-scan-feedback.is-success{background:#4caf501f;color:#2e7d32}.voucher-scan-error{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--cream);color:var(--text-primary);font-size:var(--font-size-xs);line-height:1.5}.voucher-scan-error>svg{color:var(--primary-dark);flex-shrink:0;margin-top:2px}.account-setting-item--field{align-items:flex-start}.account-dob-row{display:flex;flex-wrap:wrap;gap:var(--space-2, 8px);margin-top:var(--space-2, 8px);align-items:center}.account-dob-input{flex:1 1 140px;min-width:140px;padding:10px 12px;font-size:14px;border-radius:var(--radius-md, 12px);border:1px solid var(--color-ink-50, rgba(47, 30, 25, .12));background:var(--surface-1, #fff);color:var(--text-primary, #2F1E19);font-family:inherit}.account-dob-input:focus{outline:2px solid var(--primary, var(--orange-500));outline-offset:1px;border-color:transparent}.account-dob-save{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;border-radius:var(--radius-md, 12px);border:none;background:var(--primary, var(--orange-500));color:#fff;cursor:pointer;transition:opacity .15s ease}.account-dob-save:disabled{opacity:.4;cursor:not-allowed}.account-dob-clear{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md, 12px);border:1px solid var(--color-ink-50, rgba(47, 30, 25, .12));background:transparent;color:var(--color-ink-500, #7A6A60);cursor:pointer}.account-dob-clear:hover:not(:disabled){color:var(--color-brand-600);border-color:rgba(var(--color-brand-rgb-600),.4)}.account-dob-error{display:block;margin-top:var(--space-2, 8px);font-size:12px;color:var(--color-brand-600)}.hours-exception{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;margin-bottom:14px;border-radius:var(--radius-md, 12px);background:#e85d0414;border:1px solid rgba(232,93,4,.22)}.hours-exception svg{flex-shrink:0;margin-top:2px;color:var(--color-primary, #e85d04)}.hours-exception div{display:flex;flex-direction:column;gap:2px}.hours-exception strong{font-size:.92rem;color:var(--color-ink, #2f1e19)}.hours-exception span{font-size:.82rem;color:var(--color-ink-soft, #7a5c51)}.hours-empty{margin:0;padding:18px 16px;border-radius:var(--radius-md, 12px);background:var(--color-paper, #f7f2ec);font-size:.88rem;line-height:1.55;color:var(--color-ink-soft, #7a5c51);text-align:center}.about-modal-overlay{position:fixed;inset:0;z-index:1100;background:#24150f8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:stretch;justify-content:center;padding:0;animation:aboutOverlayIn .28s cubic-bezier(.32,.72,0,1)}@keyframes aboutOverlayIn{0%{opacity:0}to{opacity:1}}.about-modal{position:relative;width:100%;max-width:720px;margin:0 auto;background:var(--color-paper-100, #F7F2EC);overflow:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;animation:aboutModalIn .36s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column}@media(min-width:720px){.about-modal-overlay{padding:24px}.about-modal{max-height:calc(100vh - 48px);border-radius:20px;box-shadow:0 32px 80px #24150f4d}}@keyframes aboutModalIn{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.about-modal__close{position:absolute;top:16px;right:16px;z-index:5;width:38px;height:38px;border:0;border-radius:999px;background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink, #2F1E19);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #24150f2e;transition:transform .18s ease,background .18s ease}.about-modal__close:hover{background:#fff;transform:scale(1.04)}.about-hero{position:relative;display:flex;flex-direction:column;flex-shrink:0}.about-hero__media{position:relative;width:100%;aspect-ratio:16 / 10;overflow:hidden;background:linear-gradient(135deg,var(--color-paper-200, #EEE4DA),var(--color-paper-300, #D8CFC5))}.about-hero__media--noimg{background:linear-gradient(135deg,rgba(var(--color-brand-rgb-500, 232, 93, 4),.12),var(--color-paper-200, #EEE4DA))}.about-hero__img{width:100%;height:100%;object-fit:cover;display:block}.about-hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(36,21,15,.2) 100%);pointer-events:none}.about-hero__content{padding:32px 28px 28px;text-align:left;background:var(--color-paper-100, #F7F2EC)}.about-hero__eyebrow{display:inline-block;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--copper, var(--orange-500));margin:0 0 14px}.about-hero__title{margin:0 0 16px;font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(34px,6vw,52px);font-weight:600;line-height:1.05;letter-spacing:-.025em;color:var(--ink, #2F1E19)}.about-hero__tagline{margin:0;font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(15px,2vw,18px);font-style:italic;line-height:1.55;color:var(--clay, #7A5C51);max-width:32ch}@media(min-width:720px){.about-hero__content{padding:40px 56px 32px}}.about-body{padding:8px 28px 40px;display:flex;flex-direction:column;gap:36px}@media(min-width:720px){.about-body{padding:12px 56px 56px;gap:48px}}.about-section{display:flex;flex-direction:column;gap:14px}.about-section__figure{margin:0 -28px 8px;overflow:hidden}.about-section__figure img{width:100%;height:auto;display:block}@media(min-width:720px){.about-section__figure{margin:0 -56px 12px;border-radius:0}}.about-section__head{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.about-section__eyebrow{display:inline-block;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--copper, var(--orange-500))}.about-section__title{margin:0;font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(22px,3.4vw,28px);font-weight:600;line-height:1.15;letter-spacing:-.02em;color:var(--ink, #2F1E19)}.about-section__paragraph{margin:0;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:15.5px;line-height:1.75;color:var(--ink-soft, #4A372E);letter-spacing:-.005em}.about-section__paragraph+.about-section__paragraph{margin-top:-2px}.about-quote{position:relative;margin:12px 0 8px;padding:24px 22px 22px 50px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.05);border-left:3px solid var(--copper, var(--orange-500));border-radius:4px}.about-quote__mark{position:absolute;top:18px;left:16px;color:var(--copper, var(--orange-500));opacity:.65}.about-quote__text{margin:0;font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(17px,2.4vw,21px);font-style:italic;font-weight:500;line-height:1.45;color:var(--ink, #2F1E19);letter-spacing:-.012em}.about-quote__author{margin-top:12px;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:12.5px;font-weight:600;color:var(--clay, #7A5C51);letter-spacing:.02em}.about-coords{padding:24px 0 8px;border-top:1px solid rgba(36,21,15,.08);display:flex;flex-direction:column;gap:16px}.about-coords__head{display:flex;flex-direction:column;gap:6px}.about-coords__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.about-coords__item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#ffffff8c;border:1px solid rgba(36,21,15,.06);border-radius:12px}.about-coords__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.12);color:var(--copper, var(--orange-500));flex-shrink:0}.about-coords__text{font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:14.5px;font-weight:500;color:var(--ink, #2F1E19);line-height:1.4}.about-coords__text--link{color:var(--copper, var(--orange-500));text-decoration:none;cursor:pointer}.about-coords__text--btn{background:none;border:0;padding:0;font:inherit;text-align:left}.about-coords__text--link:hover{text-decoration:underline}.about-signature{margin:16px 0 0;padding:24px 0;text-align:center;border-top:1px solid rgba(36,21,15,.08)}.about-signature__text{margin:0 0 8px;font-family:var(--font-family-display, "Fraunces", serif);font-size:clamp(20px,3vw,26px);font-style:italic;font-weight:500;line-height:1.3;color:var(--ink, #2F1E19);letter-spacing:-.015em}.about-signature__author{display:inline-block;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--copper, var(--orange-500))}.about-footer{margin-top:8px;padding-top:18px;text-align:center}.about-footer__powered{font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--clay, #7A5C51);opacity:.55}.about-detail-sheet{background:var(--color-paper-100, #F7F2EC)}@media(min-width:768px){.menu-page .modal-sheet.about-detail-sheet{max-width:96vw}}@media(min-width:1024px){.menu-page .modal-sheet.about-detail-sheet{max-width:95vw}}@media(min-width:1280px){.menu-page .modal-sheet.about-detail-sheet{max-width:min(1600px,94vw)}}@media(min-width:1536px){.menu-page .modal-sheet.about-detail-sheet{max-width:min(1840px,93vw)}}@media(min-width:768px){.about-detail-sheet .about-hero__media{aspect-ratio:auto;height:clamp(240px,34vh,380px)}}.language-modal-overlay{background:#2f1e1980;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:flex-end;padding:0}.language-modal{background:#fff8f4;border-radius:28px 28px 0 0;border:none;border-top:1px solid rgba(var(--color-brand-rgb-600),.06);box-shadow:0 -12px 60px #2f1e1926;width:100%;max-width:100%;max-height:88vh;max-height:88dvh;overflow:hidden;display:flex;flex-direction:column;animation:hariSheetUp .4s cubic-bezier(.32,.72,0,1) both}@media(min-width:768px){.language-modal{max-width:560px;margin:0 auto;border-radius:28px 28px 0 0}.language-modal-overlay{justify-content:center}}.language-modal .modal-handle{display:flex;justify-content:center;padding:14px 0 6px;flex-shrink:0}.language-modal .modal-handle:before{content:"";display:block;width:48px;height:5px;border-radius:10px;background:rgba(var(--color-brand-rgb-600),.18)}.language-modal-header{display:flex;align-items:center;justify-content:space-between;padding:4px 20px 16px;border-bottom:1px solid rgba(var(--color-brand-rgb-600),.06);flex-shrink:0}.language-modal-title-row{display:flex;align-items:center;gap:8px}.language-modal-icon{color:var(--color-brand-600);flex-shrink:0}.language-modal-header .modal-title{font-family:var(--font-display);font-size:22px;font-weight:700;color:#2f1e19;letter-spacing:-.02em;margin:0}.language-modal-header .modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(var(--color-brand-rgb-600),.05);border:1px solid rgba(var(--color-brand-rgb-600),.08);color:#2f1e19;cursor:pointer;transition:all .2s ease;flex-shrink:0}.language-modal-header .modal-close:hover{background:rgba(var(--color-brand-rgb-600),.1);border-color:rgba(var(--color-brand-rgb-600),.15)}.language-search{display:flex;align-items:center;gap:10px;margin:14px 20px 10px;padding:10px 16px;background:#f4ece599;border:1.5px solid rgba(var(--color-brand-rgb-600),.08);border-radius:12px;min-height:44px;transition:all .25s ease;flex-shrink:0}.language-search:focus-within{background:#fff;border-color:var(--color-brand-600);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-600),.1)}.language-search svg{color:#8b7e77;flex-shrink:0}.language-search input{flex:1;border:none;background:transparent;font-size:15px;font-weight:500;color:#2f1e19;outline:none}.language-search input::placeholder{color:#8b7e77;font-weight:400}.language-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:6px 20px 24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto;scrollbar-width:none}.language-grid::-webkit-scrollbar{display:none}.language-card{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#fff;border:1.5px solid rgba(var(--color-brand-rgb-600),.06);border-radius:14px;cursor:pointer;transition:all .18s ease;text-align:left;flex-wrap:wrap}.language-card:hover{background:#fff;border-color:rgba(var(--color-brand-rgb-600),.18);box-shadow:0 4px 14px #2f1e1912;transform:translateY(-1px)}.language-card.active{background:rgba(var(--color-brand-rgb-600),.04);border-color:var(--color-brand-600);box-shadow:0 4px 16px rgba(var(--color-brand-rgb-600),.12)}.language-flag{font-size:22px;flex-shrink:0;line-height:1}.language-native{font-size:14px;font-weight:600;color:#2f1e19;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.language-card.active .language-native{color:var(--color-brand-600)}.language-currency{font-size:11px;font-weight:600;color:var(--clay, #7A5C4F);background:#2f1e190d;padding:2px 7px;border-radius:20px;margin-left:auto;white-space:nowrap}.language-card.active .language-currency{background:rgba(var(--color-brand-rgb-600),.08);color:var(--color-brand-600)}.language-modal-note{font-size:11px;color:var(--clay, #7A5C4F);text-align:center;padding:8px 16px 4px;margin:0}.app-footer{position:relative;background:var(--orange-500);margin-top:auto;overflow:hidden}.app-footer:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 50% 100% at 0% 50%,rgba(255,120,30,.35) 0%,transparent 55%),radial-gradient(ellipse 40% 80% at 100% 50%,rgba(150,30,0,.25) 0%,transparent 55%);pointer-events:none}.footer-powered{position:relative;padding:16px 20px;border-bottom:1px solid rgba(47,30,25,.15)}.footer-powered-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px}.footer-powered-brand{display:flex;align-items:center;gap:10px;min-width:0}.footer-powered-logo{width:20px;height:20px;flex-shrink:0;filter:brightness(0) invert(1);opacity:.85}.footer-powered-text{display:flex;align-items:baseline;gap:5px;flex-shrink:0}.footer-powered-by{font-size:10.5px;color:#ffffffb3;font-weight:500;text-transform:uppercase;letter-spacing:.08em}.footer-powered-name{font-family:var(--font-display);font-size:17px;font-weight:700;color:#fff;letter-spacing:-.01em;text-shadow:0 1px 6px rgba(47,30,25,.2)}.footer-powered-dot{font-size:11px;color:#fff6;flex-shrink:0}.footer-powered-tagline{font-size:12px;color:#ffffffbf;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-powered-cta{display:inline-flex;align-items:center;gap:5px;padding:8px 18px;background:#fff;border-radius:999px;font-size:12px;font-weight:700;color:var(--color-brand-600);text-decoration:none;flex-shrink:0;box-shadow:0 3px 14px #2f1e1940;transition:box-shadow .2s ease,transform .2s ease}.footer-powered-cta:hover{transform:translateY(-2px);box-shadow:0 6px 22px #2f1e1952}.footer-powered-cta:active{transform:translateY(0);box-shadow:0 2px 6px #2f1e192e}.footer-links{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px 0}.footer-link{font-size:11px;color:#ffffff8c;text-decoration:none;transition:color .15s}.footer-link:hover{color:#ffffffe6;text-decoration:underline}.footer-links-sep{font-size:11px;color:#ffffff40}.footer-legal-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 6px;padding:8px 16px 0}.footer-legal-link{font-size:10px;color:#ffffff73;text-decoration:none;transition:color .15s;white-space:nowrap}.footer-legal-link:hover{color:#ffffffd9;text-decoration:underline}.footer-legal-sep{font-size:10px;color:#fff3}.footer-rgpd{text-align:center;font-size:10px;color:#ffffff59;padding:6px 20px 0;max-width:1200px;margin:0 auto;line-height:1.4}.footer-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;max-width:1200px;margin:0 auto}.footer-copyright{font-size:11px;color:#fff9;margin:0;white-space:nowrap}.footer-made{font-size:11px;color:#ffffff8c;margin:0;display:flex;align-items:center;gap:3px;white-space:nowrap}.footer-heart{color:#fff;animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.footer-lang-btn{display:flex;align-items:center;gap:5px;padding:4px 10px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:8px;font-size:11px;font-weight:600;color:#ffffffd9;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.footer-lang-btn:hover{background:#ffffff38;color:#fff;border-color:#fff6}@media(max-width:480px){.footer-powered-dot,.footer-powered-tagline,.footer-made{display:none}.footer-powered-cta{padding:7px 14px;font-size:11px}}@keyframes hariSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes hariOverlayIn{0%{opacity:0}to{opacity:1}}.menu-page .modal-overlay{background:#2f1e1980;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:flex-end;padding:0;animation:hariOverlayIn .3s ease-out both}@media(min-width:768px){.menu-page .modal-overlay{align-items:flex-end;padding:0}}.menu-page .modal-sheet{background:#fff8f4;border:none;border-top:1px solid rgba(var(--color-brand-rgb-600),.06);border-radius:28px 28px 0 0;box-shadow:0 -12px 60px #2f1e1926;max-height:92vh;max-height:92dvh;animation:hariSheetUp .4s cubic-bezier(.32,.72,0,1) both;width:100%;max-width:100%}@media(min-width:768px){.menu-page .modal-sheet{max-width:92vw;max-height:94vh;border-radius:28px 28px 0 0;box-shadow:0 -16px 80px #2f1e192e;animation:hariSheetUp .45s cubic-bezier(.32,.72,0,1) both;margin:0 auto}}@media(min-width:1024px){.menu-page .modal-sheet{max-width:min(860px,80vw);max-height:94vh}}@media(min-width:1280px){.menu-page .modal-sheet{max-width:min(960px,72vw);max-height:95vh}}@media(min-width:1536px){.menu-page .modal-sheet{max-width:min(1040px,65vw);max-height:95vh}}.menu-page .modal-handle{display:flex;padding:14px 0 6px}.menu-page .modal-handle:before{background:rgba(var(--color-brand-rgb-600),.18);width:48px;height:5px;border-radius:10px}@media(min-width:768px){.menu-page .modal-handle{display:flex}}.menu-page .modal-header{border-bottom:1px solid rgba(var(--color-brand-rgb-600),.06);padding:4px 20px 16px}@media(min-width:768px){.menu-page .modal-header{padding:4px 28px 18px}}.menu-page .modal-title{font-family:var(--font-display);font-size:22px;font-weight:700;color:#2f1e19;letter-spacing:-.02em}.menu-page .modal-close{background:rgba(var(--color-brand-rgb-600),.05);border:1px solid rgba(var(--color-brand-rgb-600),.08);width:36px;height:36px}.menu-page .modal-close:hover{background:rgba(var(--color-brand-rgb-600),.1);border-color:rgba(var(--color-brand-rgb-600),.15)}.menu-page .modal-close svg{color:#2f1e19;width:18px;height:18px}.menu-page .modal-body{font-family:var(--font-family);color:#2f1e19;padding:0 20px}@media(min-width:768px){.menu-page .modal-body{padding:0 28px}}.menu-page .modal-footer{background:#fff8f4;border-top:1px solid rgba(var(--color-brand-rgb-600),.06);padding:16px 20px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}@media(min-width:768px){.menu-page .modal-footer{padding:20px 28px}}.menu-page .modal-footer .btn-primary,.menu-page .bundle-footer .btn-primary{background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);font-family:var(--font-family);font-weight:700;font-size:16px;letter-spacing:.01em;border-radius:16px;padding:16px 24px;box-shadow:0 6px 24px rgba(var(--color-brand-rgb-600),.25);transition:all .2s ease}.menu-page .modal-footer .btn-primary:hover,.menu-page .bundle-footer .btn-primary:hover{box-shadow:0 8px 32px rgba(var(--color-brand-rgb-600),.35);transform:translateY(-1px)}.menu-page .modal-footer .btn-primary:active,.menu-page .bundle-footer .btn-primary:active{transform:translateY(0);box-shadow:0 4px 16px rgba(var(--color-brand-rgb-600),.2)}.menu-page .modal-footer .btn-secondary,.menu-page .bundle-footer .btn-secondary{font-family:var(--font-family);background:var(--color-brand-soft-05);border:1px solid var(--color-brand-soft-10);color:var(--color-ink-900);border-radius:16px}.menu-page .modal-footer .btn-secondary:hover,.menu-page .bundle-footer .btn-secondary:hover{background:var(--color-brand-soft-08);border-color:var(--color-brand-soft-18)}.menu-page .qty-btn{background:var(--white);border:1.5px solid var(--color-brand-soft-12);color:var(--color-ink-900);width:44px;height:44px;border-radius:14px;font-family:var(--font-family);transition:all .15s ease}.menu-page .qty-btn:hover{border-color:rgba(var(--color-brand-rgb-600),.3);background:var(--color-brand-soft-03)}.menu-page .qty-value{font-family:var(--font-family);font-weight:700;font-size:18px;color:var(--color-ink-900);min-width:36px}.menu-page .product-detail{padding:0 0 8px}.menu-page .product-detail-image-container{border-radius:0;overflow:hidden;margin:0 -20px 24px;position:relative}@media(min-width:768px){.menu-page .product-detail-image-container{margin:0 -28px 28px}}.menu-page .product-detail-image{border-radius:0;width:100%;height:260px;object-fit:cover}@media(min-width:768px){.menu-page .product-detail-image{height:340px}}@media(min-width:1024px){.menu-page .product-detail-image{height:400px}}@media(min-width:1280px){.menu-page .product-detail-image{height:440px}}.menu-page .product-detail-favorite{background:rgba(var(--color-surface-rgb),.95);border:1px solid var(--color-brand-soft-10);box-shadow:0 4px 14px rgba(var(--color-ink-rgb),.1);width:42px;height:42px}.menu-page .product-detail-favorite:hover{background:var(--white);border-color:rgba(var(--color-brand-rgb-600),.25);color:var(--color-brand-600)}.menu-page .product-detail-favorite.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 6px 20px var(--color-brand-soft-35)}.menu-page .product-detail-name{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--color-ink-900);letter-spacing:-.02em;line-height:1.15;margin-bottom:10px}@media(min-width:768px){.menu-page .product-detail-name{font-size:28px}}.menu-page .product-detail-description{font-family:var(--font-family);font-size:15px;color:var(--color-ink-500);line-height:1.65;margin-bottom:20px}.menu-page .product-detail-price{font-family:var(--font-family);font-size:24px;font-weight:800;color:var(--color-brand-600);letter-spacing:-.01em}.menu-page .bundle-info-hint{background:rgba(var(--color-brand-rgb-600),.04);border:1px solid rgba(var(--color-brand-rgb-600),.08);color:var(--color-brand-600);font-family:var(--font-family);font-weight:600;border-radius:16px;padding:16px 20px}.menu-page .bundle-header-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:#2f1e19;letter-spacing:-.02em}.menu-page .bundle-header-price{font-family:var(--font-family);font-weight:800;color:var(--color-brand-600)}.menu-page .bundle-header-image{border-radius:16px;border:1px solid rgba(var(--color-brand-rgb-600),.06);box-shadow:0 4px 12px #2f1e1914}.menu-page .bundle-progress-bar{background:rgba(var(--color-brand-rgb-600),.06);height:5px;border-radius:10px}.menu-page .bundle-progress-fill{background:linear-gradient(90deg,var(--color-brand-600) 0%,var(--orange-500) 100%)}.menu-page .bundle-step{background:rgba(var(--color-brand-rgb-600),.05);color:#8b7e77;font-family:var(--font-family)}.menu-page .bundle-step.active{background:linear-gradient(145deg,var(--color-brand-600),var(--orange-500));color:#fff;box-shadow:0 4px 16px rgba(var(--color-brand-rgb-600),.25)}.menu-page .bundle-step.completed{background:#22c55e;color:#fff}.menu-page .bundle-step-number{font-family:var(--font-family);color:var(--color-brand-600);font-weight:700;letter-spacing:.06em}.menu-page .bundle-step-title{font-family:var(--font-display);font-weight:700;color:#2f1e19;letter-spacing:-.02em}.menu-page .bundle-item{background:#fff;border:1.5px solid rgba(var(--color-brand-rgb-600),.05);border-radius:16px;transition:all .2s ease}.menu-page .bundle-item:hover{background:#fff;border-color:rgba(var(--color-brand-rgb-600),.12);box-shadow:0 4px 16px #2f1e190d;transform:translate(2px)}.menu-page .bundle-item.selected{background:rgba(var(--color-brand-rgb-600),.03);border-color:var(--color-brand-600);box-shadow:0 4px 16px rgba(var(--color-brand-rgb-600),.1)}.menu-page .bundle-item-image{border-radius:12px}.menu-page .bundle-item-name{font-family:var(--font-family);font-weight:600;color:#2f1e19}.menu-page .bundle-item-desc{font-family:var(--font-family);color:#8b7e77}.menu-page .bundle-item-check-icon{background:linear-gradient(145deg,var(--color-brand-600),var(--orange-500))}.menu-page .bundle-summary{background:rgba(var(--color-brand-rgb-600),.02);border:1px solid rgba(var(--color-brand-rgb-600),.06);border-radius:16px}.menu-page .bundle-summary-title{font-family:var(--font-family);font-weight:600;color:#8b7e77}.menu-page .bundle-summary-label{color:#8b7e77;font-family:var(--font-family)}.menu-page .bundle-summary-value{font-family:var(--font-family);font-weight:600;color:#2f1e19}.menu-page .hours-list{gap:8px}.menu-page .hours-item{background:#fff;border:1px solid rgba(var(--color-brand-rgb-600),.05);border-radius:14px;padding:14px 18px}.menu-page .hours-item.today{background:rgba(var(--color-brand-rgb-600),.03);border:1.5px solid var(--color-brand-600);box-shadow:0 4px 16px rgba(var(--color-brand-rgb-600),.08)}.menu-page .hours-day{font-family:var(--font-family);font-weight:600;color:#2f1e19}.menu-page .hours-item.today .hours-day{color:var(--color-brand-600);font-weight:700}.menu-page .hours-time{font-family:var(--font-family);color:#8b7e77}.menu-page .hours-item.today .hours-time{color:var(--color-brand-600);font-weight:600}.menu-page .hours-item.closed .hours-day{color:#2f1e1959}.menu-page .hours-item.closed .hours-time{color:#2f1e1959;font-style:italic}.menu-page .hours-note{background:var(--color-brand-soft-03);border:1px solid var(--color-brand-soft-05);border-radius:14px}.menu-page .hours-note p{font-family:var(--font-family);color:var(--color-ink-500)}.menu-page .cart-item{background:var(--white);border:1px solid var(--color-brand-soft-05);border-radius:16px}.menu-page .cart-item:hover{border-color:var(--color-brand-soft-10);box-shadow:0 4px 16px rgba(var(--color-ink-rgb),.05)}.menu-page .cart-item-image{border-radius:12px}.menu-page .cart-item-name{font-family:var(--font-family);font-weight:600;color:var(--color-ink-900)}.menu-page .cart-item-price{font-family:var(--font-family);font-weight:700;color:var(--color-brand-600)}.menu-page .cart-item-bundle-tag{font-family:var(--font-family);background:rgba(var(--color-brand-rgb-600),.04);color:var(--color-ink-500);border-radius:8px}.menu-page .cart-item-qty{display:inline-flex;align-items:center;gap:0;padding:4px 6px;background:var(--white);border:none;border-radius:999px;box-shadow:0 4px 16px #0003}.menu-page .cart-item-qty .qty-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--ink);box-shadow:none;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.menu-page .cart-item-qty .qty-btn:hover:not(:disabled){background:var(--copper);color:var(--white)}.menu-page .cart-item-qty .qty-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.menu-page .cart-item-qty .qty-value{min-width:28px;text-align:center;font-size:15px;font-weight:700;color:var(--ink)}.menu-page .cart-summary{background:rgba(var(--color-brand-rgb-600),.02);border:1px solid rgba(var(--color-brand-rgb-600),.06);border-radius:16px}.menu-page .cart-summary-label{font-family:var(--font-family);color:var(--color-ink-500)}.menu-page .cart-summary-value{font-family:var(--font-family);font-weight:600;color:var(--color-ink-900)}.menu-page .cart-summary-row.total .cart-summary-value{font-weight:800;color:var(--color-brand-600);font-size:18px}.menu-page .modal-body .empty-state{text-align:center;padding:48px 20px}.menu-page .modal-body .empty-state-icon{color:rgba(var(--color-brand-rgb-600),.15)}.menu-page .modal-body .empty-state-title{font-family:var(--font-display);color:#2f1e19}.menu-page .modal-body .empty-state-text{font-family:var(--font-family);color:#8b7e77}.menu-page .option-item{background:#fff;border:2px solid rgba(var(--color-brand-rgb-600),.05);border-radius:14px}.menu-page .option-item:hover{background:rgba(var(--color-brand-rgb-600),.02);border-color:rgba(var(--color-brand-rgb-600),.1)}.menu-page .option-item.selected{background:rgba(var(--color-brand-rgb-600),.03);border-color:var(--color-brand-600)}.menu-page .option-radio{border-color:rgba(var(--color-brand-rgb-600),.2)}.menu-page .option-item.selected .option-radio{border-color:var(--color-brand-600)}.menu-page .option-item.selected .option-radio:after{background:var(--color-brand-600)}.menu-page .option-label{font-family:var(--font-family);color:#2f1e19}.menu-page .option-price{font-family:var(--font-family);color:#8b7e77}.menu-page .option-item.selected .option-price{color:var(--color-brand-600)}.menu-page .modal-body .add-stepper,.menu-page .modal-footer .add-stepper{background:var(--white);border:none;border-radius:999px;box-shadow:0 4px 16px #0003;display:inline-flex;align-items:center;gap:0;padding:4px 6px}.menu-page .modal-body .stepper-btn,.menu-page .modal-footer .stepper-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.menu-page .modal-body .stepper-btn:hover,.menu-page .modal-footer .stepper-btn:hover{background:var(--copper);color:var(--white)}.menu-page .modal-body .stepper-btn:disabled,.menu-page .modal-footer .stepper-btn:disabled{opacity:.45;cursor:not-allowed}.menu-page .modal-body .stepper-btn:hover:disabled,.menu-page .modal-footer .stepper-btn:hover:disabled{background:transparent;color:var(--ink)}.menu-page .modal-body .stepper-qty,.menu-page .modal-footer .stepper-qty{font-family:var(--font-family);font-weight:700;color:var(--ink);min-width:28px;text-align:center;font-size:15px}.menu-page .product-detail-stepper-wrap{display:flex;justify-content:center;margin-top:var(--space-5)}.menu-page .product-detail-stepper{padding:6px 8px}.menu-page .product-detail-stepper .stepper-btn{width:40px;height:40px}.menu-page .product-detail-stepper .stepper-qty{min-width:34px;font-size:18px}.ui-footer--editorial h1,.ui-footer--editorial h2,.ui-footer--editorial h3,.ui-footer--editorial h4,.ui-footer--editorial h5,.ui-footer--editorial .ui-footer__column-title{color:var(--neutral-0, #fff)!important}.pf{min-height:100%;background:#f7f5f2}.pf-layout{display:grid;grid-template-columns:1fr;gap:0;min-height:100%}@media(min-width:900px){.pf-layout{grid-template-columns:380px 1fr;align-items:start;min-height:calc(100vh - 60px)}}.pf-left{padding:24px 20px 32px;display:flex;flex-direction:column;gap:16px}@media(min-width:900px){.pf-left{position:sticky;top:0;max-height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:none;border-right:1px solid #EBEBEB;background:#fff;padding:28px 24px 40px}.pf-left::-webkit-scrollbar{display:none}}.pf-right{padding:24px 0 40px;overflow-y:auto}@media(min-width:900px){.pf-right{padding:28px 0 40px;max-height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:none;background:#f7f5f2}.pf-right::-webkit-scrollbar{display:none}}.pf-card{position:relative;border-radius:22px;background:linear-gradient(145deg,#0d1117,#1a1f2e,#0d1117);color:#fff;padding:22px 22px 20px;overflow:hidden;box-shadow:0 24px 48px #00000040,0 8px 16px #00000026,inset 0 1px #ffffff14;display:flex;flex-direction:column;gap:14px;min-height:240px}.pf-card-shine{position:absolute;top:0;left:0;right:0;height:55%;background:linear-gradient(180deg,rgba(255,255,255,.07) 0%,transparent 100%);border-radius:22px 22px 0 0;pointer-events:none}.pf-card:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 0%,rgba(var(--color-brand-rgb-500),.18) 0%,transparent 60%),radial-gradient(ellipse at 20% 100%,rgba(91,134,229,.12) 0%,transparent 50%);pointer-events:none}.pf-card-top{display:flex;align-items:center;justify-content:space-between;position:relative}.pf-card-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--orange-500),#FF8C42);display:flex;align-items:center;justify-content:center;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;color:#fff;overflow:hidden;border:2px solid rgba(255,255,255,.15);flex-shrink:0}.pf-card-avatar img{width:100%;height:100%;object-fit:cover}.pf-card-brand{display:flex;align-items:baseline;gap:3px}.pf-card-brand-hari{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:800;letter-spacing:-.04em;color:#fff}.pf-card-brand-eat{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:400;color:#ffffff80;letter-spacing:0}.pf-card-points{position:relative;display:flex;flex-direction:column;gap:2px}.pf-card-pts-num{font-family:Space Grotesk,sans-serif;font-size:42px;font-weight:800;letter-spacing:-.04em;line-height:1;color:#fff}.pf-card-pts-label{font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500;color:#ffffff80;text-transform:uppercase;letter-spacing:.08em}.pf-card-level{position:relative;display:flex;flex-direction:column;gap:7px}.pf-card-level-row{display:flex;align-items:center;gap:10px}.pf-card-level-badge{font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pf-card-level-next{font-size:11px;color:#ffffff73;font-weight:500}.pf-card-level-bar{height:3px;background:#ffffff1f;border-radius:99px;overflow:hidden}.pf-card-level-fill{height:100%;border-radius:99px;transition:width 1.2s cubic-bezier(.4,0,.2,1);opacity:.85}.pf-card-foot{position:relative;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.pf-card-name{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;letter-spacing:.1em;color:#fff}.pf-card-email{font-size:11px;color:#fff6;margin-top:2px}.pf-metrics{display:flex;align-items:center;background:#fff;border-radius:16px;border:1px solid #EBEBEB;overflow:hidden}.pf-metric{flex:1;display:flex;flex-direction:column;align-items:center;padding:14px 8px;gap:3px}.pf-metric-sep{width:1px;height:32px;background:#ebebeb;flex-shrink:0}.pf-metric-val{font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:800;color:#1a1a1a;letter-spacing:-.03em;line-height:1}.pf-metric-key{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8c8c8c}.pf-tabs{display:flex;gap:4px;background:#f0efed;padding:4px;border-radius:14px}.pf-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 10px;border:none;background:transparent;border-radius:10px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:500;color:#8c8c8c;cursor:pointer;transition:all .2s;white-space:nowrap;position:relative}.pf-tab--on{background:#fff;color:#1a1a1a;font-weight:600;box-shadow:0 1px 6px #00000014}.pf-tab svg{flex-shrink:0}.pf-tab-badge{background:var(--orange-500);color:#fff;font-size:9px;font-weight:700;min-width:16px;height:16px;border-radius:99px;display:flex;align-items:center;justify-content:center;padding:0 4px}.pf-tab-content{flex:1}.pf-settings{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:14px;border:1px solid #EBEBEB;overflow:hidden}.pf-setting-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #F5F5F5}.pf-setting-row:last-of-type{border-bottom:none}.pf-setting-key{font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:600;color:#8c8c8c}.pf-setting-val{font-family:Space Grotesk,sans-serif;font-size:13px;color:#1a1a1a}.pf-logout{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:none;background:none;color:var(--orange-500);font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:600;cursor:pointer;border-top:1px solid #F5F5F5;text-align:left;transition:background .1s}.pf-logout:hover{background:#fff5ef}.pf-right .wallet{padding:0 0 48px}.pf-right .wallet-header{padding:0 24px 20px}.pf-right .wallet-title{font-size:22px}.pf-right .wallet-deck{margin:0 24px}.pf-right .wallet-actions{padding:16px 24px 0}.pf-right .wallet-palette{margin:12px 24px 0}.pf-right .wallet-card{height:220px}@media(max-width:899px){.pf-right{border-top:8px solid #F0EFED;padding:24px 0 40px}.pf-right .wallet-deck{margin:0 16px}.pf-right .wallet-header{padding:0 16px 16px}.pf-right .wallet-actions{padding:12px 16px 0}.pf-right .wallet-palette{margin:10px 16px 0}}.pwa-install-overlay{position:fixed;inset:0;z-index:10000;background:#24150f9e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;animation:pwa-fade-in .28s ease-out}@media(min-width:640px){.pwa-install-overlay{align-items:center;padding:24px}}@keyframes pwa-fade-in{0%{opacity:0}to{opacity:1}}.pwa-install-sheet{position:relative;width:100%;max-width:480px;background:#fff;border-radius:32px 32px 0 0;padding:14px 24px 32px;max-height:94vh;overflow-y:auto;box-shadow:0 -12px 48px #24150f38;animation:pwa-slide-up .4s cubic-bezier(.2,.9,.3,1);display:flex;flex-direction:column;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}@media(min-width:640px){.pwa-install-sheet{border-radius:32px;padding:40px 36px;max-height:90vh;box-shadow:0 32px 80px #24150f5c;animation:pwa-zoom-in .32s cubic-bezier(.2,.9,.3,1)}}@keyframes pwa-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pwa-zoom-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.pwa-install-handle{width:44px;height:4px;background:#24150f2e;border-radius:100px;margin:0 auto 16px}@media(min-width:640px){.pwa-install-handle{display:none}}.pwa-install-close{position:absolute;top:18px;right:18px;width:36px;height:36px;border-radius:50%;background:#24150f0f;border:none;color:#2f1e19;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s;z-index:10}.pwa-install-close:hover{background:#24150f1f}.pwa-install-close:active{transform:scale(.94)}@media(min-width:640px){.pwa-install-close{top:24px;right:24px}}.pwa-install-progress{display:flex;justify-content:center;gap:8px;margin:0 0 20px;padding-top:4px}.pwa-install-progress-dot{width:8px;height:8px;border-radius:50%;background:#24150f24;transition:all .3s cubic-bezier(.2,.9,.3,1)}.pwa-install-progress-dot.is-active{background:var(--orange-500)}.pwa-install-progress-dot.is-current{width:28px;border-radius:100px;box-shadow:0 2px 6px rgba(var(--color-brand-rgb-500),.32)}.pwa-install-step-wrapper{flex:1;display:flex;flex-direction:column;animation:pwa-step-in .35s cubic-bezier(.2,.9,.3,1)}@keyframes pwa-step-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.pwa-screen{text-align:center;padding:0 4px}.pwa-step-label{display:inline-block;background:rgba(var(--color-brand-rgb-500),.1);color:var(--orange-500);font-family:Space Grotesk,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;padding:5px 14px;border-radius:100px;margin-bottom:14px}.pwa-screen-illustration{margin:4px auto 24px;display:flex;justify-content:center}.pwa-screen-title{font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:700;color:#2f1e19;margin:0 0 12px;line-height:1.22;letter-spacing:-.5px}.pwa-screen-title--small{font-size:22px}@media(min-width:640px){.pwa-screen-title{font-size:30px}.pwa-screen-title--small{font-size:26px}}.pwa-screen-text{font-family:Space Grotesk,system-ui,sans-serif;font-size:16px;color:#5a453b;line-height:1.6;margin:0 auto 22px;max-width:380px}@media(min-width:640px){.pwa-screen-text{font-size:17px}}.pwa-screen--why .pwa-screen-illustration{margin-bottom:28px}.pwa-mini-phones{display:flex;align-items:center;gap:14px}.pwa-mini-phone{width:78px;height:116px;background:linear-gradient(155deg,#2f1e19,#4a2e22);border-radius:18px;padding:8px;box-shadow:0 8px 24px #24150f2e,inset 0 0 0 1.5px #ffffff14;position:relative}.pwa-mini-phone:before{content:"";position:absolute;top:4px;left:50%;transform:translate(-50%);width:24px;height:3px;background:#000;border-radius:100px}.pwa-mini-phone-screen{width:100%;height:100%;background:linear-gradient(160deg,#f7f2ec,#eee4da);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.pwa-mini-phone--before{opacity:.78;transform:scale(.94)}.pwa-mini-search{font-size:26px;filter:grayscale(.4)}.pwa-mini-search-text{font-family:Space Grotesk,sans-serif;font-size:9px;color:#8b7e77;font-weight:600}.pwa-mini-phone--after{animation:pwa-mini-glow 2.4s ease-in-out infinite}@keyframes pwa-mini-glow{0%,to{box-shadow:0 8px 24px rgba(var(--color-brand-rgb-500),.22),inset 0 0 0 1.5px #ffffff14}50%{box-shadow:0 12px 32px rgba(var(--color-brand-rgb-500),.42),inset 0 0 0 1.5px #ffffff1f}}.pwa-mini-app-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.4)}.pwa-mini-app-icon img{width:24px;height:24px;filter:brightness(0) invert(1)}.pwa-mini-app-label{font-family:Space Grotesk,sans-serif;font-size:9px;color:#2f1e19;font-weight:700;margin-top:2px}.pwa-mini-arrow{width:32px;height:32px;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500);display:flex;align-items:center;justify-content:center;flex-shrink:0}.pwa-mini-arrow svg{width:16px;height:16px}.pwa-reassurance{display:flex;flex-direction:column;gap:8px;margin:4px auto 6px;max-width:320px;text-align:left}.pwa-reassurance-item{display:flex;align-items:center;gap:12px;padding:11px 14px;background:#f7f2ec;border-radius:12px;font-family:Space Grotesk,system-ui,sans-serif;font-size:14px;color:#2f1e19;font-weight:500}.pwa-reassurance-check{flex-shrink:0;width:22px;height:22px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.safari-mockup{position:relative;width:100%;max-width:320px;margin:0 auto 22px;background:#fff;border-radius:22px;box-shadow:0 12px 32px #24150f29,0 0 0 1.5px #24150f0f;overflow:hidden}.safari-mockup-page{background:#f7f7f8;padding:20px 18px 16px;display:flex;flex-direction:column;gap:8px}.safari-mockup-page-line{height:7px;background:#24150f1a;border-radius:100px}.safari-mockup-page-card{margin-top:8px;background:#fff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px;box-shadow:0 2px 8px #24150f0f;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:700;color:#2f1e19}.safari-mockup-page-card img{width:26px;height:26px;border-radius:6px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);padding:4px;filter:brightness(0) invert(1)}.safari-mockup-toolbar{display:flex;justify-content:space-around;align-items:center;padding:12px 16px 14px;background:#f7f7f8eb;backdrop-filter:blur(20px);border-top:.5px solid rgba(36,21,15,.1)}.safari-mockup-btn{width:36px;height:36px;border:none;background:transparent;color:#007aff;display:flex;align-items:center;justify-content:center;position:relative;cursor:default}.safari-mockup-btn svg{width:22px;height:22px}.safari-mockup-share.is-highlighted{background:#007aff;color:#fff;border-radius:12px;width:42px;height:42px;margin:-3px 0;box-shadow:0 4px 14px #007aff80;animation:pwa-pulse-scale 1.6s ease-in-out infinite}@keyframes pwa-pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.safari-mockup-pulse{position:absolute;inset:-6px;border-radius:16px;background:#007aff66;animation:pwa-pulse-ring 1.6s ease-out infinite;pointer-events:none}@keyframes pwa-pulse-ring{0%{transform:scale(.9);opacity:1}to{transform:scale(1.6);opacity:0}}.safari-mockup-pointer{position:absolute;bottom:-38px;left:50%;transform:translate(0);width:28px;height:28px;color:var(--orange-500);animation:pwa-bounce-down 1.4s ease-in-out infinite}.safari-mockup-pointer svg{width:100%;height:100%}@keyframes pwa-bounce-down{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.share-sheet-mockup{position:relative;width:100%;max-width:320px;margin:0 auto 22px;background:#f2f2f7;border-radius:18px;padding:14px;box-shadow:0 12px 32px #24150f29,0 0 0 1.5px #24150f0f}.share-sheet-header{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border-radius:12px;margin-bottom:12px}.share-sheet-favicon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);padding:6px;display:flex;align-items:center;justify-content:center}.share-sheet-favicon img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.share-sheet-info{flex:1;text-align:left}.share-sheet-title{font-family:-apple-system,Space Grotesk,sans-serif;font-size:14px;font-weight:600;color:#000}.share-sheet-url{font-family:-apple-system,Space Grotesk,sans-serif;font-size:11px;color:#8e8e93}.share-sheet-list{background:#fff;border-radius:12px;overflow:hidden}.share-sheet-item{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;font-family:-apple-system,Space Grotesk,sans-serif;font-size:14px;color:#000;border-top:.5px solid rgba(36,21,15,.08);position:relative}.share-sheet-item:first-child{border-top:none}.share-sheet-item-label{font-weight:500;flex:1;text-align:left}.share-sheet-item-icon{color:#8e8e93;display:flex;align-items:center;justify-content:center;margin-left:12px;order:2}.share-sheet-item.is-highlighted{background:linear-gradient(90deg,rgba(var(--color-brand-rgb-500),.1),rgba(var(--color-brand-rgb-500),.06));position:relative}.share-sheet-item.is-highlighted .share-sheet-item-label{color:var(--orange-500);font-weight:700}.share-sheet-item.is-highlighted .share-sheet-item-icon{color:var(--orange-500)}.share-sheet-pulse{position:absolute;inset:4px;border:2px solid var(--orange-500);border-radius:8px;animation:pwa-border-pulse 1.6s ease-out infinite;pointer-events:none}@keyframes pwa-border-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.02)}}.share-sheet-pointer{position:absolute;top:50%;right:-34px;transform:translateY(-30%);width:26px;height:26px;color:var(--orange-500);animation:pwa-bounce-right 1.4s ease-in-out infinite}@keyframes pwa-bounce-right{0%,to{transform:translateY(-30%) translate(0)}50%{transform:translateY(-30%) translate(-6px)}}@media(max-width:380px){.share-sheet-pointer{display:none}}.confirm-sheet-mockup{position:relative;width:100%;max-width:320px;margin:0 auto 22px;background:#f2f2f7;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px #24150f29,0 0 0 1.5px #24150f0f}.confirm-sheet-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;border-bottom:.5px solid rgba(36,21,15,.1);font-family:-apple-system,Space Grotesk,sans-serif;font-size:14px}.confirm-sheet-cancel{color:#007aff;font-weight:500}.confirm-sheet-title{font-weight:700;color:#000;font-size:14px}.confirm-sheet-add{position:relative;font-weight:700;color:#007aff;padding:6px 12px;border-radius:8px}.confirm-sheet-add.is-highlighted{background:#007aff;color:#fff;box-shadow:0 4px 12px #007aff66;animation:pwa-pulse-scale 1.6s ease-in-out infinite}.confirm-sheet-pulse{position:absolute;inset:-4px;border-radius:12px;background:#007aff4d;animation:pwa-pulse-ring 1.6s ease-out infinite;pointer-events:none}.confirm-sheet-card{display:flex;align-items:center;gap:12px;padding:16px;background:#fff}.confirm-sheet-icon{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);padding:9px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.32)}.confirm-sheet-icon img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.confirm-sheet-card-info{flex:1;text-align:left}.confirm-sheet-input{width:100%;border:none;background:transparent;font-family:-apple-system,Space Grotesk,sans-serif;font-size:14px;font-weight:600;color:#000;padding:4px 0;outline:none;border-bottom:.5px solid rgba(36,21,15,.15);margin-bottom:4px}.confirm-sheet-card-url{font-family:-apple-system,Space Grotesk,sans-serif;font-size:12px;color:#8e8e93}.confirm-sheet-footer{padding:12px 16px 14px;background:#f2f2f7;font-family:-apple-system,Space Grotesk,sans-serif;font-size:11px;color:#8e8e93;text-align:left;line-height:1.5}.confirm-sheet-pointer{position:absolute;top:14px;right:-36px;width:26px;height:26px;color:var(--orange-500);animation:pwa-bounce-up 1.4s ease-in-out infinite}@keyframes pwa-bounce-up{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(max-width:380px){.confirm-sheet-pointer{display:none}}.chrome-mockup{width:100%;max-width:280px;margin:0 auto 22px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 32px #24150f29,0 0 0 1.5px #24150f0f}.chrome-mockup-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f1f3f4;border-bottom:1px solid rgba(36,21,15,.06)}.chrome-mockup-url{font-family:Space Grotesk,sans-serif;font-size:12px;color:#5f6368;font-weight:500}.chrome-mockup-dots{display:flex;flex-direction:column;gap:3px;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;position:relative}.chrome-mockup-dots span{display:block;width:4px;height:4px;background:#5f6368;border-radius:50%}.chrome-mockup-dots.is-highlighted{background:rgba(var(--color-brand-rgb-500),.16)}.chrome-mockup-dots.is-highlighted span{background:var(--orange-500)}.chrome-mockup-pulse{position:absolute;inset:-4px;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.3);animation:pwa-pulse-ring 1.6s ease-out infinite;pointer-events:none}.chrome-mockup-menu{background:#fff;padding:6px 0}.chrome-mockup-menu-item{display:flex;align-items:center;gap:12px;padding:11px 16px;font-family:Space Grotesk,sans-serif;font-size:13px;color:#202124;font-weight:500;position:relative;text-align:left}.chrome-mockup-menu-item.is-highlighted{background:linear-gradient(90deg,rgba(var(--color-brand-rgb-500),.1),rgba(var(--color-brand-rgb-500),.06));color:var(--orange-500);font-weight:700}.chrome-mockup-menu-pulse{position:absolute;inset:2px;border:2px solid var(--orange-500);border-radius:6px;animation:pwa-border-pulse 1.6s ease-out infinite;pointer-events:none}.pwa-big-tap{position:relative;width:120px;height:120px;margin:0 auto}.pwa-big-tap-pulse{position:absolute;inset:0;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.32);animation:pwa-big-pulse 2s ease-out infinite}@keyframes pwa-big-pulse{0%{transform:scale(.8);opacity:1}to{transform:scale(1.4);opacity:0}}.pwa-big-tap-button{position:relative;width:100%;height:100%;border:none;border-radius:50%;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 32px rgba(var(--color-brand-rgb-500),.42),inset 0 2px #fff3;transition:transform .12s}.pwa-big-tap-button:hover{transform:scale(1.05)}.pwa-big-tap-button:active{transform:scale(.96)}.pwa-big-tap-button:disabled{opacity:.7;cursor:not-allowed}.pwa-callout{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;background:rgba(var(--color-brand-rgb-500),.08);border-radius:100px;font-family:Space Grotesk,sans-serif;font-size:13px;color:#7a3e2b;margin:4px auto;max-width:320px}.pwa-callout-icon{font-size:18px}.pwa-info-box{margin:12px auto 0;padding:14px 18px;background:#007aff14;border-left:3px solid #007AFF;border-radius:0 12px 12px 0;font-family:Space Grotesk,sans-serif;font-size:13px;color:#2f1e19;text-align:left;line-height:1.5;max-width:380px}.pwa-screen--done{animation:pwa-celebration .6s cubic-bezier(.2,.9,.3,1.4)}@keyframes pwa-celebration{0%{transform:scale(.92);opacity:0}60%{transform:scale(1.04)}to{transform:scale(1);opacity:1}}.pwa-done-illustration{margin:0 auto 22px;display:flex;justify-content:center}.pwa-done-phone{width:156px;height:220px;background:linear-gradient(155deg,#2f1e19,#4a2e22);border-radius:26px;padding:10px;box-shadow:0 16px 40px rgba(var(--color-brand-rgb-500),.28),0 6px 16px #24150f2e,inset 0 0 0 2px #ffffff1a;position:relative}.pwa-done-phone:before{content:"";position:absolute;top:6px;left:50%;transform:translate(-50%);width:36px;height:4px;background:#000;border-radius:100px;z-index:1}.pwa-done-phone-screen{width:100%;height:100%;background:linear-gradient(160deg,#f7f2ec,#eee4da);border-radius:18px;padding:18px 12px 12px;position:relative;overflow:hidden}.pwa-done-phone-screen:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(var(--color-brand-rgb-500),.1) 0%,transparent 60%);pointer-events:none}.pwa-done-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative;z-index:1}.pwa-done-icon{aspect-ratio:1;border-radius:11px;display:flex;align-items:center;justify-content:center;position:relative;flex-direction:column}.pwa-done-icon--ghost{background:#24150f0f}.pwa-done-icon--hari{background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);box-shadow:0 6px 16px rgba(var(--color-brand-rgb-500),.5);animation:pwa-icon-bounce 2s ease-in-out infinite}@keyframes pwa-icon-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.pwa-done-icon--hari img{width:60%;height:60%;object-fit:contain;filter:brightness(0) invert(1)}.pwa-done-icon-label{position:absolute;bottom:-16px;left:50%;transform:translate(-50%);font-family:Space Grotesk,sans-serif;font-size:8px;font-weight:700;color:#2f1e19;white-space:nowrap}.pwa-done-icon-glow{position:absolute;inset:-8px;border-radius:18px;background:radial-gradient(circle,rgba(var(--color-brand-rgb-500),.5) 0%,transparent 70%);animation:pwa-glow-pulse 2s ease-out infinite;z-index:-1}@keyframes pwa-glow-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.pwa-tip-box{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg,#fff8f0,#fff4ec);border:1.5px solid rgba(var(--color-brand-rgb-500),.18);border-radius:16px;padding:14px 16px;margin:12px auto 0;text-align:left;max-width:400px}.pwa-tip-icon{flex-shrink:0;font-size:22px;line-height:1}.pwa-tip-box strong{display:block;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;color:#2f1e19;margin-bottom:2px}.pwa-tip-box p{font-family:Space Grotesk,sans-serif;font-size:13px;color:#5a453b;line-height:1.5;margin:0}.pwa-other-icon{width:80px;height:80px;border-radius:50%;background:#007aff1a;color:#007aff;display:flex;align-items:center;justify-content:center;margin:0 auto}.pwa-other-icon svg{width:40px;height:40px}.pwa-install-nav{display:flex;flex-direction:column;gap:10px;margin-top:22px;padding-top:4px}.pwa-install-btn-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:17px 24px;border:none;border-radius:16px;font-family:Space Grotesk,system-ui,sans-serif;font-size:16px;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);color:#fff;box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.38),0 2px 6px rgba(var(--color-brand-rgb-500),.18);transition:transform .12s,box-shadow .18s;min-height:56px}.pwa-install-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 28px rgba(var(--color-brand-rgb-500),.46),0 4px 10px rgba(var(--color-brand-rgb-500),.22)}.pwa-install-btn-primary:active:not(:disabled){transform:translateY(0)}.pwa-install-btn-primary:disabled{opacity:.7;cursor:not-allowed}.pwa-install-btn-back{align-self:center;display:flex;align-items:center;gap:6px;background:transparent;border:none;color:#7a3e2b;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:600;padding:10px 16px;border-radius:12px;cursor:pointer}.pwa-install-btn-back:hover{background:#24150f0f}.pwa-install-spinner{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:pwa-spin .8s linear infinite}@keyframes pwa-spin{to{transform:rotate(360deg)}}.smart-install-banner{position:fixed;bottom:16px;left:16px;right:16px;z-index:9000;background:#fff;border-radius:18px;padding:14px 16px;box-shadow:0 12px 32px #24150f2e,0 0 0 1.5px #24150f0f;display:flex;align-items:center;gap:14px;animation:pwa-banner-up .5s cubic-bezier(.2,.9,.3,1.2);max-width:460px;margin:0 auto}@keyframes pwa-banner-up{0%{transform:translateY(120%);opacity:0}to{transform:translateY(0);opacity:1}}.smart-install-banner-icon{flex-shrink:0;width:48px;height:48px;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.36);position:relative}.smart-install-banner-icon img{width:32px;height:32px;filter:brightness(0) invert(1)}.smart-install-banner-icon:after{content:"";position:absolute;top:-2px;right:-2px;width:12px;height:12px;background:#4caf50;border-radius:50%;border:2px solid #FFFFFF}.smart-install-banner-text{flex:1;min-width:0}.smart-install-banner-title{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;color:#2f1e19;line-height:1.25;margin-bottom:2px}.smart-install-banner-subtitle{font-family:Space Grotesk,sans-serif;font-size:12px;color:#7a3e2b;line-height:1.4}.smart-install-banner-cta{flex-shrink:0;background:linear-gradient(135deg,var(--orange-500) 0%,var(--color-brand-600) 100%);color:#fff;border:none;padding:10px 16px;border-radius:100px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.32);transition:transform .12s;white-space:nowrap}.smart-install-banner-cta:hover{transform:scale(1.04)}.smart-install-banner-close{flex-shrink:0;width:28px;height:28px;background:#24150f0f;border:none;border-radius:50%;color:#7a3e2b;cursor:pointer;display:flex;align-items:center;justify-content:center}.smart-install-banner-close:hover{background:#24150f1f}@media(max-width:380px){.smart-install-banner{padding:12px 14px;gap:10px}.smart-install-banner-icon{width:42px;height:42px}.smart-install-banner-icon img{width:26px;height:26px}.smart-install-banner-cta{padding:9px 12px;font-size:12px}}@media(prefers-color-scheme:dark){.pwa-install-sheet,.smart-install-banner{background:#fff;color:#2f1e19}}@media(prefers-reduced-motion:reduce){.pwa-install-sheet,.pwa-install-overlay,.pwa-install-step-wrapper,.pwa-mini-phone--after,.pwa-done-icon--hari,.pwa-done-icon-glow,.pwa-big-tap-pulse,.safari-mockup-share.is-highlighted,.safari-mockup-pulse,.safari-mockup-pointer,.share-sheet-pulse,.share-sheet-pointer,.confirm-sheet-add.is-highlighted,.confirm-sheet-pulse,.confirm-sheet-pointer,.chrome-mockup-pulse,.chrome-mockup-menu-pulse,.smart-install-banner{animation:none!important}}.account-loyalty-entry{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;margin:14px 0;background:linear-gradient(135deg,var(--primary, var(--color-brand-500, var(--orange-500))) 0%,var(--color-brand-450, #F06D1B) 100%);border:none;border-radius:16px;cursor:pointer;color:#fff;box-shadow:0 6px 18px rgba(var(--color-brand-rgb-500, 232, 93, 4),.25);transition:transform .15s ease,box-shadow .15s ease;font-family:inherit}.account-loyalty-entry:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--color-brand-rgb-500, 232, 93, 4),.32)}.account-loyalty-entry__icon{width:44px;height:44px;border-radius:12px;background:#fff3;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.account-loyalty-entry__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left}.account-loyalty-entry__label{font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.88}.account-loyalty-entry__title{font-family:var(--font-display, "Fraunces"),serif;font-size:18px;font-weight:700;line-height:1.15}.account-loyalty-entry__hint{font-size:11px;opacity:.88;margin-top:1px}.account-loyalty-entry__arrow{font-size:22px;opacity:.85;flex-shrink:0}.points-shop{position:relative;padding-bottom:40px;background:var(--color-paper-100, #F7F2EC);flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.modal-sheet{transition:max-width .45s cubic-bezier(.22,.61,.36,1),max-height .45s cubic-bezier(.22,.61,.36,1),border-radius .35s ease}.modal-sheet--expanded{max-width:100%!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important;height:100vh;height:100dvh}@media(min-width:768px){.modal-sheet--expanded{max-width:100%!important;max-height:100vh!important;max-height:100dvh!important;width:100vw}}.points-shop.is-expanded .points-shop__grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;padding:14px 28px 4px}.points-shop.is-expanded .points-shop__hero{padding:78px 32px 34px}.points-shop.is-expanded .points-shop__balance-num{font-size:72px}.points-shop.is-expanded .points-shop__resto-strip,.points-shop.is-expanded .points-shop__tabs,.points-shop.is-expanded .points-shop__history{padding-left:28px;padding-right:28px}.points-shop--loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;gap:14px;color:var(--color-ink-500, #8B7E77);font-size:13px}.points-shop__spinner{width:28px;height:28px;border:2.5px solid rgba(0,0,0,.08);border-top-color:var(--primary, var(--color-brand-500, var(--orange-500)));border-radius:50%;animation:ps-spin .8s linear infinite}@keyframes ps-spin{to{transform:rotate(360deg)}}.points-shop__hero{position:relative;overflow:hidden;padding:68px 24px 28px;color:#fff;margin:0;transition:padding .35s cubic-bezier(.22,.61,.36,1)}.points-shop__hero-controls{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;z-index:3;pointer-events:none}.points-shop__hero-controls>.points-shop__hero-btn,.points-shop__hero-controls-right>.points-shop__hero-btn{pointer-events:auto}.points-shop__hero-controls-right{display:flex;gap:8px}.points-shop__hero-btn{width:38px;height:38px;border-radius:50%;background:#ffffff38;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.points-shop__hero-btn:hover{background:#ffffff59;transform:scale(1.05)}.points-shop__hero-btn:active{transform:scale(.95)}.points-shop__hero-deco{position:absolute;border-radius:50%;background:#ffffff24;pointer-events:none}.points-shop__hero-deco--1{top:-60px;right:-50px;width:180px;height:180px}.points-shop__hero-deco--2{bottom:-70px;left:-30px;width:140px;height:140px;background:#ffffff14}.points-shop__tier{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 10px;background:#ffffff2e;backdrop-filter:blur(10px);border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.points-shop__tier-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #ffffff59}.points-shop__balance{position:relative;display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.points-shop__balance-num{font-family:var(--font-display, "Fraunces"),serif;font-size:56px;font-weight:700;line-height:1;letter-spacing:-.02em}.points-shop__balance-unit{font-size:15px;font-weight:500;opacity:.9}.points-shop__balance-value{position:relative;font-size:13px;opacity:.92;margin-bottom:18px}.points-shop__balance-value b{font-weight:700}.points-shop__progress{position:relative}.points-shop__progress-labels{display:flex;justify-content:space-between;font-size:11px;font-weight:600;opacity:.92;margin-bottom:7px}.points-shop__progress-bar{height:6px;background:#ffffff38;border-radius:99px;overflow:hidden}.points-shop__progress-fill{height:100%;background:#fff;border-radius:99px;transition:width .6s cubic-bezier(.22,.61,.36,1)}.points-shop__resto-strip{display:flex;gap:8px;padding:16px 20px 4px;overflow-x:auto;scrollbar-width:none}.points-shop__resto-strip::-webkit-scrollbar{display:none}.points-shop__resto-chip{flex:0 0 auto;display:flex;flex-direction:column;gap:3px;padding:10px 14px;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:12px;min-width:130px}.points-shop__resto-name{font-size:11px;color:var(--color-ink-500, #8B7E77);font-weight:500}.points-shop__resto-pts{font-family:var(--font-display, "Fraunces"),serif;font-size:17px;font-weight:700;color:var(--color-ink-900, #2F1E19)}.points-shop__tabs{display:flex;gap:8px;padding:20px 20px 10px;overflow-x:auto;scrollbar-width:none}.points-shop__tabs::-webkit-scrollbar{display:none}.points-shop__tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:9px 16px;background:#fff;border:1px solid rgba(47,30,25,.08);border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:13px;font-weight:600;color:var(--color-ink-900, #2F1E19);cursor:pointer;white-space:nowrap;transition:all .18s ease}.points-shop__tab:hover:not(.is-active){border-color:#2f1e192e;transform:translateY(-1px)}.points-shop__tab.is-active{background:var(--primary, var(--color-brand-500, var(--orange-500)));border-color:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500, 232, 93, 4),.28)}.points-shop__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;padding:10px 20px 4px}@media(min-width:640px){.points-shop__grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}}.points-shop__empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:50px 20px;color:var(--color-ink-500, #8B7E77);font-size:13px;text-align:center}.points-shop__empty svg{opacity:.35}.points-shop__card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.points-shop__card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #2f1e191a}.points-shop__card:active{transform:translateY(-1px)}.points-shop__card.is-locked{opacity:.7}.points-shop__card.is-out{opacity:.5}.points-shop__card-media{position:relative;aspect-ratio:1 / 1;background:linear-gradient(135deg,var(--color-paper-200, #EEE4DA),var(--color-paper-300, #D8CFC5));overflow:hidden}.points-shop__card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.points-shop__card:hover .points-shop__card-media img{transform:scale(1.04)}.points-shop__card-media-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--primary, var(--color-brand-500, var(--orange-500)));opacity:.5}.points-shop__card-cat{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:4px;padding:4px 9px;background:#ffffffeb;backdrop-filter:blur(8px);border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:10px;font-weight:700;color:var(--color-ink-900, #2F1E19);letter-spacing:.03em;text-transform:uppercase}.points-shop__card-stock{position:absolute;top:10px;right:10px;padding:4px 9px;background:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:10px;font-weight:700}.points-shop__card-stock--out{background:#6b6b6b}.points-shop__card-body{display:flex;flex-direction:column;gap:6px;padding:14px;flex:1}.points-shop__card-title{font-family:var(--font-display, "Fraunces"),serif;font-size:15px;font-weight:700;color:var(--color-ink-900, #2F1E19);line-height:1.25;margin:0}.points-shop__card-desc{font-size:12px;color:var(--color-ink-500, #8B7E77);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.points-shop__card-foot{margin-top:auto;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}.points-shop__card-cost{display:inline-flex;align-items:center;gap:4px;color:var(--color-ink-900, #2F1E19);font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:12px;font-weight:500}.points-shop__card-cost svg{color:var(--primary, var(--color-brand-500, var(--orange-500)))}.points-shop__card-cost b{font-size:14px;font-weight:700}.points-shop__card-cost span{opacity:.6}.points-shop__redeem-btn{padding:8px 14px;background:#2f1e190f;color:var(--color-ink-900, #2F1E19);border:none;border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:12px;font-weight:700;cursor:not-allowed;transition:all .2s ease;white-space:nowrap}.points-shop__redeem-btn.is-ready{background:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;cursor:pointer;box-shadow:0 4px 10px rgba(var(--color-brand-rgb-500, 232, 93, 4),.25)}.points-shop__redeem-btn.is-ready:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(var(--color-brand-rgb-500, 232, 93, 4),.35)}.points-shop__redeem-btn.is-ready:active{transform:translateY(0)}.points-shop__error{margin:14px 20px;padding:12px 14px;background:#fee2e2;color:#991b1b;border:1px solid #FECACA;border-radius:10px;font-size:13px}.points-shop__history{padding:28px 20px 12px}.points-shop__history h4{font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-500, #8B7E77);margin:0 0 12px}.points-shop__history-list{display:flex;flex-direction:column;gap:8px}.points-shop__history-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:12px}.points-shop__history-icon{width:36px;height:36px;border-radius:50%;background:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.points-shop__history-icon--used{background:#d4d4d4}.points-shop__history-info{flex:1;min-width:0}.points-shop__history-name{font-size:13px;font-weight:600;color:var(--color-ink-900, #2F1E19);margin-bottom:2px}.points-shop__history-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--color-ink-500, #8B7E77)}.points-shop__history-code{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:4px 8px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.1);color:var(--primary, var(--color-brand-500, var(--orange-500)));border-radius:6px;letter-spacing:.05em}.points-shop__history-chevron{color:var(--color-ink-500, #8B7E77);opacity:.5}.points-shop__wiki{position:absolute;inset:0;background:var(--color-paper-100, #F7F2EC);z-index:6;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:ps-slide-in .32s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column}.points-shop__wiki-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;padding:14px 20px;background:#f7f2ecf0;backdrop-filter:blur(10px);border-bottom:1px solid rgba(47,30,25,.06)}.points-shop__wiki-back{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid rgba(47,30,25,.08);color:var(--color-ink-900, #2F1E19);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background .2s ease}.points-shop__wiki-back:hover{transform:scale(1.05)}.points-shop__wiki-header h2{font-family:var(--font-display, "Fraunces"),serif;font-size:20px;font-weight:700;color:var(--color-ink-900, #2F1E19);margin:0}.points-shop__history-panel{width:100%;max-width:720px;margin:0 auto;padding:8px 18px 32px}.points-history__balance{display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px 16px;margin-bottom:18px;background:linear-gradient(135deg,#fff6ee,#fff);border:1.5px solid rgba(var(--color-brand-rgb-500),.18);border-radius:18px;box-shadow:0 4px 16px rgba(var(--color-brand-rgb-500),.08)}.points-history__balance-num{font-family:var(--font-display, "Fraunces"),serif;font-size:44px;font-weight:800;color:var(--orange-500);letter-spacing:-.03em;line-height:1}.points-history__balance-unit{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#7a5c51}.points-history__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.points-history__row{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border:1px solid rgba(47,34,28,.07);border-radius:14px;transition:transform .12s ease,box-shadow .12s ease}.points-history__row:hover{transform:translateY(-1px);box-shadow:0 4px 14px #5c3d2e14}.points-history__row-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.points-history__row--earn .points-history__row-icon{background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500)}.points-history__row--spend .points-history__row-icon{background:#6e3e7f1f;color:#5a2e6b}.points-history__row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.points-history__row-title{font-size:14px;font-weight:600;color:#2f1e19;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.005em}.points-history__row-title b{font-weight:800}.points-history__row-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:#9b8175;font-weight:500}.points-history__row-amounts{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.points-history__row-delta{font-family:var(--font-display, "Fraunces"),serif;font-size:17px;font-weight:800;letter-spacing:-.02em}.points-history__row--earn .points-history__row-delta{color:var(--color-brand-600)}.points-history__row--spend .points-history__row-delta{color:#5a2e6b}.points-history__row-balance{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9b8175}.points-history__empty{padding:60px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;color:#9b8175}.points-history__empty p{margin:0;font-size:14px;line-height:1.5;font-weight:500}.points-shop__wiki-inner{width:100%;max-width:860px;margin:0 auto;padding:24px 20px 40px;display:flex;flex-direction:column;gap:32px}@media(min-width:768px){.points-shop__wiki-inner{padding:32px 40px 48px}}.points-shop__wiki-section h3{font-family:var(--font-display, "Fraunces"),serif;font-size:22px;font-weight:700;color:var(--color-ink-900, #2F1E19);margin:0 0 14px;letter-spacing:-.005em}.points-shop__wiki-intro{font-size:13px;color:var(--color-ink-500, #8B7E77);line-height:1.55;margin:-6px 0 18px}.points-shop__wiki-rules{display:grid;gap:12px}@media(min-width:640px){.points-shop__wiki-rules{grid-template-columns:repeat(3,1fr)}}.points-shop__wiki-rule{display:flex;align-items:flex-start;gap:14px;padding:16px;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:14px}.points-shop__wiki-rule-icon{width:40px;height:40px;border-radius:12px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.1);color:var(--primary, var(--color-brand-500, var(--orange-500)));display:flex;align-items:center;justify-content:center;flex-shrink:0}.points-shop__wiki-rule>div:last-child{display:flex;flex-direction:column;gap:3px}.points-shop__wiki-rule b{font-family:var(--font-display, "Fraunces"),serif;font-size:15px;color:var(--color-ink-900, #2F1E19)}.points-shop__wiki-rule span{font-size:12px;color:var(--color-ink-500, #8B7E77);line-height:1.4}.points-shop__wiki-tiers{display:flex;flex-direction:column;gap:10px}.points-shop__wiki-tier{display:flex;gap:14px;padding:16px;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:14px;transition:all .2s ease}.points-shop__wiki-tier.is-reached{border-color:#2f1e191f}.points-shop__wiki-tier.is-current{border-color:var(--color-ink-900, #2F1E19);box-shadow:0 0 0 1px var(--color-ink-900, #2F1E19)}.points-shop__wiki-tier-badge{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 10px #00000014}.points-shop__wiki-tier:not(.is-reached) .points-shop__wiki-tier-badge{filter:grayscale(.6);opacity:.65}.points-shop__wiki-tier-info{flex:1;min-width:0}.points-shop__wiki-tier-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}.points-shop__wiki-tier-name{font-family:var(--font-display, "Fraunces"),serif;font-size:17px;font-weight:700;color:var(--color-ink-900, #2F1E19)}.points-shop__wiki-tier.is-current .points-shop__wiki-tier-name:after{content:"vous êtes ici";margin-left:10px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:10px;font-weight:700;padding:2px 8px;background:var(--color-ink-900, #2F1E19);color:#fff;border-radius:99px;letter-spacing:.04em;text-transform:uppercase;position:relative;top:-1px}.points-shop__wiki-tier-min{font-size:11px;color:var(--color-ink-500, #8B7E77);font-weight:500;white-space:nowrap}.points-shop__wiki-tier-perks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.points-shop__wiki-tier-perks li{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--color-ink-700, #7A3E2B);line-height:1.45}.points-shop__wiki-tier-perks li svg{color:var(--primary, var(--color-brand-500, var(--orange-500)));flex-shrink:0}.points-shop__wiki-section--note{margin-top:4px}.points-shop__wiki-note{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:linear-gradient(135deg,#fffbf5,#fff3e3);border:1px solid rgba(var(--color-brand-rgb-500, 232, 93, 4),.15);border-radius:14px}.points-shop__wiki-note-icon{font-size:22px;flex-shrink:0}.points-shop__wiki-note b{display:block;font-family:var(--font-display, "Fraunces"),serif;font-size:15px;color:var(--color-ink-900, #2F1E19);margin-bottom:4px}.points-shop__wiki-note p{font-size:13px;color:var(--color-ink-700, #7A3E2B);line-height:1.55;margin:0}.points-shop__detail{position:absolute;inset:0;background:var(--color-paper-100, #F7F2EC);z-index:5;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:ps-slide-in .32s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column}@keyframes ps-slide-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.points-shop__detail-back{position:absolute;top:16px;left:16px;z-index:10;width:40px;height:40px;border-radius:50%;background:#ffffffeb;backdrop-filter:blur(10px);border:1px solid rgba(47,30,25,.06);color:var(--color-ink-900, #2F1E19);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,background .2s ease}.points-shop__detail-back:hover{background:#fff;transform:scale(1.05)}.points-shop__detail-back:active{transform:scale(.95)}.points-shop__detail-inner{display:flex;flex-direction:column;width:100%;max-width:1100px;margin:0 auto;padding:0 0 40px}@media(min-width:768px){.points-shop__detail-inner{flex-direction:row;gap:40px;padding:32px 40px 40px;align-items:center}}.points-shop__detail-media{position:relative;width:100%;aspect-ratio:1 / 1;background:linear-gradient(135deg,var(--color-paper-200, #EEE4DA),var(--color-paper-300, #D8CFC5));overflow:hidden}@media(min-width:768px){.points-shop__detail-media{flex:0 0 50%;max-width:520px;border-radius:24px;aspect-ratio:1 / 1}}.points-shop__detail-media img{width:100%;height:100%;object-fit:cover;display:block}.points-shop__detail-media-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--primary, var(--color-brand-500, var(--orange-500)));opacity:.4}.points-shop__detail-body{padding:24px 24px 0;flex:1;display:flex;flex-direction:column;gap:12px}@media(min-width:768px){.points-shop__detail-body{padding:0}}.points-shop__detail-cat{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#fff;border:1px solid rgba(47,30,25,.1);border-radius:99px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:11px;font-weight:700;color:var(--color-ink-900, #2F1E19);letter-spacing:.03em;text-transform:uppercase;align-self:flex-start}.points-shop__detail-title{font-family:var(--font-display, "Fraunces"),serif;font-size:28px;font-weight:700;color:var(--color-ink-900, #2F1E19);line-height:1.15;letter-spacing:-.01em;margin:0}@media(min-width:768px){.points-shop__detail-title{font-size:36px}}.points-shop__detail-desc{font-size:14px;color:var(--color-ink-700, #7A3E2B);line-height:1.55;margin:0}.points-shop__detail-price{margin-top:6px;padding:16px 18px;background:#fff;border:1px solid rgba(47,30,25,.08);border-radius:14px;display:flex;flex-direction:column;gap:4px}.points-shop__detail-price-main{display:flex;align-items:baseline;gap:8px;color:var(--color-ink-900, #2F1E19);font-family:var(--font-body, "Space Grotesk"),sans-serif}.points-shop__detail-price-main svg{color:var(--primary, var(--color-brand-500, var(--orange-500)));position:relative;top:2px}.points-shop__detail-price-main b{font-family:var(--font-display, "Fraunces"),serif;font-size:32px;font-weight:700;letter-spacing:-.01em}.points-shop__detail-price-main span{font-size:15px;font-weight:500;opacity:.7}.points-shop__detail-price-euro{font-size:12px;color:var(--color-ink-500, #8B7E77);margin-left:32px}.points-shop__detail-info{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column}.points-shop__detail-info li{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:13px;color:var(--color-ink-500, #8B7E77);border-bottom:1px solid rgba(47,30,25,.06)}.points-shop__detail-info li:last-child{border-bottom:none}.points-shop__detail-info li b{color:var(--color-ink-900, #2F1E19);font-weight:700;font-size:14px}.points-shop__detail-info-total{padding-top:12px!important;margin-top:4px;border-top:1.5px solid var(--color-ink-900, #2F1E19)!important;border-bottom:none!important}.points-shop__detail-info-total b{font-family:var(--font-display, "Fraunces"),serif;font-size:17px!important}.points-shop__detail-stock{padding:10px 14px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.08);color:var(--primary, var(--color-brand-500, var(--orange-500)));border:1px dashed rgba(var(--color-brand-rgb-500, 232, 93, 4),.3);border-radius:10px;font-size:12px;font-weight:600;text-align:center}.points-shop__detail-cta{margin-top:12px;padding:16px 24px;background:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;border:none;border-radius:14px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:15px;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:0 8px 20px rgba(var(--color-brand-rgb-500, 232, 93, 4),.3);transition:all .2s ease}.points-shop__detail-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px rgba(var(--color-brand-rgb-500, 232, 93, 4),.4)}.points-shop__detail-cta:active:not(:disabled){transform:translateY(0)}.points-shop__detail-cta:disabled{background:#2f1e191f;color:var(--color-ink-500, #8B7E77);cursor:not-allowed;box-shadow:none}.points-shop__modal-overlay{position:fixed;inset:0;background:#0f0a088c;backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:ps-fade-in .2s ease}@keyframes ps-fade-in{0%{opacity:0}to{opacity:1}}.points-shop__modal{position:relative;width:100%;max-width:360px;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 24px 60px #0000004d;animation:ps-pop .25s cubic-bezier(.22,1,.36,1)}@keyframes ps-pop{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.points-shop__modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:50%;background:#ffffffe6;backdrop-filter:blur(8px);color:var(--color-ink-900, #2F1E19);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.points-shop__modal-img{width:100%;aspect-ratio:16 / 10;object-fit:cover;display:block}.points-shop__modal-body{padding:22px 22px 20px}.points-shop__modal-body h3{font-family:var(--font-display, "Fraunces"),serif;font-size:22px;font-weight:700;color:var(--color-ink-900, #2F1E19);margin:0 0 6px;line-height:1.2}.points-shop__modal-body p{font-size:13px;color:var(--color-ink-500, #8B7E77);line-height:1.5;margin:0 0 14px}.points-shop__modal-cost{display:flex;align-items:center;gap:6px;padding:12px 14px;background:rgba(var(--color-brand-rgb-500, 232, 93, 4),.08);border-radius:10px;margin-bottom:16px;font-size:13px;color:var(--color-ink-900, #2F1E19)}.points-shop__modal-cost svg{color:var(--primary, var(--color-brand-500, var(--orange-500)))}.points-shop__modal-cost b{font-size:15px;font-weight:700}.points-shop__modal-cost span{opacity:.7}.points-shop__modal-cta{width:100%;padding:14px;background:var(--primary, var(--color-brand-500, var(--orange-500)));color:#fff;border:none;border-radius:12px;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 6px 16px rgba(var(--color-brand-rgb-500, 232, 93, 4),.3);transition:all .2s ease}.points-shop__modal-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(var(--color-brand-rgb-500, 232, 93, 4),.4)}.points-shop__modal-cta:disabled{opacity:.7;cursor:wait;transform:none}.points-shop__modal-cancel{width:100%;padding:10px;margin-top:8px;background:transparent;color:var(--color-ink-500, #8B7E77);border:none;font-family:var(--font-body, "Space Grotesk"),sans-serif;font-size:13px;font-weight:500;cursor:pointer}.points-shop__modal--success{padding:32px 24px 24px;text-align:center}.points-shop__modal--success h3{text-align:center;margin-top:8px}.points-shop__success-emoji{font-size:52px;margin-bottom:4px}.points-shop__success-code{font-family:JetBrains Mono,monospace;font-size:22px;font-weight:700;letter-spacing:.12em;padding:14px;margin:16px 0 10px;background:var(--color-ink-900, #2F1E19);color:#fff;border-radius:12px}.points-shop__success-item{font-size:12px;color:var(--color-ink-500, #8B7E77);margin-bottom:16px}.shop{min-height:100%;background:#f7f2ec;padding-bottom:80px}.shop-head{position:sticky;top:0;z-index:10;background:#f7f2ecf5;backdrop-filter:blur(10px);border-bottom:1px solid #EEE4DA;padding:16px 20px 12px}.shop-head-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}.shop-head-top h1{flex:1;font-family:Fraunces,serif;font-size:28px;font-weight:600;color:#2f1e19;margin:0;letter-spacing:-.02em}.shop-back{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #EEE4DA;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#2f1e19;box-shadow:0 2px 8px #5c3d2e14;transition:transform .15s}.shop-back:hover{transform:translate(-2px)}.shop-points{display:flex;align-items:center;gap:6px;background:#fff;padding:8px 14px;border-radius:999px;border:1px solid #EEE4DA;font-family:Space Grotesk,sans-serif;font-size:14px;color:#2f1e19;box-shadow:0 2px 8px #5c3d2e14}.shop-points b{font-weight:700;color:var(--orange-500);font-size:16px}.shop-tabs{display:flex;gap:6px;background:#eee4da;padding:4px;border-radius:12px;margin-bottom:12px}.shop-tab{flex:1;padding:10px 16px;border:none;background:transparent;border-radius:9px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:500;color:#6b5a50;cursor:pointer;transition:all .2s}.shop-tab.on{background:#fff;color:#2f1e19;box-shadow:0 2px 6px #5c3d2e14}.shop-cats{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.shop-cats::-webkit-scrollbar{display:none}.shop-cat{flex-shrink:0;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #EEE4DA;font-family:Space Grotesk,sans-serif;font-size:13px;color:#2f1e19;cursor:pointer;white-space:nowrap;transition:all .2s}.shop-cat:hover{border-color:var(--orange-500)}.shop-cat.on{background:var(--orange-500);color:#fff;border-color:var(--orange-500)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;padding:20px}.shop-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid #EEE4DA;box-shadow:0 4px 16px #5c3d2e14;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.shop-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #5c3d2e24}.shop-card-img{height:170px;background-size:cover;background-position:center;background-color:#eee4da;position:relative}.shop-card-cat{position:absolute;top:12px;left:12px;background:#fffffff0;padding:5px 11px;border-radius:999px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;color:#2f1e19;text-transform:capitalize}.shop-card-stock{position:absolute;top:12px;right:12px;background:rgba(var(--color-brand-rgb-500),.94);color:#fff;padding:5px 11px;border-radius:999px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600}.shop-card-body{padding:16px;display:flex;flex-direction:column;flex:1;gap:6px}.shop-card-body h3{font-family:Fraunces,serif;font-size:19px;font-weight:600;color:#2f1e19;margin:0;letter-spacing:-.01em}.shop-card-body p{font-family:Space Grotesk,sans-serif;font-size:13px;color:#6b5a50;margin:0;line-height:1.45;flex:1}.shop-card-resto{font-family:Space Grotesk,sans-serif;font-size:12px;color:var(--orange-500);font-weight:500}.shop-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:12px;border-top:1px solid #F2E9DD}.shop-card-price{display:flex;align-items:center;gap:5px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;color:var(--orange-500)}.shop-card-btn{padding:8px 16px;border-radius:999px;border:none;background:var(--orange-500);color:#fff;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.shop-card-btn:hover:not(:disabled){background:#c44e03;transform:scale(1.03)}.shop-card-btn:disabled{background:#d6ccc0;cursor:not-allowed}.shop-card-btn.done{background:#2f9e44}.shop-card-login{font-family:Space Grotesk,sans-serif;font-size:12px;color:#6b5a50;font-style:italic}.shop-history{padding:20px;display:flex;flex-direction:column;gap:12px;max-width:700px;margin:0 auto}.shop-redeem{background:#fff;border-radius:14px;border:1px solid #EEE4DA;padding:16px 18px;box-shadow:0 2px 8px #5c3d2e0f;display:grid;grid-template-columns:1fr auto;gap:10px}.shop-redeem-info h4{font-family:Fraunces,serif;font-size:16px;margin:0 0 4px;color:#2f1e19}.shop-redeem-date{font-family:Space Grotesk,sans-serif;font-size:12px;color:#6b5a50}.shop-redeem-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.shop-redeem-pts{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;color:var(--orange-500)}.shop-redeem-status{font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;text-transform:uppercase}.shop-redeem-status--confirmed{background:#e6f4ea;color:#2f9e44}.shop-redeem-status--used{background:#eee4da;color:#6b5a50}.shop-redeem-status--pending{background:#fff3e0;color:var(--orange-500)}.shop-redeem-code{grid-column:1 / -1;font-family:Space Grotesk,sans-serif;font-size:12px;color:#6b5a50;padding-top:8px;border-top:1px dashed #EEE4DA}.shop-redeem-code b{font-family:Space Grotesk,monospace;letter-spacing:.1em;color:#2f1e19}.shop-empty{grid-column:1 / -1;text-align:center;padding:60px 20px}.shop-empty span{font-size:48px;display:block;margin-bottom:12px}.shop-empty p{font-family:Space Grotesk,sans-serif;color:#6b5a50;margin:0}.shop-breakdown{max-width:600px;margin:20px auto;background:#fff;border-radius:16px;border:1px solid #EEE4DA;padding:20px 22px;box-shadow:0 4px 16px #5c3d2e14}.shop-breakdown h3{font-family:Fraunces,serif;font-size:18px;margin:0 0 14px;color:#2f1e19}.shop-breakdown-row{display:flex;justify-content:space-between;padding:8px 0;font-family:Space Grotesk,sans-serif;font-size:14px;color:#2f1e19;border-bottom:1px solid #F2E9DD}.shop-breakdown-row b{color:var(--orange-500)}.shop-breakdown-total{display:flex;justify-content:space-between;padding-top:12px;margin-top:8px;border-top:2px solid #EEE4DA;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700;color:#2f1e19}.shop-breakdown-total b{color:var(--orange-500);font-size:18px}@media(max-width:600px){.shop-grid{grid-template-columns:1fr;padding:16px}.shop-head-top h1{font-size:22px}}.wallet{padding:0 0 32px}.wallet-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px 16px}.wallet-title{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;color:#1a1a1a;letter-spacing:-.02em}.wallet-count{width:26px;height:26px;border-radius:50%;background:#ebebeb;display:flex;align-items:center;justify-content:center;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:700;color:#505050}.wallet-deck{position:relative;margin:0 20px;transition:height .55s cubic-bezier(.4,0,.2,1)}.wallet-card{position:absolute;left:0;right:0;height:196px;border-radius:20px;cursor:pointer;transition:transform .5s cubic-bezier(.34,1.56,.64,1),opacity .3s ease,box-shadow .3s ease;transform-origin:center top;will-change:transform}.wallet-card:hover:not(.wallet-card--active){filter:brightness(1.05)}.wallet-card--active{box-shadow:0 24px 60px #00000059,0 8px 24px #0003;cursor:default}.wallet-card--behind{cursor:pointer}.wallet-card-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.4,.2,.2,1);border-radius:20px}.wallet-card-inner--flipped{transform:rotateY(180deg)}.wallet-face{position:absolute;inset:0;border-radius:20px;padding:18px 20px 16px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.wallet-face--back{transform:rotateY(180deg);justify-content:flex-start;gap:12px}.wallet-shine{position:absolute;top:0;left:0;right:0;height:60%;background:linear-gradient(180deg,#ffffff1f,#fff0);border-radius:20px 20px 0 0;pointer-events:none}.wallet-face-top{display:flex;align-items:flex-start;justify-content:space-between}.wallet-resto-name{font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.2;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wallet-cuisine{font-size:11px;font-weight:500;margin-top:2px;letter-spacing:.04em;text-transform:uppercase}.wallet-chip{flex-shrink:0;opacity:.85}.wallet-stamps{display:flex;gap:5px;flex-wrap:nowrap;align-items:center;justify-content:flex-start;padding:2px 0}.wallet-stamp{flex-shrink:0;width:24px;height:24px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;transition:background .3s ease,transform .2s ease;position:relative}.wallet-stamp--filled{animation:stampPop .35s cubic-bezier(.34,1.56,.64,1)}.wallet-stamp--milestone{width:28px;height:28px;border-width:2.5px}@keyframes stampPop{0%{transform:scale(.7)}to{transform:scale(1)}}.wallet-face-bottom{display:flex;align-items:flex-end;justify-content:space-between}.wallet-count-label{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700;letter-spacing:-.01em}.wallet-reward-label{font-size:11px;margin-top:3px;line-height:1.3;max-width:220px}.wallet-progress-ring circle{transition:stroke-dashoffset 1s ease}.wallet-hint{position:absolute;bottom:56px;left:50%;transform:translate(-50%);background:#00000073;backdrop-filter:blur(6px);color:#fff;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;padding:4px 12px;border-radius:9999px;white-space:nowrap;pointer-events:none;animation:hintPulse 2s ease infinite}@keyframes hintPulse{0%,to{opacity:.7}50%{opacity:1}}.wallet-back-header{display:flex;align-items:center;justify-content:space-between}.wallet-back-close{background:none;border:1px solid;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:opacity .15s}.wallet-back-close:hover{opacity:.7}.wallet-qr-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.wallet-qr{width:120px;height:120px;border-radius:10px;background:#fff;display:block;box-shadow:0 2px 16px #00000040}.wallet-qr-placeholder{width:120px;height:120px;border-radius:10px;background:#ffffff26;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:.7}.wallet-qr-placeholder p{font-size:9px;text-align:center;line-height:1.3;margin:0;padding:0 8px}.wallet-qr-label{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.7;text-align:center}.wallet-back-stats{display:flex;gap:0;border-radius:12px;overflow:hidden;border:1px solid;margin-top:auto}.wallet-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-right:1px solid}.wallet-stat:last-child{border-right:none}.wallet-stat-val{font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;letter-spacing:-.02em}.wallet-stat-key{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:1px;text-align:center}.wallet-actions{display:flex;gap:8px;padding:14px 20px 0;flex-wrap:wrap}.wallet-action-btn{display:flex;align-items:center;gap:7px;padding:10px 16px;border-radius:12px;border:none;background:#1a1a1a;color:#fff;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.wallet-action-btn:hover{background:#333;transform:translateY(-1px)}.wallet-action-btn:active{transform:translateY(0)}.wallet-action-btn--ghost{background:transparent;color:#505050;border:1px solid #DDDCDA}.wallet-action-btn--ghost:hover{background:#f5f5f5;color:#1a1a1a}.wallet-palette{margin:12px 20px 0;background:#fff;border:1px solid #EBEBEB;border-radius:16px;padding:14px 16px;box-shadow:0 4px 20px #00000014;animation:paletteIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes paletteIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.wallet-palette-title{font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.wallet-palette-grid{display:flex;gap:8px;flex-wrap:wrap}.wallet-swatch{width:36px;height:36px;border-radius:10px;border:3px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s;box-shadow:0 2px 8px #00000026;position:relative}.wallet-swatch:hover{transform:scale(1.12)}.wallet-swatch--on{border-color:var(--orange-500);box-shadow:0 0 0 2px var(--orange-500)}.wallet-swatch--reset{background:#f5f5f5;color:#505050;font-size:16px;display:flex;align-items:center;justify-content:center;border:2px solid #DDDCDA;box-shadow:none}.wallet-empty{display:flex;flex-direction:column;align-items:center;padding:48px 24px;gap:14px;color:#8c8c8c;text-align:center}.wallet-empty-icon{opacity:.4}.wallet-empty p{font-family:Space Grotesk,sans-serif;font-size:14px;line-height:1.5;margin:0;max-width:260px}@media(max-width:400px){.wallet-deck{margin:0 12px}.wallet-stamp{width:20px;height:20px}.wallet-stamp--milestone{width:24px;height:24px}.wallet-stamps{gap:4px}}.address-autocomplete{position:relative;width:100%}.address-autocomplete__input-wrap{position:relative;display:flex;align-items:center;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:14px;padding:0 12px 0 14px;height:48px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;box-shadow:0 1px 2px #5c3d2e0a}.address-autocomplete__input-wrap:focus-within{border-color:var(--primary, var(--orange-500));box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500),.1),0 2px 6px #5c3d2e0f}.address-autocomplete__input-wrap.has-error{border-color:var(--color-brand-600);box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-600),.08)}.address-autocomplete__icon{color:var(--primary, var(--orange-500));margin-right:10px;flex-shrink:0}.address-autocomplete__input{flex:1;border:0;outline:0;background:transparent;font-family:inherit;font-size:15px;color:var(--color-ink-900, #2F1E19);height:100%;padding:0;letter-spacing:-.005em}.address-autocomplete__input::placeholder{color:var(--color-ink-500, #9B8175);opacity:1}.address-autocomplete__loader{color:var(--primary, var(--orange-500));animation:address-spin .9s linear infinite;flex-shrink:0;margin-left:6px}@keyframes address-spin{to{transform:rotate(360deg)}}.address-autocomplete__list{position:absolute;top:calc(100% + 6px);left:0;right:0;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid rgba(47,34,28,.08);border-radius:16px;box-shadow:0 4px 12px #5c3d2e14,0 12px 32px #5c3d2e1f;z-index:1500;max-height:320px;overflow-y:auto;animation:address-dropdown .18s ease}@keyframes address-dropdown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.address-autocomplete__item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background .12s ease}.address-autocomplete__item.is-active,.address-autocomplete__item:hover{background:rgba(var(--color-brand-rgb-500),.08)}.address-autocomplete__item-pin{width:26px;height:26px;border-radius:8px;background:rgba(var(--color-brand-rgb-500),.12);color:var(--primary, var(--orange-500));display:grid;place-items:center;flex-shrink:0;margin-top:1px}.address-autocomplete__item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.address-autocomplete__item-street{font-size:14px;font-weight:600;color:var(--color-ink-900, #2F1E19);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.address-autocomplete__item-city{font-size:12px;color:var(--color-ink-600, #7A5C51);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.address-autocomplete__item--poi .address-autocomplete__item-pin{background:#4b8f9e29;color:#2e6571}.address-autocomplete__item--street .address-autocomplete__item-pin{background:#6e3e7f24;color:#5a2e6b}.address-autocomplete__item-badge{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#4b8f9e29;color:#2e6571;padding:3px 8px;border-radius:999px;margin-left:auto;flex-shrink:0;align-self:center}.saved-address-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.saved-address-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:16px;text-align:left;cursor:pointer;transition:all .18s ease;font-family:inherit;color:inherit;box-shadow:0 1px 2px #5c3d2e0a}.saved-address-card:hover{border-color:var(--primary, var(--orange-500));transform:translateY(-1px);box-shadow:0 4px 12px #5c3d2e1a}.saved-address-card.is-active{border-color:var(--primary, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.04);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.12),0 4px 14px #5c3d2e14}.saved-address-card__icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.saved-address-card__icon--home{background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500)}.saved-address-card__icon--work{background:#4b8f9e29;color:#2e6571}.saved-address-card__icon--school{background:#c9973a29;color:#8c6618}.saved-address-card__icon--other{background:#6e3e7f24;color:#5a2e6b}.saved-address-card__icon--add{background:transparent;border:1.5px dashed var(--color-paper-300, #E0D2C2);color:var(--primary, var(--orange-500))}.saved-address-card--add{border-style:dashed;background:transparent}.saved-address-card--add:hover .saved-address-card__icon--add{border-style:solid;background:rgba(var(--color-brand-rgb-500),.08)}.saved-address-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.saved-address-card__head{display:flex;align-items:center;gap:6px}.saved-address-card__label{font-size:14px;font-weight:700;color:var(--color-ink-900, #2F1E19);letter-spacing:-.01em}.saved-address-card__default{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--primary, var(--orange-500));color:#fff}.saved-address-card__street{font-size:13px;color:var(--color-ink-800, #5A3A2F);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saved-address-card__city{font-size:12px;color:var(--color-ink-600, #7A5C51)}.saved-address-card__edit{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#2f221c0f;color:var(--color-ink-700, #6A4F44);cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease}.saved-address-card:hover .saved-address-card__edit{opacity:1}.saved-address-card__edit:hover{background:rgba(var(--color-brand-rgb-500),.14);color:var(--primary, var(--orange-500))}.address-form{display:flex;flex-direction:column;gap:14px;padding:18px;background:var(--color-paper-100, #F9F5EE);border:1px solid var(--color-paper-300, #E0D2C2);border-radius:16px;margin-top:12px}.address-form__row{display:grid;grid-template-columns:110px 1fr;gap:10px}.address-form__type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.address-form__type-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 6px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;font-size:11px;font-weight:600;color:var(--color-ink-700, #6A4F44);cursor:pointer;transition:all .15s ease}.address-form__type-btn:hover{border-color:var(--primary, var(--orange-500));color:var(--primary, var(--orange-500))}.address-form__type-btn.is-active{border-color:var(--primary, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.08);color:var(--primary, var(--orange-500))}.address-form__field{display:flex;flex-direction:column;gap:4px}.address-form__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-600, #7A5C51)}.address-form__input{height:44px;padding:0 12px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;font-family:inherit;font-size:14px;color:var(--color-ink-900, #2F1E19);transition:border-color .15s ease,box-shadow .15s ease;outline:0}.address-form__input:focus{border-color:var(--primary, var(--orange-500));box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500),.1)}.address-form__check{display:flex;align-items:center;gap:12px;padding:10px 12px;font-size:13px;color:var(--color-ink-800, #5A3A2F);cursor:pointer;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;transition:all .18s ease;user-select:none}.address-form__check:hover{border-color:var(--primary, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.03)}.address-form__check input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.address-form__check:before{content:"";flex-shrink:0;width:20px;height:20px;border-radius:7px;border:2px solid var(--color-paper-400, #C9B4A0);background:#fff;transition:all .18s cubic-bezier(.4,0,.2,1);position:relative}.address-form__check:after{content:"";position:absolute;left:18px;width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4,10 8,14 16,6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:14px;opacity:0;transform:scale(.4);transition:opacity .15s ease,transform .15s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.address-form__check:has(input[type=checkbox]:checked):before{background:var(--primary, var(--orange-500));border-color:var(--primary, var(--orange-500));box-shadow:0 2px 6px rgba(var(--color-brand-rgb-500),.3)}.address-form__check:has(input[type=checkbox]:checked):after{opacity:1;transform:scale(1)}.address-form__check:has(input[type=checkbox]:checked){background:rgba(var(--color-brand-rgb-500),.06);border-color:var(--primary, var(--orange-500));color:var(--color-ink-900, #2F1E19);font-weight:600}.address-form__check:has(input[type=checkbox]:focus-visible):before{box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500),.18)}.address-form__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.address-form__btn{height:40px;padding:0 18px;border-radius:12px;border:0;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.address-form__btn--primary{background:var(--primary, var(--orange-500));color:#fff}.address-form__btn--primary:hover{background:var(--color-brand-600)}.address-form__btn--primary:disabled{opacity:.55;cursor:not-allowed}.address-form__btn--ghost{background:transparent;color:var(--color-ink-700, #6A4F44)}.address-form__btn--ghost:hover{background:#2f221c0f}.address-form__btn--danger{background:transparent;color:var(--color-brand-600);margin-right:auto}.address-form__btn--danger:hover{background:rgba(var(--color-brand-rgb-600),.08)}.loyalty-rank{display:flex;flex-direction:column;gap:18px;padding:0 0 28px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.loyalty-rank__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(47,30,25,.06)}.loyalty-rank__back{width:32px;height:32px;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.08);border:0;color:var(--primary, var(--orange-500));display:grid;place-items:center;cursor:pointer;transition:background .12s ease}.loyalty-rank__back:hover{background:rgba(var(--color-brand-rgb-500),.16)}.loyalty-rank__title{font-family:var(--font-family-display, "Fraunces"),serif;font-size:18px;font-weight:700;margin:0;color:var(--color-ink-900, #2F1E19);letter-spacing:-.01em}.loyalty-rank__hero{position:relative;margin:0 18px;padding:28px 24px 24px;border-radius:22px;color:#fff;overflow:hidden;box-shadow:0 12px 32px #0003}.loyalty-rank__hero--empty{background:linear-gradient(135deg,#eee4da,#f7f2ec)!important;color:var(--color-ink-900, #2F1E19);text-align:center;padding:36px 24px}.loyalty-rank__hero-emoji{font-size:48px;display:block;margin-bottom:10px}.loyalty-rank__hero--empty h3{font-family:var(--font-family-display, "Fraunces"),serif;font-size:22px;margin:0 0 6px}.loyalty-rank__hero--empty p{font-size:13px;color:var(--color-ink-700, #6A4F44);margin:0}.loyalty-rank__hero-deco{position:absolute;inset:0;background:radial-gradient(circle at 100% 0%,rgba(255,255,255,.18) 0%,transparent 50%),radial-gradient(circle at 0% 100%,rgba(0,0,0,.12) 0%,transparent 50%);pointer-events:none}.loyalty-rank__hero-rank-badge{position:relative;display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#fff3;backdrop-filter:blur(8px);margin-bottom:14px;box-shadow:0 4px 14px #0003}.loyalty-rank__hero-name{position:relative;font-family:var(--font-family-display, "Fraunces"),serif;font-size:28px;font-weight:800;letter-spacing:-.02em;margin-bottom:4px}.loyalty-rank__hero-stamps{position:relative;font-size:14px;font-weight:600;opacity:.9}.loyalty-rank__hero-stamps span{font-weight:500;opacity:.85}.loyalty-rank__hero-next{position:relative;margin-top:18px}.loyalty-rank__progress-track{height:8px;background:#fff3;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 2px #00000026}.loyalty-rank__progress-fill{height:100%;background:linear-gradient(90deg,#fff,#ffffffd9);border-radius:999px;box-shadow:0 0 12px #ffffff80}.loyalty-rank__hero-next-text{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;font-weight:600;opacity:.95}.loyalty-rank__hero-next-text b{font-weight:800}.loyalty-rank__hero-max{position:relative;margin-top:16px;text-align:center;font-family:var(--font-family-display, "Fraunces"),serif;font-size:16px;font-weight:700;background:#ffffff2e;padding:12px;border-radius:12px;backdrop-filter:blur(8px)}.loyalty-rank__tabs{display:flex;gap:6px;padding:0 18px}.loyalty-rank__tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;background:transparent;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;font-family:inherit;font-size:13px;font-weight:700;color:var(--color-ink-700, #6A4F44);cursor:pointer;transition:all .15s ease;position:relative}.loyalty-rank__tab.is-active{background:var(--primary, var(--orange-500));border-color:var(--primary, var(--orange-500));color:#fff;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.25)}.loyalty-rank__tab-pill{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-brand-600);color:#fff;font-size:10px;font-weight:800}.loyalty-rank__tab.is-active .loyalty-rank__tab-pill{background:#fff;color:var(--primary, var(--orange-500))}.loyalty-rank__path{padding:0 18px}.loyalty-rank__path-intro{font-size:13px;color:var(--color-ink-700, #6A4F44);margin:0 0 18px;line-height:1.5}.loyalty-rank__path-intro b{color:var(--color-ink-900, #2F1E19)}.loyalty-rank__path-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.loyalty-rank__step{position:relative;display:flex;gap:14px;padding:14px;background:#fff;border:1px solid rgba(47,30,25,.06);border-radius:14px;transition:all .15s ease}.loyalty-rank__step.is-reached{background:linear-gradient(135deg,#fff,#fff6ee);border-color:rgba(var(--color-brand-rgb-500),.18)}.loyalty-rank__step.is-next{border:2px solid var(--primary, var(--orange-500));box-shadow:0 4px 14px rgba(var(--color-brand-rgb-500),.16);background:#fff}.loyalty-rank__step-line{position:absolute;left:32px;top:100%;width:2px;height:6px;background:#0000000f}.loyalty-rank__step:last-child .loyalty-rank__step-line{display:none}.loyalty-rank__step-medal{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;box-shadow:0 2px 8px #0000001a;border:2px solid #fff}.loyalty-rank__step-body{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.loyalty-rank__step-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.loyalty-rank__step-name{font-family:var(--font-family-display, "Fraunces"),serif;font-size:17px;font-weight:700;letter-spacing:-.01em}.loyalty-rank__step-stamps{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-600, #7A5C51)}.loyalty-rank__step-current-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;background:var(--primary, var(--orange-500));color:#fff;padding:3px 10px;border-radius:999px;width:fit-content}.loyalty-rank__step-next-tag{font-size:12px;color:var(--color-ink-700, #6A4F44)}.loyalty-rank__step-next-tag b{color:var(--primary, var(--orange-500));font-weight:800}.loyalty-rank__step{flex-direction:column;padding:0;overflow:hidden}.loyalty-rank__step-trigger{display:flex;width:100%;background:transparent;border:0;padding:14px;font-family:inherit;text-align:left;cursor:pointer;gap:14px;align-items:center;color:inherit;transition:background .15s ease}.loyalty-rank__step-trigger:hover{background:rgba(var(--color-brand-rgb-500),.04)}.loyalty-rank__step-chevron{flex-shrink:0;color:var(--color-ink-500, #9B8175);transition:transform .22s ease}.loyalty-rank__step-chevron.is-rot{transform:rotate(90deg);color:var(--primary, var(--orange-500))}.loyalty-rank__step.is-expanded{background:linear-gradient(180deg,rgba(var(--color-brand-rgb-500),.04),transparent 60%)}.loyalty-rank__step.is-locked .loyalty-rank__step-trigger{opacity:.85}.loyalty-rank__step-claim-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;background:linear-gradient(135deg,var(--orange-500),#f5a623);color:#fff;padding:3px 10px;border-radius:999px;width:fit-content;box-shadow:0 2px 8px rgba(var(--color-brand-rgb-500),.3);animation:loyalty-pulse-glow 2s ease-in-out infinite}@keyframes loyalty-pulse-glow{0%,to{box-shadow:0 2px 8px rgba(var(--color-brand-rgb-500),.3)}50%{box-shadow:0 4px 16px rgba(var(--color-brand-rgb-500),.5)}}.loyalty-rank__step-detail{overflow:hidden}.loyalty-rank__step-detail-inner{padding:6px 16px 16px 70px;display:flex;flex-direction:column;gap:14px}.loyalty-rank__step-progress{display:flex;flex-direction:column;gap:5px}.loyalty-rank__step-progress-track{height:6px;background:#00000012;border-radius:999px;overflow:hidden}.loyalty-rank__step-progress-fill{height:100%;border-radius:999px;transition:width .5s ease}.loyalty-rank__step-progress-text{font-size:11px;font-weight:600;color:var(--color-ink-700, #6A4F44)}.loyalty-rank__step-reward{display:flex;gap:12px;align-items:flex-start;padding:12px;background:#fff;border:1.5px solid rgba(0,0,0,.06);border-left-width:4px;border-radius:14px;box-shadow:0 2px 10px #0000000a}.loyalty-rank__step-reward-emoji{font-size:28px;width:44px;height:44px;background:var(--color-paper-100, #F9F5EE);border-radius:12px;display:grid;place-items:center;flex-shrink:0}.loyalty-rank__step-reward-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.loyalty-rank__step-reward-label{font-family:var(--font-family-display, "Fraunces"),serif;font-size:14px;font-weight:700;color:var(--color-ink-900, #2F1E19);line-height:1.25}.loyalty-rank__step-reward-desc{font-size:12px;color:var(--color-ink-700, #6A4F44);line-height:1.4}.loyalty-rank__step-reward-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.loyalty-rank__step-reward-cta{display:inline-flex;align-items:center;gap:3px;padding:8px 12px;border:0;border-radius:10px;color:#fff;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease;flex-shrink:0;align-self:center}.loyalty-rank__step-reward-cta:hover{transform:translateY(-1px);filter:brightness(1.05)}.loyalty-rank__step-no-reward{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--color-ink-700, #6A4F44);padding:10px 12px;background:#00000008;border-radius:10px;font-style:italic}.loyalty-rank__step-benefits{display:flex;flex-direction:column;gap:6px}.loyalty-rank__step-benefits-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-600, #7A5C51)}.loyalty-rank__step-benefits ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.loyalty-rank__step-benefits li{font-size:12px;color:var(--color-ink-800, #5A3A2F);line-height:1.4}.loyalty-rank__step-benefits b{color:var(--color-ink-900, #2F1E19);font-weight:700}.loyalty-pill{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.loyalty-pill--food{background:rgba(var(--color-brand-rgb-500),.1);color:var(--color-brand-600)}.loyalty-pill--merch{background:#4b8f9e24;color:#2e6571}.loyalty-pill--status{background:#c9973a29;color:#8c6618}.loyalty-pill--experience{background:#6e3e7f24;color:#5a2e6b}.loyalty-pill--out{background:#78716c29;color:#78716c}.loyalty-rank__rewards-roadmap{display:flex;flex-direction:column;gap:10px}.loyalty-rank__rewards-section-title{display:flex;align-items:center;gap:6px}.loyalty-upcoming-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-left:4px solid;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 10px #0000000a}.loyalty-upcoming-card__head{display:flex;align-items:center;gap:10px}.loyalty-upcoming-card__emoji{font-size:26px;width:40px;height:40px;background:var(--color-paper-100, #F9F5EE);border-radius:10px;display:grid;place-items:center}.loyalty-upcoming-card__title{flex:1;display:flex;flex-direction:column;min-width:0}.loyalty-upcoming-card__rank{font-family:var(--font-family-display, "Fraunces"),serif;font-size:14px;font-weight:800}.loyalty-upcoming-card__stamps{font-size:10px;font-weight:600;color:var(--color-ink-600, #7A5C51);text-transform:uppercase;letter-spacing:.04em}.loyalty-upcoming-card__lock{color:var(--color-ink-500, #9B8175);flex-shrink:0}.loyalty-upcoming-card__label{font-size:14px;font-weight:700;color:var(--color-ink-900, #2F1E19);line-height:1.3}.loyalty-upcoming-card__desc{font-size:12px;color:var(--color-ink-700, #6A4F44);line-height:1.4}.loyalty-upcoming-card__progress{display:flex;flex-direction:column;gap:4px;margin-top:4px}.loyalty-upcoming-card__progress-track{height:5px;background:#00000012;border-radius:999px;overflow:hidden}.loyalty-upcoming-card__progress-fill{height:100%;border-radius:999px;transition:width .5s ease}.loyalty-upcoming-card__remaining{font-size:11px;font-weight:600;color:var(--color-ink-700, #6A4F44)}.loyalty-upcoming-card__remaining b{color:var(--color-ink-900, #2F1E19);font-weight:800}.loyalty-reward-card.is-pending-resto{border-color:#c9973a66;background:#c9973a0f}.loyalty-choice-card{background:linear-gradient(135deg,#fff,#fff6ee);border:2.5px solid;border-radius:18px;padding:16px;margin-bottom:14px;box-shadow:0 8px 24px rgba(var(--color-brand-rgb-500),.1)}.loyalty-choice-card__head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.loyalty-choice-card__rank-badge{display:inline-block;padding:4px 10px;border-radius:999px;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.loyalty-choice-card__hint{font-size:13px;color:var(--color-ink-700, #6A4F44)}.loyalty-choice-card__hint b{color:var(--color-ink-900, #2F1E19);font-weight:800}.loyalty-choice-card__options{display:flex;flex-direction:column;gap:8px}.loyalty-choice-option{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;cursor:pointer;transition:all .15s ease;font-family:inherit;text-align:left;width:100%}.loyalty-choice-option:hover:not(.is-disabled):not(:disabled){border-color:var(--primary, var(--orange-500));transform:translateY(-1px);box-shadow:0 4px 14px rgba(var(--color-brand-rgb-500),.14)}.loyalty-choice-option.is-disabled,.loyalty-choice-option:disabled{opacity:.55;cursor:not-allowed}.loyalty-choice-option__emoji{font-size:28px;flex-shrink:0;width:44px;height:44px;background:var(--color-paper-100, #F9F5EE);border-radius:10px;display:grid;place-items:center}.loyalty-choice-option__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.loyalty-choice-option__label{font-family:var(--font-family-display, "Fraunces"),serif;font-size:15px;font-weight:700;color:var(--color-ink-900, #2F1E19)}.loyalty-choice-option__desc{font-size:12px;color:var(--color-ink-700, #6A4F44);line-height:1.4}.loyalty-choice-option__out{font-size:10px;font-weight:700;text-transform:uppercase;background:#78716c29;color:#78716c;padding:2px 6px;border-radius:999px;width:fit-content;margin-top:2px}.loyalty-deck{margin-bottom:22px}.loyalty-deck__header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.loyalty-deck__rank-pill{display:inline-block;padding:4px 12px;border-radius:999px;color:#fff;font-family:var(--font-family-display, "Fraunces"),serif;font-size:13px;font-weight:800}.loyalty-deck__count{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-600, #7A5C51)}.loyalty-deck__scroll{display:flex;gap:12px;overflow-x:auto;padding:8px 4px 14px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.loyalty-deck__scroll::-webkit-scrollbar{height:4px}.loyalty-deck__scroll::-webkit-scrollbar-thumb{background:#00000026;border-radius:999px}.loyalty-deck-card{flex-shrink:0;width:200px;height:280px;perspective:1000px;scroll-snap-align:start}.loyalty-deck-card__inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.loyalty-deck-card.is-flipped .loyalty-deck-card__inner{transform:rotateY(180deg)}.loyalty-deck-card.is-used{opacity:.65;filter:grayscale(.5)}.loyalty-deck-card.is-expired{opacity:.45;filter:grayscale(.7)}.loyalty-deck-card__face{position:absolute;inset:0;border-radius:16px;padding:14px;display:flex;flex-direction:column;align-items:center;text-align:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 14px 30px #00000038,0 0 0 1px #ffffff1f inset;overflow:hidden}.loyalty-deck-card__face--front{background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.18) 0%,transparent 60%),linear-gradient(135deg,var(--card-color, var(--orange-500)),color-mix(in srgb,var(--card-color, var(--orange-500)) 65%,#2F1E19));color:#fff;justify-content:space-between}.loyalty-deck-card__face--back{background:#fff;color:var(--color-ink-900, #2F1E19);transform:rotateY(180deg);justify-content:center;border:2.5px solid var(--card-color, var(--orange-500))}.loyalty-deck-card__rank-tag{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:#fff3;backdrop-filter:blur(4px);padding:3px 9px;border-radius:999px;align-self:flex-start}.loyalty-deck-card__emoji{font-size:56px;line-height:1;margin:8px 0 4px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.25))}.loyalty-deck-card__label{font-family:var(--font-family-display, "Fraunces"),serif;font-size:15px;font-weight:800;letter-spacing:-.01em;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.loyalty-deck-card__checkpoint{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.8;margin-top:2px}.loyalty-deck-card__status{margin-top:auto;width:100%;display:flex;justify-content:center}.loyalty-deck-card__cta{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;background:#fff;color:var(--card-color, var(--orange-500));border:0;border-radius:999px;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 4px 12px #0000002e;transition:transform .12s ease}.loyalty-deck-card__cta:hover{transform:translateY(-1px)}.loyalty-deck-card__badge--used,.loyalty-deck-card__badge--expired{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#fff3;color:#fff}.loyalty-deck-card__qr{background:#fff;padding:8px;border-radius:12px;margin-bottom:10px}.loyalty-deck-card__qr img{display:block;width:130px;height:130px}.loyalty-deck-card__code{font-family:SF Mono,monospace;font-size:13px;font-weight:800;letter-spacing:.1em;color:var(--card-color, var(--orange-500));background:rgba(var(--color-brand-rgb-500),.06);padding:5px 10px;border-radius:8px;margin-bottom:8px}.loyalty-deck-card__qr-hint{font-size:10px;color:var(--color-ink-600, #7A5C51);margin:0 0 8px;text-align:center}.loyalty-voucher-block{display:flex;flex-direction:column;align-items:center;gap:3px;margin:8px 0 4px;padding:8px 12px;border-radius:10px;background:#ffffff29;border:1px solid rgba(255,255,255,.28)}.loyalty-voucher-block__head{display:inline-flex;align-items:baseline;gap:4px;color:#fff}.loyalty-voucher-block__head svg{align-self:center}.loyalty-voucher-block__amount{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:800;line-height:1}.loyalty-voucher-block__initial{font-size:11px;font-weight:600;opacity:.7;text-decoration:line-through}.loyalty-voucher-block__code{font-family:SF Mono,monospace;font-size:12px;font-weight:800;letter-spacing:.14em;color:#fff;padding:3px 9px;border-radius:7px;background:#0000002e}.loyalty-voucher-block__expires{font-size:10px;font-weight:600;color:#ffffffc7}.loyalty-deck-card__back-btn{background:transparent;border:0;font-family:inherit;font-size:11px;font-weight:700;color:var(--color-ink-700, #6A4F44);cursor:pointer;text-decoration:underline}.spin{animation:loyalty-spin-cls .9s linear infinite}@keyframes loyalty-spin-cls{to{transform:rotate(360deg)}}.loyalty-subtabs{display:flex;gap:4px;padding:4px;background:var(--color-paper-100, #F9F5EE);border:1px solid rgba(47,30,25,.06);border-radius:14px;margin-bottom:18px}.loyalty-subtab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;background:transparent;border:0;border-radius:10px;font-family:inherit;font-size:13px;font-weight:700;color:var(--color-ink-700, #6A4F44);cursor:pointer;transition:all .15s ease;position:relative}.loyalty-subtab:hover:not(.is-active){background:rgba(var(--color-brand-rgb-500),.04);color:var(--color-ink-900, #2F1E19)}.loyalty-subtab.is-active{background:#fff;color:var(--primary, var(--orange-500));box-shadow:0 2px 8px #00000014}.loyalty-subtab__count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--primary, var(--orange-500));color:#fff;font-size:10px;font-weight:800}.loyalty-subtab.is-active .loyalty-subtab__count{background:var(--primary, var(--orange-500))}.loyalty-empty__cta{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:10px 18px;background:var(--primary, var(--orange-500));color:#fff;border:0;border-radius:12px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.25)}.loyalty-empty__cta:hover{background:var(--color-brand-600);transform:translateY(-1px)}.loyalty-deck-card__actions{position:absolute;top:8px;right:8px;display:flex;gap:5px;z-index:3}.loyalty-deck-card__action{width:26px;height:26px;border-radius:8px;background:#ffffff38;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);color:#fff;display:grid;place-items:center;cursor:pointer;transition:all .15s ease}.loyalty-deck-card__action:hover{background:#fff;color:var(--card-color, var(--orange-500));transform:scale(1.08)}.loyalty-card-fullscreen{position:fixed;inset:0;background:#140c08d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:3000;display:grid;place-items:center;padding:32px 20px}.loyalty-card-fullscreen__close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;background:#ffffff24;backdrop-filter:blur(8px);border:0;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:3010;transition:all .15s ease}.loyalty-card-fullscreen__close:hover{background:#fff;color:var(--color-ink-900, #2F1E19);transform:scale(1.05)}.loyalty-card-fullscreen__card{display:flex;flex-direction:column;align-items:center;gap:14px}.loyalty-deck-card--xl{width:320px!important;height:480px!important}.loyalty-deck-card--xl .loyalty-deck-card__face{padding:26px 22px;border-radius:24px}.loyalty-deck-card--xl .loyalty-deck-card__emoji{font-size:88px;margin:14px 0 8px}.loyalty-deck-card--xl .loyalty-deck-card__label{font-size:22px;-webkit-line-clamp:3}.loyalty-deck-card--xl .loyalty-deck-card__rank-tag{font-size:10px;padding:4px 12px}.loyalty-deck-card--xl .loyalty-deck-card__qr img{width:200px;height:200px}.loyalty-deck-card--xl .loyalty-deck-card__code{font-size:16px;padding:8px 14px}.loyalty-card-fullscreen__desc{font-size:13px;opacity:.92;text-align:center;margin:8px 0 12px;line-height:1.45;max-width:240px}.loyalty-card-fullscreen__resto{font-family:var(--font-family-display, "Fraunces"),serif;font-size:14px;font-weight:700;background:#ffffff2e;padding:5px 14px;border-radius:999px;margin-bottom:14px}.loyalty-card-fullscreen__hint{color:#ffffffa6;font-size:12px;font-weight:600;margin:0;text-align:center}.loyalty-rank__rewards{padding:0 18px;display:flex;flex-direction:column;gap:22px}.loyalty-rank__rewards-section-title{font-family:var(--font-family-display, "Fraunces"),serif;font-size:16px;font-weight:700;margin:0 0 10px;color:var(--color-ink-900, #2F1E19)}.loyalty-rank__rewards-list{display:flex;flex-direction:column;gap:10px}.loyalty-reward-card{display:flex;align-items:center;gap:14px;padding:14px;background:#fff;border:1.5px solid rgba(var(--color-brand-rgb-500),.18);border-radius:14px;box-shadow:0 2px 8px rgba(var(--color-brand-rgb-500),.08);transition:all .15s ease}.loyalty-reward-card.is-compact{background:var(--color-paper-100, #F9F5EE);border-color:#2f1e190f;box-shadow:none}.loyalty-reward-card.is-used{opacity:.7;filter:grayscale(.4)}.loyalty-reward-card.is-expired{opacity:.55;filter:grayscale(.6)}.loyalty-reward-card__emoji{font-size:32px;flex-shrink:0;width:48px;height:48px;background:rgba(var(--color-brand-rgb-500),.08);border-radius:12px;display:grid;place-items:center}.loyalty-reward-card__body{flex:1;min-width:0}.loyalty-reward-card__label{font-family:var(--font-family-display, "Fraunces"),serif;font-size:15px;font-weight:700;color:var(--color-ink-900, #2F1E19);margin-bottom:3px;line-height:1.3}.loyalty-reward-card__meta{font-size:11px;color:var(--color-ink-600, #7A5C51)}.loyalty-reward-card__cta{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;background:var(--primary, var(--orange-500));color:#fff;border:0;border-radius:10px;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:all .12s ease;flex-shrink:0}.loyalty-reward-card__cta:hover{background:var(--color-brand-600);transform:translateY(-1px)}.loyalty-reward-card__status{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px;flex-shrink:0}.loyalty-reward-card__status--used{background:#16a34a1f;color:#16a34a}.loyalty-reward-card__status--expired{background:#78716c29;color:#78716c}.loyalty-rank--loading,.loyalty-rank--empty{padding:60px 28px;text-align:center;color:var(--color-ink-600, #7A5C51);display:flex;flex-direction:column;align-items:center;gap:14px}.loyalty-rank__spinner{width:32px;height:32px;border:3px solid rgba(var(--color-brand-rgb-500),.18);border-top-color:var(--primary, var(--orange-500));border-radius:50%;animation:loyalty-spin .9s linear infinite}@keyframes loyalty-spin{to{transform:rotate(360deg)}}.loyalty-rank--empty h3{font-family:var(--font-family-display, "Fraunces"),serif;font-size:18px;margin:0;color:var(--color-ink-900, #2F1E19)}.loyalty-rank--empty p{font-size:13px;margin:0;max-width:280px;line-height:1.5}.loyalty-qr-overlay{position:fixed;inset:0;background:#140c08a6;backdrop-filter:blur(8px);z-index:2000;display:grid;place-items:center;padding:20px}.loyalty-qr-modal{position:relative;background:linear-gradient(165deg,#fff,#fff6ee);width:100%;max-width:380px;padding:32px 28px;border-radius:22px;text-align:center;box-shadow:0 30px 80px #00000073}.loyalty-qr-modal__close{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:50%;background:#0000000f;border:0;display:grid;place-items:center;cursor:pointer;color:var(--color-ink-700, #6A4F44)}.loyalty-qr-modal__close:hover{background:#0000001f}.loyalty-qr-modal__emoji{font-size:56px;line-height:1;margin-bottom:8px}.loyalty-qr-modal__rank{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;background:var(--primary, var(--orange-500));color:#fff;padding:4px 12px;border-radius:999px;margin-bottom:8px}.loyalty-qr-modal__title{font-family:var(--font-family-display, "Fraunces"),serif;font-size:22px;font-weight:800;color:var(--color-ink-900, #2F1E19);margin:0 0 6px}.loyalty-qr-modal__desc{font-size:13px;color:var(--color-ink-700, #6A4F44);margin:0 0 22px;line-height:1.5}.loyalty-qr-modal__qr{width:240px;height:240px;margin:0 auto 14px;background:#fff;border-radius:16px;padding:12px;box-shadow:0 12px 32px #00000026;display:grid;place-items:center}.loyalty-qr-modal__qr img{width:100%;height:100%;object-fit:contain}.loyalty-qr-modal__code{font-family:SF Mono,monospace;font-size:18px;font-weight:800;letter-spacing:.18em;color:var(--color-ink-900, #2F1E19);background:rgba(var(--color-brand-rgb-500),.08);padding:10px 16px;border-radius:10px;display:inline-block;margin-bottom:12px}.loyalty-qr-modal__hint{font-size:12px;color:var(--color-ink-600, #7A5C51);margin:0;line-height:1.5}.loyalty-rank__header-actions{display:flex;gap:6px}.loyalty-rank__icon-btn{width:32px;height:32px;border-radius:50%;background:rgba(var(--color-brand-rgb-500),.08);border:0;color:var(--primary, var(--orange-500));display:grid;place-items:center;cursor:pointer;transition:background .12s ease}.loyalty-rank__icon-btn:hover{background:rgba(var(--color-brand-rgb-500),.16)}.loyalty-rank.is-expanded{position:fixed;inset:0;background:var(--cream, #F7F2EC);z-index:2500;overflow-y:auto;padding-bottom:40px}.loyalty-rank__swipe-wrap{position:relative}.loyalty-card-tab{padding:6px 18px 0;display:flex;flex-direction:column;gap:18px}.loyalty-card-tap-hint{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--color-ink-600, #7A5C51);align-self:center;padding:5px 12px;background:rgba(var(--color-brand-rgb-500),.08);border-radius:999px}.loyalty-card-3d-wrap{perspective:1400px;display:grid;place-items:center;padding:8px 0;max-width:360px;margin:0 auto;width:100%}.loyalty-card-3d-cb{position:relative;width:100%;padding-top:63%;border-radius:22px;cursor:pointer;user-select:none}.loyalty-card-3d-cb__inner{position:absolute;inset:0;border-radius:22px;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.4,0,.2,1)}.loyalty-card-3d-cb.is-flipped .loyalty-card-3d-cb__inner{transform:rotateY(180deg)}.loyalty-card-3d-cb__face{position:absolute;inset:0;padding:16px 18px 14px;border-radius:22px;background:linear-gradient(135deg,var(--card-color),var(--card-color-light));color:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 18px 40px #0000004d,0 4px 12px #0000002e,0 0 0 1px #ffffff1f inset,0 -2px 8px #0000001f inset;display:flex;flex-direction:column;overflow:hidden}.loyalty-card-3d-cb__face *,.loyalty-card-3d-cb__face *:before,.loyalty-card-3d-cb__face *:after{font-family:inherit!important}.loyalty-card-3d-cb__face--front{justify-content:space-between}.loyalty-card-3d-cb__face--back{transform:rotateY(180deg);justify-content:space-between}.loyalty-card-3d-cb__pattern{position:absolute;inset:0;pointer-events:none;opacity:1;border-radius:inherit}.pattern-silk .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-silk .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-silk:before{background:linear-gradient(135deg,#fff0,#ffffff0a 25%,#ffffff2e 48%,#ffffff0f 60%,#fff0 78%,#0000001a)}.pattern-waves .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-waves .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-waves:before{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 50'%3E%3Cpath d='M0 25 Q 50 2 100 25 T 200 25' fill='none' stroke='%23ffffff' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E");background-size:200px 50px;background-repeat:repeat;opacity:.07}.pattern-diagonal .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-diagonal .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-diagonal:before{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 6px,transparent 6px 28px)}.pattern-circles .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-circles .loyalty-card-3d-cb__pattern,.loyalty-card-3d-cb__face.pattern-circles:before{background-image:radial-gradient(circle at 78% 28%,rgba(255,255,255,.22) 0%,transparent 30%),radial-gradient(circle at 22% 78%,rgba(255,255,255,.18) 0%,transparent 30%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.08) 0%,transparent 35%)}.loyalty-card-3d-cb__face.pattern-silk:before,.loyalty-card-3d-cb__face.pattern-waves:before,.loyalty-card-3d-cb__face.pattern-diagonal:before,.loyalty-card-3d-cb__face.pattern-circles:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit}.loyalty-card-3d-cb__deco{position:absolute;border-radius:50%;pointer-events:none;display:none}.pattern-circles .loyalty-card-3d-cb__deco,.loyalty-card-3d-cb__face.pattern-circles .loyalty-card-3d-cb__deco{display:block}.loyalty-card-3d-cb__deco--tr{top:-45px;right:-45px;width:160px;height:160px;background:#ffffff12}.loyalty-card-3d-cb__deco--bl{bottom:-25px;left:-25px;width:100px;height:100px;background:#ffffff0d}.loyalty-card-3d-cb__deco--tl{top:-45px;left:-45px;width:160px;height:160px;background:#ffffff12}.loyalty-cb__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;position:relative;z-index:1}.loyalty-cb__head--clean{justify-content:flex-start}.loyalty-cb__head--clean .loyalty-cb__brand-block{align-items:center}.loyalty-cb__head--clean .loyalty-cb__brand-icon{width:28px;height:28px;border-radius:8px}.loyalty-cb__head--clean .loyalty-cb__brand-name{font-size:16px;letter-spacing:-.015em}.loyalty-cb__brand-block{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.loyalty-cb__brand-icon{width:32px;height:32px;border-radius:9px;background:#ffffff2e;backdrop-filter:blur(6px);display:grid;place-items:center;flex-shrink:0}.loyalty-cb__brand-label{font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;opacity:.75;line-height:1;margin-bottom:2px}.loyalty-cb__brand-name{font-family:var(--font-family-display, "Fraunces"),serif;font-size:14px;font-weight:800;letter-spacing:-.01em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.loyalty-cb__pct-badge{position:relative;width:46px;height:46px;flex-shrink:0}.loyalty-cb__pct-label{position:absolute;inset:0;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff}.loyalty-cb__progress{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:0 4px}.loyalty-cb__progress-track{position:relative;height:6px;background:#ffffff29;border-radius:999px;margin:4px 0 0}.loyalty-cb__progress-fill{position:absolute;top:0;left:0;bottom:0;background:#fff;border-radius:999px;box-shadow:0 0 8px #fff6;transition:width .7s cubic-bezier(.4,0,.2,1);z-index:1}.loyalty-cb__dot{position:absolute;top:50%;transform:translate(-50%,-50%);width:4px;height:4px;border-radius:50%;background:#ffffff73;z-index:2}.loyalty-cb__dot.is-reached{background:#fff;box-shadow:0 0 6px #fff9}.loyalty-cb__progress-text{font-size:11px;font-weight:600;letter-spacing:.01em;opacity:.92;text-align:center}.loyalty-cb__progress-text b{font-family:var(--font-family-display, "Fraunces"),serif;font-size:14px;font-weight:800;letter-spacing:-.01em}.loyalty-cb__rules-btn{position:absolute;bottom:8px;left:8px;width:22px;height:22px;border-radius:50%;background:#ffffff24;backdrop-filter:blur(6px);border:0;color:#ffffffbf;display:grid;place-items:center;cursor:pointer;z-index:5;transition:all .15s ease;opacity:.65}.loyalty-cb__rules-btn:hover{opacity:1;background:#ffffff40;transform:scale(1.1)}.loyalty-rules-hero{display:flex;gap:14px;align-items:flex-start;padding:16px;background:linear-gradient(135deg,rgba(var(--color-brand-rgb-500),.08),#4b8f9e14);border:1px solid rgba(var(--color-brand-rgb-500),.18);border-radius:14px;color:var(--color-ink-900, #2F1E19)}.loyalty-rules-hero svg{color:var(--primary, var(--orange-500));flex-shrink:0;margin-top:2px}.loyalty-rules-hero p{margin:0;font-size:13px;line-height:1.5}.loyalty-rules-hero b{color:var(--color-ink-900, #2F1E19)}.loyalty-cb__stamps{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;position:relative;z-index:1;flex:1;align-content:center}.loyalty-cb__stamp{aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);background:#ffffff14;display:grid;place-items:center;color:var(--card-color);transition:all .3s ease}.loyalty-cb__stamp.is-filled{background:#fff;border-color:#fff;box-shadow:0 2px 8px #00000040}.loyalty-cb__foot{display:flex;align-items:flex-end;justify-content:space-between;position:relative;z-index:1}.loyalty-cb__small{font-size:9px;font-weight:700;opacity:.75;letter-spacing:.04em;text-transform:uppercase}.loyalty-cb__rank-name{font-family:var(--font-family-display, "Fraunces"),serif;font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1}.loyalty-cb__nickname{font-size:11px;font-weight:600;font-style:italic;opacity:.78;margin-top:4px}.loyalty-cb__brandmark{font-family:var(--font-family-display, "Fraunces"),serif;font-size:8px;font-weight:700;letter-spacing:.22em;opacity:.4;text-transform:uppercase;align-self:flex-end}.loyalty-cb__brandmark--top{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:none;opacity:.85;margin-top:2px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.loyalty-cb__back-head{display:flex;gap:10px;align-items:center;position:relative;z-index:1}.loyalty-cb__qr-wrap{flex:1;display:grid;place-items:center;position:relative;z-index:1;padding:2px 0}.loyalty-cb__qr{background:#fff;padding:10px;border-radius:12px;box-shadow:0 4px 18px #00000047;animation:loyalty-qr-pulse 2.5s ease-in-out infinite;display:inline-flex;align-items:center;justify-content:center}.loyalty-cb__qr svg{display:block}.loyalty-cb__qr img{display:block;width:110px;height:110px;border-radius:6px}@keyframes loyalty-qr-pulse{0%,to{opacity:.92}50%{opacity:1;transform:scale(1.02)}}.loyalty-cb__back-foot{display:flex;justify-content:space-between;font-size:9px;font-weight:700;opacity:.7;text-transform:uppercase;letter-spacing:.05em;position:relative;z-index:1}.loyalty-wallet-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.loyalty-wallet-action{display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 8px;border-radius:14px;font-family:inherit;font-size:10px;font-weight:700;cursor:pointer;transition:all .15s ease;border:0}.loyalty-wallet-action--ghost{background:var(--color-paper-100, #F9F5EE);color:var(--color-ink-900, #2F1E19);border:1.5px solid var(--color-paper-300, #E0D2C2)}.loyalty-wallet-action--ghost:hover{border-color:var(--primary, var(--orange-500));color:var(--primary, var(--orange-500))}.loyalty-wallet-action--apple{background:#1a1a1a;color:#fff}.loyalty-wallet-action--apple:hover{background:#000;transform:translateY(-1px)}.loyalty-wallet-action--google{background:#fff;color:var(--color-ink-900, #2F1E19);border:1.5px solid var(--color-paper-300, #E0D2C2)}.loyalty-wallet-action--google:hover{border-color:#4285f4}.loyalty-card-3d,.loyalty-card-3d__face,.loyalty-card-3d__pattern,.loyalty-card-3d__head,.loyalty-card-3d__brand,.loyalty-card-3d__resto,.loyalty-card-3d__rank-badge,.loyalty-card-3d__center,.loyalty-card-3d__rank-name,.loyalty-card-3d__nickname,.loyalty-card-3d__foot,.loyalty-card-3d__small,.loyalty-card-3d__big,.loyalty-card-3d__hint,.loyalty-card-3d__back-label,.loyalty-card-3d__back-rank,.loyalty-card-3d__back-bar,.loyalty-card-3d__back-fill,.loyalty-card-3d__back-meta,.loyalty-card-3d__max,.loyalty-wallet-buttons,.loyalty-wallet-btn{display:none}.loyalty-card-3d{position:relative;width:320px;height:200px;background:transparent;border:0;cursor:pointer;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.65,0,.35,1);border-radius:18px;font-family:inherit;text-align:left}.loyalty-card-3d.is-flipped{transform:rotateY(180deg)}.loyalty-card-3d__face{position:absolute;inset:0;border-radius:18px;padding:18px 20px;background:linear-gradient(135deg,var(--card-color),var(--card-color-light));color:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 12px 32px #0003,0 0 0 1px #ffffff1a inset;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.loyalty-card-3d__face--back{transform:rotateY(180deg)}.loyalty-card-3d__pattern{position:absolute;inset:0;pointer-events:none;opacity:.2}.pattern-dots .loyalty-card-3d__pattern{background-image:radial-gradient(circle,#fff 1.5px,transparent 1.5px);background-size:18px 18px}.pattern-grid .loyalty-card-3d__pattern{background-image:linear-gradient(to right,rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.5) 1px,transparent 1px);background-size:24px 24px}.pattern-diagonal .loyalty-card-3d__pattern{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.3) 0 1px,transparent 1px 14px)}.pattern-circles .loyalty-card-3d__pattern{background-image:radial-gradient(circle at 80% 20%,rgba(255,255,255,.25) 0%,transparent 35%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.2) 0%,transparent 35%)}.loyalty-card-3d__head{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}.loyalty-card-3d__brand{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.85}.loyalty-card-3d__resto{font-family:var(--font-family-display, "Fraunces"),serif;font-size:19px;font-weight:800;letter-spacing:-.01em;line-height:1.1}.loyalty-card-3d__rank-badge{width:38px;height:38px;border-radius:11px;background:#fff3;backdrop-filter:blur(8px);display:grid;place-items:center;flex-shrink:0}.loyalty-card-3d__center{position:relative;z-index:1}.loyalty-card-3d__rank-name{font-family:var(--font-family-display, "Fraunces"),serif;font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1}.loyalty-card-3d__nickname{font-size:12px;font-weight:600;opacity:.9;margin-top:4px;font-style:italic}.loyalty-card-3d__foot{display:flex;justify-content:space-between;align-items:flex-end;position:relative;z-index:1}.loyalty-card-3d__small{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.85}.loyalty-card-3d__big{font-family:var(--font-family-display, "Fraunces"),serif;font-size:22px;font-weight:800;line-height:1}.loyalty-card-3d__hint{display:inline-flex;align-items:center;gap:3px;font-size:9px;opacity:.7;font-weight:600}.loyalty-card-3d__back-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.85;position:relative;z-index:1}.loyalty-card-3d__back-rank{font-family:var(--font-family-display, "Fraunces"),serif;font-size:28px;font-weight:800;margin-top:4px;position:relative;z-index:1}.loyalty-card-3d__back-bar{margin:18px 0 8px;height:10px;background:#0003;border-radius:999px;overflow:hidden;position:relative;z-index:1}.loyalty-card-3d__back-fill{height:100%;background:#fff;border-radius:999px;transition:width .6s ease}.loyalty-card-3d__back-meta{display:flex;justify-content:space-between;font-size:12px;font-weight:600;position:relative;z-index:1}.loyalty-card-3d__back-meta b{font-weight:800}.loyalty-card-3d__max{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;position:relative;z-index:1;font-family:var(--font-family-display, "Fraunces"),serif;font-size:16px;font-weight:700;gap:6px}.loyalty-card-3d__max small{font-size:12px;opacity:.85;font-weight:500;font-family:inherit}.loyalty-wallet-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.loyalty-wallet-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 14px;border:0;border-radius:12px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease}.loyalty-wallet-btn--apple{background:#000;color:#fff}.loyalty-wallet-btn--apple:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000004d}.loyalty-wallet-btn--google{background:#4285f4;color:#fff}.loyalty-wallet-btn--google:hover{background:#357ae8;transform:translateY(-1px);box-shadow:0 6px 18px #4285f466}.loyalty-wallet-btn--ghost{grid-column:1 / -1;background:rgba(var(--color-brand-rgb-500),.08);color:var(--primary, var(--orange-500))}.loyalty-wallet-btn--ghost:hover{background:rgba(var(--color-brand-rgb-500),.16)}.loyalty-card-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px;background:var(--color-paper-100, #F9F5EE);border-radius:14px;border:1px solid rgba(47,30,25,.06)}.loyalty-card-mini-stats>div{display:flex;flex-direction:column;gap:2px;text-align:center}.loyalty-mini-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-600, #7A5C51)}.loyalty-mini-value{font-size:13px;font-weight:700;color:var(--color-ink-900, #2F1E19)}.loyalty-custom-tab{padding:0 18px;display:flex;flex-direction:column;gap:18px}.loyalty-custom-tab__intro{font-size:13px;color:var(--color-ink-700, #6A4F44);margin:0;line-height:1.5}.loyalty-custom-preview{padding:12px 0;display:grid;place-items:center}.loyalty-custom-section{display:flex;flex-direction:column;gap:8px}.loyalty-custom-section__title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-600, #7A5C51);margin:0}.loyalty-custom-section__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.loyalty-color-mode-switch{display:inline-flex;background:#2f1e190f;border-radius:999px;padding:3px;gap:2px}.loyalty-color-mode-btn{border:0;background:transparent;padding:5px 14px;font-size:12px;font-weight:600;color:var(--color-ink-600, #7A5C51);border-radius:999px;cursor:pointer;transition:all .18s ease;font-family:inherit}.loyalty-color-mode-btn:hover{color:var(--color-ink, #2F1E19)}.loyalty-color-mode-btn.is-active{background:var(--color-ink, #2F1E19);color:#fff;box-shadow:0 2px 8px #2f1e1926}.loyalty-color-block+.loyalty-color-block{margin-top:12px}.loyalty-color-block__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-600, #7A5C51);margin-bottom:6px;opacity:.7}.loyalty-color-grid{display:flex;flex-wrap:wrap;gap:8px}.loyalty-color-swatch{width:36px;height:36px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:grid;place-items:center;color:#fff;transition:transform .12s ease}.loyalty-color-swatch:hover{transform:scale(1.08)}.loyalty-color-swatch.is-active{outline:3px solid var(--primary, var(--orange-500));outline-offset:2px}.loyalty-color-custom{position:relative;width:36px;height:36px;border-radius:50%;border:2px dashed rgba(255,255,255,.6);display:grid;place-items:center;color:#fff;cursor:pointer}.loyalty-color-custom input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer}.loyalty-pattern-grid{display:flex;flex-wrap:wrap;gap:6px}.loyalty-pattern-chip{padding:8px 14px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:999px;font-family:inherit;font-size:12px;font-weight:600;color:var(--color-ink-700, #6A4F44);cursor:pointer;transition:all .15s ease}.loyalty-pattern-chip:hover{border-color:var(--primary, var(--orange-500))}.loyalty-pattern-chip.is-active{background:var(--primary, var(--orange-500));border-color:var(--primary, var(--orange-500));color:#fff}.loyalty-custom-input{padding:11px 14px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;font-family:inherit;font-size:14px;color:var(--color-ink-900, #2F1E19);outline:0;transition:border-color .12s ease,box-shadow .12s ease}.loyalty-custom-input:focus{border-color:var(--primary, var(--orange-500));box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.12)}.loyalty-custom-actions{display:flex;gap:8px;padding-top:10px;border-top:1px solid rgba(47,30,25,.06)}.loyalty-custom-section__hint{font-size:11px;color:var(--color-ink-600, #7A5C51);margin:-2px 0 4px;font-style:italic}.loyalty-custom-preview-wrap{display:grid;place-items:center;padding:8px 0 16px;max-width:360px;margin:0 auto;width:100%}.loyalty-custom-preview-card{position:relative;width:100%;padding-top:63%;border-radius:22px;filter:drop-shadow(0 12px 30px rgba(0,0,0,.2))}.loyalty-custom-preview-card .loyalty-card-3d-cb__face{border-radius:22px}.loyalty-cb__sticker-bg{position:absolute;bottom:-8px;right:-8px;width:130px;height:130px;opacity:.22;pointer-events:none;z-index:0;mix-blend-mode:overlay;filter:brightness(1.4);object-fit:contain;border-radius:0;background:transparent;padding:0;backdrop-filter:none}.loyalty-cb__sticker-bg--hari{width:150px;height:150px;bottom:4px;right:4px;opacity:.18;mix-blend-mode:screen;filter:brightness(0) invert(1)}.loyalty-font-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.loyalty-font-chip{display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 8px;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;cursor:pointer;transition:all .15s ease;color:var(--color-ink-900, #2F1E19)}.loyalty-font-chip:hover{border-color:var(--primary, var(--orange-500));transform:translateY(-1px)}.loyalty-font-chip.is-active{background:rgba(var(--color-brand-rgb-500),.06);border-color:var(--primary, var(--orange-500));box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.12)}.loyalty-font-chip__sample{font-size:22px;font-weight:700;line-height:1;letter-spacing:-.02em}.loyalty-font-chip__label{font-size:10px;font-weight:600;font-family:Space Grotesk,sans-serif;color:var(--color-ink-700, #6A4F44);letter-spacing:.02em}.loyalty-sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:8px}.loyalty-sticker-chip{width:100%;aspect-ratio:1;display:grid;place-items:center;background:#fff;border:1.5px solid var(--color-paper-300, #E0D2C2);border-radius:12px;cursor:pointer;transition:all .15s ease;color:var(--color-ink-500, #9B8175);padding:8px}.loyalty-sticker-chip:hover{border-color:var(--primary, var(--orange-500));transform:translateY(-1px) scale(1.05)}.loyalty-sticker-chip.is-active{background:rgba(var(--color-brand-rgb-500),.06);border-color:var(--primary, var(--orange-500));box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.14)}.loyalty-sticker-chip img{width:100%;height:100%;object-fit:contain;display:block}.loyalty-custom-btn{flex:1;padding:12px 16px;border:0;border-radius:12px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}.loyalty-custom-btn--primary{background:var(--primary, var(--orange-500));color:#fff}.loyalty-custom-btn--primary:hover{background:var(--color-brand-600)}.loyalty-custom-btn--primary:disabled{opacity:.55;cursor:not-allowed}.loyalty-custom-btn--ghost{background:#2f1e190f;color:var(--color-ink-700, #6A4F44)}.loyalty-custom-btn--ghost:hover{background:#2f1e191f}.loyalty-info-overlay{position:fixed;inset:0;background:#140c088c;backdrop-filter:blur(8px);z-index:2400}.loyalty-info-modal{position:fixed;bottom:0;left:0;right:0;background:var(--cream, #F7F2EC);border-radius:24px 24px 0 0;max-height:92vh;overflow:hidden;box-shadow:0 -20px 60px #00000040;display:flex;flex-direction:column}.loyalty-info-modal__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;border-bottom:1px solid rgba(47,30,25,.06);flex-shrink:0;position:relative;z-index:5;box-shadow:0 2px 8px #0000000a;min-height:56px}.loyalty-info-modal__header h2{font-family:var(--font-family-display, "Fraunces"),serif;font-size:18px;font-weight:700;margin:0;color:var(--color-ink-900, #2F1E19)}.loyalty-info-modal__back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px 8px 10px;background:rgba(var(--color-brand-rgb-500),.1);border:0;border-radius:999px;color:var(--primary, var(--orange-500));font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .12s ease}.loyalty-info-modal__back-btn:hover{background:rgba(var(--color-brand-rgb-500),.18)}.loyalty-info-modal__back-btn:active{transform:scale(.97)}.loyalty-info-modal__close-x{width:36px;height:36px;border-radius:50%;background:#0000000f;border:0;color:var(--color-ink-700, #6A4F44);display:grid;place-items:center;cursor:pointer;transition:background .12s ease;flex-shrink:0}.loyalty-info-modal__close-x:hover{background:#0000001f;color:var(--color-ink-900, #2F1E19)}.loyalty-info-modal__floating-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;background:#fff;border:0;color:var(--color-ink-900, #2F1E19);display:grid;place-items:center;cursor:pointer;z-index:100;box-shadow:0 4px 14px #0000002e,0 1px 3px #0000001a;transition:all .15s ease}.loyalty-info-modal__floating-close:hover{background:var(--primary, var(--orange-500));color:#fff;transform:scale(1.05);box-shadow:0 6px 18px rgba(var(--color-brand-rgb-500),.4)}.loyalty-info-modal__floating-close:active{transform:scale(.95)}.loyalty-info-modal__close-bottom{display:block;width:100%;margin-top:14px;padding:14px 22px;background:var(--primary, var(--orange-500));color:#fff;border:0;border-radius:14px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s ease;box-shadow:0 6px 18px rgba(var(--color-brand-rgb-500),.3)}.loyalty-info-modal__close-bottom:hover{background:var(--color-brand-600);transform:translateY(-1px);box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.4)}.loyalty-info-modal__close-bottom:active{transform:translateY(0)}.loyalty-info-modal__body{padding:20px 18px 60px;display:flex;flex-direction:column;gap:26px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.loyalty-info-modal__intro{font-size:14px;color:var(--color-ink-800, #5A3A2F);line-height:1.6;margin:0}.loyalty-info-modal__body section h3{font-family:var(--font-family-display, "Fraunces"),serif;font-size:18px;font-weight:700;margin:0 0 10px;color:var(--color-ink-900, #2F1E19)}.loyalty-info-rules{display:flex;flex-direction:column;gap:10px}.loyalty-info-rule{display:flex;gap:14px;padding:14px;background:#fff;border-radius:14px;align-items:flex-start;border:1px solid rgba(47,30,25,.06)}.loyalty-info-rule__icon{font-size:24px;flex-shrink:0;width:44px;height:44px;background:rgba(var(--color-brand-rgb-500),.08);border-radius:12px;display:grid;place-items:center}.loyalty-info-rule div{display:flex;flex-direction:column;gap:3px}.loyalty-info-rule b{font-size:14px;font-weight:700;color:var(--color-ink-900, #2F1E19)}.loyalty-info-rule span{font-size:12px;color:var(--color-ink-700, #6A4F44);line-height:1.5}.loyalty-info-ranks{display:flex;flex-direction:column;gap:10px}.loyalty-info-rank-card{background:#fff;border-left:4px solid;border-radius:12px;padding:14px 16px;box-shadow:0 2px 8px #0000000a}.loyalty-info-rank-card__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.loyalty-info-rank-card__name{font-family:var(--font-family-display, "Fraunces"),serif;font-size:17px;font-weight:700}.loyalty-info-rank-card__stamps{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-600, #7A5C51)}.loyalty-info-rank-card__desc{font-size:13px;color:var(--color-ink-700, #6A4F44);line-height:1.5;margin-bottom:8px}.loyalty-info-rank-card__rewards b{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-600, #7A5C51);display:block;margin-bottom:4px}.loyalty-info-rank-card__rewards ul{margin:0;padding-left:18px;font-size:12px;color:var(--color-ink-800, #5A3A2F);line-height:1.6}.loyalty-info-faq{display:flex;flex-direction:column;gap:8px}.loyalty-info-faq__item{background:#fff;border-radius:12px;padding:14px 16px;border:1px solid rgba(47,30,25,.06);cursor:pointer}.loyalty-info-faq__item summary{font-weight:700;font-size:14px;color:var(--color-ink-900, #2F1E19);cursor:pointer;list-style:none;position:relative;padding-right:24px}.loyalty-info-faq__item summary:after{content:"+";position:absolute;right:0;top:-2px;font-size:22px;font-weight:400;color:var(--primary, var(--orange-500));transition:transform .15s ease}.loyalty-info-faq__item[open] summary:after{transform:rotate(45deg)}.loyalty-info-faq__item p{font-size:13px;color:var(--color-ink-700, #6A4F44);line-height:1.5;margin:8px 0 0}.loyalty-info-benchmarks{display:flex;flex-direction:column;gap:10px}.loyalty-info-benchmark{background:#fff;border:1px solid rgba(47,30,25,.08);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}.loyalty-info-benchmark__brand{font-family:var(--font-family-display, "Fraunces"),serif;font-size:15px;font-weight:700;color:var(--color-ink-900, #2F1E19);margin-bottom:2px}.loyalty-info-benchmark__row{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.4;color:var(--color-ink-800, #5A3A2F)}.loyalty-info-benchmark__tag{flex-shrink:0;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:6px;width:60px;text-align:center;line-height:1.6}.loyalty-info-benchmark__row--good .loyalty-info-benchmark__tag{background:#16a34a1f;color:#16a34a}.loyalty-info-benchmark__row--bad .loyalty-info-benchmark__tag{background:rgba(var(--color-brand-rgb-600),.12);color:var(--color-brand-600)}.loyalty-info-benchmark__row--hari .loyalty-info-benchmark__tag{background:var(--primary, var(--orange-500));color:#fff}.loyalty-info-benchmark__row--hari{font-weight:600;color:var(--color-ink-900, #2F1E19)}.loyalty-rank__gifts-list{display:grid;gap:12px;margin:0 0 20px}.loyalty-gift-card{display:grid;gap:12px;padding:14px;border-radius:16px;background:var(--surface-1, #fff);border:1px solid var(--color-ink-50, rgba(47, 30, 25, .08));box-shadow:0 2px 8px #5c3d2e0f}.loyalty-gift-card.is-used,.loyalty-gift-card.is-expired{opacity:.7}.loyalty-gift-card__head{display:flex;align-items:flex-start;gap:10px}.loyalty-gift-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:rgba(var(--color-brand-rgb-500),.1);color:var(--color-brand-600);flex-shrink:0}.loyalty-gift-card__title-block{display:grid;gap:2px;min-width:0}.loyalty-gift-card__title{font-family:var(--font-display, "Fraunces"),serif;font-size:15px;font-weight:700;color:var(--color-ink-900, #2F1E19);line-height:1.25}.loyalty-gift-card__meta{display:flex;flex-wrap:wrap;gap:4px;font-size:12px;color:var(--color-ink-500, #7A6A60);line-height:1.4}.loyalty-gift-card__qr-wrap{display:grid;justify-items:center;gap:6px;padding:10px;background:var(--surface-2, #F7F2EC);border-radius:12px}.loyalty-gift-card__qr{background:#fff;padding:6px;border-radius:8px;line-height:0}.loyalty-gift-card__qr svg{display:block}.loyalty-gift-card__code{font-family:JetBrains Mono,SF Mono,monospace;font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--color-ink-700, #4A3A30)}.loyalty-gift-card__footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.phone-input{position:relative;width:100%}.phone-input__box{display:flex;align-items:center;gap:2px;background:var(--color-white, #fff);border:1px solid var(--color-border, rgba(47, 30, 25, .12));border-radius:var(--radius-md, 12px);transition:border-color .18s ease,box-shadow .18s ease}.phone-input__box:focus-within{border-color:var(--color-primary, #e85d04);box-shadow:0 0 0 3px #e85d041f}.phone-input__box--error{border-color:var(--color-error, #c0392b)}.phone-input__country{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:12px 10px 12px 14px;background:none;border:none;border-right:1px solid var(--color-border, rgba(47, 30, 25, .1));border-radius:var(--radius-md, 12px) 0 0 var(--radius-md, 12px);cursor:pointer;color:var(--color-ink, #2f1e19);font-family:inherit;font-size:.9rem}.phone-input__country:hover{background:var(--color-paper, #f7f2ec)}.phone-input__flag{font-size:1.15rem;line-height:1}.phone-input__iso{font-weight:600;font-size:.78rem;letter-spacing:.02em;color:var(--color-ink-soft, #7a5c51)}.phone-input__dial{font-variant-numeric:tabular-nums;color:var(--color-ink-soft, #7a5c51)}.phone-input__chevron{color:var(--color-ink-soft, #7a5c51);flex-shrink:0}.phone-input__field{flex:1;min-width:0;padding:12px 14px;border:none;background:none;font-family:inherit;font-size:1rem;color:var(--color-ink, #2f1e19);letter-spacing:.02em;font-variant-numeric:tabular-nums}.phone-input__field:focus{outline:none}.phone-input__check{flex-shrink:0;margin-right:14px;color:var(--color-success, #2e7d32)}.phone-input__list{position:absolute;z-index:40;top:calc(100% + 6px);left:0;right:0;max-height:260px;overflow-y:auto;margin:0;padding:6px;list-style:none;background:var(--color-white, #fff);border:1px solid var(--color-border, rgba(47, 30, 25, .12));border-radius:var(--radius-md, 12px);box-shadow:0 8px 28px #5c3d2e29}.phone-input__option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:var(--radius-sm, 8px);cursor:pointer;text-align:left;font-family:inherit;font-size:.92rem;color:var(--color-ink, #2f1e19)}.phone-input__option:hover,.phone-input__option:focus-visible{background:var(--color-paper, #f7f2ec)}.phone-input__option--active{background:#e85d0414;font-weight:600}.phone-input__name{flex:1}.phone-input__error{display:block;margin-top:6px;color:var(--color-error, #c0392b);font-size:.82rem;line-height:1.4}.pwd-strength{margin-top:10px}.pwd-strength__bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.pwd-strength__seg{height:4px;border-radius:999px;background:var(--color-beige, #eee4da);transition:background-color .22s ease}.pwd-strength__seg--lvl1{background:#d9534f}.pwd-strength__seg--lvl2{background:#e08a2e}.pwd-strength__seg--lvl3{background:#6b9b37}.pwd-strength__seg--lvl4{background:#2e7d32}.pwd-strength__label{margin-top:6px;font-size:.78rem;font-weight:600;letter-spacing:.02em}.pwd-strength__label--lvl0{color:var(--color-ink-soft, #7a5c51)}.pwd-strength__label--lvl1{color:#d9534f}.pwd-strength__label--lvl2{color:#b06a1c}.pwd-strength__label--lvl3{color:#557c2c}.pwd-strength__label--lvl4{color:#2e7d32}.pwd-strength__rules{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:4px}.pwd-strength__rule{display:flex;align-items:flex-start;gap:7px;font-size:.79rem;line-height:1.45;color:var(--color-ink-soft, #7a5c51)}.pwd-strength__rule svg{flex-shrink:0;margin-top:2px;opacity:.45}.pwd-strength__rule--ok{color:#2e7d32}.pwd-strength__rule--ok svg{opacity:1}.pwd-strength__rule--ko{color:var(--color-error, #c0392b)}.pwd-strength__rule--ko svg{opacity:1}.email-suggest{display:block;margin-top:6px;font-size:.82rem;color:var(--color-ink-soft, #7a5c51)}.email-suggest__btn{padding:0;border:none;background:none;font:inherit;font-weight:600;color:var(--color-primary, #e85d04);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-field-optional{font-style:normal;font-weight:400;opacity:.6;font-size:.86em}.auth-form-consent{display:flex;flex-direction:column;gap:14px;margin-top:6px}.auth-consent-row{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:.86rem;line-height:1.5;color:var(--color-ink-soft, #7a5c51)}.auth-consent-row input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin:1px 0 0;accent-color:var(--color-primary, #e85d04);cursor:pointer}.auth-consent-row span{flex:1}.auth-consent-row a{color:var(--color-primary, #e85d04);font-weight:600;text-decoration:underline;text-underline-offset:2px}.auth-consent-row a:hover{text-decoration-thickness:2px}.app{width:100%;max-width:var(--container-max, 980px);margin:0 auto;padding:clamp(14px,4vw,24px);padding-bottom:calc(90px + env(safe-area-inset-bottom,20px));transition:max-width .3s ease,padding .3s ease}.app--full{max-width:100%;padding:0}.landing{display:grid;gap:clamp(20px,5vw,40px);width:100%}.landing-hero{display:grid;gap:clamp(14px,3.5vw,24px);padding:clamp(16px,4vw,28px);border-radius:var(--radius-xl);background:linear-gradient(150deg,#fffaf3,#f6ecdf);box-shadow:var(--shadow);width:100%}.landing-brand{display:flex;align-items:center;gap:10px;font-size:clamp(12px,3vw,14px);color:var(--muted);flex-wrap:wrap}.landing-hero .hero-content h1{font-family:var(--font-display);font-size:clamp(24px,6vw,36px);margin:0 0 12px;line-height:1.2}.landing-hero .hero-content h1 span{color:var(--accent)}.hero-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:clamp(10px,2.5vw,12px);color:var(--taupe);margin:0 0 10px}.landing-hero .hero-subtitle{margin:0 0 18px;color:var(--muted);font-size:clamp(14px,3.5vw,16px);line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;gap:clamp(10px,2.5vw,14px);width:100%}@media(max-width:380px){.hero-actions{flex-direction:column}.hero-actions>*{width:100%;justify-content:center}}.marketing-card{background:#fff;border-radius:var(--radius-lg);padding:clamp(14px,3.5vw,20px);border:1px solid rgba(216,90,42,.2);box-shadow:var(--shadow-soft);width:100%}.marketing-card-inner{display:grid;gap:clamp(10px,2.5vw,14px)}.hero-tag{display:inline-flex;align-items:center;background:#d85a2a1a;color:var(--accent);font-size:clamp(10px,2.5vw,12px);padding:clamp(5px,1.5vw,8px) clamp(8px,2vw,12px);border-radius:999px;letter-spacing:.05em;text-transform:uppercase}.hero-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:clamp(10px,2.5vw,14px);width:100%}.hero-metrics strong{font-size:18px}.hero-metrics span{font-size:12px;color:var(--muted)}.value-grid,.pricing-grid{display:grid;gap:14px}.value-card,.pricing-card{background:#fffaf5;border-radius:var(--radius-lg);padding:16px;border:1px solid rgba(139,116,102,.18);box-shadow:var(--shadow-soft)}.value-card h3,.pricing-card h3{margin:0 0 6px;font-family:var(--font-display)}.value-card p,.pricing-card p{margin:0;color:var(--muted);font-size:14px}.demo-section,.pricing-section,.restaurant-grid{display:grid;gap:16px}.restaurant-card{display:grid;gap:12px;background:#fff;border-radius:var(--radius-lg);border:1px solid rgba(139,116,102,.15);box-shadow:var(--shadow-soft);overflow:hidden}.restaurant-image{height:180px;overflow:hidden}.restaurant-image img{width:100%;height:100%;object-fit:cover}.restaurant-info{display:grid;gap:6px;padding:16px}.restaurant-info h3{margin:0;font-family:var(--font-display)}.restaurant-info p{margin:0;color:var(--muted);font-size:14px}.restaurant-info span{font-size:12px;color:var(--taupe)}.restaurant-info button{width:fit-content;border:none;background:var(--accent);color:#fff;padding:8px 14px;border-radius:999px;cursor:pointer}.restaurant-card.empty{border-style:dashed;align-items:center}.pricing-card strong{font-size:20px}.cta-section{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#fff5ea,#fff);border:1px solid rgba(216,90,42,.2);box-shadow:var(--shadow-soft)}.auth-page{display:grid;gap:18px;max-width:420px;margin:20px auto 0}.auth-header{display:flex;align-items:center;gap:10px;justify-content:center}.auth-card{background:#fff;border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow);display:grid;gap:12px;text-align:center}.google-button{display:flex;justify-content:center}.lang-toggle{display:flex;justify-content:flex-end;gap:8px;margin-bottom:10px}.lang-toggle button{border:1px solid rgba(139,116,102,.25);background:#fffaf5;color:var(--muted);border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer;box-shadow:var(--shadow-soft)}.lang-toggle button:hover{color:var(--text)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 0 18px}.brand{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}.brand-title{font-family:var(--font-family);font-size:20px;letter-spacing:.02em;display:inline-flex;align-items:baseline;gap:4px}.brand-strong{color:var(--text);font-weight:600}.brand-soft{color:var(--accent);font-weight:600}.logo-mark{width:34px;height:34px;background:linear-gradient(135deg,var(--text),var(--accent));mask:url(/assets/img/logo_hari.svg) center / contain no-repeat;-webkit-mask:url(/assets/img/logo_hari.svg) center / contain no-repeat;display:inline-block}.divider{width:20px;height:1px;background:var(--taupe)}.brand-sub{letter-spacing:.04em;text-transform:uppercase}.cart-button{display:flex;align-items:center;gap:8px;background:var(--text);color:#fff6ee;border:none;border-radius:999px;padding:10px 16px;font-size:14px;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition);box-shadow:var(--shadow-soft)}.cart-button:hover{transform:translateY(-1px)}.cart-count{background:var(--accent);color:#fff;border-radius:999px;padding:4px 8px;font-size:12px}.status-banner{margin:6px 0 18px;padding:12px 16px;background:#fffaf5;border-radius:var(--radius-md);border:1px solid rgba(139,116,102,.2);font-size:14px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px;box-shadow:var(--shadow-soft)}.status-pill{background:var(--text);color:#fff;padding:6px 12px;border-radius:999px;font-size:12px;letter-spacing:.04em}.helper-text{margin:0;font-size:12px;color:var(--muted)}.loading{text-align:center;font-size:14px;color:var(--muted);padding:40px 0}.hidden{display:none!important}.hero{margin-bottom:28px;animation:fadeInUp .5s ease}.hero-card{display:grid;gap:18px;background:var(--card);border-radius:var(--radius-xl);padding:16px;box-shadow:var(--shadow)}.hero-image{border-radius:var(--radius-lg);overflow:hidden;height:210px}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-content{display:flex;flex-direction:column;gap:16px}.hero-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--taupe);margin:0 0 6px}.hero-content h1{font-family:var(--font-display);font-size:28px;margin:0 0 8px}.hero-tagline{margin:0;font-size:16px;color:var(--muted)}.hero-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.meta-label{margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--taupe)}.meta-value{margin:0;font-size:14px;color:var(--text)}.highlight{margin-bottom:28px}.section-header h2{font-family:var(--font-display);font-size:22px;margin:0 0 6px}.section-header p{margin:0;color:var(--muted)}.highlight-grid{display:grid;gap:14px;margin-top:14px}.service-card{background:#fff;border-radius:var(--radius-lg);padding:16px;display:grid;gap:12px;box-shadow:var(--shadow-soft);border:1px solid rgba(139,116,102,.18);margin-bottom:22px}.journey-gate{background:#fff;border-radius:var(--radius-xl);padding:18px;box-shadow:var(--shadow);display:grid;gap:16px;border:1px solid rgba(139,116,102,.15)}.journey-hero{display:grid;gap:12px}.journey-hero img{border-radius:var(--radius-lg);width:100%;height:180px;object-fit:cover}.journey-options{display:grid;gap:12px}.journey-option{border:1px solid rgba(139,116,102,.2);border-radius:var(--radius-lg);padding:16px;background:#fffaf5;display:grid;gap:10px;text-align:left;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}.journey-option:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.journey-option.primary{background:linear-gradient(135deg,#fff5ea,#fff);border-color:#d85a2a4d}.journey-option strong{font-size:16px}.journey-option span{font-size:13px;color:var(--muted)}.journey-steps{display:grid;gap:4px;font-size:12px;color:var(--taupe)}.journey-note{font-size:12px;color:var(--muted);margin:0}.journey-banner{background:#fffaf5;border:1px solid rgba(216,90,42,.2);border-radius:var(--radius-lg);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;box-shadow:var(--shadow-soft)}.journey-banner strong{display:block}.journey-banner span{font-size:12px;color:var(--muted)}@media(max-width:480px){.hero-card,.journey-gate{border-radius:var(--radius-xl, 22px)}}@media(min-width:768px){.hero-card{grid-template-columns:1.1fr 1fr}.highlight-grid{grid-template-columns:repeat(2,1fr)}.landing-hero{grid-template-columns:1.3fr .9fr;align-items:center}.value-grid,.pricing-grid,.restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-hero{grid-template-columns:1fr 1.2fr;align-items:center}}@media(min-width:1024px){.highlight-grid{grid-template-columns:repeat(2,1fr)}.value-grid,.pricing-grid,.restaurant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1280px){.hero-image{height:260px}.highlight-grid{grid-template-columns:repeat(3,1fr)}}.menu-page .header-logo-img{height:30px}.menu-page .header-notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,var(--color-brand-600),var(--orange-500));color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--menu-surface);box-shadow:0 2px 6px rgba(var(--color-brand-rgb-600),.35);pointer-events:none}.menu-page .header-cart-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,var(--color-brand-600),var(--orange-500));color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--menu-surface);box-shadow:0 2px 8px rgba(var(--color-brand-rgb-600),.3)}.restaurant-hero{width:100%;height:180px;overflow:hidden}.restaurant-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 8px;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--copper, var(--orange-500))}.reservation-cta-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;background:var(--orange-500);color:#fff;border-radius:10px;transition:background .22s ease,color .22s ease}.reservation-cta-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--orange-500);transition:color .22s ease,transform .22s cubic-bezier(.34,1.4,.64,1)}.popular-controls{display:none;gap:6px}.popular-control-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(var(--color-brand-rgb-600),.12);background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:none}.popular-control-btn:hover:not(:disabled){background:var(--copper);color:#fff;border-color:var(--copper)}.popular-control-btn:disabled{opacity:.3;cursor:not-allowed}.popular-carousel{position:relative}.popular-track{display:flex;gap:14px;padding:4px 0 12px;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.popular-track::-webkit-scrollbar{display:none}.popular-track .product-card-compact--portrait{flex:0 0 260px;width:260px;min-width:260px;max-width:260px;height:auto!important;min-height:auto;display:block;padding:0;border-radius:14px;overflow:hidden;scroll-snap-align:start;background:transparent;border:none;box-shadow:0 2px 12px #2f1e1914;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;position:relative}.popular-track .product-card-compact--portrait:hover{transform:translateY(-3px);box-shadow:0 8px 24px #2f1e1924}.popular-track .product-card-compact--portrait .product-card-image-wrapper{width:100%;aspect-ratio:16 / 9;height:auto;border-radius:14px;border:none;overflow:hidden;position:relative;background:var(--ink)}.popular-track .product-card-compact--portrait .product-card-image-wrapper:after{content:"";position:absolute;bottom:0;left:0;right:0;height:70%;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.4) 40%,transparent 100%);pointer-events:none;z-index:1}.popular-track .product-card-compact--portrait .product-card-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.popular-track .product-card-compact--portrait:hover .product-card-image{transform:scale(1.08)}.popular-track .product-card-compact--portrait .product-card-image-wrapper:before{content:"Populaire";position:absolute;top:12px;left:12px;padding:6px 12px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);color:#fff;font-size:11px;font-weight:700;border-radius:6px;z-index:3;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 2px 8px rgba(var(--color-brand-rgb-600),.4)}.popular-track .product-card-compact--portrait:nth-child(n+4) .product-card-image-wrapper:before{display:none}.popular-track .product-card-compact--portrait .product-card-fav{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-brand-soft-15);background:rgba(var(--color-surface-rgb),.95);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:0 4px 14px rgba(var(--color-ink-rgb),.15);transition:transform .2s ease,background .2s ease,border-color .2s ease}.popular-track .product-card-compact--portrait .product-card-fav:hover{transform:scale(1.1);background:var(--white);border-color:rgba(var(--color-brand-rgb-600),.3)}.popular-track .product-card-compact--portrait .product-card-fav.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 6px 18px var(--color-brand-soft-35)}.popular-track .product-card-compact--portrait .product-card-info{position:absolute;bottom:0;left:0;right:60px;padding:16px;z-index:2;background:transparent}.popular-track .product-card-compact--portrait .product-card-title{font-size:16px;font-weight:600;color:#fff;margin:0 0 4px;font-family:var(--font-display);letter-spacing:-.01em;text-shadow:0 1px 3px rgba(0,0,0,.3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.popular-track .product-card-compact--portrait .product-card-meta{margin-top:0}.popular-track .product-card-compact--portrait .product-card-price{font-size:15px;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4)}.popular-track .product-card-compact--portrait .product-card-actions{position:absolute;bottom:12px;right:12px;padding:0;z-index:4}.popular-track .product-card-compact--portrait .add-btn{width:42px;height:42px;min-width:42px;border-radius:50%;background:var(--color-brand-gradient);color:var(--white);border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px var(--color-brand-soft-35);cursor:pointer;transition:all .2s ease;padding:0;font-size:0}.popular-track .product-card-compact--portrait .add-btn:hover{transform:scale(1.08);box-shadow:0 8px 24px var(--color-brand-soft-45)}.popular-track .product-card-compact--portrait .add-btn svg{width:20px;height:20px}.popular-track .product-card-compact--portrait .add-stepper{background:var(--white);border-radius:999px;box-shadow:0 4px 16px #0003;display:flex;align-items:center;gap:0;padding:4px 6px}.popular-track .product-card-compact--portrait .stepper-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.popular-track .product-card-compact--portrait .stepper-btn:hover{background:var(--copper);color:var(--white)}.popular-track .product-card-compact--portrait .stepper-qty{min-width:28px;text-align:center;font-size:15px;font-weight:700;color:var(--ink)}.menu-section-title{font-size:22px;font-weight:700;color:var(--ink);margin:0;font-family:var(--font-display);letter-spacing:-.02em;position:relative;padding-left:14px}.menu-section-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:70%;background:var(--accent, var(--orange-500));border-radius:2px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 200px;height:156px;min-height:0;align-items:stretch}.menu-page .product-card-compact--list .product-card-image-wrapper{width:100%;height:100%;aspect-ratio:auto;align-self:stretch;overflow:hidden}.menu-page .product-card-compact--list .product-card-image{width:100%;height:100%;object-fit:cover}@media(min-width:768px){.menu-page{--menu-header-height: 64px;--menu-sticky-top: 64px;padding-bottom:120px}.menu-page .header-btn-text{display:inline}.restaurant-header{margin:16px var(--page-gutter) 12px;padding:16px 20px}.menu-top-banner{margin:14px var(--page-gutter) 8px}.menu-top-banner-img{height:clamp(190px,26vw,280px)}.restaurant-header--has-hero{padding:0}.restaurant-hero{height:240px}.restaurant-header--has-hero .restaurant-header-content{padding:16px 20px}.popular-section{padding:24px var(--page-gutter) 16px}.popular-carousel{margin:0;padding:0}.popular-track{padding:4px 0 16px}.popular-track .product-card-compact--portrait{flex:0 0 280px;width:280px;min-width:280px;max-width:280px}.popular-track .product-card-compact--portrait .product-card-title{font-size:17px}.popular-controls{display:flex}.category-sticky-bar{margin:0 calc(-1 * var(--page-gutter));padding:12px var(--page-gutter);border-radius:0}.category-sticky-inner{grid-template-columns:1fr auto;gap:14px;align-items:center}.category-search{order:2}.category-tabs-wrap{order:1}.category-search .search-bar{min-height:40px;padding:10px 16px}.category-lang-btn{min-height:40px}.menu-grid{grid-template-columns:repeat(2,1fr);gap:20px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 198px;min-height:172px;padding:18px;gap:18px}.product-card-compact--list .product-card-image-wrapper{width:198px;height:120px;border-radius:18px}.product-card-compact--list .product-card-title{font-size:17px}.product-card-compact--list .product-card-desc{font-size:13px}}@media(min-width:1024px){.menu-page.app-container{max-width:100%;margin:0}.menu-page{--menu-header-height: 68px;--menu-sticky-top: 68px}.menu-page .header{padding:8px var(--page-gutter)}.restaurant-header{margin:20px var(--page-gutter) 16px;padding:20px 24px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px}.menu-top-banner{margin:14px var(--page-gutter) 10px}.menu-top-banner-img{height:clamp(240px,20vw,330px)}.restaurant-header--has-hero{padding:0;grid-template-columns:1fr}.restaurant-hero{height:300px}.restaurant-header--has-hero .restaurant-header-content{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 24px}.restaurant-header--has-hero .restaurant-actions{justify-content:flex-end;flex-shrink:0}.restaurant-actions{justify-content:flex-end}.popular-section{padding:24px var(--page-gutter) 16px}.popular-header{padding:0;margin-bottom:18px}.popular-title{font-size:26px}.popular-controls{display:flex}.popular-track{padding:4px 0 24px;gap:20px}.popular-track .product-card-compact--portrait{flex:0 0 300px;width:300px;min-width:300px;max-width:300px}.popular-track .product-card-compact--portrait .product-card-actions{bottom:14px;right:14px}.popular-track .product-card-compact--portrait .add-btn{width:44px;height:44px;min-width:44px}.popular-track .product-card-compact--portrait .add-btn svg{width:22px;height:22px}.popular-track .product-card-compact--portrait .product-card-title{font-size:18px}.popular-track .product-card-compact--portrait .product-card-info{padding:18px}.menu-layout{display:block;max-width:100%}.menu-content{max-width:100%}.category-sticky-bar{margin:0 calc(-1 * var(--page-gutter));padding:12px var(--page-gutter);border-radius:0;box-shadow:0 1px rgba(var(--color-brand-rgb-600),.06)}.category-sticky-inner{grid-template-columns:1fr 280px;gap:20px;align-items:center}.category-search{max-width:320px}.category-search .search-bar{border-radius:16px}.category-sticky-bar .category-tab{padding:10px 20px;font-size:14px}.menu-section-block{scroll-margin-top:160px;padding:80px 0 36px}.menu-section-block:before{height:1px}.menu-section-header{margin-bottom:20px;padding-bottom:0}.menu-section-title{font-size:26px}.menu-grid{grid-template-columns:repeat(2,1fr);gap:18px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 214px;min-height:186px;padding:20px;gap:20px}.product-card-compact--list .product-card-title{font-size:17px}.product-card-compact--list .product-card-desc{font-size:13px}.product-card-compact--list .product-card-image-wrapper{width:214px;height:132px;border-radius:18px}.product-card-compact--list .add-btn-config{min-height:42px;padding:0 20px;font-size:15px}.product-card-compact--list .add-btn-icon{width:40px;height:40px;min-width:40px}.product-card-compact--list .add-btn-icon svg{width:20px;height:20px}.cart-bottom-bar{display:none}}@media(min-width:1280px){.menu-page.app-container,.menu-layout{max-width:100%}.restaurant-hero{height:340px}.restaurant-header--has-hero .restaurant-header-content{padding:20px 28px}.popular-track{padding:4px 0 16px;gap:18px}.popular-track .product-card-compact--portrait{flex:0 0 320px;width:320px;min-width:320px;max-width:320px}.popular-track .product-card-compact--portrait .product-card-actions{bottom:16px;right:16px}.popular-track .product-card-compact--portrait .product-card-title{font-size:20px}.popular-track .product-card-compact--portrait .product-card-price{font-size:15px}.popular-track .product-card-compact--portrait .product-card-info{padding:20px}.menu-grid{grid-template-columns:repeat(3,1fr);gap:24px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 228px;min-height:192px}.product-card-compact--list .product-card-image-wrapper{width:228px;height:140px}}@media(min-width:1536px){.menu-page.app-container{max-width:100%}.menu-grid{grid-template-columns:repeat(4,1fr);gap:26px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 244px;min-height:198px}.product-card-compact--list .product-card-image-wrapper{width:244px;height:150px}}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:38px;height:38px;min-width:38px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.35)}@media(min-width:768px){.menu-page .menu-grid{grid-template-columns:1fr;gap:28px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(240px,39%);min-height:214px}.menu-page .product-card-compact--list .product-card-info{padding:24px 22px 20px;gap:12px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(19px,2.4vw,23px)}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:50px;height:50px;min-width:50px}}@media(min-width:1024px){.menu-page .category-sticky-inner{grid-template-columns:1fr 320px;gap:24px}.menu-page .category-search{order:2;max-width:320px}.menu-page .category-tabs-wrap{order:1}.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(208px,35%);min-height:232px}.menu-page .product-card-compact--list .product-card-info{padding:28px 28px 24px;gap:14px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(20px,1.6vw,24px)}.menu-page .product-card-compact--list .product-card-image-wrapper:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,transparent 62%,rgba(47,30,25,.12) 100%);pointer-events:none;z-index:1}}@media(min-width:1280px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:34px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 36%;min-height:200px}.menu-page .product-card-compact--list .product-card-info{padding:18px 18px 14px;gap:8px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(15px,1.2vw,18px)}.menu-page .product-card-compact--list .product-card-desc{font-size:clamp(12px,.9vw,14px)}}@media(min-width:1536px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:36px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 36%;min-height:210px}}@media(max-width:1023px){.menu-page .menu-sections{padding-top:8px}.menu-page .menu-section-block{padding:60px 0 28px;scroll-margin-top:132px}.menu-page .menu-section-header{position:static;margin-bottom:14px;padding-bottom:0}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(110px,36%);min-height:130px}.menu-page .product-card-compact--list .product-card-side{min-width:0}.menu-page .product-card-compact--list .product-card-info{padding:12px 12px 10px;gap:5px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(15px,4.2vw,18px);line-height:1.2}.menu-page .product-card-compact--list .product-card-desc{font-size:clamp(12px,3.2vw,14px);-webkit-line-clamp:2}.menu-page .product-card-compact--list .product-card-price{font-size:clamp(14px,4vw,17px)}.menu-page .product-card-compact--list .product-card-image-wrapper{overflow:visible;isolation:auto}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-image{border-radius:0 18px 18px 0}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-actions{position:absolute!important;right:8px!important;bottom:8px!important;z-index:6;display:flex!important;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:38px;height:38px;min-width:38px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.35);display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav{position:absolute!important;top:8px!important;right:8px!important;width:30px;height:30px;min-width:30px;border-radius:50%;background:#fffffff7;display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important;z-index:7;border:1px solid rgba(var(--color-brand-rgb-600),.15);box-shadow:0 4px 14px #2f1e1926}.menu-page .product-card-compact--list .product-card-image-wrapper .add-stepper{transform:none;margin:0;border-radius:999px;max-width:min(120px,calc(100% - 4px))}}.large-group-cta-btn{margin-top:4px;padding:11px 20px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);border:none;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .2s;white-space:nowrap}.table-menu-fab{position:fixed;bottom:88px;right:20px;z-index:100;display:flex;align-items:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,#e56222,#f59e0b);color:#fff;border:none;border-radius:9999px;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 4px 20px #e5622266;transition:transform .15s,box-shadow .15s}.table-menu-fab:hover{transform:translateY(-2px);box-shadow:0 6px 28px #e5622280}.table-success-overlay{position:fixed;inset:0;z-index:200;background:var(--bg-primary, #fff);display:flex;align-items:center;justify-content:center;padding:24px}.table-success-panel{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:400px;width:100%}.table-success-icon{color:#22c55e}.table-success-title{font-size:1.6rem;font-weight:800;color:var(--text-primary, #1a1a1a);margin:0}.table-success-name{font-size:1rem;color:var(--text-secondary, #555);margin:0}.table-success-code-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 28px;background:#e5622212;border:2px dashed rgba(229,98,34,.3);border-radius:14px}.table-success-code-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #888)}.table-success-code{font-family:Courier New,Courier,monospace;font-size:2rem;font-weight:900;letter-spacing:4px;color:#e56222}.table-success-hint{font-size:.85rem;color:var(--text-muted, #888);margin:0;line-height:1.5}.table-success-actions{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:8px}.table-success-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;border:none;transition:transform .15s,opacity .15s}.table-success-btn:hover{transform:translateY(-1px)}.table-success-btn--primary{background:linear-gradient(135deg,#e56222,#f59e0b);color:#fff}.table-success-btn--secondary{background:transparent;border:1.5px solid var(--border-color, rgba(0,0,0,.12));color:var(--text-secondary, #555)}.commander-modal-overlay{position:fixed;inset:0;z-index:300;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;padding:0}@media(min-width:640px){.commander-modal-overlay{align-items:center;padding:24px}}.commander-modal{width:100%;max-width:480px;background:var(--bg-primary, #fff);border-radius:24px 24px 0 0;overflow:hidden}@media(min-width:640px){.commander-modal{border-radius:20px}}.commander-modal__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 0}.commander-modal__title{font-size:1.1rem;font-weight:700;margin:0;color:var(--text-primary, #1a1a1a)}.commander-modal__subtitle{font-size:.82rem;color:var(--text-muted, #888);margin:2px 0 0}.commander-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--bg-secondary, #f5f5f5);border-radius:50%;cursor:pointer;color:var(--text-secondary, #555)}.commander-modal__body{padding:16px 20px;display:flex;flex-direction:column;gap:16px}.commander-modal__field{display:flex;flex-direction:column;gap:6px}.commander-modal__label{display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #555)}.commander-modal__input{padding:12px 14px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:10px;font-size:1rem;background:var(--bg-primary, #fff);color:var(--text-primary, #1a1a1a);outline:none;transition:border-color .15s}.commander-modal__input:focus{border-color:#e56222}.commander-modal__hint{font-size:.72rem;color:var(--text-muted, #aaa);margin:0}.commander-modal__summary{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:10px}.commander-modal__item{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary, #555)}.commander-modal__more{font-size:.78rem;color:var(--text-muted, #aaa);margin:4px 0 0}.commander-modal__footer{display:flex;gap:10px;padding:16px 20px 24px;border-top:1px solid var(--border-color, rgba(0,0,0,.08))}.commander-modal__cancel{flex:1;padding:13px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;background:transparent;color:var(--text-secondary, #555)}.commander-modal__confirm{flex:2;padding:13px;background:linear-gradient(135deg,#e56222,#f59e0b);color:#fff;border:none;border-radius:12px;font-size:.9rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s}.commander-modal__confirm:disabled{opacity:.5;cursor:not-allowed}.commander-modal__confirm:not(:disabled):hover{transform:translateY(-1px)}.table-bill-page{min-height:100dvh;background:var(--bg-primary, #fff);display:flex;flex-direction:column;max-width:480px;margin:0 auto;position:relative;padding-bottom:140px}.table-bill-header{display:flex;align-items:center;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--border-color, rgba(0,0,0,.08));position:sticky;top:0;background:var(--bg-primary, #fff);z-index:10}.table-bill-back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:var(--bg-secondary, #f5f5f5);border-radius:50%;cursor:pointer;color:var(--text-secondary, #555);flex-shrink:0;transition:background .15s}.table-bill-back:hover{background:var(--bg-tertiary, #e8e8e8)}.table-bill-header-info{flex:1;min-width:0}.table-bill-header-title{display:flex;align-items:center;gap:8px;color:#e56222}.table-bill-header-title h1{font-size:1.1rem;font-weight:700;margin:0;color:var(--text-primary, #1a1a1a)}.table-bill-header-sub{font-size:.78rem;color:var(--text-muted, #888);margin:2px 0 0}.table-bill-refresh{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--text-muted, #aaa);transition:color .15s,transform .3s;flex-shrink:0}.table-bill-refresh:hover{color:#e56222;transform:rotate(180deg)}.table-bill-tabs{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-color, rgba(0,0,0,.06))}.table-bill-tab{flex:1;padding:10px 14px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;background:transparent;color:var(--text-secondary, #555);transition:all .15s}.table-bill-tab--active{background:linear-gradient(135deg,#e562221a,#f59e0b14);border-color:#e56222;color:#e56222}.table-bill-items{flex:1;padding:8px 0}.table-bill-section{padding:8px 16px}.table-bill-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #aaa);margin:8px 0 10px}.table-bill-section-title--paid{color:#22c55e}.table-bill-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:12px;margin-bottom:6px;background:var(--bg-secondary, #f8f8f8);transition:background .15s;cursor:default}.table-bill-item--selected{background:#e5622214;border:1.5px solid rgba(229,98,34,.2)}.table-bill-item--paid{opacity:.5}.table-bill-tabs:has(.table-bill-tab--active:last-child) .table-bill-item:not(.table-bill-item--paid){cursor:pointer}.table-bill-item-check{color:#e56222;flex-shrink:0}.table-bill-item-info{flex:1;min-width:0}.table-bill-item-name{display:block;font-size:.9rem;font-weight:600;color:var(--text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-bill-item--paid .table-bill-item-name{text-decoration:line-through}.table-bill-item-order{display:block;font-size:.72rem;color:var(--text-muted, #aaa);margin-top:2px}.table-bill-item-price{font-size:.9rem;font-weight:700;color:var(--text-primary, #1a1a1a);flex-shrink:0}.table-bill-item-price--paid{color:var(--text-muted, #aaa)}.table-bill-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 24px;color:var(--text-muted, #aaa);text-align:center}.table-bill-footer{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;background:var(--bg-primary, #fff);border-top:1px solid var(--border-color, rgba(0,0,0,.08));padding:16px 16px 28px;display:flex;flex-direction:column;gap:12px;box-shadow:0 -8px 32px #00000014}.table-bill-footer--done{align-items:center;text-align:center}.table-bill-totals{display:flex;flex-direction:column;gap:4px}.table-bill-totals-row{display:flex;justify-content:space-between;font-size:.88rem;color:var(--text-secondary, #555)}.table-bill-totals-row--paid{color:#22c55e;font-size:.78rem}.table-bill-totals-amount{font-weight:700;color:var(--text-primary, #1a1a1a)}.table-bill-pay-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;background:linear-gradient(135deg,#e56222,#f59e0b);color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s;box-shadow:0 4px 16px #e562224d}.table-bill-pay-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.table-bill-pay-btn:not(:disabled):hover{transform:translateY(-1px)}.table-bill-all-paid{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;color:#22c55e;margin:0 0 12px}.table-bill-back-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;background:transparent;color:var(--text-secondary, #555);transition:background .15s}.table-bill-back-btn:hover{background:var(--bg-secondary, #f5f5f5)}.table-bill-payment-overlay{position:fixed;inset:0;z-index:200;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center}.table-bill-payment-sheet{width:100%;max-width:480px;background:var(--bg-primary, #fff);border-radius:24px 24px 0 0;padding:24px 20px 40px}.table-bill-payment-title{font-size:1.1rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0 0 20px;text-align:center}.bill-payment-form{display:flex;flex-direction:column;gap:16px}.bill-payment-form--simple .bill-payment-simple-info{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#22c55e1a;border-radius:10px;color:#16a34a;font-size:.88rem;font-weight:600}.bill-payment-error{padding:10px 14px;background:#ef44441a;border-radius:8px;color:#ef4444;font-size:.85rem;margin:0}.bill-payment-actions{display:flex;gap:10px}.bill-payment-cancel{flex:1;padding:14px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;background:transparent;color:var(--text-secondary, #555)}.bill-payment-confirm{flex:2;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:linear-gradient(135deg,#e56222,#f59e0b);color:#fff;border:none;border-radius:12px;font-size:.9rem;font-weight:700;cursor:pointer;transition:opacity .15s}.bill-payment-confirm:disabled{opacity:.6;cursor:not-allowed}.table-bill-success-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:80dvh;text-align:center;padding:32px 24px}.table-bill-success-icon{color:#22c55e}.table-bill-success-screen h2{font-size:1.6rem;font-weight:800;color:var(--text-primary, #1a1a1a);margin:0}.table-bill-success-screen p{color:var(--text-secondary, #555);margin:0}.table-bill-remaining{padding:12px 16px;background:#f59e0b1a;border-radius:10px;color:#92400e;font-size:.88rem}.table-bill-success-actions{display:flex;flex-direction:column;gap:10px;width:100%;max-width:320px;margin-top:8px}.table-bill-loading,.table-bill-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:60dvh;color:var(--text-muted, #888);text-align:center;padding:24px}.table-bill-retry-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:10px;cursor:pointer;background:transparent;color:var(--text-secondary, #555);font-size:.88rem;font-weight:600}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--order-green: #0F8A4F;--order-amber: #B7791F;--order-ink: #2F1E19;--order-ink-soft: #5C4A40;--order-ink-muted: #8A7868;--order-bg: #F7F2EC;--order-surface: #FFFFFF;--order-border: rgba(0, 0, 0, .06)}.order-page{min-height:100vh;min-height:100dvh;background:var(--order-bg);background-image:radial-gradient(ellipse 80% 50% at 20% 85%,rgba(var(--color-brand-rgb-500),.05) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 15%,rgba(183,121,31,.04) 0%,transparent 50%);padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0);display:flex;flex-direction:column;width:100%;font-family:Space Grotesk,sans-serif;color:var(--order-ink)}.order-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);color:var(--order-ink-muted)}.order-loading-spinner{width:32px;height:32px;border:3px solid rgba(var(--color-brand-rgb-500),.15);border-top-color:var(--orange-500);border-radius:50%}.order-empty{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);text-align:center;padding:var(--space-6);color:var(--order-ink-muted)}.order-empty h2{font-family:var(--font-family-display);color:var(--order-ink);margin:0}.order-empty button{padding:var(--space-3) var(--space-5);background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--orange-500) 100%);color:#fff;border:none;border-radius:var(--radius-full);font-weight:600;cursor:pointer}.order-nav{padding:18px var(--space-4);background:linear-gradient(150deg,var(--theme-hero-deep, #5C3A2E) 0%,var(--theme-hero-mid, #8A4A22) 52%,var(--orange-500) 100%);position:sticky;top:0;z-index:100;width:100%;box-sizing:border-box;box-shadow:0 6px 22px rgba(var(--color-brand-rgb-600, 176, 67, 21),.24)}.order-nav-inner{width:min(1180px,100%);margin:0 auto;display:flex;align-items:center;justify-content:center}.order-nav-btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#ffffff29;border:1px solid rgba(255,255,255,.24);border-radius:13px;color:#fff;cursor:pointer;transition:all .2s;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.order-nav-btn:hover{background:#ffffff47;border-color:#ffffff6b;color:#fff;transform:translateY(-1px)}.order-nav-center{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:0;color:#fff}.order-nav-chan{flex-shrink:0;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#ffffff29;border:1px solid rgba(255,255,255,.22);color:#fff}.order-nav-table{display:inline-flex;align-items:baseline;gap:9px;min-width:0}.order-nav-table-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;opacity:.85}.order-nav-table-num{font-family:var(--font-family-display);font-size:27px;font-weight:600;line-height:1;letter-spacing:-.01em;text-shadow:0 1px 6px rgba(0,0,0,.16);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-nav-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.order-nav-code{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.24);font-size:11px;font-weight:700;color:#fff;letter-spacing:.03em;white-space:nowrap}.order-nav-live{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;background:#ffffffeb;border:1px solid transparent;color:var(--order-green);white-space:nowrap}.order-nav-live.is-live{color:var(--order-green)}.order-nav-live.is-done{color:var(--color-brand-600)}.order-nav-live.is-failed{color:#c62828}.live-dot{width:6px;height:6px;background:var(--order-green);border-radius:50%;animation:hari-blink-track 1.4s ease-in-out infinite}@media(max-width:519px){.order-nav-code{display:none}}.order-main{padding:var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,20px));width:min(520px,100%);margin:0 auto}.order-carousel-wrap{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;transition:height .18s cubic-bezier(.22,1,.36,1)}.order-carousel{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.order-carousel::-webkit-scrollbar{width:0;height:0;display:none}.order-carousel__slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always}.order-carousel__dots{display:flex;justify-content:center;align-items:center;gap:8px;padding:2px 0 14px}.order-carousel__dots--fixed{position:absolute;inset:20px 0 auto;z-index:2;width:min(520px,100%);margin:0 auto;justify-content:flex-end;padding:0 30px;pointer-events:none}.order-carousel__dots--fixed .order-carousel__dot{pointer-events:auto}@media(min-width:768px){.order-carousel__dots--fixed{width:min(600px,100%);top:24px;padding:0 34px}}@media(min-width:1024px){.order-carousel__dots--fixed{width:100%;top:14px;padding:0 24px}}.order-carousel__dot{width:8px;height:8px;padding:0;border:none;border-radius:999px;background:#2f1e1938;cursor:pointer;transition:background .2s ease,width .2s ease}.order-carousel__dot:hover{background:#2f1e1966}.order-carousel__dot.is-active{width:22px;background:var(--orange-500)}.order-table-hero{position:relative;overflow:hidden;border-radius:22px;padding:22px 20px 26px;margin-bottom:14px;text-align:center;color:#fff;background:linear-gradient(150deg,var(--theme-hero-deep, #5C3A2E) 0%,var(--theme-hero-mid, #8A4A22) 48%,var(--orange-500) 100%);box-shadow:0 2px 8px #2f1e191a,0 14px 34px rgba(var(--color-brand-rgb-600, 176, 67, 21),.26)}.order-table-hero__glow{position:absolute;inset:0;background:radial-gradient(circle at 18% 82%,rgba(255,255,255,.12) 0%,transparent 48%),radial-gradient(circle at 82% 14%,rgba(255,255,255,.08) 0%,transparent 42%);pointer-events:none}.order-table-hero__icon{position:relative;width:52px;height:52px;margin:0 auto 6px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;background:#ffffff29;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(4px)}.order-table-hero__table{position:relative;display:flex;flex-direction:column;align-items:center;gap:0}.order-table-hero__table-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;opacity:.82}.order-table-hero__table-num{font-family:var(--font-family-display);font-size:46px;font-weight:800;line-height:1.04;letter-spacing:-.01em;text-shadow:0 2px 10px rgba(0,0,0,.18)}.order-table-hero__sub{position:relative;margin:6px auto 0;max-width:320px;font-size:13px;line-height:1.45;opacity:.9}.order-sheet{position:relative;background:var(--order-surface);border-radius:24px;padding:12px 20px 20px;box-shadow:none;border:1px solid var(--order-border)}.order-sheet__col{display:contents}.order-sheet__handle{width:40px;height:4px;border-radius:2px;background:#00000026;margin:4px auto 16px}.order-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}.order-pill__dot{width:8px;height:8px;border-radius:50%}.order-pill__dot.is-animated{animation:hari-blink-track 1.4s ease-in-out infinite}.order-sheet__head{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}.order-sheet__head-icon{flex-shrink:0;width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--order-bg);border:1px solid var(--order-border)}.order-sheet__head-text{flex:1;min-width:0}.order-sheet__title{margin:0;font-family:var(--font-family-display);font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.12;color:var(--order-ink)}.order-sheet__hint{margin:5px 0 0;font-size:14px;line-height:1.5;color:var(--order-ink-soft)}.order-code-block{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 18px;border-radius:18px;background:var(--order-bg);border:1px solid var(--order-border);margin:4px 0 18px}.order-code-block__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--order-ink-muted)}.order-code-block__value{font-family:var(--font-family-display);font-size:clamp(30px,9vw,42px);font-weight:800;letter-spacing:.06em;line-height:1.05;color:var(--order-ink);font-variant-numeric:tabular-nums;white-space:nowrap;max-width:100%}.order-code-block__copy{position:absolute;top:10px;right:10px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#fff;border:1px solid var(--order-border);color:var(--order-ink-muted);cursor:pointer;transition:color .18s,border-color .18s,transform .18s,box-shadow .18s;box-shadow:0 2px 6px #2f1e190f}.order-code-block__copy:hover{transform:translateY(-1px);color:var(--orange-500);border-color:rgba(var(--color-brand-rgb-500),.3);box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.14)}.order-code-block__copy.is-copied{color:var(--order-green);border-color:#0f8a4f59}.order-points-earned{margin:0 auto 14px;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#fff,#fff6ee);border-radius:999px;box-shadow:0 0 0 2px #ffffff8c inset,0 8px 24px rgba(var(--color-brand-rgb-500),.3),0 2px 6px #5c3d2e2e;color:var(--color-brand-600);font-weight:700;letter-spacing:-.01em;position:relative;overflow:hidden}.order-points-earned:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);animation:pointsShine 2.4s ease-in-out .6s 1;pointer-events:none}@keyframes pointsShine{0%{transform:translate(-120%)}to{transform:translate(120%)}}.order-points-earned__sparkle{display:inline-flex;align-items:center;color:var(--orange-500);animation:pointsSparkle 1.8s ease-in-out infinite}@keyframes pointsSparkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(15deg)}}.order-points-earned__amount{font-size:22px;font-weight:800;font-family:var(--font-family-display);color:var(--orange-500);letter-spacing:-.02em}.order-points-earned__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#5a3a2f}.order-timeline{position:relative;display:flex;align-items:flex-start;justify-content:space-between;padding:8px 8px 0;margin-bottom:24px}.order-timeline__track{position:absolute;top:25px;left:22px;right:22px;height:3px;background:#2f1e191a;border-radius:999px;z-index:0}.order-timeline__progress{position:absolute;top:25px;left:22px;height:3px;background:var(--orange-500);border-radius:999px;z-index:1;transition:width .6s ease-out}.order-timeline__item{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;flex:1 1 0;min-width:0;text-align:center}.order-timeline__dot{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid rgba(47,30,25,.14);color:var(--order-ink-muted);box-shadow:0 2px 6px #2f1e190f;transition:background .3s,border-color .3s,box-shadow .3s,color .3s}.order-timeline__dot.completed,.order-timeline__dot.active{color:#fff;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.28)}.order-timeline__dot.active{box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500),.18),0 4px 12px rgba(var(--color-brand-rgb-500),.28)}.order-timeline__label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.2;max-width:76px;color:var(--order-ink-muted)}.order-timeline__label.on{color:var(--order-ink)}.order-ready-block{margin-bottom:14px;padding:20px 18px;border-radius:18px;background:var(--order-green);color:#fff;text-align:center;border:2px solid #FFFFFF;outline:2px solid var(--order-green)}.order-ready-block__title{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;opacity:.9}.order-ready-block__code{font-family:var(--font-family-display);font-size:42px;font-weight:800;line-height:1.05;letter-spacing:.04em;margin-top:8px;font-variant-numeric:tabular-nums}.order-ready-block__caption{font-size:12px;opacity:.85;margin-top:8px}.order-ready-block__qr-wrap{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:10px}.order-ready-block__qr{background:#fff;padding:12px;border-radius:12px;box-shadow:0 6px 18px #0f8a4f47;display:inline-flex}.order-ready-block__qr-caption{display:inline-flex;align-items:center;gap:6px;font-size:12px;opacity:.9}@media(min-width:768px){.order-ready-block{display:flex;align-items:center;gap:22px;text-align:left;padding:20px 24px}.order-ready-block__info{flex:1;min-width:0}.order-ready-block__code{white-space:nowrap}.order-ready-block__caption{margin-top:6px}.order-ready-block__qr-wrap{margin-top:0;flex-shrink:0}.order-ready-block__qr-caption{max-width:210px}}.order-declined-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-bottom:14px;border-radius:14px;background:linear-gradient(135deg,#c62828,#e53935);color:#fff;font-size:13px;font-weight:500}.order-recap{padding:16px;border-radius:18px;background:var(--order-bg);border:1px solid var(--order-border)}.order-recap__header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:0 4px 12px;margin-bottom:4px;border-bottom:1px solid var(--order-border)}.order-recap__header h3{font-family:var(--font-family-display);font-size:18px;font-weight:700;margin:0;color:var(--order-ink)}.order-recap__count{font-size:13px;color:var(--order-ink-muted);font-weight:500}.order-recap__items{display:flex;flex-direction:column}.order-recap__item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid var(--order-border)}.order-recap__item-name{min-width:0;font-size:14px;font-weight:500;color:var(--order-ink)}.order-recap__item-qty{color:var(--order-ink-muted);margin-left:var(--space-2);font-weight:400;font-size:13px}.order-recap__item-price{flex-shrink:0;font-size:14px;font-weight:700;color:var(--color-brand-600)}.order-recap__total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 4px 2px;font-size:15px;font-weight:700;color:var(--order-ink)}.order-recap__total-amount{flex-shrink:0;font-family:var(--font-family-display);font-size:22px;font-weight:800;color:var(--color-brand-600)}.order-recap__payment{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:12px;padding:var(--space-3);background:#fff;border:1px solid var(--order-border);border-radius:12px;font-size:13px;color:var(--order-ink-muted);font-weight:500}.order-foot{margin-top:16px}.order-foot__meta{display:flex;justify-content:center;gap:var(--space-4);margin-bottom:14px}.order-foot__meta span{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--order-ink-muted)}.order-foot__action{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:16px;background:var(--order-ink);border:none;border-radius:16px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.order-foot__action:hover{background:var(--color-brand-600);transform:translateY(-2px);box-shadow:0 8px 24px rgba(var(--color-brand-rgb-600),.25)}.confetti-container{position:fixed;inset:0;pointer-events:none;z-index:1000;overflow:hidden}.order-unavail-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;margin-bottom:14px;border-radius:14px;background:#b7791f1a;border:1px solid rgba(183,121,31,.25);color:var(--order-amber);font-size:13px;font-weight:600;overflow:hidden}.order-unavail-spinner{flex-shrink:0;animation:orderSpin 1s linear infinite}@keyframes orderSpin{to{transform:rotate(360deg)}}.order-substitution-section{padding:16px;margin-bottom:14px;border-radius:18px;background:#b7791f0f;border:1px solid rgba(183,121,31,.2)}.order-substitution-header{display:flex;align-items:flex-start;gap:10px;color:var(--order-amber);margin-bottom:12px}.order-substitution-title{margin:0;font-family:var(--font-family-display);font-size:15px;font-weight:700;color:var(--order-ink)}.order-substitution-sub{margin:2px 0 0;font-size:12.5px;color:var(--order-ink-soft);line-height:1.45}.order-substitution-card{padding:12px;border-radius:14px;background:#fff;border:1px solid var(--order-border)}.order-substitution-card+.order-substitution-card{margin-top:10px}.order-substitution-unavailable{margin:0 0 10px;font-size:14px;font-weight:500;color:var(--order-ink-muted)}.order-sub-unavail-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#c62828;margin-left:6px}.order-substitution-proposals{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.order-sub-choice{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:14px;background:var(--order-bg);border:1px solid var(--order-border);cursor:pointer;transition:all .2s;font-family:inherit}.order-sub-choice:hover:not(:disabled){border-color:rgba(var(--color-brand-rgb-500),.35);transform:translateY(-2px);box-shadow:0 6px 16px #2f1e1914}.order-sub-choice:disabled{opacity:.6;cursor:not-allowed}.order-sub-choice.is-loading{opacity:.85}.order-sub-choice-img{width:56px;height:56px;border-radius:12px;object-fit:cover}.order-sub-choice-name{font-size:13px;font-weight:600;color:var(--order-ink);text-align:center;line-height:1.2}.order-sub-choice-price{font-size:13px;font-weight:700;color:var(--orange-500)}.order-sub-spinner{position:absolute;top:8px;right:8px;color:var(--orange-500);animation:orderSpin 1s linear infinite}.order-voucher-card{display:flex;gap:14px;padding:16px;margin-bottom:14px;border-radius:18px;background:linear-gradient(135deg,#fff,#fff6ee);border:1px solid rgba(var(--color-brand-rgb-500),.2);box-shadow:0 6px 20px rgba(var(--color-brand-rgb-500),.12);overflow:hidden}.order-voucher-icon{flex-shrink:0;width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--orange-500);color:#fff}.order-voucher-content{flex:1;min-width:0}.order-voucher-title{margin:0;font-family:var(--font-family-display);font-size:15px;font-weight:700;color:var(--order-ink)}.order-voucher-sub{margin:3px 0 0;font-size:13px;color:var(--order-ink-soft)}.order-voucher-code-row{display:flex;align-items:center;gap:8px;margin-top:10px}.order-voucher-code{flex:1;padding:8px 12px;border-radius:10px;background:var(--order-bg);border:1px dashed rgba(var(--color-brand-rgb-500),.4);font-family:var(--font-family-display);font-size:16px;font-weight:800;letter-spacing:.06em;color:var(--color-brand-600);text-align:center}.order-voucher-copy{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;background:var(--orange-500);border:none;color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s}.order-voucher-copy:hover{background:#d14f03}.order-voucher-hint{margin:8px 0 0;font-size:11.5px;color:var(--order-ink-muted);line-height:1.4}.order-item-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.order-item-badge--unavail{background:#c628281a;color:#c62828}.order-item-badge--pending{background:#b7791f1f;color:var(--order-amber)}.order-item-badge--accepted{background:#0f8a4f1f;color:var(--order-green)}.order-recap__item.is-unavail{opacity:.85}@keyframes hari-blink-track{0%,to{opacity:1}50%{opacity:.4}}@keyframes hari-ready-pulse{0%,to{box-shadow:0 8px 28px #0f8a4f59}50%{box-shadow:0 12px 36px #0f8a4f8c}}@media(max-width:374px){.order-main{padding:var(--space-3)}.order-table-hero__table-num{font-size:40px}.order-code-block__value{font-size:30px}.order-sheet__title{font-size:21px}.order-timeline__label{font-size:8.5px}.order-ready-block__code{font-size:36px}}@media(min-width:768px)and (max-width:1023px){.order-main{width:min(600px,100%);padding:var(--space-6)}.order-table-hero{padding:30px 28px 34px;border-radius:26px;margin-bottom:16px}.order-table-hero__icon{width:58px;height:58px;border-radius:18px}.order-table-hero__table-num{font-size:52px}.order-table-hero__sub{font-size:14px;max-width:380px}.order-sheet{padding:16px 28px 26px;border-radius:28px}.order-sheet__title{font-size:26px}.order-sheet__hint{font-size:15px}.order-sheet__head-icon{width:50px;height:50px}.order-code-block{padding:22px 18px;border-radius:20px}.order-code-block__value{font-size:48px}.order-timeline{padding:4px 8px 0;margin-bottom:22px}.order-timeline__dot{width:34px;height:34px}.order-timeline__track,.order-timeline__progress{top:16px}.order-timeline__label{font-size:10.5px;max-width:80px}.order-ready-block__code{font-size:36px}.order-recap{padding:20px;border-radius:20px}.order-recap__header h3{font-size:20px}.order-recap__item{padding:15px 4px}.order-recap__item-name,.order-recap__item-price{font-size:15px}.order-recap__total{padding:16px 4px 2px}.order-recap__total-amount{font-size:26px}.order-foot__action{padding:18px;font-size:16px;border-radius:18px}}@media(min-width:1024px){.order-main{width:min(640px,100%);padding:var(--space-7) var(--space-6) var(--space-8)}.order-table-hero{padding:12px 22px 13px;border-radius:22px;margin-bottom:12px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon  table" "icon  sub";align-items:center;column-gap:14px;row-gap:0;text-align:left}.order-table-hero__icon{grid-area:icon;width:42px;height:42px;border-radius:13px;margin:0}.order-table-hero__table{grid-area:table;align-items:flex-start}.order-table-hero__table-num{font-size:34px}.order-table-hero__sub{grid-area:sub;margin:2px 0 0;max-width:none;text-align:left}.order-sheet{padding:18px 24px;border-radius:26px}.order-sheet__handle{display:none}.order-sheet__head{margin-bottom:14px}.order-ready-block{max-width:none}.order-sheet__title{font-size:25px}.order-sheet__hint{font-size:14px}.order-code-block{padding:16px 18px;border-radius:18px;margin:2px 0 14px}.order-code-block__value{font-size:40px}.order-timeline{margin:6px 0 20px}.order-timeline__dot{width:34px;height:34px}.order-recap{padding:16px 18px;border-radius:18px}.order-recap__header h3{font-size:19px}.order-recap__total-amount{font-size:25px}.order-foot{margin-top:10px}.order-foot__action{padding:14px;font-size:15px;border-radius:16px}}@media(min-width:1280px){.order-sheet{padding:22px 24px 26px}.order-table-hero__table-num{font-size:36px}.order-code-block__value{font-size:42px}.order-sheet__title,.order-recap__total-amount{font-size:26px}}@media(min-width:1680px){.order-main{width:min(700px,100%)}}@media(max-width:896px)and (orientation:landscape){.order-table-hero{padding:16px 18px 18px;margin-bottom:10px}.order-table-hero__icon{width:42px;height:42px;margin-bottom:2px}.order-table-hero__table-num{font-size:34px}}.order-convert{display:none}@media(min-width:1024px){.fo-order-modal{display:none!important}}@media(min-width:1024px){.order-stage{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,32vw,400px);align-items:stretch;gap:24px;width:min(1180px,100%);margin:0 auto;padding:var(--space-4) var(--space-6) var(--space-4)}.order-stage>.order-carousel-wrap{width:100%;min-width:0}.order-carousel{flex:1;min-height:0}.order-carousel__slide{display:flex;flex-direction:column}.order-carousel .order-main{width:100%;max-width:none;min-width:0;padding:0;margin:0;flex:1;display:flex;flex-direction:column}.order-carousel .order-sheet{flex:1;display:flex;flex-direction:column}.order-carousel .order-foot{margin-top:auto}.order-convert{display:flex;flex-direction:column;gap:12px}.order-convert__module{flex:1;display:flex;flex-direction:column;padding:24px;border-radius:20px;background:radial-gradient(ellipse 90% 60% at 100% 0%,rgba(var(--color-brand-rgb-500),.08) 0%,transparent 60%),var(--order-surface);border:1px solid var(--order-border);box-shadow:none}.order-convert__card3d{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:18px}.order-convert__card3d-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:2px}.order-convert__perso-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--order-border);background:var(--order-surface);color:var(--order-ink-soft);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s}.order-convert__perso-btn:hover{color:var(--orange-500);border-color:rgba(var(--color-brand-rgb-500),.3);transform:translateY(-1px)}.order-convert__card3d-hint{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--order-ink-muted)}.order-convert__icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500);margin-bottom:10px}.order-convert__module-title{margin:0;font-family:var(--font-family-display);font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--order-ink)}.order-convert__module-sub{margin:6px 0 0;font-size:13.5px;line-height:1.5;color:var(--order-ink-soft)}.order-convert__benefits{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}.order-convert__benefit{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;color:var(--order-ink)}.order-convert__benefit-icon{flex-shrink:0;width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.1);color:var(--orange-500)}.order-convert__link{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:100%;margin-top:10px;padding:8px;background:none;border:none;color:var(--order-ink-muted);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:color .2s}.order-convert__link:hover{color:var(--orange-500)}.order-convert__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:14px;padding:12px 16px;border-radius:12px;border:1px solid var(--order-border);background:var(--order-ink);color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.order-convert__btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px #2f1e192e}.order-convert__btn--primary{background:var(--orange-500);border-color:transparent;margin-top:auto}.order-convert__btn--primary:hover{background:#d14f03;box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.28)}}@media(min-width:1024px){.order-signup__xp{margin:2px 0 18px}.order-signup__xp-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.order-signup__xp-step{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--orange-500)}.order-signup__xp-count{font-size:12px;font-weight:700;color:var(--order-ink-muted);font-variant-numeric:tabular-nums}.order-signup__timeline{position:relative;display:flex;justify-content:space-between}.order-signup__track{position:absolute;top:13px;left:13px;right:13px;height:4px;border-radius:999px;background:#2f1e191a}.order-signup__fill{position:absolute;top:13px;left:13px;height:4px;border-radius:999px;background:linear-gradient(90deg,#F59E0B,var(--orange-500));box-shadow:0 0 10px rgba(var(--color-brand-rgb-500),.45);transition:width .5s cubic-bezier(.4,0,.2,1);min-width:4px}.order-signup__node{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px}.order-signup__dot{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--order-surface);border:2px solid rgba(47,30,25,.14);color:var(--order-ink-muted);transition:background .3s,border-color .3s,color .3s,transform .3s}.order-signup__dot.is-done,.order-signup__dot.is-active{background:var(--orange-500);border-color:var(--orange-500);color:#fff}.order-signup__dot.is-active{transform:scale(1.12);box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.35)}.order-signup__node-label{font-size:10.5px;font-weight:600;color:var(--order-ink-muted);transition:color .3s}.order-signup__node-label.on{color:var(--order-ink)}.order-signup__step-title{margin:4px 0 14px;font-family:var(--font-family-display);font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--order-ink)}.order-signup__fields{display:flex;flex-direction:column;gap:12px}.order-signup__row{display:flex;gap:10px}.order-signup__field{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.order-signup__label{font-size:12px;font-weight:600;color:var(--order-ink-soft)}.order-signup__input-wrap{position:relative;display:flex;align-items:center}.order-signup__input-wrap>svg{position:absolute;left:12px;color:var(--order-ink-muted);pointer-events:none}.order-signup__input{width:100%;padding:11px 13px;border-radius:12px;border:1px solid var(--order-border);background:var(--order-bg);font-family:inherit;font-size:14px;color:var(--order-ink);box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.order-signup__input--icon{padding-left:36px}.order-signup__input::placeholder{color:var(--order-ink-muted)}.order-signup__input:focus{outline:none;border-color:rgba(var(--color-brand-rgb-500),.45);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.1)}.order-signup__error{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:12.5px;font-weight:500;color:#c0392b}.order-signup__actions{display:flex;gap:10px;margin-top:auto;padding-top:16px}.order-signup__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;border-radius:12px;border:1px solid var(--order-border);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.order-signup__btn--primary{flex:1;background:var(--orange-500);border-color:transparent;color:#fff}.order-signup__btn--primary:hover:not(:disabled){background:#d14f03;transform:translateY(-1px);box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.28)}.order-signup__btn--ghost{background:var(--order-surface);color:var(--order-ink-soft)}.order-signup__btn--ghost:hover:not(:disabled){color:var(--orange-500);border-color:rgba(var(--color-brand-rgb-500),.3)}.order-signup__btn:disabled{opacity:.6;cursor:default}.order-signup__spin{animation:order-signup-spin .8s linear infinite}.order-signup__success{text-align:center;padding:4px 0 2px;margin:auto 0}.order-signup__success-badge{width:56px;height:56px;margin:2px auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500)}.order-signup__success-title{margin:0 0 4px;font-family:var(--font-family-display);font-size:21px;font-weight:700;color:var(--order-ink)}.order-signup__success-sub{margin:0 0 16px;font-size:13.5px;line-height:1.5;color:var(--order-ink-soft)}.order-signup__success .order-signup__btn--primary{width:100%}}@keyframes order-signup-spin{to{transform:rotate(360deg)}}.account-pwd-modal--xwide{max-width:640px}.account-pwd-modal--xxwide{max-width:780px}.order-perso-modal__preview{margin-bottom:8px}.order-perso-modal__input{width:100%;padding:11px 14px;border-radius:12px;border:1px solid var(--order-border);background:var(--order-bg);font-family:inherit;font-size:14px;color:var(--order-ink);box-sizing:border-box}.order-perso-modal__input:focus{outline:none;border-color:rgba(var(--color-brand-rgb-500),.4)}.order-perso-modal__actions{display:flex;gap:10px;margin-top:18px}.order-perso-modal__actions .order-convert__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;padding:13px 16px;border-radius:12px;border:1px solid var(--order-border);background:var(--order-ink);color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.order-perso-modal__actions .order-convert__btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px #2f1e192e}.order-perso-modal__actions .order-convert__btn--primary{background:var(--orange-500);border-color:transparent}.order-perso-modal__actions .order-convert__btn--primary:hover{background:#d14f03;box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.28)}.order-benefits-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.order-benefits-list__item{border-radius:16px;background:var(--order-bg, #F7F2EC);border:1px solid var(--order-border, rgba(0, 0, 0, .06));overflow:hidden;transition:border-color .2s,background .2s}.order-benefits-list__item.is-open{border-color:rgba(var(--color-brand-rgb-500),.28);background:#fff}.order-benefits-list__head{display:flex;align-items:center;gap:16px;width:100%;padding:16px 18px;background:none;border:none;cursor:pointer;text-align:left;font-family:inherit}.order-benefits-list__icon{flex-shrink:0;width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.12);color:var(--orange-500)}.order-benefits-list__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.order-benefits-list__title{font-family:var(--font-family-display);font-size:17px;font-weight:700;letter-spacing:-.01em;color:#2f1e19}.order-benefits-list__desc{font-size:13.5px;line-height:1.45;color:#5a4a3f}.order-benefits-list__toggle{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb-500),.1);color:var(--orange-500);transition:transform .25s ease,background .2s}.order-benefits-list__item.is-open .order-benefits-list__toggle{transform:rotate(45deg);background:var(--orange-500);color:#fff}.order-benefits-list__detail{margin:0;padding:0 18px 16px 84px;font-size:14px;line-height:1.55;color:#5a4a3f}.order-benefits-cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:6px;padding:14px 16px;border-radius:12px;border:1px solid transparent;background:var(--orange-500);color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.order-benefits-cta:hover{background:#d14f03;transform:translateY(-1px);box-shadow:0 8px 22px rgba(var(--color-brand-rgb-500),.28)}@media(min-width:1280px){.order-stage{grid-template-columns:minmax(0,1fr) clamp(360px,30vw,420px);gap:36px;width:min(1240px,100%);padding:var(--space-8)}}.order-convert__card3d .loyalty-card-3d-cb,.order-perso-modal .loyalty-card-3d-cb{transform-style:preserve-3d;-webkit-transform-style:preserve-3d}.order-convert__card3d .loyalty-card-3d-cb__face,.order-perso-modal .loyalty-card-3d-cb__face{transition:transform .65s cubic-bezier(.4,0,.2,1),visibility 0s linear .33s}.order-convert__card3d .loyalty-card-3d-cb:not(.is-flipped) .loyalty-card-3d-cb__face--back,.order-perso-modal .loyalty-card-3d-cb:not(.is-flipped) .loyalty-card-3d-cb__face--back{visibility:hidden}.order-convert__card3d .loyalty-card-3d-cb.is-flipped .loyalty-card-3d-cb__face--front,.order-perso-modal .loyalty-card-3d-cb.is-flipped .loyalty-card-3d-cb__face--front{visibility:hidden}.account-pwd-overlay.order-bottom-sheet{align-items:flex-end;justify-content:center;padding:0}.order-bottom-sheet .account-pwd-modal{width:100%;max-width:min(880px,100%);margin:0 auto;border-radius:24px 24px 0 0;max-height:92vh;max-height:92dvh;animation:sheetUp .3s cubic-bezier(.34,1.56,.64,1) both}.order-bottom-sheet .account-pwd-body{overflow-y:auto}.chat-container{display:flex;flex-direction:column;height:100dvh;height:100vh;width:100%;max-width:100%;font-family:var(--font-family);background:linear-gradient(180deg,#fff8f4,#fff5ee);overflow:hidden;margin:0 auto}@media(min-width:768px){.chat-container{max-width:640px;height:calc(100vh - 48px);margin:24px auto;border-radius:24px;box-shadow:0 20px 60px #5c3d2e26}}@media(min-width:1024px){.chat-container{max-width:720px}}.chat-header{display:flex;align-items:center;gap:clamp(10px,2.5vw,14px);padding:clamp(12px,3vw,18px) clamp(16px,4vw,24px);background:linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 100%);box-shadow:0 4px 20px #ff6b354d;position:relative;z-index:10;flex-shrink:0}@media(min-width:768px){.chat-header{border-radius:24px 24px 0 0}}.chat-back-btn{width:clamp(36px,10vw,44px);height:clamp(36px,10vw,44px);min-width:36px;min-height:36px;border-radius:12px;background:#fff3;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.chat-back-btn:hover{background:#ffffff4d;transform:scale(1.05)}.chat-back-btn:active{transform:scale(.95)}.chat-header-info{display:flex;align-items:center;gap:clamp(8px,2vw,14px);flex:1;min-width:0}.chat-header-text h2{color:#fff;font-size:clamp(16px,4vw,20px);font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-status{color:#fffc;font-size:clamp(11px,2.5vw,13px)}.chat-header-badge{display:flex;align-items:center;gap:4px;padding:clamp(5px,1.5vw,8px) clamp(10px,2.5vw,14px);background:#fff3;border-radius:20px;color:#fff;font-size:clamp(11px,2.5vw,13px);font-weight:600;flex-shrink:0}@media(max-width:360px){.chat-header-badge span{display:none}}.chat-messages{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:clamp(14px,4vw,24px);display:flex;flex-direction:column;gap:clamp(12px,3vw,18px)}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:24px}.welcome-loader{display:flex;gap:8px}.welcome-loader span{width:10px;height:10px;background:#ff6b35;border-radius:50%;animation:welcomeBounce 1.4s ease-in-out infinite}.welcome-loader span:nth-child(2){animation-delay:.2s}.welcome-loader span:nth-child(3){animation-delay:.4s}@keyframes welcomeBounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-bubble-container{display:flex;flex-direction:column;max-width:85%;animation:bubbleSlideIn .3s ease-out}.chat-bubble-container.bot{align-self:flex-start}.chat-bubble-container.user{align-self:flex-end}@keyframes bubbleSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble{padding:clamp(12px,3vw,16px) clamp(14px,3.5vw,20px);border-radius:20px;font-size:clamp(14px,3.5vw,16px);line-height:1.5;position:relative;word-wrap:break-word;overflow-wrap:break-word}.bot-bubble{background:#fff;color:#333;border-bottom-left-radius:6px;box-shadow:0 2px 12px #00000014}.user-bubble{background:linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 100%);color:#fff;border-bottom-right-radius:6px;box-shadow:0 2px 12px #ff6b354d}.bubble-text{margin:0;white-space:pre-wrap}.bubble-time{font-size:clamp(10px,2.5vw,12px);color:#999;margin-top:4px;padding:0 4px}.chat-bubble-container.user .bubble-time{text-align:right}.typing-cursor{animation:cursorBlink .8s infinite;color:#ff6b35;font-weight:700}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.typing-dots{display:flex;gap:4px;padding:4px 0}.typing-dots span{width:8px;height:8px;background:#ff6b35;border-radius:50%;animation:typingDot 1.4s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.follow-up-button{margin-top:8px;padding:8px 16px;background:linear-gradient(135deg,#fff5ee,#ffe8dc);border:1px solid #FFD4C0;border-radius:20px;color:var(--orange-500);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.follow-up-button:hover{background:linear-gradient(135deg,#ffe8dc,#ffd4c0);transform:scale(1.02)}.chat-suggestions{display:flex;gap:clamp(6px,2vw,10px);padding:clamp(10px,2.5vw,14px) clamp(14px,4vw,24px);overflow-x:auto;background:#fffc;border-top:1px solid rgba(0,0,0,.05);-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;flex-shrink:0}.chat-suggestions::-webkit-scrollbar{display:none}.suggestion-chip{flex-shrink:0;padding:clamp(8px,2vw,12px) clamp(14px,3.5vw,20px);background:#fff;border:1px solid #FFD4C0;border-radius:20px;color:var(--orange-500);font-size:clamp(12px,3vw,14px);font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;scroll-snap-align:start;min-height:44px;display:flex;align-items:center}.suggestion-chip:hover{background:#fff5ee;border-color:#ff6b35;transform:translateY(-2px);box-shadow:0 4px 12px #ff6b3526}.suggestion-chip:active{transform:translateY(0)}.chat-input-container{display:flex;gap:clamp(10px,2.5vw,14px);padding:clamp(12px,3vw,18px) clamp(14px,4vw,24px);padding-bottom:calc(clamp(12px,3vw,18px) + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -4px 20px #0000000d;flex-shrink:0}@media(min-width:768px){.chat-input-container{border-radius:0 0 24px 24px;padding-bottom:clamp(12px,3vw,18px)}}.chat-input{flex:1;min-width:0;padding:clamp(12px,3vw,16px) clamp(16px,4vw,22px);border:2px solid #F0F0F0;border-radius:24px;font-size:clamp(14px,3.5vw,16px);outline:none;transition:all .2s ease}.chat-input:focus{border-color:#ff6b35;box-shadow:0 0 0 4px #ff6b351a}.chat-input:disabled{background:#f8f8f8;color:#999}.chat-input::placeholder{color:#aaa}.chat-send-btn{width:clamp(44px,12vw,52px);height:clamp(44px,12vw,52px);min-width:44px;min-height:44px;border-radius:50%;background:linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 100%);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #ff6b3566;flex-shrink:0}.chat-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 6px 20px #ff6b3580}.chat-send-btn:active:not(:disabled){transform:scale(.95)}.chat-send-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed}.chat-mascot{position:relative;display:flex;flex-direction:column;align-items:center}.mascot-small{transform:scale(.5);transform-origin:center}.mascot-medium{transform:scale(.8)}.mascot-large{transform:scale(1.2)}.mascot-body{position:relative;width:100px;height:110px}.mascot-crest{position:absolute;top:-15px;left:50%;transform:translate(-50%);display:flex;gap:2px}.crest-spike{width:12px;height:18px;background:#e74c3c;border-radius:50% 50% 30% 30%;transform-origin:bottom center}.crest-spike:nth-child(1){transform:rotate(-15deg);height:14px}.crest-spike:nth-child(3){transform:rotate(15deg);height:14px}.mascot-head{position:absolute;top:0;left:50%;transform:translate(-50%);width:70px;height:60px;background:linear-gradient(180deg,#ffe4b5,#ffd699);border-radius:50% 50% 45% 45%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 -5px 15px #0000001a}.mascot-eyes{display:flex;gap:16px;margin-bottom:4px}.mascot-eye{font-size:16px;font-weight:700;color:#333;transition:all .2s ease}.mascot-beak{position:relative}.beak-top{width:20px;height:8px;background:#ff9800;border-radius:50% 50% 30% 30%}.beak-mouth{font-size:12px;text-align:center;margin-top:-2px;color:#e65100}.mascot-wings{position:absolute;top:45px;width:100%;display:flex;justify-content:space-between}.wing{width:20px;height:35px;background:linear-gradient(180deg,#ffd699,#ffc266);border-radius:50%}.wing.left{transform:rotate(20deg);transform-origin:top right}.wing.right{transform:rotate(-20deg);transform-origin:top left}.mascot-belly{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:55px;background:linear-gradient(180deg,#fff5e6,#ffe4b5);border-radius:50% 50% 45% 45%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 5px 15px #ffffff80}.belly-logo{font-size:24px;font-weight:900;color:#ff6b35;font-family:var(--font-family)}.mascot-bounce{animation:mascotBounce .5s ease}@keyframes mascotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.mascot-typing .wing{animation:wingFlap .3s ease infinite alternate}@keyframes wingFlap{0%{transform:rotate(20deg)}to{transform:rotate(35deg)}}.mascot-typing .wing.right{animation:wingFlapRight .3s ease infinite alternate}@keyframes wingFlapRight{0%{transform:rotate(-20deg)}to{transform:rotate(-35deg)}}.mascot-typing-indicator{display:flex;gap:4px;margin-top:8px}.mascot-typing-indicator span{width:6px;height:6px;background:#ff6b35;border-radius:50%;animation:typingDot 1.4s ease-in-out infinite}.mascot-particles{position:absolute;top:-20px;left:50%;transform:translate(-50%);display:flex;gap:8px;animation:particlesFloat 2s ease-in-out infinite}.particle{font-size:16px;animation:particlePop .5s ease-out}@keyframes particlesFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-8px)}}@keyframes particlePop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.mood-excited .mascot-head{animation:headShake .5s ease}@keyframes headShake{0%,to{transform:translate(-50%) rotate(0)}25%{transform:translate(-50%) rotate(-5deg)}75%{transform:translate(-50%) rotate(5deg)}}.mood-happy .mascot-body{animation:happyWiggle 2s ease-in-out infinite}@keyframes happyWiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.mood-thinking .mascot-head{animation:thinkingTilt 2s ease-in-out infinite}@keyframes thinkingTilt{0%,to{transform:translate(-50%) rotate(0)}50%{transform:translate(-50%) rotate(10deg)}}.mood-cool .mascot-eyes .mascot-eye{background:linear-gradient(180deg,#333,#666);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.chat-mascot-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;flex-shrink:0}.chat-typing-dots{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);display:flex;gap:6px;background:#fffffff2;padding:8px 14px;border-radius:20px;box-shadow:0 4px 15px #0000001a}.chat-typing-dots span{width:10px;height:10px;background:linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 100%);border-radius:50%;animation:chatTypingBounce 1.4s ease-in-out infinite}.chat-typing-dots span:nth-child(2){animation-delay:.2s}.chat-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes chatTypingBounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1.2);opacity:1}}.chat-mascot-wrapper.is-typing .noisette-container{animation:thinkingFloat 2s ease-in-out infinite}@keyframes thinkingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.chat-header-info .chat-mascot-wrapper{margin-right:4px}.chat-welcome .chat-mascot-wrapper{margin-bottom:16px}.chat-welcome .chat-mascot-wrapper .noisette-container{animation:welcomeMascotEntry .8s cubic-bezier(.68,-.55,.265,1.55)}@keyframes welcomeMascotEntry{0%{opacity:0;transform:scale(0) rotate(-20deg)}60%{opacity:1;transform:scale(1.15) rotate(5deg)}80%{transform:scale(.95) rotate(-3deg)}to{transform:scale(1) rotate(0)}}@media(max-width:480px){.chat-header{padding:12px 16px}.chat-messages{padding:16px}.chat-bubble-container{max-width:90%}.chat-input-container{padding:12px 16px}.chat-input{padding:12px 16px;font-size:14px}.chat-send-btn{width:46px;height:46px}.suggestion-chip{padding:8px 14px;font-size:12px}}.chat-fab{position:fixed;bottom:100px;right:20px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#FF6B35 0%,var(--orange-500) 100%);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #ff6b3566,0 0 #ff6b3566;transition:all .3s ease;z-index:1000;animation:fabSlideIn .5s ease-out;overflow:visible}@keyframes fabSlideIn{0%{opacity:0;transform:scale(.5) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-fab:hover{transform:scale(1.1);box-shadow:0 6px 25px #ff6b3580,0 0 #ff6b3500}.chat-fab:active{transform:scale(.95)}.chat-fab.pulsing{animation:fabSlideIn .5s ease-out,fabPulse 2s ease-in-out infinite .5s}@keyframes fabPulse{0%{box-shadow:0 4px 20px #ff6b3566,0 0 #ff6b3566}50%{box-shadow:0 4px 20px #ff6b3566,0 0 0 15px #ff6b3500}to{box-shadow:0 4px 20px #ff6b3566,0 0 #ff6b3500}}.chat-fab-icon{display:flex;align-items:center;justify-content:center}.chat-fab-mascot{position:absolute;top:-8px;right:-8px;width:28px;height:28px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;animation:mascotWave 3s ease-in-out infinite}@keyframes mascotWave{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.fab-mascot-face{font-size:12px;color:#ff6b35}.chat-fab-badge{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);padding:3px 10px;background:#333;color:#fff;font-size:10px;font-weight:600;border-radius:10px;white-space:nowrap;box-shadow:0 2px 6px #0003}.cart-open .chat-fab{bottom:180px}@media(max-width:480px){.chat-fab{bottom:90px;right:16px;width:56px;height:56px}.chat-fab-mascot{width:24px;height:24px;top:-6px;right:-6px}.fab-mascot-face{font-size:10px}}.legal-page{min-height:100dvh;background:var(--mp-bg, #fdf8f3);padding:0 0 60px}.legal-page-inner{max-width:720px;margin:0 auto;padding:0 20px}.legal-back-btn{display:inline-flex;align-items:center;gap:6px;margin:20px 0 24px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:600;color:var(--mp-accent, var(--orange-500));padding:0;transition:opacity .15s}.legal-back-btn:hover{opacity:.75}.legal-header{border-bottom:2px solid #24150F;padding-bottom:16px;margin-bottom:32px}.legal-title{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);font-size:clamp(22px,5vw,32px);color:#24150f;margin:0 0 8px;line-height:1.2}.legal-updated{font-size:12px;color:#8a7060;margin:0}.legal-body{display:flex;flex-direction:column;gap:28px}.legal-section{background:#fff;border:1.5px solid #e8ddd4;border-radius:12px;padding:20px 20px 16px}.legal-section-heading{font-size:15px;font-weight:700;color:#24150f;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #f0e8de}.legal-section-content p{font-size:13px;line-height:1.65;color:#4a3728;margin:0 0 6px}.legal-section-content p:last-child{margin-bottom:0}.legal-section-content p:first-child:has(⚠️){background:#fff4ed;border-left:3px solid var(--orange-500);padding:10px 12px;border-radius:0 8px 8px 0;font-weight:600}.legal-section-content p:has(•){padding-left:4px}.legal-footer{margin-top:40px;padding-top:16px;border-top:1px solid #e8ddd4;text-align:center;font-size:12px;color:#8a7060}.legal-footer a{color:var(--mp-accent, var(--orange-500));text-decoration:none}.legal-footer a:hover{text-decoration:underline}.legal-page--notfound{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 20px;font-size:16px;color:#4a3728}@media(max-width:480px){.legal-section{padding:16px}.legal-section-content p{font-size:12px}}.H{position:fixed;inset:0;display:flex;flex-direction:column;background:#fafaf8;font-family:Space Grotesk,system-ui,sans-serif;color:#1a1a1a;overflow:hidden;-webkit-font-smoothing:antialiased}.H-top{flex-shrink:0;display:flex;align-items:center;height:56px;padding:0 12px;padding-top:env(safe-area-inset-top,0);background:#fff;border-bottom:1px solid #EBEBEB;z-index:60}@media(min-width:768px){.H-top{height:60px;padding:0 20px}}.H-top-left{display:flex;align-items:center;gap:8px;flex-shrink:0}.H-top-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.H-toggle{background:none;border:none;cursor:pointer;padding:6px;color:#1a1a1a;display:flex;align-items:center;border-radius:8px;transition:background .1s;-webkit-tap-highlight-color:transparent}.H-toggle:hover{background:#f5f5f5}.H-toggle svg{width:20px;height:20px}.H-logo{display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;flex-shrink:0}.H-logo .hari-mark{display:flex;align-items:center}.H-search{flex:1;display:flex;align-items:center;gap:8px;background:#f5f5f5;border-radius:9999px;padding:7px 14px;margin:0 12px;max-width:460px;transition:background .15s}.H-search:focus-within{background:#ebebeb}.H-search svg{width:15px;height:15px;color:#8c8c8c;flex-shrink:0}.H-search input{flex:1;border:none;background:none;outline:none;font:inherit;font-size:13px;color:#1a1a1a;min-width:0}.H-search input::placeholder{color:#8c8c8c}.H-search input::-webkit-search-cancel-button{display:none}@media(max-width:600px){.H-search{display:none}}.H-avatar{width:32px;height:32px;border-radius:50%;background:#f5f5f5;border:none;color:#1a1a1a;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;overflow:hidden;transition:box-shadow .12s}.H-avatar:hover{box-shadow:0 0 0 2px var(--orange-500)}.H-avatar img{width:100%;height:100%;object-fit:cover}.H-btn{background:none;border:none;cursor:pointer;font:inherit;font-size:13px;font-weight:600;color:#1a1a1a;padding:7px 12px;border-radius:9999px;white-space:nowrap;transition:background .1s}.H-btn:hover{background:#f5f5f5}.H-btn--fill{background:#1a1a1a;color:#fff}.H-btn--fill:hover{background:#333}.H-layout{flex:1;display:flex;overflow:hidden}.H-main{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(60px + env(safe-area-inset-bottom,0))}@media(min-width:1024px){.H-main{padding-bottom:20px}}.H-side{display:none}@media(min-width:1024px){.H-side{display:flex;flex-direction:column;justify-content:space-between;background:#fff;border-right:1px solid #EBEBEB;overflow:hidden;transition:width .25s cubic-bezier(.2,.9,.3,1);flex-shrink:0}.H-side--open{width:220px}.H-side--closed{width:64px}}.H-side-nav{display:flex;flex-direction:column;gap:2px;padding:12px 8px}.H-side-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:10px;cursor:pointer;text-align:left;font:inherit;font-size:14px;font-weight:500;color:#505050;transition:all .12s;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:transparent}.H-side-item:hover{background:#f5f5f5;color:#1a1a1a}.H-side-item--on{background:#f5f5f5;color:#1a1a1a;font-weight:600}.H-side-emoji{font-size:18px;flex-shrink:0;width:24px;text-align:center}.H-side-label{overflow:hidden;text-overflow:ellipsis}.H-side--closed .H-side-label{display:none}.H-side--closed .H-side-item{justify-content:center;padding:10px 0}.H-side-user{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid #EBEBEB;overflow:hidden;transition:background .12s;border-radius:0}.H-side-user:hover{background:#f5f5f5}.H-side-user-avatar{width:30px;height:30px;border-radius:50%;background:var(--orange-500);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;overflow:hidden}.H-side-user-avatar img{width:100%;height:100%;object-fit:cover}.H-side-user-info{display:flex;flex-direction:column;min-width:0}.H-side-pts{font-size:11px;color:var(--orange-500);font-weight:600;margin-top:1px}.H-side--closed .H-side-user{justify-content:center;padding:12px 0}.H-side--closed .H-side-user-info{display:none}.H-pts-chip{display:flex;align-items:center;gap:5px;background:#fff5ef;border:1px solid #FFDCC8;border-radius:9999px;padding:5px 11px;font:inherit;font-size:13px;font-weight:700;color:var(--orange-500);cursor:pointer;transition:all .12s;-webkit-tap-highlight-color:transparent}.H-pts-chip:hover{background:#ffe8d6;border-color:var(--orange-500)}.H-pts-chip span{line-height:1}.H-toast{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:300;display:flex;align-items:center;gap:8px;background:#1a1a1a;color:#fff;padding:11px 18px;border-radius:9999px;font-family:Space Grotesk,system-ui,sans-serif;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 4px 20px #0003;animation:toastIn .35s cubic-bezier(.175,.885,.32,1.275) forwards;cursor:pointer;max-width:calc(100vw - 32px)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.nav-badge{position:absolute;top:-2px;right:calc(50% - 18px);background:var(--orange-500);color:#fff;font-size:9px;font-weight:700;min-width:16px;height:16px;border-radius:9999px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;border:1.5px solid #FFF}.H-drawer-overlay{position:fixed;inset:0;z-index:200;background:#0006;animation:fadein .2s}.H-drawer{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;background:#fff;display:flex;flex-direction:column;box-shadow:4px 0 20px #00000014;animation:slidein .25s cubic-bezier(.2,.9,.3,1);z-index:201}.H-drawer-header{display:flex;align-items:center;gap:8px;padding:16px;border-bottom:1px solid #EBEBEB}.H-drawer-header b{font-family:Space Grotesk,system-ui,sans-serif;font-size:16px;font-weight:700;color:#1a1a1a;letter-spacing:-.02em}.H-drawer-header em{display:none}.H-drawer-header span{display:flex;align-items:center;gap:4px;flex:1}.H-drawer-close{background:#f5f5f5;border:none;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#505050;margin-left:auto}.H-drawer-nav{flex:1;padding:8px;display:flex;flex-direction:column;gap:2px}.H-drawer-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:none;border:none;border-radius:10px;cursor:pointer;text-align:left;font:inherit;font-size:15px;font-weight:500;color:#1a1a1a;transition:background .1s}.H-drawer-item:hover{background:#f5f5f5}.H-drawer-item--on{background:#f5f5f5;font-weight:600}.H-drawer-auth{padding:12px 16px;border-top:1px solid #EBEBEB}.H-drawer-auth-btn{width:100%;padding:12px;background:#1a1a1a;color:#fff;border:none;border-radius:10px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.H-drawer-user{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #EBEBEB;cursor:pointer}.H-drawer-user:hover{background:#f5f5f5}.H-drawer-user-avatar{width:38px;height:38px;border-radius:50%;background:var(--orange-500);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0;overflow:hidden}.H-drawer-user-avatar img{width:100%;height:100%;object-fit:cover}.H-drawer-user-name{font-family:Space Grotesk,system-ui,sans-serif;font-size:14px;font-weight:600;color:#1a1a1a}.H-drawer-user-pts{font-size:12px;color:var(--orange-500);font-weight:600;margin-top:2px}.H-loader{display:flex;align-items:center;justify-content:center;padding:100px 0}.H-spin{width:24px;height:24px;border:2.5px solid #EBEBEB;border-top-color:var(--orange-500);border-radius:50%;animation:spin .7s linear infinite}.feed{max-width:1400px;margin:0 auto}.cats{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid #EBEBEB;padding:10px 0}.cats-track{display:flex;gap:6px;padding:0 16px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:center}.cats-track::-webkit-scrollbar{display:none}@media(min-width:768px){.cats-track{padding:0 24px;gap:8px}}.cat{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#f5f5f5;border:none;border-radius:9999px;cursor:pointer;font:inherit;font-size:14px;font-weight:500;color:#1a1a1a;white-space:nowrap;transition:all .15s;-webkit-tap-highlight-color:transparent}.cat:hover{background:#ebebeb}.cat:active{transform:scale(.96)}.cat-img{display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;width:auto;height:auto}.filters{position:sticky;top:52px;z-index:39;background:#fff;padding:12px 0;border-bottom:1px solid #EBEBEB;overflow:visible}.filters-track{display:flex;gap:8px;padding:0 16px;overflow:visible}@media(max-width:767px){.filters-track{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.filters-track::-webkit-scrollbar{display:none}}@media(min-width:768px){.filters-track{padding:0 24px}}.filter-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #DDDCDA;border-radius:9999px;font:inherit;font-size:14px;font-weight:500;color:#1a1a1a;cursor:pointer;white-space:nowrap;transition:all .12s;-webkit-tap-highlight-color:transparent}.filter-btn:hover{background:#f5f5f5;border-color:#bfbfbf}.filter-btn:active{transform:scale(.97)}.filter-btn svg{flex-shrink:0}.filter-btn--on{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.filter-btn--on:hover{background:#333;border-color:#333}.filter-btn--clear{background:none;border:none;color:var(--orange-500);font-weight:600;padding:8px 12px}.filter-btn--clear:hover{background:rgba(var(--color-brand-rgb-500),.06)}.filter-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #EBEBEB;border-radius:12px;box-shadow:0 8px 24px #0000001f;min-width:160px;z-index:50;padding:4px;animation:ddIn .15s ease-out}@keyframes ddIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.filter-dd-item{display:block;width:100%;padding:10px 14px;background:none;border:none;text-align:left;font:inherit;font-size:14px;color:#1a1a1a;cursor:pointer;border-radius:8px;transition:background .1s}.filter-dd-item:hover{background:#f5f5f5}.filter-dd-item--on{font-weight:700;color:var(--orange-500)}.cat--active{background:#1a1a1a!important;color:#fff}.cat--active .cat-label{color:#fff}.cat--active .cat-img{border-color:transparent}.cat--clear{background:#f5f5f5;font-size:14px;width:40px;padding:8px 0;display:flex;align-items:center;justify-content:center}.promos{padding:16px 0}.promos-track{display:flex;gap:12px;padding:0 16px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.promos-track::-webkit-scrollbar{display:none}@media(min-width:768px){.promos-track{padding:0 24px;gap:16px}}.promo{flex-shrink:0;width:320px;padding:20px;border-radius:16px;scroll-snap-align:start}@media(min-width:768px){.promo{width:380px}}.promo-title{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:700;margin-bottom:4px}.promo-sub{font-size:13px;opacity:.8;margin-bottom:12px;line-height:1.4}.promo-cta{background:#fff;border:none;padding:8px 16px;border-radius:9999px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 1px 3px #00000014}.section{padding:20px 16px 0}@media(min-width:768px){.section{padding:24px 24px 0}}.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-top h2{font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700;color:#1a1a1a;letter-spacing:-.3px;margin:0}.section-count{font-size:12px;font-weight:600;color:#8c8c8c}.section-see{font-size:14px;font-weight:600;color:#1a1a1a;cursor:pointer;text-decoration:none}.section-see:hover{text-decoration:underline}.cards-scroll{margin:0 -16px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.cards-scroll::-webkit-scrollbar{display:none}@media(min-width:768px){.cards-scroll{margin:0 -24px}}.cards-track{display:flex;gap:16px;padding:0 16px 8px}@media(min-width:768px){.cards-track{padding:0 24px 8px}}.cards-track .rc{width:300px;flex-shrink:0;scroll-snap-align:start}.rc{display:block;background:#fff;border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}.rc:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000014}.rc:active{transform:scale(.985)}.rc-photo{position:relative;aspect-ratio:16/10;background:#f0f0f0;background-size:cover;background-position:center;overflow:hidden}.rc-photo--empty{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2a1a10,#4a2e1c)}.rc-mono{font-family:Fraunces,serif;font-size:36px;font-weight:700;color:#ffffffb3;letter-spacing:2px;position:relative;z-index:1}.rc-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:14px 14px}.rc-badge{position:absolute;top:10px;left:10px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:9999px;z-index:2}.rc-badge--cuisine{background:#000000b3;color:#fff;backdrop-filter:blur(4px)}.rc-badge--promo{background:#16a34a;color:#fff}.rc-heart{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#ffffffd9;backdrop-filter:blur(8px);border:none;color:#aeaaa6;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:transform .12s,color .12s}.rc-heart svg{width:16px;height:16px}.rc-heart:hover{transform:scale(1.1)}.rc-heart.on{color:var(--orange-500)}.rc-info{padding:12px 12px 14px}.rc-row1{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}.rc-name{font-size:15px;font-weight:600;color:#1a1a1a;line-height:1.3;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-rating{display:inline-flex;align-items:center;gap:2px;font-size:13px;font-weight:600;color:#1a1a1a}.rc-rating svg{width:12px;height:12px;fill:#1a1a1a}.rc-meta{font-size:13px;color:#8c8c8c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-meta span+span:before{content:" · ";white-space:pre}.rc-price{color:#1a1a1a;font-weight:600}.grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:540px){.grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:860px){.grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1200px){.grid{grid-template-columns:repeat(4,1fr)}}.empty{text-align:center;padding:48px 24px;background:#fff;border-radius:16px}.empty span{font-size:36px;display:block;margin-bottom:12px}.empty p{font-size:14px;color:#8c8c8c;margin:0}.auth-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;background:#1a1a1a;border-radius:16px;color:#fff;cursor:pointer}.auth-banner strong{display:block;font-size:16px;margin-bottom:4px}.auth-banner p{font-size:13px;opacity:.7;margin:0}.auth-banner-btn{background:#fff;color:#1a1a1a;border:none;padding:10px 20px;border-radius:9999px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;flex-shrink:0}.nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;height:56px;padding-bottom:env(safe-area-inset-bottom,0);background:#fffffff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid #EBEBEB;z-index:100}.nav-item{flex:1;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#aeaaa6;-webkit-tap-highlight-color:transparent;position:relative;transition:color .12s}.nav-item.on{color:#1a1a1a}.nav-item.on .nav-icon svg{stroke-width:2.2}.nav-icon{display:flex;align-items:center;justify-content:center;position:relative}.nav-icon svg{width:21px;height:21px}.nav-label{font-size:9px;font-weight:600;letter-spacing:.01em}@media(min-width:1024px){.nav{display:none}}.sidebar-overlay{position:fixed;inset:0;z-index:200;background:#0006;animation:fadein .2s}@keyframes fadein{0%{opacity:0}to{opacity:1}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;background:#fff;display:flex;flex-direction:column;box-shadow:4px 0 24px #0000001a;animation:slidein .25s ease-out;z-index:201}@keyframes slidein{0%{transform:translate(-100%)}to{transform:translate(0)}}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid #EBEBEB}.sidebar-logo{display:flex;align-items:center;gap:10px}.sidebar-logo-svg{width:28px;height:26px}.sidebar-brand{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:800;color:#1a1a1a}.sidebar-brand em{font-style:italic;font-weight:500;color:var(--orange-500)}.sidebar-tagline{font-size:11px;color:#8c8c8c;margin-top:1px}.sidebar-close{background:#f5f5f5;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#505050}.sidebar-close svg{width:16px;height:16px}.sidebar-menu{flex:1;padding:8px;overflow-y:auto}.sidebar-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px;background:none;border:none;border-radius:8px;cursor:pointer;text-align:left;font:inherit;font-size:14px;font-weight:500;color:#1a1a1a;transition:background .12s}.sidebar-item:hover{background:#f5f5f5}.sidebar-item-icon{font-size:18px;width:24px;text-align:center}.sidebar-item-label{flex:1}.sidebar-item svg{color:#aeaaa6;flex-shrink:0}.sidebar-footer{padding:12px 16px;border-top:1px solid #EBEBEB}.sidebar-footer p{font-size:11px;color:#aeaaa6;margin:0 0 2px}.content-page{max-width:720px;margin:0 auto}.content-header{display:flex;align-items:center;gap:12px;padding:20px 16px}.content-back{background:#f5f5f5;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#1a1a1a}.content-title{display:flex;align-items:center;gap:8px}.content-title span{font-size:24px}.content-title h1{font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:700;color:#1a1a1a;margin:0}.content-body{padding:0 16px 40px;display:flex;flex-direction:column;gap:10px}.content-card{display:flex;gap:12px;padding:16px;background:#fff;border-radius:12px;border:1px solid #EBEBEB}.content-card--highlight{border-color:#d1fae5;background:#f0fdf4}.content-card-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;font-size:20px}.content-card--highlight .content-card-icon{background:#d1fae5}.content-card-text{flex:1}.content-card-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.content-card-tag{font-size:10px;font-weight:700;color:var(--orange-500);background:rgba(var(--color-brand-rgb-500),.08);padding:2px 7px;border-radius:9999px}.content-card-text p{font-size:13px;color:#8c8c8c;line-height:1.5;margin:0}.content-about{text-align:center;padding:40px 16px}.content-about-logo{width:48px;height:44px;margin:0 auto 16px}.content-about h2{font-family:Fraunces,serif;font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 12px}.content-about>p{font-size:14px;color:#8c8c8c;line-height:1.6;margin:0 auto 24px;max-width:400px}.content-about-stats{display:flex;justify-content:center;gap:40px;margin-bottom:24px}.content-about-stats div{text-align:center}.content-about-stats strong{display:block;font-family:Fraunces,serif;font-size:28px;font-weight:700;color:var(--orange-500)}.content-about-stats span{font-size:12px;color:#8c8c8c}.content-about-mission{font-size:14px;color:#8c8c8c;font-style:italic;max-width:360px;margin:0 auto}.rcp-hero{padding:24px 16px 16px;text-align:center}.rcp-hero h2{font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:700;color:#1a1a1a;margin:0 0 6px}.rcp-hero p{font-size:13px;color:#8c8c8c;margin:0}.rcp-filters{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}.rcp-filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rcp-filter-label{font-size:12px;font-weight:700;color:#8c8c8c;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;width:60px}.rcp-chips{display:flex;gap:6px;flex-wrap:wrap}.rcp-chip{padding:6px 12px;border-radius:9999px;border:1px solid #EBEBEB;background:#fff;font:inherit;font-size:13px;font-weight:500;color:#505050;cursor:pointer;transition:all .12s;white-space:nowrap}.rcp-chip:hover{border-color:#1a1a1a}.rcp-chip--on{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.rcp-results{padding:0 16px 40px}.rcp-empty{text-align:center;padding:48px 20px}.rcp-empty span{font-size:36px;display:block;margin-bottom:8px}.rcp-empty p{font-size:14px;color:#8c8c8c;margin:0}.rcp-section{margin-bottom:32px}.rcp-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #EBEBEB}.rcp-section-header h3{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:700;color:#1a1a1a;margin:0}.rcp-section-count{font-size:12px;font-weight:600;color:#8c8c8c}.rcp-grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.rcp-grid{grid-template-columns:repeat(2,1fr)}}.rcp-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #EBEBEB;transition:box-shadow .2s}.rcp-card:hover{box-shadow:0 4px 20px #0000000f}.rcp-card-img{position:relative;height:180px;background-size:cover;background-position:center}.rcp-card-emoji{position:absolute;top:12px;left:12px;font-size:28px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.rcp-card-badges{position:absolute;bottom:12px;right:12px;display:flex;gap:6px}.rcp-card-time{background:#000000b3;color:#fff;font-size:11px;font-weight:600;padding:4px 8px;border-radius:6px;backdrop-filter:blur(4px)}.rcp-card-level{color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px}.rcp-card-info{padding:16px}.rcp-card-info h4{font-family:Fraunces,Georgia,serif;font-size:17px;font-weight:700;color:#1a1a1a;margin:0 0 6px;line-height:1.3}.rcp-card-desc{font-size:13px;color:#8c8c8c;line-height:1.5;margin:0 0 10px}.rcp-card-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#8c8c8c;margin-bottom:12px}.rcp-card-meta span+span:before{content:"·";margin-right:8px}.rcp-card-cuisine{color:var(--orange-500);font-weight:600}.rcp-card-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font:inherit;font-size:14px;font-weight:600;color:#1a1a1a;padding:8px 0;-webkit-tap-highlight-color:transparent}.rcp-card-toggle:hover{color:var(--orange-500)}.rcp-card-detail{border-top:1px solid #F0F0F0;margin-top:12px;padding-top:16px;animation:rcpSlide .25s ease-out}@keyframes rcpSlide{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.rcp-card-section{margin-bottom:16px}.rcp-card-section:last-child{margin-bottom:0}.rcp-card-section h5{font-size:14px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.rcp-card-section ul{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:4px}.rcp-card-section li{font-size:13px;color:#505050;line-height:1.5}.rcp-card-section ol{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:8px}.rcp-card-section ol li{font-size:13px;color:#505050;line-height:1.5;padding-left:4px}.rcp-card-section ol li::marker{font-weight:700;color:var(--orange-500)}.rp{max-width:1200px;margin:0 auto;padding-bottom:40px}.rp-back{padding:16px 20px 0}.rp-back button{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font:inherit;font-size:14px;font-weight:600;color:#505050;padding:0}.rp-back button:hover{color:#1a1a1a}.rp-hero{position:relative;height:260px;margin:12px 20px 0;border-radius:16px;background-size:cover;background-position:center;cursor:pointer;overflow:hidden;transition:transform .2s}.rp-hero:hover{transform:scale(1.003)}@media(min-width:768px){.rp-hero{height:300px}}.rp-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.1) 50%,transparent);border-radius:inherit}.rp-hero-content{position:absolute;bottom:0;left:0;right:0;padding:32px 28px;color:#fff;z-index:1}.rp-hero-tag{display:inline-block;background:rgba(var(--color-brand-rgb-500),.9);color:#fff;font-size:11px;font-weight:700;padding:4px 12px;border-radius:9999px;margin-bottom:12px;letter-spacing:.5px;text-transform:uppercase}.rp-hero-content h1{font-family:Fraunces,Georgia,serif;font-size:32px;font-weight:700;margin:0 0 8px;line-height:1.15;letter-spacing:-.5px}@media(min-width:768px){.rp-hero-content h1{font-size:40px}}.rp-hero-content>p{font-size:15px;opacity:.85;margin:0 0 12px;line-height:1.5;max-width:500px}.rp-hero-meta{display:flex;gap:16px;font-size:13px;font-weight:500;opacity:.75}.rp-col{padding:28px 0 0}.rp-col h2{font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700;color:#1a1a1a;margin:0 20px 14px;letter-spacing:-.2px}.rp-col-scroll{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.rp-col-scroll::-webkit-scrollbar{display:none}.rp-col-track{display:flex;gap:14px;padding:0 20px 8px}.rp-mini{flex-shrink:0;width:200px;background:none;border:none;cursor:pointer;text-align:left;scroll-snap-align:start;-webkit-tap-highlight-color:transparent}.rp-mini:active{transform:scale(.97)}.rp-mini-img{position:relative;width:200px;height:140px;border-radius:12px;background-size:cover;background-position:center;margin-bottom:8px}.rp-mini-save{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;background:#ffffffd9;backdrop-filter:blur(4px);border:none;color:#8c8c8c;cursor:pointer;display:flex;align-items:center;justify-content:center}.rp-mini-save svg{width:14px;height:14px}.rp-mini-save.on{color:var(--orange-500)}.rp-mini-info{padding:0 2px}.rp-mini-title{display:block;font-size:14px;font-weight:600;color:#1a1a1a;line-height:1.3;margin-bottom:2px}.rp-mini-meta{font-size:12px;color:#8c8c8c}.rp-filters{padding:32px 20px 0}.rp-filters h2{font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:700;color:#1a1a1a;margin:0 0 14px}.rp-filters-row{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.rp-filter-group{display:flex;flex-direction:column;gap:6px}.rp-filter-label{font-size:11px;font-weight:700;color:#8c8c8c;text-transform:uppercase;letter-spacing:.5px}.rp-filters-chips{display:flex;gap:6px;flex-wrap:wrap}.rp-chip{padding:7px 14px;border-radius:9999px;border:1px solid #DDDCDA;background:#fff;font:inherit;font-size:13px;font-weight:500;color:#505050;cursor:pointer;transition:all .12s;white-space:nowrap}.rp-chip:hover{border-color:#1a1a1a}.rp-chip--on{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.rp-chip-clear{background:none;border:none;font:inherit;font-size:13px;font-weight:600;color:var(--orange-500);cursor:pointer;padding:7px 8px}.rp-results-count{font-size:13px;color:#8c8c8c;margin-top:4px}.rp-content{padding:24px 20px 0}.rp-section{margin-bottom:36px}.rp-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #EBEBEB}.rp-section-head h3{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:700;color:#1a1a1a;margin:0}.rp-section-head span{font-size:12px;font-weight:700;color:#8c8c8c;background:#f5f5f5;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.rp-grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.rp-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.rp-grid{grid-template-columns:repeat(3,1fr)}}.rp-card{background:#fff;border-radius:14px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid #EBEBEB}.rp-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.rp-card-img{position:relative;height:200px;background-size:cover;background-position:center}.rp-card-time{position:absolute;bottom:10px;left:10px;background:#000000b3;color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:8px;backdrop-filter:blur(4px)}.rp-card-save{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#ffffffd9;backdrop-filter:blur(4px);border:none;color:#8c8c8c;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .12s}.rp-card-save svg{width:16px;height:16px}.rp-card-save.on{color:var(--orange-500)}.rp-card-body{padding:14px 16px 16px}.rp-card-body h4{font-family:Fraunces,Georgia,serif;font-size:17px;font-weight:700;color:#1a1a1a;margin:0 0 6px;line-height:1.3}.rp-card-body p{font-size:13px;color:#8c8c8c;line-height:1.5;margin:0 0 10px}.rp-card-foot{display:flex;align-items:center;justify-content:space-between}.rp-card-rating{font-size:13px;color:#1a1a1a;font-weight:600}.rp-card-rating small{color:#8c8c8c;font-weight:400}.rp-card-level{font-size:12px;font-weight:700}.rp-empty{text-align:center;padding:48px 20px}.rp-empty span{font-size:36px;display:block;margin-bottom:8px}.rp-empty p{font-size:14px;color:#8c8c8c;margin:0}.rf-overlay{position:fixed;inset:0;z-index:9500;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:fadein .2s}@media(min-width:720px){.rf-overlay{align-items:center;padding:24px}}.rf{width:100%;max-width:680px;background:#fff;border-radius:20px 20px 0 0;max-height:96vh;overflow-y:auto;animation:slideup .3s cubic-bezier(.2,.9,.3,1)}@media(min-width:720px){.rf{border-radius:16px;max-height:92vh}}.rf-hero{position:relative;height:300px;background-size:cover;background-position:center}@media(min-width:720px){.rf-hero{height:380px;border-radius:16px 16px 0 0}}.rf-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.25),transparent 50%)}.rf-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#0006;backdrop-filter:blur(8px);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;transition:background .12s}.rf-close:hover{background:#0009}.rf-content{padding:24px 24px 40px}@media(min-width:720px){.rf-content{padding:32px 36px 48px}}.rf-head{margin-bottom:24px}.rf-head-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rf-cuisine{font-size:12px;font-weight:700;color:var(--orange-500);text-transform:uppercase;letter-spacing:.8px}.rf-save{display:flex;align-items:center;gap:6px;background:none;border:1px solid #DDDCDA;padding:6px 14px;border-radius:9999px;font:inherit;font-size:13px;font-weight:600;color:#1a1a1a;cursor:pointer;transition:all .12s}.rf-save:hover{border-color:#1a1a1a}.rf-save.on{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.rf-head h1{font-family:Fraunces,Georgia,serif;font-size:30px;font-weight:700;color:#1a1a1a;margin:0 0 6px;line-height:1.2;letter-spacing:-.5px}@media(min-width:720px){.rf-head h1{font-size:36px}}.rf-from{font-size:14px;color:#8c8c8c;margin:0 0 12px}.rf-from strong{color:#1a1a1a}.rf-desc{font-size:16px;color:#505050;line-height:1.65;margin:0 0 16px}.rf-rating{display:flex;align-items:center;gap:8px;font-size:14px;color:#8c8c8c}.rf-stars{color:var(--orange-500);font-size:16px;letter-spacing:2px}.rf-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ebebeb;border-radius:12px;overflow:hidden;margin:24px 0}.rf-meta-item{background:#fafaf8;padding:16px;text-align:center}.rf-meta-label{display:block;font-size:11px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.rf-meta-value{font-size:15px;font-weight:700;color:#1a1a1a}.rf-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:28px}.rf-tag{font-size:12px;font-weight:500;color:#505050;background:#f5f5f5;padding:5px 12px;border-radius:9999px}.rf-section{margin-bottom:32px}.rf-section h2{font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700;color:#1a1a1a;margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #1A1A1A}.rf-ings{display:flex;flex-direction:column;gap:2px}.rf-ing{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;cursor:pointer;transition:background .1s;-webkit-tap-highlight-color:transparent}.rf-ing:hover{background:#fafaf8}.rf-ing input[type=checkbox]{width:20px;height:20px;accent-color:var(--orange-500);cursor:pointer;flex-shrink:0}.rf-ing span{font-size:15px;color:#1a1a1a;line-height:1.4}.rf-ing:has(input:checked) span{text-decoration:line-through;color:#aeaaa6}.rf-steps{display:flex;flex-direction:column;gap:0}.rf-step{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid #F0F0F0}.rf-step:last-child{border-bottom:none}.rf-step-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#1a1a1a;color:#fff;font-family:Fraunces,serif;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center}.rf-step p{flex:1;font-size:15px;line-height:1.7;color:#333;margin:6px 0 0}.rcp-results-count{font-size:13px;font-weight:600;color:#8c8c8c;margin-bottom:16px}.rcp-reset{background:none;border:none;font:inherit;font-size:13px;font-weight:600;color:var(--orange-500);cursor:pointer;padding:4px 0}.rcp-reset:hover{text-decoration:underline}button.rcp-card{text-align:left;cursor:pointer;width:100%;-webkit-tap-highlight-color:transparent}.rcp-modal-overlay{position:fixed;inset:0;z-index:9500;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:fadein .2s}@media(min-width:640px){.rcp-modal-overlay{align-items:center;padding:24px}}.rcp-modal{position:relative;width:100%;max-width:600px;background:#fff;border-radius:24px 24px 0 0;max-height:95vh;overflow-y:auto;animation:slideup .35s cubic-bezier(.2,.9,.3,1);padding-bottom:env(safe-area-inset-bottom,0)}@media(min-width:640px){.rcp-modal{border-radius:20px;max-height:90vh}}.rcp-modal-hero{position:relative;height:280px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end}@media(min-width:640px){.rcp-modal-hero{height:320px;border-radius:20px 20px 0 0}}.rcp-modal-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,transparent 60%);border-radius:inherit}.rcp-modal-hero-info{position:relative;z-index:1;padding:24px 24px 20px;color:#fff}.rcp-modal-emoji{font-size:36px;display:block;margin-bottom:8px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.rcp-modal-hero-info h2{font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:700;margin:0 0 4px;line-height:1.2;text-shadow:0 1px 4px rgba(0,0,0,.3)}.rcp-modal-hero-info p{font-size:14px;opacity:.8;margin:0}.rcp-modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#0006;backdrop-filter:blur(8px);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .12s}.rcp-modal-close:hover{background:#0009}.rcp-modal-badges{display:flex;gap:8px;padding:20px 24px 0;flex-wrap:wrap}.rcp-modal-badge{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;background:#f5f5f5;border-radius:9999px;font-size:13px;font-weight:600;color:#1a1a1a}.rcp-modal-badge span{font-size:15px}.rcp-modal-desc{padding:16px 24px;font-size:15px;line-height:1.6;color:#505050}.rcp-modal-section{padding:0 24px 24px}.rcp-modal-section h3{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:700;color:#1a1a1a;margin:0 0 16px}.rcp-modal-ingredients{display:flex;flex-direction:column;gap:4px}.rcp-modal-ing{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fafaf8;border-radius:10px;font-size:14px;color:#1a1a1a;cursor:pointer;transition:background .1s;-webkit-tap-highlight-color:transparent}.rcp-modal-ing:hover{background:#f0f0ee}.rcp-modal-ing input[type=checkbox]{width:18px;height:18px;accent-color:var(--orange-500);cursor:pointer;flex-shrink:0}.rcp-modal-ing:has(input:checked) span{text-decoration:line-through;color:#8c8c8c}.rcp-modal-steps{display:flex;flex-direction:column;gap:12px}.rcp-modal-step{display:flex;gap:14px;align-items:flex-start}.rcp-modal-step-num{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#1a1a1a;color:#fff;font-family:Fraunces,serif;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}.rcp-modal-step p{flex:1;font-size:14px;line-height:1.6;color:#505050;margin:4px 0 0;padding-bottom:12px;border-bottom:1px solid #F0F0F0}.rcp-modal-step:last-child p{border-bottom:none;padding-bottom:0}.profile-header{display:flex;align-items:center;gap:16px;padding:20px;margin:16px;background:#fff;border-radius:16px}.profile-avatar{width:56px;height:56px;border-radius:50%;background:var(--orange-500);display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:700;overflow:hidden;flex-shrink:0}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-name{font-family:Fraunces,serif;font-size:18px;font-weight:700;color:#1a1a1a;margin-bottom:2px}.profile-email{font-size:13px;color:#8c8c8c}.profile-section{margin:0 16px 24px}.profile-tabs{display:flex;gap:2px;background:#f5f5f5;border-radius:10px;padding:3px;margin-bottom:16px}.profile-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:10px 6px;border:none;border-radius:8px;background:transparent;cursor:pointer;font:inherit;font-size:12px;font-weight:600;color:#8c8c8c;transition:all .15s}.profile-tab.is-active{background:#fff;color:#1a1a1a;box-shadow:0 1px 3px #0000000f}.profile-tab svg{width:14px;height:14px}.profile-tab-count{font-size:10px;padding:1px 5px;border-radius:9999px;background:#f5f5f5;color:#8c8c8c}.profile-tab.is-active .profile-tab-count{background:rgba(var(--color-brand-rgb-500),.08);color:var(--orange-500)}.profile-tab-content{min-height:200px}.profile-settings{background:#fff;border-radius:12px;overflow:hidden}.profile-setting-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #F5F5F5}.profile-setting-row:last-child{border-bottom:none}.profile-setting-label{font-size:13px;color:#8c8c8c;font-weight:500}.profile-setting-value{font-size:14px;color:#1a1a1a;font-weight:600}.profile-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:12px;background:#fff;border:none;border-radius:10px;color:#dc2626;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.profile-logout:hover{background:#fef2f2}.profile-logout svg{width:16px;height:16px}.wallet-stack{position:relative;margin:12px 0 16px}.wallet-stack.is-collapsed{height:220px}.wallet-card{position:absolute;top:0;left:0;right:0;height:200px;border-radius:16px;padding:20px;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 6px 20px #00000026;transition:transform .4s cubic-bezier(.2,.9,.3,1);overflow:hidden;transform-origin:top center}.wallet-stack.is-expanded .wallet-card{position:relative;margin-bottom:12px}.wallet-card-shine{position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.12),transparent 40%),radial-gradient(circle at 80% 100%,rgba(0,0,0,.15),transparent 50%);pointer-events:none}.wallet-card-header{display:flex;justify-content:space-between;position:relative;z-index:1}.wallet-card-restaurant{font-family:Fraunces,serif;font-size:16px;font-weight:700}.wallet-card-type{font-size:9px;font-weight:700;letter-spacing:1.5px;opacity:.6;background:#ffffff1f;padding:3px 8px;border-radius:9999px}.wallet-card-body{position:relative;z-index:1}.wallet-card-progress-row{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-bottom:12px}.wallet-card-stamp{aspect-ratio:1;border:1.5px solid;border-radius:50%;opacity:.4}.wallet-card-stamp.is-filled{opacity:1}.wallet-card-footer{display:flex;justify-content:space-between;align-items:flex-end}.wallet-card-count{font-family:Fraunces,serif;font-size:22px;font-weight:700}.wallet-card-reward{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;opacity:.65;margin-top:3px}.wallet-card-chip{width:24px;height:18px;background:#ffffff1f;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:.7}.wallet-card-chip svg{width:12px;height:12px}.wallet-stack-collapse{display:flex;align-items:center;gap:4px;margin:0 auto;background:none;border:none;color:#8c8c8c;font:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:6px 12px;border-radius:9999px}.wallet-stack-collapse:hover{background:#f5f5f5}.wallet-stack-empty{text-align:center;padding:32px 16px;background:#fff;border-radius:12px}.wallet-stack-empty-icon{font-size:28px;margin-bottom:8px}.wallet-stack-empty-text{font-size:13px;color:#8c8c8c;margin:0}.conv-list{background:#fff;border-radius:12px;overflow:hidden}.conv-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;border-bottom:1px solid #F5F5F5;cursor:pointer;text-align:left;width:100%}.conv-row:last-child{border-bottom:none}.conv-row:hover{background:#fafaf8}.conv-row-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Fraunces,serif;font-size:16px;font-weight:700}.conv-row-content{flex:1;min-width:0}.conv-row-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:2px}.conv-row-name{font-size:14px;font-weight:600;color:#1a1a1a}.conv-row-time{font-size:11px;color:#aeaaa6;flex-shrink:0}.conv-row-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.conv-row-message{font-size:13px;color:#8c8c8c;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-row-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:9999px}.conv-thread-overlay{position:fixed;inset:0;z-index:9600;background:#0006;display:flex;align-items:flex-end;justify-content:center;animation:fadein .2s}@media(min-width:600px){.conv-thread-overlay{align-items:center;padding:24px}}.conv-thread-sheet{width:100%;max-width:460px;background:#fafaf8;border-radius:16px 16px 0 0;display:flex;flex-direction:column;max-height:92vh;animation:slideup .3s ease-out;padding-bottom:env(safe-area-inset-bottom,0)}@keyframes slideup{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:600px){.conv-thread-sheet{border-radius:16px;max-height:86vh}}.conv-thread-header{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-radius:16px 16px 0 0;border-bottom:1px solid #EBEBEB}.conv-thread-back{background:#f5f5f5;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#505050}.conv-thread-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Fraunces,serif;font-size:13px;font-weight:700}.conv-thread-info{flex:1;min-width:0}.conv-thread-name{font-size:14px;font-weight:600;color:#1a1a1a}.conv-thread-status{font-size:11px;color:#8c8c8c}.conv-thread-feed{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.conv-thread-empty{text-align:center;font-size:13px;color:#8c8c8c;padding:32px 16px}.conv-bubble{max-width:78%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.4}.conv-bubble--me{align-self:flex-end;background:#1a1a1a;color:#fff;border-bottom-right-radius:4px}.conv-bubble--them{align-self:flex-start;background:#fff;color:#1a1a1a;border-bottom-left-radius:4px}.conv-bubble-text{white-space:pre-wrap}.conv-bubble-time{font-size:10px;margin-top:3px;opacity:.5}.conv-thread-resa-card{align-self:stretch;display:flex;align-items:center;gap:10px;background:#fff;border-radius:12px;padding:12px;margin:6px 0}.conv-thread-resa-icon{font-size:18px}.conv-thread-resa-title{font-size:10px;color:#8c8c8c;font-weight:700;text-transform:uppercase;letter-spacing:.3px;margin-bottom:1px}.conv-thread-resa-detail{font-size:13px;color:#1a1a1a;font-weight:600}.conv-thread-resa-status{font-size:10px;font-weight:700;padding:3px 8px;border-radius:9999px}.conv-thread-composer{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid #EBEBEB;padding-bottom:calc(10px + env(safe-area-inset-bottom,0))}.conv-thread-input{flex:1;min-height:36px;max-height:100px;padding:8px 14px;background:#f5f5f5;border:none;border-radius:9999px;font:inherit;font-size:14px;color:#1a1a1a;resize:none;outline:none}.conv-thread-input:focus{background:#ebebeb}.conv-thread-input::placeholder{color:#8c8c8c}.conv-thread-send{width:36px;height:36px;background:#1a1a1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.conv-thread-send:disabled{opacity:.3;cursor:not-allowed}.conv-thread-send svg{width:16px;height:16px}.conv-thread-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.badges-stats{text-align:center;background:#fff;border-radius:12px;padding:16px;margin-bottom:12px}.badges-stats-num{font-family:Fraunces,serif;font-size:28px;font-weight:700;color:var(--orange-500)}.badges-stats-num span{font-size:18px;color:#8c8c8c}.badges-stats-label{font-size:11px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.badges-filters{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none}.badges-filters::-webkit-scrollbar{display:none}.badges-filter{flex-shrink:0;background:#fff;border:1px solid #EBEBEB;padding:6px 12px;border-radius:9999px;font:inherit;font-size:12px;font-weight:600;color:#505050;cursor:pointer;white-space:nowrap}.badges-filter.is-active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.badges-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(min-width:600px){.badges-grid{grid-template-columns:repeat(3,1fr)}}.badge-card{background:#fff;border-radius:12px;padding:14px 12px;text-align:center;position:relative}.badge-card.is-locked{opacity:.5}.badge-card.is-hari{background:#fffcf8}.badge-hari-tag{position:absolute;top:6px;right:6px;background:var(--orange-500);color:#fff;font-size:8px;font-weight:800;letter-spacing:.5px;padding:2px 6px;border-radius:9999px}.badge-icon{width:48px;height:48px;margin:0 auto 8px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px}.badge-name{font-size:12px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.badge-description{font-size:11px;color:#8c8c8c;margin-bottom:6px;line-height:1.3}.badge-restaurant{font-size:11px;color:var(--orange-500);font-weight:600;margin-bottom:6px}.badge-rarity{display:inline-block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:2px 7px;border-radius:9999px}.badge-progress{margin-top:8px}.badge-progress-bar{height:3px;background:#f5f5f5;border-radius:9999px;overflow:hidden;margin-bottom:3px}.badge-progress-fill{height:100%;border-radius:9999px;transition:width .5s}.badge-progress-text{font-size:10px;font-weight:600;color:#8c8c8c}.card-fs-overlay{position:fixed;inset:0;z-index:9500;background:#0006;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:fadein .2s}@media(min-width:600px){.card-fs-overlay{align-items:center;padding:24px}}.card-fs-sheet{position:relative;width:100%;max-width:420px;background:#fafaf8;border-radius:20px 20px 0 0;padding:12px 16px 24px;max-height:92vh;overflow-y:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom,0));animation:slideup .3s ease-out}@media(min-width:600px){.card-fs-sheet{border-radius:20px;padding:24px}}.card-fs-handle{width:36px;height:4px;background:#e0e0e0;border-radius:9999px;margin:0 auto 12px}@media(min-width:600px){.card-fs-handle{display:none}}.card-fs-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;background:#f5f5f5;border:none;color:#505050;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5}.card-fs-card{border-radius:16px;padding:20px;margin-bottom:16px;position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 6px 20px #00000026}.card-fs-card-header{position:relative;z-index:1;margin-bottom:12px}.card-fs-card-restaurant{font-family:Fraunces,serif;font-size:18px;font-weight:700;margin-bottom:3px}.card-fs-card-type{font-size:10px;font-weight:700;letter-spacing:1px;opacity:.6}.card-fs-card-progress{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:8px 0;position:relative;z-index:1}.card-fs-card-stamp{aspect-ratio:1;border:1.5px solid;border-radius:50%;opacity:.4}.card-fs-card-stamp.is-filled{opacity:1}.card-fs-card-footer{display:flex;justify-content:space-between;align-items:flex-end;position:relative;z-index:1;margin-top:8px}.card-fs-card-count{font-family:Fraunces,serif;font-size:24px;font-weight:700}.card-fs-card-reward{font-size:10px;font-weight:600;text-transform:uppercase;opacity:.65;margin-top:3px}.card-fs-card-pct{font-family:Fraunces,serif;font-size:26px;font-weight:700}.card-fs-qr-section{background:#fff;border-radius:16px;padding:20px;text-align:center;margin-bottom:16px}.card-fs-qr-label{font-size:11px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px}.card-fs-qr-frame{display:inline-block;padding:12px;border-radius:12px}.card-fs-qr-frame img{display:block;width:180px;height:180px}.card-fs-qr-empty{padding:28px 12px;font-size:13px;color:#8c8c8c}.card-fs-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.card-fs-stat{background:#fff;border-radius:12px;padding:12px 6px;text-align:center}.card-fs-stat-value{font-family:Fraunces,serif;font-size:20px;font-weight:700;color:var(--orange-500);margin-bottom:2px}.card-fs-stat-label{font-size:10px;font-weight:600;color:#8c8c8c;text-transform:uppercase}.card-fs-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:#1a1a1a;color:#fff;border:none;border-radius:12px;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.back-to-hub{position:fixed;top:12px;left:12px;z-index:8000;display:flex;align-items:center;gap:6px;padding:6px 12px 6px 6px;background:#fffffff2;backdrop-filter:blur(16px);border:1px solid #EBEBEB;border-radius:9999px;cursor:pointer;box-shadow:0 2px 8px #00000014;margin-top:env(safe-area-inset-top,0)}.back-to-hub:hover{transform:translateY(-1px)}.back-to-hub:active{transform:scale(.96)}.back-to-hub-icon{width:24px;height:24px;border-radius:6px;overflow:hidden}.back-to-hub-icon img{width:100%;height:100%;object-fit:cover}.back-to-hub-label{font-size:12px;font-weight:600;color:#1a1a1a}.hub-edit-btn{display:flex;align-items:center;gap:4px;background:#f5f5f5;border:none;padding:5px 10px;border-radius:9999px;font:inherit;font-size:11px;font-weight:600;color:#505050;cursor:pointer}.hub-edit-btn.is-active{background:#1a1a1a;color:#fff}.hub-favorites-grid{display:grid;grid-template-columns:1fr;gap:12px;margin:0 16px}@media(min-width:600px){.hub-favorites-grid{grid-template-columns:repeat(2,1fr)}}.hub-fav-wrapper{position:relative}.hub-fav-wrapper.is-dragging{opacity:.4}.hub-favorites-grid.is-edit-mode .hub-fav-wrapper{animation:wiggle 1s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-.3deg)}75%{transform:rotate(.3deg)}}.hub-fav-edit-controls{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:3px;z-index:10}.hub-fav-edit-btn{width:28px;height:22px;border:none;background:#fffffff2;color:#505050;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a}.hub-fav-edit-btn:disabled{opacity:.3}.hub-fav-edit-btn svg{width:12px;height:12px}.hub-fav-edit-handle{width:28px;height:22px;background:#fffffff2;color:#8c8c8c;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:grab;box-shadow:0 1px 3px #0000001a}.hub-fav-edit-handle svg{width:16px;height:16px}.hub-fav-card{border-radius:16px;overflow:hidden;cursor:pointer;height:200px;position:relative;transition:transform .2s,box-shadow .2s}.hub-fav-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.hub-fav-card-bg{position:relative;width:100%;height:100%}.hub-fav-card-initial{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Fraunces,serif;font-size:56px;font-weight:700;color:#ffffffa6}.hub-fav-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.45),transparent 50%)}.hub-fav-card-heart{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#ffffffd9;border:none;color:var(--orange-500);cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center}.hub-fav-card-heart svg{width:14px;height:14px}.hub-fav-card-badge{position:absolute;top:10px;left:10px;background:#000000a6;color:#fff;font-size:10px;font-weight:600;padding:3px 8px;border-radius:9999px;z-index:2}.hub-fav-card-dots{position:absolute;bottom:56px;left:12px;right:12px;display:flex;justify-content:center;gap:4px;z-index:1}.hub-fav-card-dot{width:16px;height:2px;background:#ffffff59;border-radius:9999px}.hub-fav-card-dot.is-active{background:#ffffffd9;width:22px}.hub-fav-card-info{position:absolute;bottom:10px;left:12px;right:12px;z-index:1;color:#fff}.hub-fav-card-name{font-family:Fraunces,serif;font-size:17px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.25);margin-bottom:2px}.hub-fav-card-address{display:flex;align-items:center;gap:3px;font-size:11px;opacity:.8}.hub-section-subhead{font-size:12px;color:#8c8c8c;font-weight:500;margin:-8px 0 12px 4px}.hub-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:0 16px}.hub-section-title{font-family:Fraunces,serif;font-size:20px;font-weight:700;color:#1a1a1a;margin:0}.hub-section-count{font-size:12px;font-weight:600;color:#8c8c8c}.hub-nearby-cta{display:flex;align-items:center;gap:12px;margin:0 16px 20px;padding:12px 14px;background:#fff;border-radius:12px}.hub-nearby-cta-icon{width:36px;height:36px;border-radius:10px;background:var(--orange-500);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.hub-nearby-cta-text{flex:1}.hub-nearby-cta-title{font-size:13px;font-weight:600;color:#1a1a1a}.hub-nearby-cta-sub{font-size:11px;color:#8c8c8c;margin-top:1px}.hub-nearby-cta-btn{background:#1a1a1a;color:#fff;border:none;padding:8px 14px;border-radius:9999px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.hub-nearby-error{text-align:center;padding:24px 16px;background:#fff;border-radius:12px;margin:0 16px 20px}.hub-nearby-error-icon{font-size:24px;margin-bottom:6px}.hub-nearby-error p{font-size:13px;color:#8c8c8c;margin:0 0 10px}.hub-nearby-error-btn{background:#fff;border:1px solid #EBEBEB;padding:6px 14px;border-radius:9999px;font:inherit;font-size:12px;font-weight:600;color:#505050;cursor:pointer}.hub-nearby-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0 16px}@media(min-width:600px){.hub-nearby-list{grid-template-columns:repeat(3,1fr)}}.hub-nearby-distance{position:absolute;top:6px;left:6px;display:flex;align-items:center;gap:3px;background:#000000a6;color:#fff;font-size:10px;font-weight:600;padding:3px 7px;border-radius:9999px;z-index:2}.hub-discover-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:0 16px}@media(min-width:540px){.hub-discover-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:860px){.hub-discover-grid{grid-template-columns:repeat(3,1fr)}}.hub-empty{text-align:center;padding:48px 24px;background:#fff;border-radius:16px;margin:0 16px}.hub-empty-icon{font-size:32px;display:block;margin-bottom:10px}.hub-empty-title{font-size:15px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.hub-empty-text{font-size:13px;color:#8c8c8c;max-width:280px;margin:0 auto 16px;line-height:1.5}.hub-empty-cta{background:#1a1a1a;color:#fff;border:none;padding:10px 20px;border-radius:9999px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.hub-onboarding{text-align:center;padding:32px 16px}.hub-onboarding-hero-icon{width:72px;height:72px;margin:0 auto 16px;border-radius:16px;overflow:hidden;box-shadow:0 8px 20px rgba(var(--color-brand-rgb-500),.3)}.hub-onboarding-hero-icon img{width:100%;height:100%;object-fit:cover}.hub-onboarding-title{font-family:Fraunces,serif;font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.hub-onboarding-tagline{font-size:14px;color:#8c8c8c;margin:0 0 24px}.hub-onboarding-features{display:flex;flex-direction:column;gap:10px;margin:0 auto 24px;max-width:400px;text-align:left}.hub-onboarding-feature{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:#fff;border-radius:12px}.hub-onboarding-feature-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;font-size:20px}.hub-onboarding-feature-title{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.hub-onboarding-feature-desc{font-size:12px;color:#8c8c8c;line-height:1.4}.hub-onboarding-cta{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 auto;max-width:400px;width:100%;background:#1a1a1a;color:#fff;border:none;padding:14px 24px;border-radius:12px;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.hub-onboarding-footer{font-size:12px;color:#8c8c8c;margin:16px auto 0;max-width:360px}.rp-sticky{position:sticky;top:0;z-index:40;background:#fafaf8;padding:12px 20px 0;border-bottom:1px solid #EBEBEB}.rp-sticky-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.rp-back-btn{background:none;border:none;cursor:pointer;color:#505050;padding:4px;display:flex;-webkit-tap-highlight-color:transparent}.rp-back-btn:hover{color:#1a1a1a}.rp-sticky-top h1{font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700;color:#1a1a1a;margin:0}.rp-count{font-size:12px;font-weight:700;color:#8c8c8c;background:#f0f0f0;padding:2px 8px;border-radius:9999px}.rp-select{background:#fff;border:1px solid #DDDCDA;border-radius:9999px;padding:6px 28px 6px 12px;font:inherit;font-size:12px;font-weight:600;color:#1a1a1a;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.rp-lvl{padding:5px 10px;border-radius:9999px;border:1px solid #DDDCDA;background:#fff;font:inherit;font-size:11px;font-weight:600;color:#505050;cursor:pointer;transition:all .12s;white-space:nowrap}.rp-lvl:hover{border-color:#1a1a1a}.rp-lvl--on{color:#fff;border-color:transparent}.rp-reset{background:none;border:none;font:inherit;font-size:16px;font-weight:700;color:var(--orange-500);cursor:pointer;padding:4px 8px;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.rp-reset:hover{background:rgba(var(--color-brand-rgb-500),.08)}.rp-cuisine-scroll{display:flex;gap:6px;padding:0 0 10px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.rp-cuisine-scroll::-webkit-scrollbar{display:none}.rp-card-badges-top{position:absolute;top:10px;left:10px;display:flex;gap:6px}.rp-card-lvl{color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px}.rp-card-hari{position:absolute;top:10px;right:48px;background:var(--orange-500);color:#fff;font-size:9px;font-weight:800;padding:3px 7px;border-radius:6px;letter-spacing:.5px}.rp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.rp-card-head h4{font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.25;flex:1}.rp-card-star{flex-shrink:0;font-size:13px;font-weight:700;color:var(--orange-500)}.rp-card-desc{font-size:13px;color:#8c8c8c;line-height:1.45;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rp-card-cuisine{font-size:11px;font-weight:600;color:#1a1a1a;background:#f5f5f5;padding:3px 8px;border-radius:9999px}.rp-card-resto{font-size:11px;color:#8c8c8c}.rp-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.hari-mark img{transition:transform .2s}.H-logo:hover .hari-mark img{transform:scale(1.06)}.H-side-icon{display:flex;align-items:center;justify-content:center;width:24px;flex-shrink:0}.H-side--closed .H-side-icon{width:auto}.chip-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.chip-icon svg{width:16px;height:16px}.H-main>*{animation:viewIn .4s cubic-bezier(.2,.9,.3,1)}@keyframes viewIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.rc,.rp-card,.fav-item,.promo{opacity:0;transform:translateY(20px);animation:cardReveal .5s cubic-bezier(.2,.9,.3,1) forwards}.rc:nth-child(1){animation-delay:.05s}.rc:nth-child(2){animation-delay:.1s}.rc:nth-child(3){animation-delay:.15s}.rc:nth-child(4){animation-delay:.2s}.rc:nth-child(5){animation-delay:.25s}.rc:nth-child(6){animation-delay:.3s}.rc:nth-child(7){animation-delay:.35s}.rc:nth-child(8){animation-delay:.4s}@keyframes cardReveal{to{opacity:1;transform:translateY(0)}}.hero{transition:transform .3s ease-out}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05),transparent 40%,rgba(var(--color-brand-rgb-500),.03));pointer-events:none;z-index:1}.hero-inner{animation:heroIn .6s cubic-bezier(.2,.9,.3,1)}@keyframes heroIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.hero-icon{transition:transform .3s}.hero:hover .hero-icon{transform:translateY(-4px) rotate(3deg)}.rc{position:relative;overflow:hidden}.rc:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 60%,rgba(255,255,255,.04));pointer-events:none;border-radius:inherit}.rc:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001a,0 2px 8px #0000000a}.rc:hover .rc-photo{transform:scale(1.03)}.rc-photo{transition:transform .4s cubic-bezier(.2,.9,.3,1)}.rc:active{transform:scale(.98);transition:transform .1s}.chip,.filter-btn,.H-toggle,.H-avatar,.H-btn,.nav-item,.H-side-item,.H-drawer-item,.rp-chip,.rp-lvl,.cat{transition:all .15s cubic-bezier(.2,.9,.3,1)}.chip:active,.filter-btn:active,.H-btn:active,.rp-chip:active,.rp-lvl:active{transform:scale(.95)}.nav-item.on .nav-icon{animation:navBounce .35s cubic-bezier(.175,.885,.32,1.275)}@keyframes navBounce{0%{transform:scale(.8)}50%{transform:scale(1.15)}to{transform:scale(1)}}.H-side{transition:width .3s cubic-bezier(.2,.9,.3,1)}.H-side-item{transition:all .2s cubic-bezier(.2,.9,.3,1)}.H-side-item:hover{transform:translate(2px)}.H-side-item--on{position:relative}.H-side-item--on:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--orange-500);border-radius:0 3px 3px 0}.H-search{transition:all .25s cubic-bezier(.2,.9,.3,1)}.H-search:focus-within{background:#fff;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.1),0 4px 16px #0000000f;transform:scaleX(1.02)}.H-top{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffeb;transition:box-shadow .2s}.promo{transition:all .25s cubic-bezier(.2,.9,.3,1)}.promo:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.auth-banner{transition:transform .2s;position:relative;overflow:hidden}.auth-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.05),transparent,rgba(255,255,255,.03));pointer-events:none}.auth-banner:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00000026}.H-drawer-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.H-drawer{box-shadow:8px 0 40px #0000001f}.cat--active{box-shadow:0 2px 8px #1a1a1a26}.cat{transition:all .2s cubic-bezier(.2,.9,.3,1)}.cat:hover{transform:translateY(-2px)}.cat-img{transition:transform .2s}.cat:hover .cat-img{transform:scale(1.1)}.filter-dropdown{animation:ddSlide .2s cubic-bezier(.2,.9,.3,1)}@keyframes ddSlide{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.H-main{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent}.H-main::-webkit-scrollbar{width:6px}.H-main::-webkit-scrollbar-track{background:transparent}.H-main::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}.H-main::-webkit-scrollbar-thumb:hover{background:#0003}@media(prefers-reduced-motion:reduce){.rc,.rp-card,.fav-item,.promo,.H-main>*,.hero-inner,.hero-icon,.hari-icon{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}.hari-shell{display:flex;flex-direction:column;min-height:100vh}.hari-shell-header{position:sticky;top:0;z-index:9000;display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 12px;background:#1a1a1af2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.hari-shell-left,.hari-shell-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.hari-shell-back{background:none;border:none;cursor:pointer;color:#fff;padding:6px;margin:-6px 2px -6px -6px;display:flex;align-items:center;border-radius:8px;transition:background .12s;-webkit-tap-highlight-color:transparent}.hari-shell-back:hover{background:#ffffff1a}.hari-shell-back:active{transform:scale(.9)}.hari-shell-brand{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;color:#fff;padding:0;-webkit-tap-highlight-color:transparent;flex-shrink:0}.hari-shell-brand span{font-family:Space Grotesk,system-ui,sans-serif;font-size:14px;font-weight:700;letter-spacing:-.02em}.hari-shell-name{font-size:14px;font-weight:600;color:#fff9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:center;padding:0 8px}.hari-shell-avatar{width:28px;height:28px;border-radius:50%;background:#ffffff26;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;overflow:hidden;transition:background .12s}.hari-shell-avatar:hover{background:#ffffff40}.hari-shell-avatar img{width:100%;height:100%;object-fit:cover}.hari-shell-login{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;padding:5px 12px;border-radius:9999px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .12s}.hari-shell-login:hover{background:#fff3;border-color:#ffffff59}.hari-shell-content{flex:1}.hari-shell-content>*{animation:shellContentIn .35s cubic-bezier(.2,.9,.3,1)}@keyframes shellContentIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.hari-shell .header{display:none!important}.hari-shell .app-container{padding-top:0!important}.m-0{margin:0}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.w-full{width:100%}.h-full{height:100%}.rounded-full{border-radius:var(--radius-full)}.text-center{text-align:center}.text-xl{font-size:var(--font-size-xl)}.font-bold{font-weight:700}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.emoji{width:1em;height:1em;vertical-align:-.15em;margin-right:2px}.bundle-info-hint{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4);background:var(--primary-soft);border-radius:var(--radius-lg);color:var(--primary);font-size:var(--font-size-sm);font-weight:500}@supports (padding: max(0px)){.page{padding-bottom:calc(90px + env(safe-area-inset-bottom))}}@supports (padding: max(0px)){.cart-fab{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.noisette-container{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;user-select:none;will-change:transform;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.noisette-container:hover{transform:scale(1.08) translateY(-4px);filter:brightness(1.05)}.noisette-container:active{transform:scale(.92) translateY(2px)}.noisette-image-wrapper{position:relative;width:100%;height:100%}.noisette-image{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 20px rgba(255,107,53,.25));transition:filter .3s ease}.noisette-container:hover .noisette-image{filter:drop-shadow(0 8px 30px rgba(255,107,53,.35))}.noisette-shadow{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:70%;height:12px;background:radial-gradient(ellipse,rgba(0,0,0,.2) 0%,transparent 70%);border-radius:50%}.noisette-entering{animation:ghibliEnter 1s cubic-bezier(.34,1.56,.64,1)}@keyframes ghibliEnter{0%{opacity:0;transform:scale(.3) translateY(-100px) rotate(-30deg)}50%{opacity:1;transform:scale(1.15) translateY(10px) rotate(5deg)}65%{transform:scale(.95) translateY(-5px) rotate(-2deg)}80%{transform:scale(1.05) translateY(3px) rotate(1deg)}to{transform:scale(1) translateY(0) rotate(0)}}.noisette-bouncing{animation:ghibliBounce .7s cubic-bezier(.34,1.56,.64,1)}@keyframes ghibliBounce{0%,to{transform:translateY(0) scaleY(1)}20%{transform:translateY(-25px) scaleY(1.08) scaleX(.95)}40%{transform:translateY(0) scaleY(.9) scaleX(1.05)}60%{transform:translateY(-12px) scaleY(1.04) scaleX(.98)}80%{transform:translateY(0) scaleY(.96) scaleX(1.02)}}.noisette-wiggling{animation:ghibliWiggle .6s ease-in-out}@keyframes ghibliWiggle{0%,to{transform:rotate(0) translate(0)}15%{transform:rotate(-8deg) translate(-3px)}30%{transform:rotate(8deg) translate(3px)}45%{transform:rotate(-6deg) translate(-2px)}60%{transform:rotate(6deg) translate(2px)}75%{transform:rotate(-3deg) translate(-1px)}}.noisette-mood-idle .noisette-image{animation:ghibliBreath 4s ease-in-out infinite}@keyframes ghibliBreath{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.02) translateY(-3px)}}.noisette-mood-happy .noisette-image{animation:ghibliHappyBounce 1.2s ease-in-out infinite}@keyframes ghibliHappyBounce{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(3deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-8px) rotate(-3deg)}}.noisette-mood-celebrating .noisette-image{animation:ghibliCelebrate .8s cubic-bezier(.34,1.56,.64,1) infinite}@keyframes ghibliCelebrate{0%,to{transform:translateY(0) rotate(0) scale(1)}30%{transform:translateY(-20px) rotate(-10deg) scale(1.1)}60%{transform:translateY(-5px) rotate(10deg) scale(1.05)}}.noisette-mood-dancing .noisette-image{animation:ghibliDance .8s ease-in-out infinite}@keyframes ghibliDance{0%,to{transform:translateY(0) rotate(-8deg) scaleX(.98)}25%{transform:translateY(-12px) rotate(0) scaleX(1)}50%{transform:translateY(0) rotate(8deg) scaleX(1.02)}75%{transform:translateY(-12px) rotate(0) scaleX(1)}}.noisette-mood-laughing .noisette-image{animation:ghibliLaugh .4s ease-in-out infinite}@keyframes ghibliLaugh{0%,to{transform:rotate(-4deg) translate(-2px)}50%{transform:rotate(4deg) translate(2px)}}.noisette-mood-thinking .noisette-image{animation:ghibliThink 2.5s ease-in-out infinite}@keyframes ghibliThink{0%,to{transform:rotate(0) translate(0)}25%{transform:rotate(8deg) translate(4px)}50%{transform:rotate(0) translate(0)}75%{transform:rotate(-5deg) translate(-3px)}}.noisette-mood-confused .noisette-image{animation:ghibliConfused 1.8s ease-in-out infinite}@keyframes ghibliConfused{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(0)}60%{transform:rotate(12deg)}80%{transform:rotate(0)}}.noisette-mood-tired .noisette-image{animation:ghibliTired 3.5s ease-in-out infinite}@keyframes ghibliTired{0%,to{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(8px) rotate(6deg) scale(.98)}}.noisette-mood-love .noisette-image{animation:ghibliLove 1.2s ease-in-out infinite}@keyframes ghibliLove{0%,to{transform:scale(1);filter:brightness(1)}25%{transform:scale(1.08);filter:brightness(1.1)}50%{transform:scale(1);filter:brightness(1)}75%{transform:scale(1.05);filter:brightness(1.05)}}.noisette-mood-angry .noisette-image{animation:ghibliAngry .15s ease-in-out infinite}@keyframes ghibliAngry{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.noisette-mood-eating .noisette-image{animation:ghibliEat 1s ease-in-out infinite}@keyframes ghibliEat{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.04) rotate(-3deg)}50%{transform:scale(1.06) rotate(0)}75%{transform:scale(1.04) rotate(3deg)}}.noisette-mood-waving .noisette-image{animation:ghibliWave 1s ease-in-out infinite}@keyframes ghibliWave{0%,to{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.noisette-mood-focused .noisette-image{animation:ghibliFocus 2s ease-in-out infinite}@keyframes ghibliFocus{0%,to{transform:scale(1);filter:drop-shadow(0 6px 20px rgba(255,107,53,.25))}50%{transform:scale(1.03);filter:drop-shadow(0 8px 30px rgba(255,107,53,.5))}}.noisette-mood-calm .noisette-image{animation:ghibliCalm 5s ease-in-out infinite}@keyframes ghibliCalm{0%,to{transform:scale(1) translateY(0);opacity:1}50%{transform:scale(1.02) translateY(-5px);opacity:.95}}.noisette-mood-running .noisette-image{animation:ghibliRun .4s linear infinite}@keyframes ghibliRun{0%,to{transform:translate(0) rotate(-5deg) scaleX(1.1)}50%{transform:translate(2px) rotate(5deg) scaleX(.9)}}.noisette-mood-returning .noisette-image{animation:ghibliReturn .6s cubic-bezier(.34,1.56,.64,1)}@keyframes ghibliReturn{0%{transform:translate(200px) rotate(15deg) scale(.8);opacity:0}60%{transform:translate(-10px) rotate(-5deg) scale(1.1);opacity:1}to{transform:translate(0) rotate(0) scale(1)}}.noisette-particles{position:absolute;inset:0;pointer-events:none;overflow:visible}.noisette-confetti{position:absolute;inset:-20px;pointer-events:none}.confetti-piece{position:absolute;width:10px;height:10px;border-radius:3px;animation:ghibliConfettiFall 1.8s ease-out infinite;animation-delay:var(--delay, 0s);transform-origin:center}@keyframes ghibliConfettiFall{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}50%{transform:translateY(80px) rotate(360deg) scale(.8);opacity:.8}to{transform:translateY(180px) rotate(720deg) scale(0);opacity:0}}.confetti-piece:nth-child(1){background:#ff6b6b;left:5%;top:-15px}.confetti-piece:nth-child(2){background:#4ecdc4;left:20%;top:-20px}.confetti-piece:nth-child(3){background:#ffe66d;left:35%;top:-10px}.confetti-piece:nth-child(4){background:#95e1d3;left:50%;top:-18px}.confetti-piece:nth-child(5){background:plum;left:65%;top:-12px}.confetti-piece:nth-child(6){background:#ff6b35;left:80%;top:-22px}.confetti-piece:nth-child(7){background:#6bcb77;left:90%;top:-16px}.confetti-piece:nth-child(8){background:#ffd93d;left:75%;top:-14px}.noisette-hearts{position:absolute;inset:0;pointer-events:none}.heart-particle{position:absolute;font-size:18px;animation:ghibliHeartFloat 2.5s ease-out infinite;animation-delay:var(--delay, 0s);filter:drop-shadow(0 2px 4px rgba(255,105,180,.3))}@keyframes ghibliHeartFloat{0%{transform:translateY(0) scale(0) rotate(0);opacity:0}20%{transform:translateY(-15px) scale(1) rotate(5deg);opacity:1}80%{transform:translateY(-80px) scale(.7) rotate(-10deg);opacity:.6}to{transform:translateY(-120px) scale(0) rotate(-15deg);opacity:0}}.heart-particle:nth-child(1){left:0;top:25%}.heart-particle:nth-child(2){right:0;top:30%}.heart-particle:nth-child(3){left:15%;top:15%}.heart-particle:nth-child(4){right:15%;top:20%}.heart-particle:nth-child(5){left:50%;top:10%;transform:translate(-50%)}.heart-particle:nth-child(6){left:30%;top:35%}.noisette-music{position:absolute;top:-15px;right:-15px;pointer-events:none}.music-note{position:absolute;font-size:22px;color:#ff6b35;animation:ghibliMusicFloat 2s ease-out infinite;animation-delay:var(--delay, 0s);filter:drop-shadow(0 2px 6px rgba(255,107,53,.4))}@keyframes ghibliMusicFloat{0%{transform:translateY(0) rotate(0) scale(1);opacity:0}15%{opacity:1}80%{transform:translateY(-60px) rotate(25deg) scale(.6);opacity:.7}to{transform:translateY(-90px) rotate(35deg) scale(0);opacity:0}}.music-note:nth-child(1){right:0;top:0}.music-note:nth-child(2){right:-20px;top:20px}.music-note:nth-child(3){right:10px;top:-20px}.noisette-thoughts{position:absolute;top:-25px;right:-15px;pointer-events:none}.thought-bubble{position:absolute;background:#fff;border-radius:50%;border:2px solid #E0E0E0;animation:ghibliThoughtFloat 3s ease-in-out infinite;animation-delay:var(--delay, 0s);box-shadow:0 2px 8px #0000001a}@keyframes ghibliThoughtFloat{0%,to{transform:translateY(0) scale(var(--size, 1));opacity:.4}50%{transform:translateY(-15px) scale(calc(var(--size, 1) * 1.1));opacity:1}}.thought-bubble:nth-child(1){width:10px;height:10px;right:0;top:20px}.thought-bubble:nth-child(2){width:15px;height:15px;right:10px;top:5px}.thought-bubble:nth-child(3){width:20px;height:20px;right:25px;top:-10px}.noisette-steam{position:absolute;top:-10px;left:50%;transform:translate(-50%);pointer-events:none}.steam-puff{position:absolute;width:20px;height:20px;background:radial-gradient(circle,rgba(255,107,53,.3),transparent);border-radius:50%;animation:ghibliSteam .8s ease-out infinite;animation-delay:var(--delay, 0s)}@keyframes ghibliSteam{0%{transform:translateY(0) scale(.5);opacity:0}50%{transform:translateY(-20px) scale(1.2);opacity:.8}to{transform:translateY(-40px) scale(1.5);opacity:0}}.steam-puff:nth-child(1){left:-15px}.steam-puff:nth-child(2){left:-5px}.steam-puff:nth-child(3){left:5px}.steam-puff:nth-child(4){left:15px}.noisette-zzz{position:absolute;top:-5px;right:-10px;pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.zzz-particle{font-size:var(--size, 16px);font-weight:700;color:#8b8b8b;animation:ghibliZzzFloat 2.5s ease-in-out infinite;animation-delay:var(--delay, 0s);filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}@keyframes ghibliZzzFloat{0%,to{transform:translateY(0) translate(0) rotate(0);opacity:.3}50%{transform:translateY(-25px) translate(8px) rotate(5deg);opacity:1}}.zzz-particle:nth-child(1){font-size:14px}.zzz-particle:nth-child(2){font-size:18px;margin-right:10px}.zzz-particle:nth-child(3){font-size:22px;margin-right:20px}.noisette-sparkles{position:absolute;inset:0;pointer-events:none;overflow:visible}.sparkle{position:absolute;font-size:18px;color:gold;animation:ghibliSparkle 1.5s ease-in-out infinite;animation-delay:var(--delay, 0s);filter:drop-shadow(0 0 6px rgba(255,215,0,.6))}@keyframes ghibliSparkle{0%,to{transform:scale(.3) rotate(0);opacity:.2}50%{transform:scale(1.3) rotate(180deg);opacity:1}}.sparkle:nth-child(1){top:8%;left:8%}.sparkle:nth-child(2){top:12%;right:8%}.sparkle:nth-child(3){bottom:15%;left:12%}.sparkle:nth-child(4){bottom:20%;right:10%}.noisette-tears{position:absolute;inset:0;pointer-events:none}.tear-drop{position:absolute;width:8px;height:12px;background:#6db1bf;border-radius:50% 50% 50% 0;animation:ghibliTearFall 1.2s ease-in infinite;animation-delay:var(--delay, 0s);filter:drop-shadow(0 2px 4px rgba(109,177,191,.4))}@keyframes ghibliTearFall{0%{transform:translateY(0) scale(0);opacity:0}20%{transform:translateY(5px) scale(1);opacity:1}to{transform:translateY(60px) scale(.8);opacity:0}}.tear-drop:nth-child(1){left:calc(30% + calc(var(--side, 1) * 10px));top:35%;transform:rotate(calc(45deg * var(--side, 1)))}.tear-drop:nth-child(2){left:calc(70% + calc(var(--side, 1) * -10px));top:35%;transform:rotate(calc(-45deg * var(--side, 1)))}.noisette-crumbs{position:absolute;bottom:10%;left:50%;transform:translate(-50%);width:100%;pointer-events:none}.crumb{position:absolute;width:5px;height:5px;background:#d2691e;border-radius:50%;animation:ghibliCrumbFall 1.5s ease-out infinite;animation-delay:var(--delay, 0s);left:calc(50% + var(--x, 0px))}@keyframes ghibliCrumbFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(40px) rotate(180deg);opacity:0}}.noisette-focus{position:absolute;inset:-20px;pointer-events:none}.focus-ring{position:absolute;inset:0;border:3px solid #FF6B35;border-radius:50%;animation:ghibliFocusRing 2s ease-in-out infinite}.focus-ring-2{animation-delay:1s;border-color:#ffd93d}@keyframes ghibliFocusRing{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.2);opacity:.6}to{transform:scale(1.5);opacity:0}}@media(prefers-reduced-motion:reduce){.noisette-container,.noisette-image,.noisette-particles *,*{animation:none!important;transition:none!important}}@media(max-width:768px){.noisette-mood-dancing .noisette-image,.noisette-mood-celebrating .noisette-image{animation-duration:1s}}.hari-mascot{position:relative;display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:opacity .5s cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1)}.hari-mascot.hari-visible{opacity:1;transform:scale(1)}.hari-mascot-image{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.08));transition:filter .3s ease}.hari-mascot:hover .hari-mascot-image{filter:drop-shadow(0 6px 16px rgba(0,0,0,.12))}.hari-mascot.hari-mood-happy .hari-mascot-image{animation:gentle-float 2s ease-in-out infinite}.hari-mascot.hari-mood-excited .hari-mascot-image{animation:gentle-bounce 1.5s ease-in-out infinite}.hari-mascot.hari-mood-thinking .hari-mascot-image{animation:gentle-tilt 3s ease-in-out infinite}.hari-mascot.hari-mood-typing .hari-mascot-image{animation:gentle-pulse 2s ease-in-out infinite}@keyframes gentle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes gentle-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.02)}}@keyframes gentle-tilt{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes gentle-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.03);opacity:.95}}@media(max-width:768px){.hari-mascot-image{filter:drop-shadow(0 3px 8px rgba(0,0,0,.06))}}:root{--orange-50: #FFF4EC;--orange-100: #FFE3D0;--orange-200: #FFC9A1;--orange-300: #FFA86A;--orange-400: #FB8632;--orange-500: #E85D04;--orange-600: #D65A1F;--orange-700: #B14315;--orange-800: #8E3510;--orange-900: #6D2A0E;--orange-950: #3D1707;--black: #000000;--white: #FFFFFF;--neutral-0: #FFFFFF;--neutral-50: #FBF7F0;--neutral-100: #F7F2EC;--neutral-150: #F2EBE0;--neutral-200: #EEE4DA;--neutral-300: #D8CFC5;--neutral-400: #B5A89C;--neutral-500: #8B7E77;--neutral-600: #6F5C52;--neutral-700: #5A4032;--neutral-800: #3D2A22;--neutral-900: #2F1E19;--neutral-950: #1A100C;--success-50: #ECF6EF;--success-500: #3F8E5C;--success-700: #235636;--warning-50: #FDF4E3;--warning-500: #E08A3B;--warning-700: #8C5018;--error-50: #FCEDED;--error-500: #D64545;--error-700: #852828;--info-50: #E7F0F9;--info-500: #3A7BBF;--info-700: #1F4673;--error-300: #EF8A8A;--success-300: #6FBE89;--info-300: #6AA9E0;--admin-ink-950: #0B0A09;--admin-ink-900: #161311;--admin-ink-850: #211C19;--admin-ink-800: #2E2823;--admin-cream-100: #F5EFE6;--admin-stone-400: #A39A8E;--border-width-hairline: 1px;--border-width-strong: 2px;--radius-none: 0;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-3xl: 24px;--radius-full: 9999px;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--shadow-flat: 0 0 0 transparent;--shadow-raised: 0 1px 2px rgba(47,30,25,.06), 0 2px 6px rgba(47,30,25,.04);--shadow-elevated: 0 4px 12px rgba(47,30,25,.08), 0 8px 24px rgba(47,30,25,.06);--shadow-overlay: 0 12px 32px rgba(47,30,25,.12), 0 4px 8px rgba(47,30,25,.06);--shadow-modal: 0 24px 60px rgba(47,30,25,.18), 0 8px 16px rgba(47,30,25,.08);--shadow-button-rest: 0 1px 2px rgba(47,30,25,.08), inset 0 1px 0 rgba(255,255,255,.18);--shadow-button-hover: 0 4px 10px rgba(232,93,4,.22), inset 0 1px 0 rgba(255,255,255,.2);--duration-tap: 80ms;--duration-fast: .15s;--duration-base: .25s;--duration-emphasized: .35s;--duration-slower: .5s;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-spring-soft: cubic-bezier(.16, 1, .3, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--duration-pulse: 1.6s;--ease-out: cubic-bezier(0, 0, .2, 1);--text-2xs: .625rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.25rem;--text-xl: 1.5625rem;--text-2xl: 1.9375rem;--text-3xl: 2.4375rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700}:root{--surface-base: var(--neutral-100);--surface-raised: var(--neutral-0);--surface-sunken: var(--neutral-200);--surface-muted: var(--neutral-150);--text-primary: var(--neutral-900);--text-secondary: var(--neutral-700);--text-muted: var(--neutral-600);--text-on-accent: var(--neutral-0);--border-subtle: rgba(47,30,25,.08);--border-default: rgba(47,30,25,.16);--border-strong: rgba(47,30,25,.24);--accent: var(--orange-500);--accent-hover: var(--orange-600);--accent-active: var(--orange-700);--accent-soft: rgba(232,93,4,.12);--accent-soft-strong: rgba(232,93,4,.18);--ring: var(--orange-500);--state-error: var(--error-500);--state-error-strong: var(--error-700);--state-success: var(--success-500);--state-success-strong: var(--success-700);--state-warning: var(--warning-500);--state-warning-strong: var(--warning-700);--state-info: var(--info-500);--state-info-strong: var(--info-700);--state-success-soft: rgba(63, 142, 92, .12);--state-warning-soft: rgba(224, 138, 59, .12);--state-error-soft: rgba(214, 69, 69, .12);--state-info-soft: rgba(58, 123, 191, .12);--ring-default: var(--orange-500);--ring-error: var(--error-500);--ring-offset: 2px;--ring-width: 2px;--font-display: "Fraunces", Georgia, serif;--font-body: "Space Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-theme=operational]{--surface-base: var(--neutral-50);--surface-raised: var(--neutral-0);--surface-sunken: var(--neutral-150);--surface-muted: var(--neutral-100);--accent: var(--orange-600);--accent-hover: var(--orange-700);--accent-active: var(--orange-800);--accent-soft: rgba(214,90,31,.12);--accent-soft-strong: rgba(214,90,31,.18);--ring: var(--orange-600);--ring-default: var(--orange-600);--font-display: "Sora", system-ui, sans-serif;--font-body: "Manrope", system-ui, sans-serif}[data-theme=admin]{--surface-base: var(--admin-ink-950);--surface-raised: var(--admin-ink-900);--surface-sunken: var(--admin-ink-950);--surface-muted: var(--admin-ink-850);--surface-overlay: var(--admin-ink-850);--text-primary: var(--admin-cream-100);--text-secondary: var(--admin-stone-400);--text-muted: var(--admin-stone-400);--text-on-accent: var(--neutral-950);--border-subtle: rgba(245,239,230,.08);--border-default: rgba(245,239,230,.14);--border-strong: rgba(245,239,230,.22);--accent: var(--orange-500);--accent-hover: var(--orange-400);--accent-active: var(--orange-600);--accent-soft: rgba(232,93,4,.16);--accent-soft-strong: rgba(232,93,4,.24);--ring: var(--orange-500);--ring-default: var(--orange-500);--state-error: var(--error-500);--state-error-strong: var(--error-300);--state-success: var(--success-500);--state-success-strong: var(--success-300);--state-warning: var(--warning-500);--state-warning-strong: var(--warning-500);--state-info: var(--info-500);--state-info-strong: var(--info-300);--state-success-soft: rgba(111, 190, 137, .16);--state-warning-soft: rgba(224, 138, 59, .16);--state-error-soft: rgba(239, 138, 138, .16);--state-info-soft: rgba(106, 169, 224, .16);--font-display: "Sora", system-ui, sans-serif;--font-body: "Manrope", system-ui, sans-serif}:root{--radius-button: var(--radius-md);--touch-target-min: 44px;--shadow-button-active: inset 0 1px 1px 0 rgba(47, 30, 25, .08), 0 0 0 0 transparent;--shadow-button-focus-ring-offset: 0 0 0 var(--ring-offset) var(--surface-base);--button-height-sm: var(--space-8);--button-height-md: var(--space-10);--button-height-lg: var(--space-12);--button-padding-x-sm: var(--space-3);--button-padding-x-md: var(--space-4);--button-padding-x-lg: var(--space-5);--button-gap-sm: var(--space-1);--button-gap-md: var(--space-2);--button-gap-lg: var(--space-2);--button-text-size-sm: .875rem;--button-text-size-md: .875rem;--button-text-size-lg: 1rem;--surface-focus-halo-width: var(--space-1);--shadow-overlay: 0 4px 8px -2px rgba(47, 30, 25, .1), 0 8px 16px -4px rgba(47, 30, 25, .12), inset 0 1px 0 0 rgba(255, 255, 255, .3);--shadow-modal: 0 8px 16px -4px rgba(47, 30, 25, .12), 0 16px 32px -8px rgba(47, 30, 25, .16), 0 24px 48px -12px rgba(47, 30, 25, .2);--card-padding-header-x: var(--space-6);--card-padding-header-y: var(--space-5);--card-padding-body-x: var(--space-6);--card-padding-body-y: var(--space-5);--card-padding-footer-x: var(--space-6);--card-padding-footer-y: var(--space-4);--card-slot-gap: var(--space-1);--card-actions-gap: var(--space-2);--status-dot-size-xs: 6px;--status-dot-size-sm: 8px;--status-dot-size-md: 12px;--status-dot-gap-xs: var(--space-1);--status-dot-gap-sm: 6px;--status-dot-gap-md: var(--space-2);--badge-height-xs: 18px;--badge-height-sm: 22px;--badge-height-md: 26px;--badge-padding-x-xs: 6px;--badge-padding-x-sm: var(--space-2);--badge-padding-x-md: var(--space-3);--badge-gap-xs: var(--space-1);--badge-gap-sm: var(--space-1);--badge-gap-md: 6px;--badge-icon-xs: 10px;--badge-icon-sm: 12px;--badge-icon-md: 14px;--badge-soft-neutral-bg: rgba(47, 30, 25, .06);--tag-height-sm: 28px;--tag-height-md: var(--space-8);--tag-height-lg: 36px;--tag-padding-x-sm: var(--space-3);--tag-padding-x-md: 14px;--tag-padding-x-lg: var(--space-4);--tag-gap-sm: var(--space-1);--tag-gap-md: 6px;--tag-gap-lg: 6px;--tag-icon-sm: 14px;--tag-icon-md: 16px;--tag-icon-lg: 16px;--tag-rest-bg: rgba(47, 30, 25, .04);--tag-remove-hover-bg: rgba(47, 30, 25, .1);--tag-remove-size: 16px;--tag-remove-icon-size: 12px;--tag-remove-margin-left: var(--space-1);--tag-remove-margin-right: -4px;--tag-count-margin-left: 2px;--avatar-size-xs: 20px;--avatar-size-sm: var(--space-6);--avatar-size-md: var(--space-8);--avatar-size-lg: var(--space-10);--avatar-size-xl: var(--space-12);--avatar-size-2xl: var(--space-16);--avatar-font-xs: 9px;--avatar-font-sm: 10px;--avatar-font-md: 12px;--avatar-font-lg: 14px;--avatar-font-xl: 16px;--avatar-font-2xl: 22px;--avatar-status-dot-xs: 6px;--avatar-status-dot-sm: 7px;--avatar-status-dot-md: 9px;--avatar-status-dot-lg: 11px;--avatar-status-dot-xl: 13px;--avatar-status-dot-2xl: 18px;--avatar-ring-offset: 2px;--avatar-ring-thickness: 4px;--avatar-group-overlap-normal: -8px;--avatar-group-overlap-tight: -12px;--avatar-rim-light: rgba(255, 255, 255, .16);--avatar-initials-shadow: 0 1px 2px rgba(0, 0, 0, .18);--avatar-gradient-1: linear-gradient(135deg, #FB8632 0%, #E85D04 100%);--avatar-gradient-2: linear-gradient(135deg, #3F8E5C 0%, #235636 100%);--avatar-gradient-3: linear-gradient(135deg, #3A7BBF 0%, #1F4673 100%);--avatar-gradient-4: linear-gradient(135deg, #7B4FBF 0%, #553683 100%);--avatar-gradient-5: linear-gradient(135deg, #D64545 0%, #852828 100%);--avatar-gradient-6: linear-gradient(135deg, #E08A3B 0%, #8C5018 100%);--avatar-gradient-7: linear-gradient(135deg, #2E8B8B 0%, #1F5E5E 100%);--avatar-gradient-8: linear-gradient(135deg, #BF4D7A 0%, #8C3257 100%);--radius-input: var(--radius-md);--input-height-sm: var(--space-8);--input-height-md: var(--space-10);--input-height-lg: var(--space-12);--input-padding-x-sm: var(--space-3);--input-padding-x-md: var(--space-4);--input-padding-x-lg: var(--space-5);--input-gap-sm: var(--space-1);--input-gap-md: var(--space-2);--input-gap-lg: var(--space-2);--input-text-size-sm: var(--text-sm);--input-text-size-md: var(--text-sm);--input-text-size-lg: var(--text-base);--input-text-size-mobile-min: var(--text-base);--input-focus-halo-width: var(--space-1);--shadow-input-rest: inset 0 1px 2px 0 rgba(47, 30, 25, .04);--form-field-row-gap: var(--space-2);--form-field-horizontal-label-width: 180px;--form-field-horizontal-column-gap: var(--space-4);--form-field-error-slide-distance: var(--space-2);--backdrop-color: rgba(47, 30, 25, .5);--backdrop-blur: 8px;--modal-width-sm: 400px;--modal-width-md: 560px;--modal-width-lg: 720px;--modal-width-xl: 920px;--modal-edge-gap: var(--space-4);--modal-padding-header-x: var(--space-8);--modal-padding-header-y: var(--space-6);--modal-padding-body-x: var(--space-8);--modal-padding-body-y: var(--space-6);--modal-padding-footer-x: var(--space-8);--modal-padding-footer-y: var(--space-4);--modal-slot-gap: var(--space-1);--modal-actions-gap: var(--space-3);--modal-close-size: var(--touch-target-min);--modal-close-icon-size: var(--space-5);--dialog-padding: var(--space-8);--dialog-root-gap: var(--space-4);--dialog-icon-size: var(--space-12);--dialog-icon-glyph-size: var(--space-6);--dialog-content-gap: var(--space-2);--drawer-width-right-sm: 320px;--drawer-width-right-md: 480px;--drawer-width-right-lg: 640px;--drawer-max-height-bottom: 96vh;--drawer-max-width-bottom: 640px;--drawer-grip-width: 40px;--drawer-grip-height: 4px;--drawer-grip-color: var(--neutral-300);--drawer-grip-opacity-rest: .5;--drawer-grip-opacity-hover: .7;--drawer-padding-header-x: var(--space-6);--drawer-padding-header-y: var(--space-5);--drawer-padding-body-x: var(--space-6);--drawer-padding-body-y: var(--space-5);--drawer-padding-footer-x: var(--space-6);--drawer-padding-footer-y: var(--space-4);--shadow-drawer-bottom: 0 -8px 16px -4px rgba(47, 30, 25, .12), 0 -16px 32px -8px rgba(47, 30, 25, .16);--z-toast: 1300;--toaster-edge-gap: var(--space-6);--toaster-max-width: 440px;--toaster-gap: var(--space-2);--toast-min-height: 56px;--toast-padding-y: var(--space-3);--toast-padding-x: var(--space-4);--toast-content-gap: var(--space-3);--toast-icon-size: var(--space-5);--toast-action-min-height: 28px;--toast-close-size: var(--space-6);--toast-close-icon-size: var(--space-4);--toast-slide-distance: var(--space-6);--shadow-toast: var(--shadow-overlay);--tabs-height-sm: 28px;--tabs-height-md: 36px;--tabs-height-lg: var(--touch-target-min);--tabs-padding-x-sm: var(--space-3);--tabs-padding-x-md: var(--space-4);--tabs-padding-x-lg: var(--space-5);--tabs-gap: var(--space-1);--tabs-list-padding: 2px;--tabs-panel-padding-top: var(--space-2);--period-switcher-padding: 2px;--period-switcher-gap: 2px;--period-switcher-btn-min-width: 28px;--skeleton-shimmer-duration: 1.4s;--skeleton-shimmer-bg-size: 400px 100%;--skeleton-text-line-height: 12px;--skeleton-text-line-gap: var(--space-2);--skeleton-text-line-last-width: 80%;--skeleton-mid-color: color-mix(in oklch, var(--neutral-300) 60%, transparent);--quantity-picker-height-sm: var(--space-8);--quantity-picker-height-md: 36px;--quantity-picker-height-lg: var(--touch-target-min);--quantity-picker-btn-size-sm: var(--space-6);--quantity-picker-btn-size-md: 28px;--quantity-picker-btn-size-lg: 36px;--quantity-picker-value-min-width: var(--space-6);--quantity-picker-swipe-distance: var(--space-2);--quantity-picker-swipe-duration: .26s;--empty-state-padding-y: var(--space-8);--empty-state-padding-x: var(--space-4);--empty-state-gap: var(--space-2);--empty-state-illustration-size: var(--space-16);--empty-state-illustration-max: 200px;--empty-state-content-gap: var(--space-1);--empty-state-actions-gap: var(--space-2);--empty-state-title-size: var(--text-base);--empty-state-description-size: 13px;--native-pay-height-sm: var(--touch-target-min);--native-pay-height-md: 56px;--native-pay-height-lg: 64px;--native-pay-radius: var(--radius-lg);--native-pay-icon-gap: 6px;--native-pay-apple-bg: #000000;--native-pay-apple-bg-hover: #1a1a1a;--native-pay-apple-fg: #ffffff;--native-pay-apple-font: -apple-system, "SF Pro Display", "SF Pro Text", system-ui, sans-serif;--native-pay-apple-text-size: 17px;--native-pay-google-bg: #ffffff;--native-pay-google-fg: #3c4043;--native-pay-google-border: #dadce0;--native-pay-google-border-hover: #5f6368;--native-pay-google-font: "Roboto", "Helvetica Neue", Arial, sans-serif;--native-pay-google-text-size: 16px;--amount-input-gap: var(--space-2);--amount-input-stepper-width: 18px;--amount-input-stepper-gap: var(--space-1)}[data-theme=admin]{--badge-soft-neutral-bg: rgba(245, 239, 230, .08)}:root{--container-xs: 100%;--container-sm: 100%;--container-md: 720px;--container-lg: 960px;--container-xl: 1140px;--container-fluid: 100%;--container-max: var(--container-sm);--font-size-xs: clamp(10px, 2.5vw, 11px);--font-size-sm: clamp(12px, 2.8vw, 13px);--font-size-base: clamp(14px, 3.2vw, 16px);--font-size-lg: clamp(16px, 3.5vw, 18px);--font-size-xl: clamp(18px, 4vw, 22px);--font-size-2xl: clamp(22px, 5vw, 28px);--font-size-3xl: clamp(28px, 6vw, 36px);--font-size-4xl: clamp(34px, 8vw, 48px);--font-size-5xl: clamp(42px, 10vw, 60px);--space-1: clamp(3px, 1vw, 4px);--space-2: clamp(6px, 1.5vw, 8px);--space-3: clamp(10px, 2vw, 12px);--space-4: clamp(14px, 2.5vw, 16px);--space-5: clamp(18px, 3vw, 20px);--space-6: clamp(20px, 3.5vw, 24px);--space-7: clamp(28px, 4vw, 32px);--space-8: clamp(36px, 5vw, 40px);--space-9: clamp(42px, 6vw, 48px);--space-10: clamp(56px, 8vw, 64px);--page-padding-x: clamp(12px, 4vw, 24px);--page-padding-y: clamp(16px, 5vw, 32px);--page-padding-bottom: calc(100px + env(safe-area-inset-bottom, 20px)) ;--grid-columns: 1;--grid-gap: var(--space-4);--card-min-width: 280px;--color-brand-700: #B8341A;--color-brand-600: #C63A1E;--color-brand-500: #E85D04;--color-brand-450: #F06D1B;--color-brand-300: #F1A07A;--color-brand-rgb-700: 184, 52, 26;--color-brand-rgb-600: 198, 58, 30;--color-brand-rgb-500: 232, 93, 4;--color-brand-rgb-550: 214, 90, 31;--color-brand-rgb-450: 240, 109, 27;--color-brand-rgb-300: 241, 160, 122;--color-ink-900: #2F1E19;--color-ink-700: #7A3E2B;--color-ink-500: #8B7E77;--color-ink-rgb: 47, 30, 25;--color-paper-100: #F7F2EC;--color-paper-200: #EEE4DA;--color-paper-300: #D8CFC5;--color-surface-100: #FFFFFF;--color-surface-rgb: 255, 255, 255;--color-brand-soft-03: rgba(var(--color-brand-rgb-600), .03);--color-brand-soft-05: rgba(var(--color-brand-rgb-600), .05);--color-brand-soft-08: rgba(var(--color-brand-rgb-600), .08);--color-brand-soft-10: rgba(var(--color-brand-rgb-600), .1);--color-brand-soft-12: rgba(var(--color-brand-rgb-600), .12);--color-brand-soft-15: rgba(var(--color-brand-rgb-600), .15);--color-brand-soft-18: rgba(var(--color-brand-rgb-600), .18);--color-brand-soft-24: rgba(var(--color-brand-rgb-600), .24);--color-brand-soft-35: rgba(var(--color-brand-rgb-600), .35);--color-brand-soft-45: rgba(var(--color-brand-rgb-600), .45);--color-brand-gradient: linear-gradient(145deg, var(--color-brand-600) 0%, var(--color-brand-500) 100%);--color-brand-gradient-hover: linear-gradient(145deg, var(--color-brand-600) 0%, var(--color-brand-450) 100%);--primary: var(--color-brand-500);--primary-dark: var(--color-brand-600);--primary-light: var(--color-brand-300);--primary-soft: var(--color-brand-soft-12);--primary-gradient: linear-gradient(135deg, var(--color-brand-500) 0%, var(--color-brand-600) 100%);--brown: var(--color-ink-700);--brown-dark: var(--color-ink-900);--brown-light: var(--color-ink-500);--cream: var(--color-paper-200);--cream-dark: var(--color-paper-300);--cream-light: var(--color-paper-100);--white: var(--color-surface-100);--text-primary: var(--color-ink-900);--text-secondary: var(--color-ink-700);--text-muted: var(--color-ink-500);--text-inverse: var(--color-surface-100);--success: #4CAF50;--warning: #FF9800;--error: #F44336;--info: #2196F3;--accent-gold: #D4A853;--accent-sage: #8BA888;--accent-terracotta: #C17767;--glass-bg: rgba(255, 255, 255, .75);--glass-bg-strong: rgba(255, 255, 255, .92);--glass-bg-light: rgba(255, 255, 255, .5);--glass-border: rgba(255, 255, 255, .35);--glass-shadow: 0 8px 32px rgba(92, 61, 46, .12);--glass-blur: blur(20px);--glass-blur-strong: blur(30px);--shadow-xs: 0 1px 2px rgba(92, 61, 46, .04);--shadow-sm: 0 2px 8px rgba(92, 61, 46, .08);--shadow-md: 0 4px 16px rgba(92, 61, 46, .12);--shadow-lg: 0 8px 32px rgba(92, 61, 46, .16);--shadow-xl: 0 16px 48px rgba(92, 61, 46, .2);--shadow-2xl: 0 24px 64px rgba(92, 61, 46, .24);--shadow-inner: inset 0 2px 4px rgba(92, 61, 46, .06);--shadow-glow: 0 0 20px rgba(var(--color-brand-rgb-500), .3);--shadow-glow-strong: 0 0 40px rgba(var(--color-brand-rgb-500), .4);--shadow-premium: 0 1px 2px rgba(92, 61, 46, .04), 0 4px 8px rgba(92, 61, 46, .08), 0 16px 32px rgba(92, 61, 46, .12);--shadow-floating: 0 0 0 1px rgba(255,255,255,.1), 0 20px 60px -10px rgba(92, 61, 46, .25);--radius-xs: clamp(6px, 1.5vw, 8px);--radius-sm: clamp(10px, 2vw, 12px);--radius-md: clamp(14px, 2.5vw, 16px);--radius-lg: clamp(18px, 3vw, 20px);--radius-xl: clamp(20px, 3.5vw, 24px);--radius-2xl: clamp(28px, 4vw, 32px);--radius-3xl: clamp(36px, 5vw, 40px);--radius-full: 9999px;--font-family-sans: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-display: "Fraunces", Georgia, serif;--font-family-body: var(--font-family-sans);--font-family-heading: var(--font-family-display);--font-family-ui: var(--font-family-sans);--font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-base: 1.5;--line-height-relaxed: 1.7;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .02em;--type-display-xl-size: var(--font-size-5xl);--type-display-lg-size: var(--font-size-4xl);--type-title-xl-size: var(--font-size-3xl);--type-title-lg-size: var(--font-size-2xl);--type-title-md-size: var(--font-size-xl);--type-body-lg-size: var(--font-size-lg);--type-body-md-size: var(--font-size-base);--type-body-sm-size: var(--font-size-sm);--type-caption-size: var(--font-size-xs);--type-display-family: var(--font-family-heading);--type-heading-family: var(--font-family-heading);--type-body-family: var(--font-family-body);--type-ui-family: var(--font-family-ui);--type-display-weight: var(--font-weight-bold);--type-heading-weight: var(--font-weight-semibold);--type-body-weight: var(--font-weight-regular);--type-label-weight: var(--font-weight-medium);--type-cta-weight: var(--font-weight-bold);--font-family: var(--font-family-body);--font-display: var(--font-family-heading);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.175, .885, .32, 1.275);--transition-bounce: .6s cubic-bezier(.68, -.55, .265, 1.55);--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 250;--z-modal-backdrop: 290;--z-modal: 300;--z-popover: 350;--z-toast: 400;--z-tooltip: 500;--touch-target-min: 44px;--touch-target-comfortable: 48px}@media(min-width:768px){:root{--container-max: var(--container-md);--grid-columns: 2;--page-padding-x: 24px}}@media(min-width:1024px){:root{--container-max: var(--container-lg);--grid-columns: 2;--page-padding-x: 32px}}@media(min-width:1280px){:root{--container-max: var(--container-xl);--grid-columns: 3;--page-padding-x: 40px}}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.glass-card--strong{background:var(--glass-bg-strong)}.glass-card--light{background:var(--glass-bg-light)}.info-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);padding:clamp(16px,4vw,24px);box-shadow:var(--shadow-lg);margin-top:var(--space-1);width:100%}.info-card-header{margin-bottom:var(--space-4);text-align:center}@media(min-width:480px){.info-card-header{text-align:left}}.info-card-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.info-card-location{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary);flex-wrap:wrap}@media(min-width:480px){.info-card-location{justify-content:flex-start}}.info-card-location svg{width:14px;height:14px;color:var(--primary);flex-shrink:0}.info-card-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);width:100%}@media(min-width:400px){.info-card-actions{grid-template-columns:repeat(4,1fr)}}@media(min-width:768px){.info-card-actions{grid-template-columns:repeat(4,1fr);gap:var(--space-4)}}.info-action-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:clamp(10px,3vw,16px);background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-base);min-height:var(--touch-target-min);width:100%}.info-action-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.info-action-btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.info-action-btn svg{width:clamp(18px,5vw,24px);height:clamp(18px,5vw,24px);color:var(--primary)}.info-action-btn span{font-size:var(--font-size-xs);font-weight:500;color:var(--text-secondary);text-align:center;line-height:1.3}.product-card{display:flex;align-items:center;gap:clamp(12px,3vw,16px);padding:clamp(12px,3vw,16px);padding-right:clamp(10px,2.5vw,14px);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition-base);position:relative;min-height:clamp(90px,20vw,110px);width:100%}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.product-card:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.product-image{width:clamp(70px,18vw,90px);height:clamp(70px,18vw,90px);border-radius:var(--radius-lg);object-fit:cover;flex-shrink:0}@media(min-width:768px){.product-image{width:90px;height:90px}}.product-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.product-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:var(--line-height-tight)}.product-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;line-height:var(--line-height-base)}@media(max-width:350px){.product-description{display:none}}.product-price-group{display:flex;flex-direction:column;gap:1px;margin-top:auto}.product-price{font-size:var(--font-size-lg);font-weight:700;color:var(--primary)}.product-price-hint{display:block;font-size:10px;font-weight:400;color:var(--color-ink-500, #888);opacity:.75;letter-spacing:.01em}.product-add-btn{display:flex;align-items:center;justify-content:center;width:var(--touch-target-min);height:var(--touch-target-min);background:var(--primary-gradient);border-radius:var(--radius-full);box-shadow:var(--shadow-md),var(--shadow-glow);transition:var(--transition-base);flex-shrink:0}.product-add-btn:hover{transform:scale(1.08);box-shadow:var(--shadow-lg),var(--shadow-glow-strong)}.product-add-btn:active{transform:scale(.95)}.product-add-btn svg{width:clamp(20px,5vw,24px);height:clamp(20px,5vw,24px);color:var(--white)}.product-card-buttons{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0;margin-left:auto}@media(min-width:480px){.product-card-buttons{flex-direction:row}}.product-favorite-btn{display:flex;align-items:center;justify-content:center;width:var(--touch-target-min);height:var(--touch-target-min);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-secondary);transition:var(--transition-base);flex-shrink:0}.product-favorite-btn:hover{background:var(--white);color:var(--primary);transform:scale(1.08);box-shadow:var(--shadow-md)}.product-favorite-btn:active{transform:scale(.95)}.product-favorite-btn.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 4px 14px var(--color-brand-soft-35)}.product-favorite-btn.is-favorite:hover{background:var(--color-brand-gradient-hover);transform:scale(1.08);box-shadow:0 6px 18px rgba(var(--color-brand-rgb-600),.4)}.product-favorite-btn svg{width:20px;height:20px}.featured-card{position:relative;padding:clamp(16px,4vw,24px);background:var(--cream-light);border-radius:var(--radius-2xl);border:1px solid rgba(92,61,46,.2);box-shadow:0 14px 30px #5c3d2e24;overflow:hidden;cursor:pointer;width:clamp(240px,72vw,360px);flex:0 0 auto;transition:transform var(--transition-base),box-shadow var(--transition-base)}.featured-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #5c3d2e29}.featured-card:active{transform:translateY(-2px)}.featured-card:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500),.18),0 18px 40px #5c3d2e1f}.featured-card:before{content:"";position:absolute;top:0;right:0;width:70%;height:100%;background:radial-gradient(ellipse at right center,rgba(var(--color-brand-rgb-500),.18),transparent 70%);pointer-events:none}.featured-badge{display:inline-flex;align-items:center;gap:4px;padding:clamp(4px,1vw,6px) clamp(10px,2.5vw,14px);background:var(--primary);border:1px solid var(--primary-dark);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;color:var(--white);margin-bottom:var(--space-3)}.featured-content{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);align-items:center;gap:clamp(12px,3vw,24px)}.featured-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.featured-name{font-size:clamp(18px,4.5vw,26px);font-weight:700;color:var(--brown);line-height:var(--line-height-tight);margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.02em}.featured-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.featured-price{font-size:clamp(20px,5vw,28px);font-weight:700;color:var(--primary);letter-spacing:-.02em}.featured-cta{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:rgba(var(--color-brand-rgb-500),.16);border:1px solid rgba(var(--color-brand-rgb-500),.35);color:var(--primary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.featured-image-wrap{background:var(--cream);border:1px solid rgba(92,61,46,.22);border-radius:var(--radius-xl);padding:6px;box-shadow:var(--shadow-xs);display:flex;align-items:center;justify-content:center}.featured-image{width:clamp(96px,20vw,150px);height:clamp(96px,20vw,150px);object-fit:cover;object-position:center;border-radius:calc(var(--radius-xl) - 4px);box-shadow:none;flex-shrink:0}@media(max-width:520px){.featured-content{grid-template-columns:1fr;align-items:flex-start}.featured-image-wrap{width:100%}.featured-image{width:100%;height:160px}}.featured-carousel{position:relative;margin-bottom:var(--space-5)}.featured-carousel-track{display:flex;gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:var(--space-4);padding:var(--space-2) var(--space-4) var(--space-3);margin:0;-webkit-overflow-scrolling:touch}.featured-carousel-track::-webkit-scrollbar{display:none}.featured-carousel-item{scroll-snap-align:start;flex:0 0 auto}.section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) 0 var(--space-3)}.section-title{font-size:var(--font-size-xl);font-weight:700;color:var(--brown)}.section-link{font-size:var(--font-size-sm);font-weight:500;color:var(--primary);transition:var(--transition-fast)}.section-link:hover{color:var(--primary-dark)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state-icon{width:72px;height:72px;margin-bottom:20px;color:var(--clay);opacity:.4;animation:emptyIconFloat 3s ease-in-out infinite}@keyframes emptyIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.empty-state-title{font-size:18px;font-weight:700;color:var(--ink);margin:0 0 8px;letter-spacing:-.01em}.empty-state-text{font-size:14px;line-height:1.5;color:var(--clay);max-width:260px;margin:0}.modal-body .empty-state{padding:60px 32px;background:linear-gradient(180deg,transparent 0%,rgba(247,242,236,.5) 100%);border-radius:16px;margin:16px 0}.modal-body .empty-state-icon{width:64px;height:64px;padding:16px;background:var(--cream);border-radius:50%;color:var(--copper);opacity:1}.modal-body .empty-state-title{font-size:20px}.modal-body .empty-state-text{font-size:15px;max-width:280px}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:var(--space-10)}.spinner{width:40px;height:40px;border:3px solid var(--cream-dark);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pdm-sheet-in{0%{transform:translateY(48px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pdm-group-in{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pdm-pop{0%{transform:scale(1)}35%{transform:scale(.92)}65%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes pdm-check-in{0%{transform:scale(0) rotate(-20deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes pdm-price-update{0%{transform:scale(1)}40%{transform:scale(1.08);color:var(--primary)}to{transform:scale(1)}}.pdm-sheet{max-height:96dvh;display:flex;flex-direction:column;animation:pdm-sheet-in .35s cubic-bezier(.22,1,.36,1) both;overflow:hidden;border-radius:24px 24px 0 0}@media(min-width:768px){.pdm-sheet{border-radius:20px;max-height:88vh}}.pdm-hero{position:relative;padding:0;background:var(--color-paper-100);flex-shrink:0;overflow:hidden}.pdm-drag-bar{position:absolute;top:10px;left:50%;transform:translate(-50%);width:36px;height:4px;border-radius:10px;background:#ffffffa6;backdrop-filter:blur(4px);z-index:10}.pdm-hero-img{width:100%;height:auto;aspect-ratio:16 / 6;object-fit:cover;object-position:center;display:block;border-radius:0;background:var(--color-paper-200)}.pdm-hero-controls{position:absolute;top:14px;right:14px;display:flex;gap:8px}.pdm-icon-btn{width:34px;height:34px;border-radius:50%;background:#fffffff2;backdrop-filter:blur(8px);border:1px solid rgba(47,30,25,.08);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-ink-900);box-shadow:0 2px 8px #0000001a;transition:transform .15s ease,background .15s ease}.pdm-icon-btn:hover{transform:scale(1.08);background:var(--white)}.pdm-icon-btn:active{transform:scale(.94)}.pdm-fav.is-active{color:#e74c3c}.pdm-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0}.pdm-body>.pdm-intro,.pdm-body>.pdm-allergens,.pdm-body>.pdm-options,.pdm-body>.pdm-qty-row,.pdm-body>.bundle-info-hint{padding-left:20px;padding-right:20px}.pdm-body>.pdm-intro{padding-top:18px}.pdm-body>.pdm-qty-row,.pdm-body>.bundle-info-hint{padding-bottom:4px}.pdm-intro{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.pdm-intro-text{flex:1;min-width:0}.pdm-name{font-size:19px;font-weight:800;color:var(--color-ink-900);margin:0 0 5px;line-height:1.2}.pdm-desc{font-size:13px;color:var(--color-ink-500);line-height:1.6;margin:0}.pdm-price-block{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;gap:2px}.pdm-price-val{font-size:21px;font-weight:800;color:var(--primary);font-variant-numeric:tabular-nums}.pdm-price-old{font-size:13px;color:var(--color-ink-500);text-decoration:line-through}.pdm-price-from{font-size:10px;color:var(--color-ink-500);font-style:italic}.pdm-allergens{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:16px;color:var(--color-ink-500);font-size:12px}.pdm-allergen{background:#2f1e190f;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:500;color:var(--color-ink-700)}.pdm-options{border-top:1px solid rgba(47,30,25,.08);padding-top:16px;margin-bottom:4px}.pdm-options-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.pdm-options-title-line{flex:1;height:1px;background:#2f1e191a}.pdm-options-title-text{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500);white-space:nowrap}.pdm-group{margin-bottom:20px;animation:pdm-group-in .3s calc(var(--gi, 0) * 55ms + 60ms) cubic-bezier(.22,1,.36,1) both}.pdm-group-label{display:flex;align-items:center;gap:8px;margin-bottom:10px}.pdm-group-name{font-size:13px;font-weight:700;color:var(--color-ink-900)}.pdm-group-badge{font-size:10px;font-weight:600;color:var(--primary);background:var(--color-brand-soft-08);padding:2px 8px;border-radius:20px}.pdm-group-required{font-size:10px;font-weight:600;color:var(--color-ink-400, #999);background:#0000000d;padding:2px 8px;border-radius:20px;margin-left:auto;transition:color .2s,background .2s}.pdm-group-required--error{color:#c0392b;background:#c0392b1f}.pdm-group--error{padding:10px;margin:-10px -10px 10px;border-radius:12px;background:#c0392b0a;outline:1.5px solid rgba(192,57,43,.25);animation:shake .35s ease}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.pdm-pills--row{display:flex;gap:8px;flex-wrap:wrap}.pdm-pills--grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pdm-pill{display:flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;border:1.5px solid rgba(47,30,25,.13);background:var(--white);cursor:pointer;font-size:13px;font-weight:500;color:var(--color-ink-900);transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease;white-space:nowrap;position:relative;overflow:hidden}.pdm-pills--grid .pdm-pill{border-radius:12px;white-space:normal;padding:10px 12px}.pdm-pill:hover:not(.pdm-pill--active){border-color:rgba(var(--color-brand-rgb-550),.4);background:rgba(var(--color-brand-rgb-550),.04);transform:translateY(-1px)}.pdm-pill--active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-550),.35);transform:scale(1.01);animation:pdm-pop .26s ease}.pdm-pill-check{font-size:12px;font-weight:800;flex-shrink:0;animation:pdm-check-in .2s cubic-bezier(.34,1.56,.64,1) both}.pdm-pill-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.pdm-pill-price{font-size:11px;font-weight:700;color:inherit;opacity:.85;flex-shrink:0}.pdm-pill--active .pdm-pill-price{opacity:.9}.pdm-pill-price.is-neg{color:#2ecc71}.pdm-chips{display:flex;flex-wrap:wrap;gap:8px}.pdm-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:10px;border:1.5px solid rgba(47,30,25,.12);background:var(--white);cursor:pointer;font-size:13px;font-weight:500;color:var(--color-ink-900);transition:border-color .18s ease,background .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}.pdm-chip:hover:not(.pdm-chip--active){border-color:rgba(var(--color-brand-rgb-550),.38);transform:translateY(-1px);background:rgba(var(--color-brand-rgb-550),.03)}.pdm-chip:active{transform:scale(.96)}.pdm-chip--active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 3px 12px rgba(var(--color-brand-rgb-550),.3);animation:pdm-pop .22s ease}.pdm-chip-box{width:16px;height:16px;border-radius:4px;border:1.5px solid rgba(47,30,25,.22);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--white);transition:background .16s,border-color .16s;background:transparent}.pdm-chip--active .pdm-chip-box{background:#ffffff40;border-color:#fff9}.pdm-chip--active .pdm-chip-box svg{animation:pdm-check-in .2s cubic-bezier(.34,1.56,.64,1) both}.pdm-chip-label{font-size:13px;font-weight:500}.pdm-chip-price{font-size:11px;font-weight:700;opacity:.85}.pdm-slider-wrap{padding:4px 0 10px}.pdm-slider-extremes{display:flex;justify-content:space-between;margin-bottom:12px;font-size:11px;color:var(--color-ink-500);font-weight:500}.pdm-slider{--fill: 50%;width:100%;height:6px;-webkit-appearance:none;appearance:none;border-radius:3px;outline:none;cursor:pointer;background:linear-gradient(to right,var(--primary) var(--fill),rgba(47,30,25,.13) var(--fill))}.pdm-slider::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:var(--white);border:2.5px solid var(--primary);box-shadow:0 2px 10px rgba(var(--color-brand-rgb-550),.32),0 1px 4px #00000014;cursor:grab;transition:transform .12s ease,box-shadow .12s ease}.pdm-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.25);box-shadow:0 4px 20px rgba(var(--color-brand-rgb-550),.45)}.pdm-slider::-moz-range-track{height:6px;border-radius:3px;background:#2f1e1921}.pdm-slider::-moz-range-progress{height:6px;border-radius:3px;background:var(--primary)}.pdm-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--white);border:2.5px solid var(--primary);box-shadow:0 2px 10px rgba(var(--color-brand-rgb-550),.32);cursor:grab}.pdm-slider-bubble{text-align:center;margin-top:10px;font-size:13px;font-weight:700;color:var(--primary);background:var(--color-brand-soft-08);border:1px solid var(--color-brand-soft-15);display:block;padding:4px 0;border-radius:20px}.pdm-qty-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0 6px;border-top:1px solid rgba(47,30,25,.07);margin-top:6px}.pdm-qty-label{font-size:14px;font-weight:700;color:var(--color-ink-900)}.pdm-qty-ctrl{display:flex;align-items:center;background:var(--color-paper-100);border-radius:12px;border:1px solid rgba(47,30,25,.09);overflow:hidden}.pdm-qty-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-ink-900);cursor:pointer;font-size:18px;transition:background .12s ease,transform .1s ease}.pdm-qty-btn:hover{background:var(--color-paper-200)}.pdm-qty-btn:active{transform:scale(.88)}.pdm-qty-btn:disabled{opacity:.28;cursor:not-allowed}.pdm-qty-val{min-width:34px;text-align:center;font-size:16px;font-weight:700;color:var(--color-ink-900);font-variant-numeric:tabular-nums}.pdm-footer{padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));background:var(--color-paper-100);border-top:1px solid rgba(47,30,25,.07)}.pdm-cta{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:15px;font-weight:700;padding:15px 18px;border-radius:14px}.pdm-cta span:nth-child(2){flex:1;text-align:center}.pdm-cta-price{font-size:18px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.cart-item-options{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cart-item-option-tag{font-size:11px;font-weight:500;color:var(--primary);background:var(--color-brand-soft-08);padding:2px 7px;border-radius:6px;border:1px solid var(--color-brand-soft-15)}.pdm-pill--disabled,.pdm-chip--disabled{opacity:.55;cursor:not-allowed;background:#0000000a;border-color:#0000001a;color:#00000080}.pdm-pill--disabled:hover,.pdm-chip--disabled:hover{background:#0000000a;border-color:#0000001a;transform:none}.pdm-allergens-block{margin:12px 0;padding:10px 12px;background:rgba(var(--color-brand-rgb-500),.06);border:1px solid rgba(var(--color-brand-rgb-500),.2);border-radius:12px}.pdm-allergens-label{font-weight:700;font-size:12px;margin-right:2px}.pdm-allergen--none{font-style:italic;opacity:.85}.pdm-allergens-notice{margin:6px 0 0;font-size:11.5px;line-height:1.45;opacity:.85}.menu-page{--mp-bg: #F4ECE5;--mp-surface: var(--color-surface-100);--mp-surface-hover: #FDF9F6;--mp-surface-active: var(--color-paper-100);--mp-border: var(--color-brand-soft-10);--mp-border-light: rgba(var(--color-brand-rgb-600), .06);--mp-text: var(--ink, var(--color-ink-900));--mp-text-secondary: var(--ink-soft, var(--color-ink-700));--mp-text-muted: var(--clay, var(--color-ink-500));--mp-accent: var(--copper, var(--color-brand-600));--mp-accent-hover: var(--color-brand-700);--mp-accent-soft: var(--color-brand-soft-08);--mp-accent-soft-hover: var(--color-brand-soft-12);--mp-success: #22C55E;--mp-shadow-sm: 0 1px 3px rgba(47, 30, 25, .05);--mp-shadow-md: 0 4px 14px rgba(47, 30, 25, .08);--mp-shadow-lg: 0 8px 28px rgba(47, 30, 25, .1);--mp-shadow-fab: 0 6px 24px rgba(var(--color-brand-rgb-600), .22);--mp-space-xs: 4px;--mp-space-sm: 8px;--mp-space-md: 12px;--mp-space-lg: 16px;--mp-space-xl: 20px;--mp-space-2xl: 24px;--mp-space-3xl: 32px;--mp-radius-sm: 8px;--mp-radius-md: 12px;--mp-radius-lg: 16px;--mp-radius-full: 9999px;--mp-transition-fast: .15s ease;--mp-transition-base: .2s ease;--mp-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--page-gutter: clamp(16px, 3vw, 48px);--mp-header-height: 56px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.menu-page.app-container{background:var(--mp-bg);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:0;max-width:100%}html:has(.menu-page){scroll-behavior:smooth}.menu-page .app-header{background:var(--mp-surface);border-bottom:1px solid var(--mp-border);position:sticky;top:0;z-index:100;height:var(--mp-header-height);flex-shrink:0;backdrop-filter:blur(12px);background:#fffffff2}.menu-page .menu-layout{flex:1;display:flex;flex-direction:column}.menu-page .menu-layout,.menu-page .menu-content,.menu-page .menu-sections,.menu-page .menu-section-block{width:100%;min-width:0}.menu-page .menu-main{flex:1;display:flex;flex-direction:column;padding-bottom:100px}.menu-page .menu-sidebar{display:none}.menu-page .info-card{margin:0;padding:var(--mp-space-lg);background:var(--mp-surface);border-radius:0;box-shadow:none;border:none;border-bottom:1px solid var(--mp-border);display:flex;align-items:center;justify-content:space-between;gap:var(--mp-space-md);flex-wrap:wrap}.menu-page .info-card:after,.menu-page .info-card:before{content:none}.menu-page .info-card-header{flex:1;min-width:180px}.menu-page .info-card-title{font-size:22px;font-weight:800;color:var(--mp-text);margin:0 0 var(--mp-space-xs);line-height:1.2;letter-spacing:-.02em}.menu-page .info-card-location{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--mp-text-secondary);margin:0}.menu-page .info-card-location svg{width:14px;height:14px;color:var(--mp-accent);flex-shrink:0}.menu-page .info-card-actions{display:flex;gap:var(--mp-space-sm);flex-wrap:wrap}.menu-page .info-action-btn{display:inline-flex;align-items:center;gap:6px;padding:var(--mp-space-sm) var(--mp-space-md);background:var(--mp-accent-soft);border:none;border-radius:var(--mp-radius-full);cursor:pointer;transition:all var(--mp-transition-fast)}.menu-page .info-action-btn svg{width:15px;height:15px;color:var(--mp-accent)}.menu-page .info-action-btn span{font-size:13px;font-weight:600;color:var(--mp-accent)}.menu-page .info-action-btn:hover{background:var(--mp-accent-soft-hover);transform:translateY(-1px)}.menu-page .info-action-btn:active{transform:translateY(0)}.menu-page .featured-section{padding:var(--mp-space-lg);padding-top:var(--mp-space-xl);background:var(--mp-surface);border-bottom:1px solid var(--mp-border)}.menu-page .featured-section .section-header{padding:0 0 var(--mp-space-md)}.menu-page .featured-section .section-title{font-size:20px;font-weight:700;color:var(--mp-text);margin:0;letter-spacing:-.01em}.menu-page .featured-carousel{margin:0;padding:0}.menu-page .menu-controls{position:sticky;top:var(--mp-header-height);z-index:80;background:var(--mp-surface);border-bottom:1px solid var(--mp-border);box-shadow:var(--mp-shadow-sm)}.menu-page .menu-controls-dock{display:flex;flex-direction:column}.menu-page .menu-search{padding:var(--mp-space-md) var(--mp-space-lg);border-bottom:1px solid var(--mp-border-light)}.menu-page .menu-search .search-bar{display:flex;align-items:center;gap:var(--mp-space-md);margin:0;background:var(--mp-surface-active);border:1px solid transparent;border-radius:var(--mp-radius-md);padding:var(--mp-space-md) var(--mp-space-lg);transition:all var(--mp-transition-fast)}.menu-page .menu-search .search-bar:focus-within{background:var(--mp-surface);border-color:var(--mp-accent);box-shadow:0 0 0 3px var(--mp-accent-soft)}.menu-page .menu-search .search-bar input{flex:1;border:none;background:transparent;font-size:15px;font-weight:500;color:var(--mp-text);outline:none}.menu-page .menu-search .search-bar input::placeholder{color:var(--mp-text-muted)}.menu-page .menu-search .search-bar svg{width:20px;height:20px;color:var(--mp-text-muted);flex-shrink:0}.menu-page .menu-categories{padding:0;position:relative}.menu-page .menu-categories:after{content:"";position:absolute;top:0;right:0;width:60px;height:100%;background:linear-gradient(90deg,transparent,var(--mp-surface));pointer-events:none;z-index:1}.menu-page .category-tabs{display:flex;overflow-x:auto;scrollbar-width:none;padding:0 var(--mp-space-lg);gap:var(--mp-space-xs)}.menu-page .category-tabs::-webkit-scrollbar{display:none}.menu-page .category-tab{flex-shrink:0;padding:var(--mp-space-md) var(--mp-space-lg);background:transparent;border:none;border-bottom:3px solid transparent;font-size:14px;font-weight:500;color:var(--mp-text-secondary);cursor:pointer;transition:all var(--mp-transition-fast);white-space:nowrap;position:relative}.menu-page .category-tab:hover{color:var(--mp-text)}.menu-page .category-tab.active{color:var(--mp-text);font-weight:600;border-bottom-color:var(--mp-text)}.menu-page .menu-section{padding:0;background:var(--mp-bg);flex:1}.menu-page .menu-section-anchor{height:1px;pointer-events:none}.menu-page .menu-section [data-category]{scroll-margin-top:160px}.menu-page .section-header{padding:var(--mp-space-xl) 0 var(--mp-space-md);position:sticky;top:140px;background:var(--mp-bg);z-index:10}.menu-page .section-title{font-size:20px;font-weight:700;color:var(--mp-text);margin:0;letter-spacing:-.01em}.menu-page .menu-grid{display:flex;flex-direction:column;gap:1px;background:var(--mp-border);border-radius:var(--mp-radius-md);overflow:hidden;box-shadow:var(--mp-shadow-sm)}.menu-page .product-card{display:grid;grid-template-columns:1fr 104px;gap:var(--mp-space-md);padding:var(--mp-space-lg);background:var(--mp-surface);cursor:pointer;transition:background var(--mp-transition-fast);position:relative}.menu-page .product-card:hover{background:var(--mp-surface-hover)}.menu-page .product-card:active{background:var(--mp-surface-active)}.menu-page .product-info{display:flex;flex-direction:column;gap:var(--mp-space-xs);justify-content:flex-start;padding-top:2px}.menu-page .product-name{font-size:15px;font-weight:600;color:var(--mp-text);margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-page .product-description{font-size:13px;line-height:1.45;color:var(--mp-text-secondary);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-page .product-meta{margin-top:auto;padding-top:var(--mp-space-sm)}.menu-page .product-price-group{display:flex;flex-direction:column;gap:2px}.menu-page .product-price{font-size:15px;font-weight:700;color:var(--mp-text);background:none;border:none;padding:0}.menu-page .product-side{display:flex;flex-direction:column;align-items:flex-end;gap:var(--mp-space-sm);position:relative}.menu-page .product-media{width:104px;height:104px;border-radius:var(--mp-radius-md);overflow:hidden;background:var(--mp-surface-active);position:relative}.menu-page .product-media:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #0000000f;pointer-events:none}.menu-page .product-image{width:100%;height:100%;object-fit:cover;transition:transform var(--mp-transition-smooth)}.menu-page .product-card:hover .product-image{transform:scale(1.05)}.menu-page .product-actions{display:flex;gap:var(--mp-space-sm);position:absolute;bottom:8px;right:8px}.menu-page .product-add-btn{width:32px;height:32px;border-radius:var(--mp-radius-full);background:var(--mp-accent);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--mp-transition-fast);box-shadow:var(--mp-shadow-md)}.menu-page .product-add-btn svg{width:18px;height:18px}.menu-page .product-add-btn:hover{background:var(--mp-accent-hover);transform:scale(1.08);box-shadow:var(--mp-shadow-lg)}.menu-page .product-add-btn:active{transform:scale(.95)}.menu-page .product-favorite-btn{width:28px;height:28px;border-radius:var(--mp-radius-full);background:var(--mp-surface);border:1px solid var(--mp-border);color:var(--mp-text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--mp-transition-fast);box-shadow:var(--mp-shadow-sm)}.menu-page .product-favorite-btn svg{width:14px;height:14px}.menu-page .product-favorite-btn:hover{color:var(--mp-accent);border-color:var(--mp-accent);transform:scale(1.08)}.menu-page .product-favorite-btn.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.3)}.menu-page .cart-fab-wrapper{position:fixed;bottom:0;left:0;right:0;z-index:90;padding:var(--mp-space-md) var(--mp-space-lg);padding-bottom:calc(var(--mp-space-md) + env(safe-area-inset-bottom,0));background:linear-gradient(to top,#fff,#fffffff2 70%,#fff0);pointer-events:none}.menu-page .cart-fab{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--mp-space-lg) var(--mp-space-xl);background:var(--mp-text);border-radius:var(--mp-radius-md);border:none;cursor:pointer;box-shadow:var(--mp-shadow-fab);transition:all var(--mp-transition-fast);pointer-events:auto}.menu-page .cart-fab:hover{background:#000;transform:translateY(-2px);box-shadow:0 8px 28px #00000038}.menu-page .cart-fab:active{transform:translateY(0)}.menu-page .cart-fab-content{display:flex;align-items:center;gap:var(--mp-space-md)}.menu-page .cart-fab-badge{background:var(--mp-accent);color:#fff;font-size:13px;font-weight:700;padding:4px 10px;border-radius:var(--mp-radius-sm);min-width:24px;text-align:center}.menu-page .cart-fab-label{color:#fff;font-size:16px;font-weight:600}.menu-page .cart-fab-right{display:flex;align-items:center;gap:var(--mp-space-sm)}.menu-page .cart-fab-total{color:#fff;font-size:16px;font-weight:700}.menu-page .cart-fab-right svg{color:#fff;opacity:.6}.menu-page .cart-sidebar{display:flex;flex-direction:column;height:100%;background:var(--mp-surface)}.menu-page .cart-sidebar-header{padding:var(--mp-space-xl) var(--mp-space-2xl);border-bottom:1px solid var(--mp-border)}.menu-page .cart-sidebar-title{font-size:20px;font-weight:700;color:var(--mp-text);margin:0;letter-spacing:-.01em}.menu-page .cart-sidebar-count{font-weight:400;color:var(--mp-text-secondary)}.menu-page .cart-sidebar-items{flex:1;overflow-y:auto}.menu-page .cart-sidebar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px var(--mp-space-2xl);text-align:center;color:var(--mp-text-muted)}.menu-page .cart-sidebar-empty svg{margin-bottom:var(--mp-space-lg);opacity:.4;color:var(--mp-text-muted)}.menu-page .cart-sidebar-empty p{font-size:16px;font-weight:600;color:var(--mp-text);margin:0 0 var(--mp-space-xs)}.menu-page .cart-sidebar-empty span{font-size:14px;color:var(--mp-text-secondary)}.menu-page .cart-sidebar-list{display:flex;flex-direction:column}.menu-page .cart-sidebar-item{display:flex;align-items:flex-start;gap:var(--mp-space-md);padding:var(--mp-space-lg) var(--mp-space-2xl);border-bottom:1px solid var(--mp-border-light);transition:background var(--mp-transition-fast)}.menu-page .cart-sidebar-item:hover{background:var(--mp-surface-hover)}.menu-page .cart-sidebar-item-qty{display:flex;align-items:center;background:var(--mp-surface-active);border-radius:var(--mp-radius-sm);border:1px solid var(--mp-border)}.menu-page .cart-qty-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--mp-text);transition:all var(--mp-transition-fast);border-radius:var(--mp-radius-sm)}.menu-page .cart-qty-btn:hover{background:var(--mp-border)}.menu-page .cart-qty-btn:active{background:var(--mp-border-light)}.menu-page .cart-qty-value{min-width:28px;text-align:center;font-size:14px;font-weight:600}.menu-page .cart-sidebar-item-info{flex:1;min-width:0}.menu-page .cart-sidebar-item-name{font-size:14px;font-weight:600;color:var(--mp-text);line-height:1.35}.menu-page .cart-sidebar-item-options{display:flex;flex-wrap:wrap;gap:var(--mp-space-xs);margin-top:var(--mp-space-xs)}.menu-page .cart-sidebar-item-options span{font-size:12px;color:var(--mp-text-secondary)}.menu-page .cart-sidebar-item-price{font-size:14px;font-weight:600;color:var(--mp-text);white-space:nowrap}.menu-page .cart-sidebar-footer{padding:var(--mp-space-xl) var(--mp-space-2xl);border-top:1px solid var(--mp-border);background:var(--mp-surface)}.menu-page .cart-sidebar-subtotal{display:flex;justify-content:space-between;font-size:14px;color:var(--mp-text-secondary);margin-bottom:var(--mp-space-sm)}.menu-page .cart-sidebar-total{display:flex;justify-content:space-between;font-size:18px;font-weight:700;color:var(--mp-text);margin-bottom:var(--mp-space-lg)}.menu-page .cart-sidebar-checkout{width:100%;padding:var(--mp-space-lg);background:var(--mp-text);color:#fff;border:none;border-radius:var(--mp-radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--mp-transition-fast)}.menu-page .cart-sidebar-checkout:hover{background:#000;transform:translateY(-1px);box-shadow:var(--mp-shadow-md)}.menu-page .cart-sidebar-checkout:active{transform:translateY(0)}.menu-page .cart-sidebar-checkout:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.menu-page .empty-state{text-align:center;padding:60px var(--mp-space-2xl);color:var(--mp-text-secondary)}.menu-page .empty-state-title{font-size:18px;font-weight:600;color:var(--mp-text);margin:0 0 var(--mp-space-sm)}.menu-page .empty-state-text{font-size:14px;margin:0}@media(min-width:768px){.menu-page .info-card{padding:var(--mp-space-lg) var(--mp-space-2xl)}.menu-page .info-card-title{font-size:26px}.menu-page .featured-section{padding:var(--mp-space-xl) var(--mp-space-2xl) var(--mp-space-lg)}.menu-page .menu-search{padding:var(--mp-space-md) var(--mp-space-2xl)}.menu-page .category-tabs{padding:0 var(--mp-space-2xl)}.menu-page .menu-section{padding:0}.menu-page .menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.menu-page .product-card{grid-template-columns:1fr 112px}.menu-page .product-media{width:112px;height:112px}.menu-page .cart-fab{max-width:420px;margin:0 auto}}@media(min-width:1024px){.menu-page{--mp-header-height: 64px}.menu-page .menu-layout{flex-direction:row;max-width:1400px;margin:0 auto}.menu-page .menu-main{flex:1;min-width:0;padding-bottom:60px}.menu-page .menu-sidebar{display:block;width:380px;flex-shrink:0;position:sticky;top:var(--mp-header-height);height:calc(100vh - var(--mp-header-height));border-left:1px solid var(--mp-border);background:var(--mp-surface)}.menu-page .cart-fab-wrapper{display:none}.menu-page .info-card{padding:var(--mp-space-xl) var(--mp-space-3xl)}.menu-page .info-card-title{font-size:28px}.menu-page .featured-section{padding:var(--mp-space-2xl) var(--mp-space-3xl) var(--mp-space-lg);background:var(--mp-bg);border-bottom:none}.menu-page .menu-controls-dock{flex-direction:row}.menu-page .menu-search{width:280px;border-bottom:none;border-right:1px solid var(--mp-border);padding:12px 20px}.menu-page .menu-categories{flex:1}.menu-page .category-tabs{padding:0 20px}.menu-page .menu-section{padding:0}.menu-page .menu-section [data-category]{scroll-margin-top:180px}.menu-page .section-header{top:160px;padding:24px 0 16px}.menu-page .product-card{grid-template-columns:1fr 120px;padding:20px}.menu-page .product-name{font-size:16px}.menu-page .product-media{width:120px;height:120px}.menu-page .product-add-btn{width:36px;height:36px}.menu-page .product-add-btn svg{width:20px;height:20px}}@media(min-width:1280px){.menu-page .menu-layout{max-width:100%}.menu-page .menu-sidebar{width:400px}.menu-page .info-card{padding:24px 48px}.menu-page .info-card-title{font-size:32px}.menu-page .featured-section{padding:28px 48px 20px}.menu-page .menu-search{width:320px}.menu-page .menu-section{padding:0}.menu-page .product-card{padding:24px}.menu-page .product-media{width:130px;height:130px}}@media(min-width:1536px){.menu-page .menu-layout{max-width:100%}.menu-page .menu-sidebar{width:420px}.menu-page .info-card{padding:28px 64px}.menu-page .featured-section{padding:32px 64px 24px}.menu-page .menu-section{padding:0}.menu-page .product-media{width:140px;height:140px}}.menu-page{--paper: var(--color-paper-100);--paper-strong: var(--color-paper-200);--ink: var(--color-ink-900);--ink-soft: var(--color-ink-700);--clay: var(--color-ink-500);--copper: var(--color-brand-600);--copper-dark: var(--color-brand-700);--amber: var(--color-brand-300);--primary: var(--copper);--primary-dark: var(--copper-dark);--primary-light: var(--amber);--primary-soft: var(--color-brand-soft-12);--brown: var(--ink-soft);--brown-dark: var(--ink);--brown-light: var(--clay);--cream: var(--paper-strong);--cream-light: var(--paper);--cream-dark: var(--color-paper-300);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--text-muted: var(--clay);--menu-surface: var(--color-surface-100);--menu-surface-muted: var(--paper);--menu-border: rgba(47, 30, 25, .12);--menu-shadow: 0 6px 20px rgba(47, 30, 25, .08);--menu-radius: 18px;--menu-radius-lg: 24px;--menu-header-height: 56px;--menu-sticky-top: 56px;background:radial-gradient(ellipse 80% 50% at 20% 35%,var(--color-brand-soft-18),transparent),radial-gradient(ellipse 65% 45% at 85% 25%,rgba(var(--color-brand-rgb-500),.14),transparent),radial-gradient(ellipse 70% 50% at 55% 85%,rgba(var(--color-brand-rgb-300),.16),transparent),var(--paper);color:var(--ink);min-height:100vh;padding-bottom:120px;font-family:var(--font-family)}.menu-page.app-container{padding:0}.menu-page .header{position:sticky;top:0;z-index:120;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:var(--menu-header-height);padding:6px var(--page-gutter);background:#f4ece5f7;border-bottom:none;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.menu-page .header-left{gap:8px}.menu-page .header-right{gap:8px;justify-content:flex-end}.menu-page .header-logo{position:static;transform:none;justify-self:center}.menu-page .header-logo-img{height:clamp(38px,6vw,54px);max-height:calc(var(--menu-header-height) - 10px);max-width:48vw;width:auto;object-fit:contain}.menu-page .header-account-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--paper);border:1px solid rgba(var(--color-brand-rgb-600),.12);border-radius:999px;box-shadow:none;transition:all .2s ease;position:relative}.menu-page .header-notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,var(--color-brand-600),var(--color-brand-500));color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--menu-surface);box-shadow:0 2px 6px rgba(var(--color-brand-rgb-600),.35);pointer-events:none}.menu-page .header-account-btn:hover{border-color:rgba(var(--color-brand-rgb-600),.25);background:#fff}.menu-page .header-btn-text{display:none;font-size:12px;font-weight:600;color:var(--ink-soft);letter-spacing:.02em}.menu-page .header-ai-btn.header-icon-only{width:32px;height:32px;padding:0;border-radius:10px;background:var(--paper);border:1px solid var(--cream);box-shadow:none}.menu-page .header-ai-btn.header-icon-only .header-btn-text{display:none}.menu-page .header-cart-btn{position:relative;width:36px;height:36px;border-radius:999px;border:1px solid rgba(var(--color-brand-rgb-600),.12);background:var(--paper);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.menu-page .header-cart-btn:hover{border-color:rgba(var(--color-brand-rgb-600),.3);color:var(--copper);background:#fff}.menu-page .header-cart-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,var(--color-brand-600),var(--color-brand-500));color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--menu-surface);box-shadow:0 2px 8px rgba(var(--color-brand-rgb-600),.3)}.menu-top-banner{margin:8px var(--page-gutter) 6px;border-radius:var(--menu-radius-lg);overflow:hidden;border:1px solid rgba(122,62,43,.16);background:#20140f;box-shadow:0 10px 24px #2f1e1929}.menu-top-banner-img{display:block;width:100%;height:clamp(140px,36vw,220px);object-fit:cover}.menu-top-banner+.restaurant-header{margin-top:0}.restaurant-header{margin:8px var(--page-gutter) 4px;padding:14px 18px;background:var(--menu-surface);border-radius:var(--menu-radius-lg);border:1px solid var(--cream);box-shadow:0 8px 26px #2f1e1914;display:grid;gap:12px;position:relative;overflow:hidden}.restaurant-header--has-hero{padding:0;gap:0;overflow:hidden}.restaurant-hero{width:100%;height:220px;overflow:hidden}.restaurant-hero-img{width:100%;height:100%;object-fit:cover;display:block}.restaurant-hero-overlay{display:none}.restaurant-header--has-hero .restaurant-header-content{padding:14px 18px;display:grid;gap:12px}.restaurant-header:not(.restaurant-header--has-hero) .restaurant-header-content{display:contents}.restaurant-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 8px;font-family:var(--font-family-body, "Space Grotesk", sans-serif);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--copper, var(--color-brand-500))}.restaurant-eyebrow__dot{display:inline-block;width:6px;height:6px;border-radius:999px;background:currentColor;box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500, 232, 93, 4),.12);flex-shrink:0}.restaurant-eyebrow__label{display:inline-block}.restaurant-eyebrow--table .restaurant-eyebrow__dot{animation:eyebrow-pulse 2.4s ease-in-out infinite}@keyframes eyebrow-pulse{0%,to{box-shadow:0 0 0 4px rgba(var(--color-brand-rgb-500, 232, 93, 4),.12)}50%{box-shadow:0 0 0 6px rgba(var(--color-brand-rgb-500, 232, 93, 4),.06)}}.restaurant-title{font-size:22px;font-weight:700;color:var(--ink);margin:0 0 6px;letter-spacing:-.02em;font-family:var(--font-display)}.restaurant-address{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--clay)}.restaurant-address svg{width:14px;height:14px;color:var(--copper)}.restaurant-actions{display:flex;flex-wrap:wrap;gap:8px}.restaurant-action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f7f2ece6;border:1px solid var(--cream);color:var(--ink-soft);font-size:12px;font-weight:600;cursor:pointer}.restaurant-action-btn svg{width:14px;height:14px;color:var(--copper)}.reservation-cta{position:relative;display:flex;align-items:center;gap:12px;margin:12px var(--page-gutter) 0;padding:12px 14px;background:var(--mp-surface);border:1px solid var(--mp-border);border-radius:var(--mp-radius-md);box-shadow:var(--mp-shadow-sm);text-decoration:none;cursor:pointer;outline:none;overflow:hidden;transition:background .22s ease,box-shadow .22s ease,border-color .22s ease}.reservation-cta:hover{background:var(--mp-accent);border-color:var(--mp-accent-hover);box-shadow:var(--mp-shadow-md)}.reservation-cta:hover .reservation-cta-icon{background:#f7f2ec;color:var(--mp-accent)}.reservation-cta:hover .reservation-cta-label,.reservation-cta:hover .reservation-cta-title,.reservation-cta:hover .reservation-cta-hints span{color:#f7f2ec}.reservation-cta:hover .reservation-cta-arrow{color:#f7f2ec;transform:translate(5px)}.reservation-cta-dismiss{position:absolute;top:8px;right:10px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:#8b7e77;padding:0}.reservation-cta-dismiss:hover{color:#2f1e19}.reservation-cta-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;background:var(--color-brand-500);color:#fff;border-radius:10px;transition:background .22s ease,color .22s ease}.reservation-cta-body{flex:1;min-width:0}.reservation-cta-label{font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:600;color:#8b7e77;text-transform:uppercase;letter-spacing:.08em;margin:0 0 1px;transition:color .22s ease}.reservation-cta-title{font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;color:#2f1e19;margin:0 0 4px;line-height:1.2;transition:color .22s ease}.reservation-cta-hints{display:flex;gap:10px;flex-wrap:wrap}.reservation-cta-hints span{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:500;color:#8b7e77;transition:color .22s ease}.reservation-cta-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-brand-500);transition:color .22s ease,transform .22s cubic-bezier(.34,1.4,.64,1)}.service-mode-switcher{padding:12px var(--page-gutter) 0}.service-mode-track{position:relative;display:flex;background:#2f1e1912;border-radius:10px;padding:3px}.service-mode-indicator{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);background:var(--mp-accent);border-radius:8px;transition:transform .22s ease;pointer-events:none;z-index:0;box-shadow:0 2px 6px rgba(var(--color-brand-rgb-600),.22)}.service-mode-indicator--right{transform:translate(100%)}.service-mode-btn{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 14px;border:none;background:transparent;border-radius:8px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:600;color:var(--mp-text-secondary);cursor:pointer;outline:none;transition:color .15s ease;white-space:nowrap}.service-mode-btn:focus{outline:none}.service-mode-btn--active{color:#fff}.service-mode-fee{font-size:10px;font-weight:700;padding:1px 5px;background:#2f1e191a;color:inherit;border-radius:4px}.service-mode-btn--active .service-mode-fee{background:#fff3;color:#fff}.service-mode-fee--free{color:#1a6b35;background:#4caf5026}.service-mode-btn--active .service-mode-fee--free{color:#d4f7de;background:#ffffff26}.popular-section{padding:20px var(--page-gutter) 8px;background:transparent}.popular-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0}.popular-title{font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.02em;margin:0;font-family:var(--font-display)}.popular-carousel .product-card-compact--portrait{flex:0 0 260px;width:260px;min-width:260px;max-width:260px;height:auto!important;min-height:auto;display:block;padding:0;border-radius:14px;overflow:hidden;scroll-snap-align:start;background:transparent;border:none;box-shadow:0 2px 12px #2f1e1914;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;position:relative}.popular-carousel .product-card-compact--portrait:hover{transform:translateY(-3px);box-shadow:0 8px 24px #2f1e1924}.popular-carousel .product-card-compact--portrait .product-card-image-wrapper{width:100%;aspect-ratio:16 / 9;height:auto;border-radius:14px;border:none;overflow:hidden;position:relative;background:var(--ink)}.popular-carousel .product-card-compact--portrait .product-card-image-wrapper:after{content:"";position:absolute;bottom:0;left:0;right:0;height:70%;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.4) 40%,transparent 100%);pointer-events:none;z-index:1}.popular-carousel .product-card-compact--portrait .product-card-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.popular-carousel .product-card-compact--portrait:hover .product-card-image{transform:scale(1.08)}.popular-carousel .product-card-compact--portrait .product-card-image-wrapper:before{content:"Populaire";position:absolute;top:12px;left:12px;padding:6px 12px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--color-brand-500) 100%);color:#fff;font-size:11px;font-weight:700;border-radius:6px;z-index:3;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 2px 8px rgba(var(--color-brand-rgb-600),.4)}.popular-carousel .ui-carousel__slide:nth-child(n+4) .product-card-compact--portrait .product-card-image-wrapper:before{display:none}.popular-carousel .product-card-compact--portrait .product-card-fav{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-brand-soft-15);background:rgba(var(--color-surface-rgb),.95);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:0 4px 14px rgba(var(--color-ink-rgb),.15);transition:transform .2s ease,background .2s ease,border-color .2s ease}.popular-carousel .product-card-compact--portrait .product-card-fav:hover{transform:scale(1.1);background:var(--white);border-color:rgba(var(--color-brand-rgb-600),.3)}.popular-carousel .product-card-compact--portrait .product-card-fav.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 6px 18px var(--color-brand-soft-35)}.popular-carousel .product-card-compact--portrait .product-card-info{position:absolute;bottom:0;left:0;right:60px;padding:16px;z-index:2;background:transparent}.popular-carousel .product-card-compact--portrait .product-card-title{font-size:16px;font-weight:600;color:#fff;margin:0 0 4px;font-family:var(--font-display);letter-spacing:-.01em;text-shadow:0 1px 3px rgba(0,0,0,.3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.popular-carousel .product-card-compact--portrait .product-card-meta{margin-top:0}.popular-carousel .product-card-compact--portrait .product-card-price{font-size:15px;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4)}.popular-carousel .product-card-compact--portrait .product-card-actions{position:absolute;bottom:12px;right:12px;padding:0;z-index:4}.popular-carousel .product-card-compact--portrait .add-btn{width:42px;height:42px;min-width:42px;border-radius:50%;background:var(--color-brand-gradient);color:var(--white);border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px var(--color-brand-soft-35);cursor:pointer;transition:all .2s ease;padding:0;font-size:0}.popular-carousel .product-card-compact--portrait .add-btn:hover{transform:scale(1.08);box-shadow:0 8px 24px var(--color-brand-soft-45)}.popular-carousel .product-card-compact--portrait .add-btn svg{width:20px;height:20px}.popular-carousel .product-card-compact--portrait .add-stepper{background:var(--white);border-radius:999px;box-shadow:0 4px 16px #0003;display:flex;align-items:center;gap:0;padding:4px 6px}.popular-carousel .product-card-compact--portrait .stepper-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.popular-carousel .product-card-compact--portrait .stepper-btn:hover{background:var(--copper);color:var(--white)}.popular-carousel .product-card-compact--portrait .stepper-qty{min-width:28px;text-align:center;font-size:15px;font-weight:700;color:var(--ink)}.category-sticky-bar{position:sticky;top:var(--menu-sticky-top);z-index:90;background:#f4ece5f7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);margin:0 calc(-1 * var(--page-gutter));padding:12px var(--page-gutter);border-radius:0;box-shadow:0 1px rgba(var(--color-brand-rgb-600),.06);border:none;border-bottom:1px solid rgba(var(--color-brand-rgb-600),.06)}.category-sticky-inner{display:grid;grid-template-columns:1fr;gap:14px}.category-search{order:2}.category-search-row{display:flex;align-items:center;gap:8px}.category-search-row .search-bar{flex:1}.category-lang-btn{display:flex;align-items:center;gap:5px;padding:8px 12px;background:transparent;border:1.5px solid rgba(var(--color-brand-rgb-600),.18);border-radius:10px;font-size:12px;font-weight:600;color:var(--clay);cursor:pointer;white-space:nowrap;flex-shrink:0;min-height:42px;transition:all .2s ease;letter-spacing:.02em}.category-lang-btn:hover{background:rgba(var(--color-brand-rgb-600),.06);border-color:var(--copper);color:var(--copper)}.category-lang-btn svg{flex-shrink:0}.category-search .search-bar{display:flex;align-items:center;gap:10px;margin:0;background:#f4ece599;border:1.5px solid rgba(var(--color-brand-rgb-600),.08);border-radius:10px;padding:10px 16px;min-height:42px;transition:all .25s ease}.category-search .search-bar svg{width:20px;height:20px;color:var(--clay);flex-shrink:0;transition:color .2s ease}.category-search .search-bar input{flex:1;font-size:15px;font-weight:500;color:var(--ink);background:transparent;border:none;outline:none;letter-spacing:-.01em}.category-search .search-bar input::placeholder{color:var(--clay);font-weight:400}.category-search .search-bar:focus-within{background:#fff;border-color:var(--copper);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.1)}.category-search .search-bar:focus-within svg{color:var(--copper)}.category-tabs-wrap{position:relative;overflow:visible;order:1;min-width:0}.category-sticky-bar .category-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px 2px;scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;margin:-4px -2px}.category-sticky-bar .category-tabs::-webkit-scrollbar{display:none}.category-sticky-bar .category-tab{position:relative;padding:9px 16px;background:transparent;border:1.5px solid transparent;border-radius:10px;font-size:13px;font-weight:600;color:var(--ink-soft);white-space:nowrap;cursor:pointer;transition:all .2s ease;letter-spacing:-.01em}.category-sticky-bar .category-tab:hover{color:var(--copper);background:rgba(var(--color-brand-rgb-600),.06)}.category-sticky-bar .category-tab:active{transform:scale(.96)}.category-sticky-bar .category-tab.active{color:#fff;background:var(--mp-accent);border-color:transparent;font-weight:700;box-shadow:0 3px 10px rgba(var(--color-brand-rgb-600),.22)}.category-sticky-bar .category-tab.active:hover{background:var(--mp-accent-hover);box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.28)}.menu-layout{display:block;padding:0 var(--page-gutter);margin-top:0}.menu-content{width:100%;flex:1 1 auto;min-width:0;scroll-behavior:smooth}.menu-sections{padding-bottom:300px}.menu-section-block{padding:28px 0 24px;scroll-margin-top:140px;position:relative}.menu-section-block:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:rgba(var(--color-brand-rgb-600),.08)}.menu-section-block:first-of-type:before{display:none}.menu-section-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:0;border-bottom:none}.menu-section-title{font-size:22px;font-weight:700;color:var(--ink);margin:0;font-family:var(--font-display);position:relative;padding-left:16px;letter-spacing:-.02em}.menu-section-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:18px;background:linear-gradient(180deg,var(--color-brand-600),var(--color-brand-500));border-radius:2px}.menu-section-desc{font-size:13px;color:var(--clay);margin:0}.menu-grid{display:grid;grid-template-columns:1fr;gap:20px}.product-card-compact{display:grid;border-radius:20px;background:#fff;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 188px;gap:16px;padding:16px;min-height:166px;align-items:start;border:1px solid rgba(122,62,43,.12);background:radial-gradient(circle at 88% 16%,rgba(var(--color-brand-rgb-500),.08),transparent 46%),#fff;box-shadow:0 12px 26px #2f1e1912}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 200px;min-height:156px;align-items:stretch}.menu-page .product-card-compact--list .product-card-image-wrapper{width:100%;height:auto;min-height:0;aspect-ratio:auto;align-self:stretch;overflow:hidden}.menu-page .product-card-compact--list .product-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.product-card-compact--list:hover{transform:translateY(-3px);border-color:rgba(var(--color-brand-rgb-600),.26);box-shadow:0 18px 36px #2f1e191f}.product-card-compact:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.22)}.product-card-info{min-width:0;display:flex;flex-direction:column}.product-card-compact--list .product-card-info{gap:10px;justify-content:flex-start;padding-right:0;padding-top:2px}.product-card-title{font-size:17px;font-weight:700;color:var(--ink);margin:0;font-family:var(--font-display);letter-spacing:-.02em;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.product-card-compact--list .product-card-title{min-height:46px}.product-card-desc{font-size:13px;color:var(--clay);margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.product-card-meta{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:6px}.product-card-prices,.product-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.product-card-price{font-size:17px;font-weight:700;color:var(--copper);letter-spacing:-.01em}.product-card-price--old{text-decoration:line-through;opacity:.5;font-size:.85em;margin-right:6px;color:var(--mp-text-muted, #999)}.product-card-price--promo{color:var(--mp-accent, var(--copper));font-weight:800}.product-card-promo-badge{display:inline-block;background:var(--mp-accent, var(--copper));color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;letter-spacing:.02em;width:fit-content}.product-card-compact--unavailable{opacity:.55;pointer-events:auto;filter:grayscale(.4)}.product-card-compact--unavailable .product-card-image{filter:grayscale(.6)}.product-card-unavailable-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000059;border-radius:inherit;z-index:2}.product-card-unavailable-badge{background:#000000bf;color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.04em}.product-card-unavailable-tag{font-size:11px;font-weight:700;color:#dc2626;background:#dc262614;border:1px solid rgba(220,38,38,.15);border-radius:999px;padding:4px 10px}.btn-primary--disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.product-card-tag{font-size:11px;font-weight:700;color:var(--copper);background:rgba(var(--color-brand-rgb-600),.08);border:1px solid rgba(var(--color-brand-rgb-600),.12);border-radius:999px;padding:5px 11px;text-transform:uppercase;letter-spacing:.04em}.product-card-side{display:flex;flex-direction:column}.product-card-compact--list .product-card-side{align-items:flex-end;justify-content:flex-start;gap:10px;min-width:188px;height:auto}.product-card-image-wrapper{position:relative;overflow:hidden;background:var(--cream)}.product-card-compact--list .product-card-image-wrapper{width:188px;height:112px;border-radius:18px;border:1px solid rgba(47,30,25,.12);box-shadow:0 10px 20px #2f1e1929;flex-shrink:0}.product-card-compact--list .product-card-image-wrapper .product-card-actions{position:absolute;right:8px;bottom:8px;z-index:3;margin:0;width:auto}.product-card-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card-compact:hover .product-card-image{transform:scale(1.05)}.product-card-fav{position:absolute;top:7px;right:7px;width:32px;height:32px;border-radius:50%;border:1px solid var(--color-brand-soft-15);background:rgba(var(--color-surface-rgb),.95);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:var(--clay);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px rgba(var(--color-ink-rgb),.15)}.product-card-fav:hover{transform:scale(1.1);background:var(--white);border-color:rgba(var(--color-brand-rgb-600),.3)}.product-card-fav:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb-500),.26)}.product-card-fav.is-favorite{color:var(--white);background:var(--color-brand-gradient);border-color:transparent;box-shadow:0 6px 18px var(--color-brand-soft-35)}.add-btn{background:var(--copper);color:var(--white);border:none;border-radius:12px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px rgba(var(--color-brand-rgb-500),.25)}.add-btn:hover{background:var(--color-brand-700);transform:translateY(-1px);box-shadow:0 6px 16px var(--color-brand-soft-35)}.add-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-brand-soft-24)}.add-btn-icon{width:38px;height:38px;min-width:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--color-brand-gradient);box-shadow:0 6px 20px var(--color-brand-soft-35)}.product-card-compact--list .add-btn-icon{width:42px;height:42px;min-width:42px}.product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:44px;height:44px;min-width:44px;border-radius:999px;background:var(--color-brand-gradient);color:var(--white);box-shadow:0 6px 20px var(--color-brand-soft-35);transition:all .2s ease}.product-card-compact--list .product-card-image-wrapper .add-btn-icon:hover{transform:scale(1.08);box-shadow:0 8px 24px var(--color-brand-soft-45)}.product-card-compact--list .product-card-image-wrapper .add-btn-config-icon{border:none;padding:0}.add-btn-icon svg{width:18px;height:18px}.add-btn-config{background:#ffffffe0;border:1.5px solid var(--copper);color:var(--copper);box-shadow:none;min-height:40px;padding:0 20px;border-radius:15px;font-size:14px;font-weight:700;letter-spacing:.01em}.add-btn-config:hover{background:var(--color-brand-gradient);color:var(--white)}.add-stepper{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(122,62,43,.14);border-radius:12px;padding:4px 5px;background:var(--color-paper-100)}.stepper-btn{width:30px;height:30px;border-radius:10px;border:none;background:var(--white);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;box-shadow:0 1px 3px #00000014}.stepper-btn:hover{background:var(--copper);color:var(--white)}.stepper-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-brand-soft-24)}.stepper-qty{min-width:24px;text-align:center;font-size:13px;font-weight:700;color:var(--ink)}.product-card-compact--portrait{display:flex;flex-direction:column;height:auto;padding:0;grid-template-columns:unset;grid-template-rows:unset}.product-card-compact--portrait .product-card-image-wrapper{width:100%;aspect-ratio:4/3;border-radius:12px 12px 0 0}.product-card-compact--portrait .product-card-info{padding:12px;display:flex;flex-direction:column;gap:4px}.product-card-compact--portrait .product-card-actions{padding:0 12px 12px;display:flex;justify-content:flex-end}.product-card-compact--portrait .product-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal}.product-card-compact--list .product-card-actions{margin-top:0;width:auto;justify-content:flex-end}.product-card-compact--list .product-card-image-wrapper .add-stepper{background:var(--white);border:none;border-radius:999px;box-shadow:0 4px 16px #0003;display:flex;align-items:center;gap:0;padding:4px 6px}.product-card-compact--list .product-card-image-wrapper .stepper-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.product-card-compact--list .product-card-image-wrapper .stepper-btn:hover{background:var(--copper);color:var(--white)}.product-card-compact--list .product-card-image-wrapper .stepper-qty{min-width:28px;text-align:center;font-size:15px;font-weight:700;color:var(--ink)}.product-card-actions{display:flex;justify-content:flex-end}.cart-sidebar{display:none;position:sticky;top:calc(var(--menu-header-height) + 16px);align-self:flex-start;background:var(--menu-surface);border:1px solid var(--cream);border-radius:var(--menu-radius-lg);padding:16px;box-shadow:0 12px 32px #2f1e191f;min-width:280px}.cart-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cart-sidebar-title{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--ink)}.cart-sidebar-count{font-size:12px;color:var(--clay)}.cart-sidebar-items{display:grid;gap:12px}.cart-sidebar-body{max-height:calc(100vh - 280px);overflow-y:auto;padding-right:4px}.cart-sidebar-item{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center}.cart-sidebar-item-image{width:44px;height:44px;border-radius:10px;object-fit:cover}.cart-sidebar-item-name{font-size:13px;font-weight:600;margin:0 0 4px}.cart-sidebar-item-price{font-size:12px;color:var(--copper)}.cart-sidebar .cart-item-qty{padding:2px;gap:4px;background:var(--menu-surface-muted)}.cart-sidebar .qty-btn{width:24px;height:24px;box-shadow:none;font-size:12px}.cart-sidebar .qty-value{font-size:12px}.cart-sidebar-footer{margin-top:14px;border-top:1px solid var(--cream);padding-top:12px}.cart-sidebar-total{display:flex;justify-content:space-between;font-weight:700;margin-bottom:10px}.cart-sidebar-checkout{width:100%;border:none;border-radius:12px;background:linear-gradient(135deg,#2F1E19 0%,#7A3E2B 55%,var(--color-brand-600) 100%);color:#fff;padding:10px 12px;font-weight:700;cursor:pointer}.cart-bottom-bar{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,8px));background:linear-gradient(to top,#fff,#fffffff2 60%,#fff0);z-index:110;pointer-events:none;animation:slideUpFade .3s ease-out both}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cart-bottom-bar button{pointer-events:auto;width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(135deg,#1a1311,#2f1e19);color:#fff;border:none;border-radius:14px;padding:14px 18px;cursor:pointer;box-shadow:0 8px 32px #2f1e1940,0 2px 8px #0000001a;transition:all .2s ease}.cart-bottom-bar button:hover{transform:translateY(-2px);box-shadow:0 12px 40px #2f1e194d,0 4px 12px #00000026}.cart-bottom-bar button:active{transform:translateY(0)}.cart-bottom-main{display:flex;flex-direction:column;gap:2px;text-align:left}.cart-bottom-title{font-weight:700;font-size:15px;letter-spacing:-.01em}.cart-bottom-count{font-size:12px;opacity:.75}.cart-bottom-total{font-weight:700;font-size:16px;display:flex;align-items:center;gap:6px}.cart-bottom-total:after{content:"→";opacity:.6;font-size:14px;transition:transform .2s ease}.cart-bottom-bar button:hover .cart-bottom-total:after{transform:translate(4px)}.menu-skeleton{padding:16px;display:grid;gap:14px}.menu-skeleton-header{height:44px;border-radius:12px}.menu-skeleton-hero{height:120px;border-radius:16px}.menu-skeleton-carousel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.menu-skeleton-card{height:120px;border-radius:16px}.menu-skeleton-bar{height:44px;border-radius:12px}.menu-skeleton-row{height:88px;border-radius:16px}@media(min-width:768px){.menu-page{--menu-header-height: 64px;--menu-sticky-top: 64px;padding-bottom:120px}.menu-page .header-btn-text{display:inline}.restaurant-header{margin:16px var(--page-gutter) 12px;padding:16px 20px}.menu-top-banner{margin:14px var(--page-gutter) 8px}.menu-top-banner-img{height:clamp(190px,26vw,280px)}.restaurant-header--has-hero{padding:0}.restaurant-hero{height:300px}.restaurant-header--has-hero .restaurant-header-content{padding:16px 20px}.popular-section{padding:24px var(--page-gutter) 16px}.popular-carousel{margin:0;padding:0}.popular-carousel .ui-carousel__track{padding:4px 32px 16px 0}.popular-carousel .product-card-compact--portrait{flex:0 0 280px;width:280px;min-width:280px;max-width:280px}.popular-carousel .product-card-compact--portrait .product-card-title{font-size:17px}.category-sticky-bar{margin:0 calc(-1 * var(--page-gutter));padding:12px var(--page-gutter);border-radius:0}.category-sticky-inner{grid-template-columns:1fr auto;gap:14px;align-items:center}.category-search{order:2}.category-tabs-wrap{order:1}.category-search .search-bar{min-height:40px;padding:10px 16px}.category-lang-btn{min-height:40px}.menu-grid{grid-template-columns:repeat(2,1fr);gap:20px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 198px;min-height:172px;padding:18px;gap:18px}.product-card-compact--list .product-card-image-wrapper{width:198px;height:120px;border-radius:18px}.product-card-compact--list .product-card-title{font-size:17px}.product-card-compact--list .product-card-desc{font-size:13px}}@media(min-width:1024px){.menu-page.app-container{max-width:100%;margin:0}.menu-page{--menu-header-height: 68px;--menu-sticky-top: 68px}.menu-page .header{padding:8px var(--page-gutter)}.restaurant-header{margin:20px var(--page-gutter) 16px;padding:20px 24px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px}.menu-top-banner{margin:14px var(--page-gutter) 10px}.menu-top-banner-img{height:clamp(240px,20vw,330px)}.restaurant-header--has-hero{padding:0;grid-template-columns:1fr}.restaurant-hero{height:440px}.restaurant-header--has-hero .restaurant-header-content{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 24px}.restaurant-header--has-hero .restaurant-actions{justify-content:flex-end;flex-shrink:0}.restaurant-actions{justify-content:flex-end}.popular-section{padding:24px var(--page-gutter) 16px}.popular-header{padding:0;margin-bottom:18px}.popular-title{font-size:26px}.popular-carousel .ui-carousel__track{padding:4px 40px 24px 0;gap:20px}.popular-carousel .product-card-compact--portrait{flex:0 0 300px;width:300px;min-width:300px;max-width:300px}.popular-carousel .product-card-compact--portrait .product-card-actions{bottom:14px;right:14px}.popular-carousel .product-card-compact--portrait .add-btn{width:44px;height:44px;min-width:44px}.popular-carousel .product-card-compact--portrait .add-btn svg{width:22px;height:22px}.popular-carousel .product-card-compact--portrait .product-card-title{font-size:18px}.popular-carousel .product-card-compact--portrait .product-card-info{padding:18px}.menu-layout{display:block;max-width:100%}.menu-content{max-width:100%}.category-sticky-bar{margin:0 calc(-1 * var(--page-gutter));padding:12px var(--page-gutter);border-radius:0;box-shadow:0 1px rgba(var(--color-brand-rgb-600),.06)}.category-sticky-inner{grid-template-columns:1fr 280px;gap:20px;align-items:center}.category-search{max-width:320px}.category-search .search-bar{border-radius:16px}.category-sticky-bar .category-tab{padding:10px 20px;font-size:14px}.menu-section-block{scroll-margin-top:160px;padding:80px 0 36px}.menu-section-block:before{height:1px}.menu-section-header{margin-bottom:20px;padding-bottom:0}.menu-section-title{font-size:26px;padding-left:18px}.menu-section-title:before{width:4px;height:28px}.menu-grid{grid-template-columns:repeat(2,1fr);gap:18px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 214px;min-height:186px;padding:20px;gap:20px}.product-card-compact--list .product-card-title{font-size:17px}.product-card-compact--list .product-card-desc{font-size:13px}.product-card-compact--list .product-card-image-wrapper{width:214px;height:132px;border-radius:18px}.product-card-compact--list .add-btn-config{min-height:42px;padding:0 20px;font-size:15px}.product-card-compact--list .add-btn-icon{width:40px;height:40px;min-width:40px}.product-card-compact--list .add-btn-icon svg{width:20px;height:20px}.cart-bottom-bar{display:none}}@media(min-width:1280px){.menu-page.app-container,.menu-layout{max-width:100%}.restaurant-hero{height:480px}.restaurant-header--has-hero .restaurant-header-content{padding:20px 28px}.popular-carousel .ui-carousel__track{padding:4px 48px 16px 0;gap:18px}.popular-carousel .product-card-compact--portrait{flex:0 0 320px;width:320px;min-width:320px;max-width:320px}.popular-carousel .product-card-compact--portrait .product-card-actions{bottom:16px;right:16px}.popular-carousel .product-card-compact--portrait .product-card-title{font-size:20px}.popular-carousel .product-card-compact--portrait .product-card-price{font-size:15px}.popular-carousel .product-card-compact--portrait .product-card-info{padding:20px}.menu-grid{grid-template-columns:repeat(3,1fr);gap:24px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 228px;min-height:192px}.product-card-compact--list .product-card-image-wrapper{width:228px;height:140px}}@media(min-width:1536px){.menu-page.app-container{max-width:100%}.menu-grid{grid-template-columns:repeat(4,1fr);gap:26px}.product-card-compact--list{grid-template-columns:minmax(0,1fr) 244px;min-height:198px}.product-card-compact--list .product-card-image-wrapper{width:244px;height:150px}.restaurant-hero{height:560px}}.menu-page .menu-sections{background:transparent}.menu-page .menu-section-block{padding:72px 0 32px}.menu-page .menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;background:transparent;border-radius:0;overflow:visible;box-shadow:none}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(110px,36%);min-height:132px;padding:0;gap:0;align-items:stretch;overflow:hidden;border-radius:18px;background:#fff;border:1px solid rgba(47,30,25,.06);box-shadow:0 1px 3px #2f1e190a,0 4px 16px #2f1e190a;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.menu-page .product-card-compact--list:hover{transform:translateY(-2px);border-color:rgba(var(--color-brand-rgb-600),.15);box-shadow:0 8px 32px #2f1e1914,0 2px 8px rgba(var(--color-brand-rgb-600),.04)}.menu-page .product-card-compact--list .product-card-side{min-width:0;height:100%}.menu-page .product-card-compact--list .product-card-image-wrapper{width:100%;height:100%;min-height:100%;border-radius:0 18px 18px 0;border:none;box-shadow:none;overflow:hidden}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav{position:absolute!important;top:8px!important;right:8px!important;width:32px;height:32px;margin:0;z-index:7;transform:none!important}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-actions{position:absolute!important;right:8px!important;bottom:8px!important;margin:0;z-index:6;transform:none!important;width:auto}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav svg{color:var(--ink);display:block}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav.is-favorite svg{color:var(--white)}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon svg{color:#fff;display:block}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:38px;height:38px;min-width:38px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--color-brand-500) 100%);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.35)}.menu-page .product-card-compact--list .product-card-info{padding:14px 14px 12px;justify-content:center;gap:6px}.menu-page .product-card-compact--list .product-card-title{min-height:0;font-size:clamp(15px,4vw,18px);line-height:1.22}.menu-page .product-card-compact--list .product-card-desc{-webkit-line-clamp:2;line-height:1.35;font-size:clamp(12px,3.2vw,14px)}.menu-page .product-card-compact--list .product-card-meta{margin-top:1px}.menu-page .category-sticky-inner{grid-template-columns:1fr;gap:10px}.menu-page .category-search{order:1;max-width:100%}.menu-page .category-tabs-wrap{order:2}@media(min-width:768px){.menu-page .menu-grid{grid-template-columns:1fr;gap:28px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(240px,39%);min-height:280px}.menu-page .product-card-compact--list .product-card-info{padding:24px 22px 20px;gap:12px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(19px,2.4vw,23px)}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:50px;height:50px;min-width:50px}}@media(min-width:1024px){.menu-page .category-sticky-inner{grid-template-columns:1fr 320px;gap:24px}.menu-page .category-search{order:2;max-width:320px}.menu-page .category-tabs-wrap{order:1}.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(208px,35%);min-height:300px}.menu-page .product-card-compact--list .product-card-info{padding:28px 28px 24px;gap:14px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(20px,1.6vw,24px)}.menu-page .product-card-compact--list .product-card-image-wrapper:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,transparent 62%,rgba(47,30,25,.12) 100%);pointer-events:none;z-index:1}}@media(min-width:1280px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:34px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 36%;min-height:320px}.menu-page .product-card-compact--list .product-card-info{padding:18px 18px 14px;gap:8px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(15px,1.2vw,18px)}.menu-page .product-card-compact--list .product-card-desc{font-size:clamp(12px,.9vw,14px)}}@media(min-width:1536px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:36px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) 36%;min-height:320px}}@media(max-width:1023px){.menu-page .menu-sections{padding-top:8px}.menu-page .menu-section-block{padding:60px 0 28px;scroll-margin-top:132px}.menu-page .menu-section-header{position:static;margin-bottom:14px;padding-bottom:0}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(110px,36%);min-height:130px}.menu-page .product-card-compact--list .product-card-side{min-width:0}.menu-page .product-card-compact--list .product-card-info{padding:12px 12px 10px;gap:5px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(15px,4.2vw,18px);line-height:1.2}.menu-page .product-card-compact--list .product-card-desc{font-size:clamp(12px,3.2vw,14px);-webkit-line-clamp:2}.menu-page .product-card-compact--list .product-card-price{font-size:clamp(14px,4vw,17px)}.menu-page .product-card-compact--list .product-card-image-wrapper{overflow:visible;isolation:auto}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-image{border-radius:0 18px 18px 0}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-actions{position:absolute!important;right:8px!important;bottom:8px!important;z-index:6;display:flex!important;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:38px;height:38px;min-width:38px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--color-brand-500) 100%);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb-600),.35);display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav{position:absolute!important;top:8px!important;right:8px!important;width:30px;height:30px;min-width:30px;border-radius:50%;background:#fffffff7;display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important;z-index:7;border:1px solid rgba(var(--color-brand-rgb-600),.15);box-shadow:0 4px 14px #2f1e1926}.menu-page .product-card-compact--list .product-card-image-wrapper .add-stepper{transform:none;margin:0;border-radius:999px;max-width:min(120px,calc(100% - 4px))}}@media(min-width:768px)and (max-width:1023px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}.menu-page .product-card-compact--list{grid-template-columns:minmax(0,1fr) minmax(156px,41%);min-height:192px}.menu-page .product-card-compact--list .product-card-info{padding:18px 16px 16px}.menu-page .product-card-compact--list .product-card-title{font-size:clamp(18px,2.4vw,22px)}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-fav{top:12px!important;right:12px!important;width:38px;height:38px;min-width:38px}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{width:48px;height:48px;min-width:48px}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-actions{right:12px!important;bottom:12px!important}}.cal-day{outline:none}.cal-day:not(.cal-day--disabled):not(.cal-day--selected):hover{background:rgba(var(--color-brand-rgb-600),.1)!important;color:var(--color-brand-600)!important}.cal-day--selected:hover{background:var(--color-brand-700, #a82f18)!important}.time-slot{outline:none}.time-slot:not(.time-slot--selected):hover{background:rgba(var(--color-brand-rgb-600),.1)!important;color:var(--color-brand-600)!important}.time-slot--selected:hover{background:var(--color-brand-700, #a82f18)!important}.large-group-cta{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;background:rgba(var(--color-brand-rgb-600),.05);border:1.5px dashed rgba(var(--color-brand-rgb-600),.35);border-radius:16px;padding:20px 16px}.large-group-cta-icon{width:44px;height:44px;border-radius:50%;background:rgba(var(--color-brand-rgb-600),.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.large-group-cta-body{flex:1}.large-group-cta-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.large-group-cta-desc{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.45}.large-group-cta-btn{margin-top:4px;padding:11px 20px;border-radius:999px;background:linear-gradient(145deg,var(--color-brand-600) 0%,var(--color-brand-500) 100%);border:none;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .2s;white-space:nowrap}.large-group-cta-btn:hover{opacity:.88}@media(min-width:768px){.menu-page .menu-grid{grid-template-columns:repeat(auto-fill,minmax(300px,400px));justify-content:start;align-items:stretch}.menu-page .product-card-compact--list{min-height:168px;align-items:stretch}.menu-page .product-card-compact--list .product-card-image-wrapper{height:168px;overflow:hidden}.menu-page .product-card-compact--list .product-card-image-wrapper .product-card-actions{display:flex!important;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-image-wrapper .add-btn-icon{display:inline-flex!important;visibility:visible!important;opacity:1!important}.menu-page .product-card-compact--list .product-card-info{justify-content:flex-start;padding:12px 14px;gap:6px}.menu-page .product-card-compact--list .product-card-title{min-height:44px}.menu-page .product-card-compact--list .product-card-desc{-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;min-height:34px}.menu-page .product-card-compact--list .product-card-meta{margin-top:4px}}
