@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--bg-base:#fefcfb;--bg-elevated:#fff;--bg-soft:#fff8f6;--bg-accent:#fff1ed;--text-primary:#1a1a2e;--text-secondary:#4a4a68;--text-muted:#8a8aa3;--accent:#e63946;--accent-hover:#d62839;--accent-light:#fee2e2;--success:#059669;--success-bg:#d1fae5;--warning:#d97706;--warning-bg:#fef3c7;--error:#dc2626;--error-bg:#fee2e2;--border:#f0e6e4;--border-hover:#e5d4d0;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 12px 32px #e639461f;--shadow-card:0 2px 8px #0000000a, 0 8px 24px #0000000f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--transition:.2s cubic-bezier(.4, 0, .2, 1);--skeleton-base:#f0e6e4;--skeleton-shine:#faf5f4;color:var(--text-primary);background:var(--bg-base);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;line-height:1.6}[data-theme=dark]{--bg-base:#0a0a0c;--bg-elevated:#141417;--bg-soft:#1e1e23;--bg-accent:#2d1f22;--text-primary:#f5f5f7;--text-secondary:#b4b4bd;--text-muted:#9090a0;--accent:#f87171;--accent-hover:#ef4444;--accent-light:#3d2020;--success:#4ade80;--success-bg:#14532d;--warning:#fbbf24;--warning-bg:#3d2e0a;--error:#f87171;--error-bg:#3d1515;--border:#2a2a30;--border-hover:#3f3f46;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 32px #00000080;--shadow-card:0 2px 8px #0000004d, 0 8px 24px #0006;--skeleton-base:#1e1e23;--skeleton-shine:#2a2a30;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .btn.primary,[data-theme=dark] .btn.danger{box-shadow:0 4px 16px #f871714d}[data-theme=dark] .chip.active{box-shadow:0 4px 16px #f8717159}[data-theme=dark] .topline-highlight{color:#fff;background:#22c55e}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:var(--accent);transition:var(--transition);text-decoration:none}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{color:var(--text-primary);font-weight:700;line-height:1.3}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}img{max-width:100%;display:block}.shell{flex-direction:column;max-width:1320px;min-height:100vh;margin:0 auto;padding:0 1.5rem;display:flex}.topline{color:var(--text-muted);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;padding:.75rem 0;font-size:.875rem;display:flex}.topline-item{align-items:center;gap:.5rem;display:flex}.topline-item svg{width:16px;height:16px;color:var(--accent)}.topline-highlight{background:var(--success);color:#fff;border-radius:999px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.brand{color:var(--accent);letter-spacing:-.02em;align-items:center;gap:.5rem;font-size:1.75rem;font-weight:800;display:flex}.brand-icon{background:var(--accent);color:#fff;border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.brand-icon svg{width:24px;height:24px}.header-nav-desktop{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.header-nav-desktop a{border-radius:var(--radius-md);color:var(--text-secondary);transition:var(--transition);padding:.5rem 1rem;font-weight:500}.header-nav-desktop a:hover{background:var(--bg-soft);color:var(--text-primary)}.header-nav-desktop a.active{background:var(--accent-light);color:var(--accent);font-weight:600}.header-cart-icon-wrap{justify-content:center;align-items:center;display:flex;position:relative}.header-cart-badge{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-7px;right:-9px;box-shadow:0 1px 4px #00000026}.header-nav-cart{justify-content:center;align-items:center;min-width:2.75rem;display:inline-flex;padding:.55rem .85rem!important}.header-nav-cart.active .header-cart-badge{background:var(--accent-hover)}.header-cart-mobile.header-cart-mobile{position:relative}.mobile-nav-drawer-cart{align-items:center;gap:.85rem;margin-bottom:.35rem;background:var(--bg-soft)!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;padding:.95rem 1rem!important;font-weight:600!important;display:flex!important}.mobile-nav-drawer-cart:hover,.mobile-nav-drawer-cart.active{background:var(--accent-light)!important;border-color:var(--accent)!important;color:var(--accent)!important}.mobile-nav-drawer-cart-icon{border-radius:var(--radius-md);background:var(--bg-elevated);width:44px;height:44px;color:var(--accent);box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.mobile-nav-drawer-cart.active .mobile-nav-drawer-cart-icon,.mobile-nav-drawer-cart:hover .mobile-nav-drawer-cart-icon{background:var(--bg-elevated);color:var(--accent)}.mobile-nav-drawer-cart-text{flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;min-width:0;display:flex}.mobile-nav-drawer-cart-title{color:var(--text-primary);font-size:1rem;font-weight:700}.mobile-nav-drawer-cart.active .mobile-nav-drawer-cart-title,.mobile-nav-drawer-cart:hover .mobile-nav-drawer-cart-title{color:var(--accent)}.mobile-nav-drawer-cart-sub{font-size:.8rem;font-weight:500}.mobile-nav-drawer-cart-pill{background:var(--accent);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 8px;font-size:.8rem;font-weight:800;display:inline-flex}.mobile-nav-drawer-cart.active .mobile-nav-drawer-cart-pill,.mobile-nav-drawer-cart:hover .mobile-nav-drawer-cart-pill{background:var(--accent-hover)}.header-actions-desktop{align-items:center;gap:1rem;display:flex}.header-actions-mobile{flex-shrink:0;align-items:center;gap:.5rem;display:none}.brand-text{min-width:0}@media (width<=520px){.brand-text{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;overflow:hidden}}.mobile-nav-scrim,.mobile-nav-drawer{display:none}.user-greeting{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.user-avatar{background:var(--accent-light);width:36px;height:36px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.content{flex:1;padding:1.5rem 0 3rem}.footer{color:#fff;background:#1a1a2e;margin-top:auto;padding:3rem 0 2rem}[data-theme=dark] .footer{background:#0a0a0d}.footer-container{max-width:1320px;margin:0 auto;padding:0 1.5rem}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.footer-section h4{color:#fff;margin-bottom:1rem;font-size:1rem}.footer-section p,.footer-section a{color:#ffffffb3;margin-bottom:.5rem;font-size:.9rem;display:block}.footer-section a:hover{color:#fff}.footer-bottom{color:#ffffff80;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:2rem;font-size:.85rem;display:flex}.pickup-badge{background:var(--success);color:#fff;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.grid{gap:1.5rem;display:grid}.center{place-items:center;min-height:60vh}.checkout-grid{grid-template-columns:1.3fr 1fr;align-items:start}.checkout-summary-card{position:sticky;top:1rem}.checkout-hint-mobile,.checkout-mobile-footer{display:none}@media (width<=900px){.checkout-grid{grid-template-columns:1fr}.checkout-page.checkout-grid{padding-bottom:calc(5.75rem + env(safe-area-inset-bottom,0px));flex-direction:column;gap:1.5rem;display:flex}.checkout-page .checkout-summary-column{order:-1}.checkout-page .checkout-details{order:1}.checkout-summary-card{position:static}.checkout-hint-desktop{display:none}.checkout-hint-mobile{display:inline}.checkout-confirm-desktop,.checkout-legal-note{display:none}.checkout-mobile-footer{z-index:100;padding:.65rem max(1rem, env(safe-area-inset-left,0px)) calc(.65rem + env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-right,0px));background:var(--bg-elevated);border-top:1px solid var(--border);display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #00000012}[data-theme=dark] .checkout-mobile-footer{box-shadow:0 -6px 24px #0006}.checkout-mobile-footer-inner{align-items:center;gap:.75rem;max-width:1320px;margin:0 auto;display:flex}.checkout-mobile-footer-btn{flex:1;min-width:0;padding-left:.75rem;padding-right:.75rem}}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem}.card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.card-title{align-items:center;gap:.75rem;display:flex}.card-icon{background:var(--accent-light);width:44px;height:44px;color:var(--accent);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex}.card-icon svg{width:22px;height:22px}.card.inset{background:var(--bg-soft);box-shadow:none;border-color:#0000}.error-block{background:var(--error-bg);border-color:var(--error)}.auth-card{width:min(480px,95vw)}.hero-banner{background:linear-gradient(135deg, var(--accent) 0%, #ff6b6b 100%);color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:2.5rem;position:relative;overflow:hidden}.hero-banner:before{content:"";background:#ffffff1a;border-radius:50%;width:200px;height:200px;position:absolute;top:-50px;right:-50px}.hero-banner:after{content:"";background:#ffffff14;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-30px;right:30px}.hero-content{z-index:1;max-width:600px;position:relative}.hero-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:inline-flex}.hero-banner h2{color:#fff;margin-bottom:.75rem;font-size:2rem}.hero-banner p{opacity:.95;margin-bottom:1.5rem;font-size:1.1rem}.hero-features{flex-wrap:wrap;gap:1.5rem;display:flex}.hero-feature{align-items:center;gap:.5rem;font-weight:500;display:flex}.hero-feature svg{width:20px;height:20px}.btn{border:2px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn svg{width:18px;height:18px}.btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.btn.primary,.btn.danger{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;border-color:#0000;box-shadow:0 4px 12px #e6394640}.btn.primary:hover,.btn.danger:hover{background:linear-gradient(135deg, var(--accent-hover) 0%, #c41e30 100%);transform:translateY(-2px);box-shadow:0 6px 16px #e6394659}.btn.success{background:linear-gradient(135deg, var(--success) 0%, #047857 100%);color:#fff;border-color:#0000;box-shadow:0 4px 12px #05966940}.btn.lg{border-radius:var(--radius-lg);padding:.85rem 1.75rem;font-size:1rem}.btn.secondary{border-color:var(--border);color:var(--text-secondary);background:0 0}.btn.secondary:hover{background:var(--bg-soft);border-color:var(--text-secondary);color:var(--text-primary)}.btn.icon-only{background:var(--bg-soft);border-color:var(--border);min-width:40px;height:40px;padding:.6rem}.btn.icon-only:hover{background:var(--bg-accent);border-color:var(--accent);color:var(--accent)}.text-btn{color:var(--accent);cursor:pointer;transition:var(--transition);background:0 0;border:0;padding:.5rem;font-weight:500}.text-btn:hover{color:var(--accent-hover)}input,select,textarea{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:var(--radius-md);transition:var(--transition);padding:.75rem 1rem;font-size:.95rem}select option{background:var(--bg-elevated);color:var(--text-primary)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}input::placeholder,textarea::placeholder{color:var(--text-muted)}.form-group{margin-bottom:1rem}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.form-hint{color:var(--text-muted);margin-top:.25rem;font-size:.85rem}textarea{resize:vertical;min-height:120px}.checkbox{cursor:pointer;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.checkbox input{cursor:pointer;width:auto;margin:0}.row{align-items:center;gap:.75rem;display:flex}.wrap{flex-wrap:wrap}.toolbar{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;display:flex}.toolbar input{flex:1;min-width:200px}.toolbar select{width:auto;min-width:180px}.category-chips{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.chip{border:2px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm);align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;display:inline-flex}.chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.chip.active{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;border-color:#0000;box-shadow:0 4px 12px #e639464d}.chip.active:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e6394666}.chip svg{flex-shrink:0;width:18px;height:18px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.product{transition:var(--transition);flex-direction:column;display:flex}.product:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.product-image-container{border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:-1.5rem -1.5rem 0;position:relative;overflow:hidden}.product-image{object-fit:cover;width:100%;height:200px;transition:var(--transition)}.product:hover .product-image{transform:scale(1.05)}.product-badge{background:var(--accent);color:#fff;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;left:1rem}.product-image-container.clickable{cursor:pointer}.product-image-container.clickable:hover .product-image{transform:scale(1.05)}.product-zoom-hint{color:#fff;border-radius:var(--radius-md);opacity:0;transition:var(--transition);pointer-events:none;background:#000000bf;padding:.5rem 1rem;font-size:.8rem;font-weight:500;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)translateY(10px)}.product-image-container.clickable:hover .product-zoom-hint{opacity:1;transform:translate(-50%)translateY(0)}.product-title.clickable{cursor:pointer;transition:color var(--transition)}.product-title.clickable:hover{color:var(--accent)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--bg-elevated);border-radius:var(--radius-xl);width:100%;max-width:900px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.3s modalSlide;display:flex;position:relative}@keyframes modalSlide{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-close{background:var(--bg-elevated);border:2px solid var(--border);cursor:pointer;z-index:10;width:44px;height:44px;transition:var(--transition);color:var(--text-primary);box-shadow:var(--shadow-md);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:1rem;right:1rem}.modal-close:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:rotate(90deg)}.product-modal{flex:1;grid-template-columns:1fr 1fr;min-height:0;display:grid;overflow:hidden}.product-modal-image{background:var(--bg-soft);min-height:300px;max-height:90vh;position:relative;overflow:hidden}.product-modal-image img{object-fit:cover;width:100%;height:100%}.product-modal-info{flex-direction:column;gap:1.25rem;padding:2rem;display:flex;overflow-y:auto}.product-modal-title{color:var(--text-primary);margin:0;font-size:1.75rem;font-weight:700;line-height:1.2}.product-modal-description{color:var(--text-secondary);flex:1;margin:0;font-size:1rem;line-height:1.7}.product-modal-price{color:var(--accent);font-size:2rem;font-weight:700}.product-modal-price small{color:var(--text-muted);font-size:1rem}.product-modal-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:auto;display:flex}.quantity-selector{background:var(--bg-soft);border-radius:var(--radius-lg);align-items:center;gap:.5rem;padding:.25rem;display:flex}.quantity-value{text-align:center;min-width:40px;color:var(--text-primary);font-size:1.1rem;font-weight:700}.product-modal-actions .btn.primary{flex:1}@media (width<=768px){.product-modal{grid-template-columns:1fr}.product-modal-image{aspect-ratio:16/10}.product-modal-info{padding:1.5rem}.modal-close{top:.5rem;right:.5rem}}.product-content{flex-direction:column;flex:1;padding-top:1rem;display:flex}.product-title{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.product-description{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin-bottom:1rem;font-size:.9rem;display:-webkit-box;overflow:hidden}.product-footer{justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;display:flex}.product-price{color:var(--accent);font-size:1.25rem;font-weight:700}.product-price small{color:var(--text-muted);font-size:.85rem;font-weight:500}.unavailable{opacity:.6}.unavailable .product-badge{background:var(--text-muted)}.cart-list{list-style:none}.cart-item{border-bottom:1px solid var(--border);grid-template-columns:80px 1fr auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}.cart-item:last-child{border-bottom:none}.cart-item-image{object-fit:cover;border-radius:var(--radius-md);background:var(--bg-soft);width:80px;height:80px}.cart-item-info h4{margin-bottom:.25rem;font-weight:600}.cart-item-price{color:var(--text-muted);font-size:.9rem}.cart-item-actions{align-items:center;gap:.5rem;display:flex}.quantity-control{background:var(--bg-soft);border-radius:var(--radius-md);align-items:center;gap:0;display:flex;overflow:hidden}.quantity-control button{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:var(--transition);background:0 0;border:none;font-size:1.1rem;font-weight:600}.quantity-control button:hover{background:var(--border);color:var(--text-primary)}.quantity-control span{text-align:center;width:40px;font-weight:600}@media (width<=600px){.cart-item{grid-template-columns:60px 1fr;gap:.75rem}.cart-item-actions{grid-column:1/-1;justify-content:space-between}}.stack-list{list-style:none}.stack-list li{border-bottom:1px solid var(--border);grid-template-columns:1.5fr 1fr auto;align-items:center;gap:1rem;padding:1rem;display:grid}.stack-list li:last-child{border-bottom:none}@media (width<=700px){.stack-list li{grid-template-columns:1fr;gap:.5rem}}.order-card{border:1px solid var(--border);border-radius:var(--radius-lg);transition:var(--transition);overflow:hidden}.order-card:hover{box-shadow:var(--shadow-md)}.order-header{background:var(--bg-soft);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.order-id{font-family:monospace;font-size:.95rem;font-weight:600}.order-date{color:var(--text-muted);font-size:.85rem}.order-body{padding:1rem 1.25rem}.order-items{margin-bottom:1rem;list-style:none}.order-items li{border-bottom:1px dashed var(--border);justify-content:space-between;padding:.5rem 0;display:flex}.order-items li:last-child{border-bottom:none}.order-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.order-total{font-size:1.2rem;font-weight:700}.status{text-transform:capitalize;background:var(--bg-soft);color:var(--text-secondary);border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.status svg{width:14px;height:14px}.status-pending{background:var(--warning-bg);color:#b45309}.status-approved,.status-cooking{color:#1d4ed8;background:#dbeafe}.status-completed{background:var(--success-bg);color:#047857}.status-cancelled{background:var(--error-bg);color:#b91c1c}[data-theme=dark] .status-pending{color:#fbbf24}[data-theme=dark] .status-approved,[data-theme=dark] .status-cooking{color:#60a5fa;background:#1e3a5f}[data-theme=dark] .status-completed{color:#34d399}[data-theme=dark] .status-cancelled{color:#f87171}.empty-state{text-align:center;max-width:400px;padding:3rem 2rem}.empty-state-icon{background:var(--bg-soft);width:80px;height:80px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.empty-state-icon svg{width:40px;height:40px}.empty-state h2{margin-bottom:.5rem}.empty-state p{color:var(--text-muted);margin-bottom:1.5rem}.pickup-info{background:var(--success-bg);border:1px solid var(--success);border-radius:var(--radius-lg);align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.pickup-info-icon{background:var(--success);color:#fff;border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.pickup-info-icon svg{width:24px;height:24px}.pickup-info h4{color:#047857;margin-bottom:.25rem}.pickup-info p{color:#065f46;font-size:.9rem}[data-theme=dark] .pickup-info h4{color:#4ade80}[data-theme=dark] .pickup-info p{color:#86efac}.summary-card{background:var(--bg-soft);border-radius:var(--radius-lg);padding:1.25rem}.summary-row{border-bottom:1px dashed var(--border);justify-content:space-between;padding:.5rem 0;display:flex}.summary-row:last-child{border-bottom:none}.summary-row.total{border-top:2px solid var(--border);border-bottom:none;margin-top:.5rem;padding-top:1rem;font-size:1.2rem;font-weight:700}.profile-header{align-items:center;gap:1.5rem;margin-bottom:2rem;display:flex}.profile-avatar{background:var(--accent-light);width:80px;height:80px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:flex}.profile-info h2{margin-bottom:.25rem}.profile-info p{color:var(--text-muted)}.profile-stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;display:grid}.stat-card{text-align:center;background:var(--bg-soft);border-radius:var(--radius-md);padding:1.25rem}.stat-value{color:var(--accent);font-size:1.75rem;font-weight:700}.stat-label{color:var(--text-muted);margin-top:.25rem;font-size:.85rem}.admin-tabs{border-bottom:2px solid var(--border);flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.admin-tab{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md) var(--radius-md) 0 0;transition:var(--transition);background:0 0;border:none;padding:.65rem 1.25rem;font-weight:500}.admin-tab:hover{background:var(--bg-soft);color:var(--text-primary)}.admin-tab.active{background:var(--accent);color:#fff}.admin-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.skeleton-lines{gap:.75rem;display:grid}.skeleton-image,.skeleton-line{background:linear-gradient(90deg, var(--skeleton-base) 25%, var(--skeleton-shine) 50%, var(--skeleton-base) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}.skeleton-image{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;height:200px}.skeleton-line{height:16px}.skeleton-line.short{width:60%}.skeleton-line.xs{width:40%}.skeleton-circle{background:linear-gradient(90deg, var(--skeleton-base) 25%, var(--skeleton-shine) 50%, var(--skeleton-base) 75%);background-size:200% 100%;border-radius:50%;width:48px;height:48px;animation:1.4s ease-in-out infinite shimmer}.skeleton-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.muted{color:var(--text-muted)}.divider{background:var(--border);height:1px;margin:1.5rem 0}@media (width<=900px){.header{flex-wrap:nowrap;align-items:center;gap:.75rem;padding:.65rem 0;position:relative}.header-nav-desktop,.header-actions-desktop{display:none}.header-actions-mobile{display:flex}.brand{flex:1;min-width:0;margin-right:auto;font-size:1.35rem}.brand-icon{width:36px;height:36px}.brand-icon svg{width:20px;height:20px}.mobile-nav-scrim{z-index:1100;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#00000073;border:none;margin:0;padding:0;display:block;position:fixed;inset:0}.mobile-nav-drawer{z-index:1110;background:var(--bg-elevated);border-left:1px solid var(--border);width:min(320px,90vw);max-width:100%;padding:calc(.75rem + env(safe-area-inset-top,0px)) calc(1rem + env(safe-area-inset-right,0px)) calc(1.25rem + env(safe-area-inset-bottom,0px)) calc(1rem + env(safe-area-inset-left,0px));flex-direction:column;transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-12px 0 40px #0000002e}.mobile-nav-drawer.is-open{transform:translate(0)}.mobile-nav-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.mobile-nav-drawer-title{color:var(--text-primary);font-size:1.1rem;font-weight:700}.mobile-nav-drawer-links{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:.25rem;display:flex;overflow-y:auto}.mobile-nav-drawer-links a{border-radius:var(--radius-md);color:var(--text-primary);transition:var(--transition);padding:.85rem 1rem;font-weight:600;display:block}.mobile-nav-drawer-links a:hover,.mobile-nav-drawer-links a.active{background:var(--accent-light);color:var(--accent)}.mobile-nav-drawer-footer{border-top:1px solid var(--border);flex-direction:column;gap:1rem;margin-top:auto;padding-top:1rem;display:flex}.mobile-nav-user{align-items:center;gap:.75rem;display:flex}.mobile-nav-user-name{color:var(--text-primary);font-weight:600}.mobile-nav-cta{justify-content:center;width:100%}.topline{text-align:center;justify-content:center;gap:.5rem 1rem;padding:.6rem 0}}@media (width<=480px){.topline-address,.topline-hours{display:none}.topline{font-size:.8rem}}.home-toolbar{align-items:stretch}@media (width<=640px){.home-toolbar{flex-direction:column;align-items:stretch}.home-toolbar-sort,.home-toolbar-search{width:100%;min-width:0}.home-toolbar .home-sort-select,.home-toolbar select.home-sort-select{width:100%;min-width:0!important}.category-chips{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:.5rem;margin-bottom:1.25rem;padding-bottom:.35rem;overflow:auto hidden}.category-chips .chip{flex-shrink:0}.admin-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:.35rem;padding-bottom:.35rem;overflow:auto hidden}.admin-tab{flex-shrink:0}.admin-toolbar-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:.35rem;overflow:auto hidden}.admin-toolbar-scroll>.btn{flex-shrink:0}.product-footer{flex-direction:column;align-items:stretch;gap:.75rem}.product-footer .btn{justify-content:center;width:100%}.product-modal-actions{flex-direction:column;align-items:stretch}.product-modal-actions .quantity-selector{justify-content:center;width:100%}.product-modal-actions .btn.primary{white-space:normal;text-align:center;width:100%}}@media (hover:none){.product:hover,.chip:hover{transform:none}}@media (width<=768px){:root{font-size:14px}.shell{padding-left:max(1rem, env(safe-area-inset-left,0px));padding-right:max(1rem, env(safe-area-inset-right,0px))}.hero-banner{padding:1.75rem}.hero-banner h2{font-size:1.5rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1rem}.profile-stats{grid-template-columns:1fr}.card{padding:1.15rem}.footer-container{padding-left:max(1rem, env(safe-area-inset-left,0px));padding-right:max(1rem, env(safe-area-inset-right,0px))}}.animate-in{animation:.3s ease-out fadeIn}
