@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--mode-background:#faf6f0;--mode-card:#fff;--mode-card-foreground:#201a16;--mode-border:#ece3d6;--mode-default-foreground:#2b241f;--mode-muted-foreground:#756a5c;--mode-subtle-foreground:#9c9082;--mode-destructive:#c6363a;--mode-success:#1f8f5b;--brand-background:#fff;--brand-titles:#7a2a1b;--brand-top-bar:#7e5f2b;--brand-top-bar-foreground:#fff;--brand-cta:#9c3323;--brand-cta-strong:#7a2a1b;--brand-cta-gradient:linear-gradient(180deg, #ac3b27 0%, #8e2c1d 100%);--brand-cta-foreground:#fff;--brand-accent-background:#f6e3d5;--brand-accent-foreground:#9c3323;--brand-accent-border:#ebc7a8;--page-background:#f7a83d;--red:#c6363a;--green:#1f8f5b;--content-max:1320px;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-full:9999px;--font-family:var(--brand-font-family,"Inter"), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.85rem;--font-size-base:.95rem;--font-size-lg:1.1rem;--font-size-xl:1.4rem;--font-size-2xl:1.9rem;--shadow-sm:0 1px 3px #2b1e1114;--shadow-md:0 4px 16px #2b1e111f;--shadow-lg:0 8px 32px #16241e38;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.35s cubic-bezier(.16, 1, .3, 1);--z-sticky-nav:50;--z-cart-bar:60;--z-drawer:150;--z-modal:200}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--mode-card-foreground);background:var(--page-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}h1,h2{letter-spacing:-.01em;font-weight:800}button{font-family:inherit}input[type=radio],input[type=checkbox]{accent-color:var(--brand-cta)}input:not([type=radio]):not([type=checkbox]):focus,select:focus,textarea:focus{border-color:var(--brand-cta);outline:none;box-shadow:0 0 0 3px #ff5a3c24}#app{background-color:var(--page-background);background-image:var(--page-background-image,none);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;min-height:100vh;position:relative;overflow-x:hidden}.login-page,.checkout-page,.account-page,.confirmation{max-width:640px;margin:0 auto}.btn{border-radius:var(--radius-lg);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand-cta-gradient);color:var(--brand-cta-foreground);box-shadow:0 6px 16px -6px #e23f228c}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px -6px #e23f22a6}.btn-secondary{background:var(--mode-card);color:var(--mode-default-foreground);border:1px solid var(--mode-border)}.btn-block{width:100%}.top-bar{background:var(--brand-top-bar);color:var(--brand-top-bar-foreground);align-items:center;gap:12px;padding:14px 16px;display:flex}.category-nav{z-index:var(--z-sticky-nav);padding:14px max(20px, calc((100% - var(--content-max)) / 2));background:var(--brand-top-bar);scrollbar-width:none;align-items:center;gap:14px;display:flex;position:sticky;top:0;overflow-x:auto}.category-nav::-webkit-scrollbar{display:none}.product-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=420px){.product-grid{grid-template-columns:repeat(2,1fr);gap:14px}}@media (width>=560px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}}@media (width>=900px){.product-grid{gap:24px}}.product-card{border-radius:var(--radius-2xl);background:var(--mode-card);cursor:pointer;text-align:left;width:100%;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;flex-direction:column;display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.product-card__img{aspect-ratio:4/3;object-fit:cover;background:var(--brand-accent-background);flex:none;width:100%}.product-card__img--placeholder{color:var(--brand-accent-foreground);justify-content:center;align-items:center;font-size:2rem;display:flex}.product-card__info{flex-direction:column;flex:1;min-width:0;padding:12px 14px 14px;display:flex}.product-card__name{color:var(--mode-card-foreground);margin-bottom:2px;font-weight:700}.product-card__desc{font-size:var(--font-size-sm);color:var(--mode-muted-foreground);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.product-card__footer{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.product-card__price{color:var(--mode-card-foreground);font-weight:800;font-size:var(--font-size-base)}.qty-stepper{border:1px solid var(--mode-border);border-radius:var(--radius-full);flex:none;align-items:center;gap:10px;padding:4px 12px;font-weight:700;display:flex}.qty-stepper button{cursor:pointer;width:22px;height:22px;color:var(--brand-cta);background:0 0;border:none;font-size:1rem}.qty-add-btn{border-radius:var(--radius-full);background:var(--brand-cta-gradient);width:32px;height:32px;color:var(--brand-cta-foreground);cursor:pointer;border:none;flex:none;font-size:1.1rem;font-weight:700;box-shadow:0 4px 10px -4px #e23f2299}.allergen-list{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.allergen-chip{border-radius:var(--radius-full);background:var(--brand-accent-background);color:var(--brand-accent-foreground);font-size:var(--font-size-xs);align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.sheet-overlay{z-index:var(--z-modal);background:#11182780;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--mode-card);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;width:100%;max-width:640px;max-height:90vh;animation:slideUp var(--transition-slow);overflow-y:auto}.sheet__close{background:var(--mode-card);z-index:1;justify-content:flex-end;padding:12px;display:flex;position:sticky;top:0}.sheet__close button{border-radius:var(--radius-full);background:var(--mode-background);width:32px;height:32px;color:var(--mode-muted-foreground);cursor:pointer;border:none;font-size:1rem}.sheet__img{object-fit:cover;background:var(--brand-accent-background);width:100%;height:260px}.sheet__body{padding:20px}.sheet__title{font-size:var(--font-size-xl);color:var(--mode-card-foreground);font-weight:800}.sheet__desc{color:var(--mode-muted-foreground);margin-top:6px}.sheet__price{font-size:var(--font-size-lg);color:var(--brand-cta);margin-top:10px;font-weight:800}.mod-group{margin-top:24px}.mod-group__title{color:var(--mode-card-foreground);justify-content:space-between;align-items:center;margin-bottom:4px;font-weight:700;display:flex}.mod-group__hint{font-size:var(--font-size-xs);color:var(--mode-subtle-foreground);margin-bottom:10px}.mod-option{border-bottom:1px solid var(--mode-border);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.mod-option__name{color:var(--mode-card-foreground);font-weight:500}.mod-option__price{color:var(--brand-cta);font-weight:700;font-size:var(--font-size-sm)}.state-message{text-align:center;color:var(--mode-card-foreground);padding:40px 20px;font-weight:600}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
