:root{--primary:#f59e0b;--primary-dark:#d97706;--primary-light:#fef3c7;--primary-rgb:245, 158, 11;--bg:#fff;--bg-secondary:#f6f7f9;--bg-elevated:#fff;--text:#101828;--text-secondary:#667085;--text-tertiary:#98a2b3;--border:#eaecf0;--error:#ef4444;--error-bg:#fef2f2;--success:#10b981;--success-bg:#ecfdf5;--card-bg:#fff;--card-shadow:0 1px 2px #1018280d, 0 1px 3px #1018280d;--card-shadow-lg:0 12px 24px -6px #1018281f, 0 4px 8px -2px #1018280f;--header-bg:#ffffffeb;--radius-sm:10px;--radius:14px;--radius-lg:20px;--radius-full:9999px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--transition:.2s cubic-bezier(.4, 0, .2, 1);--spring:.35s cubic-bezier(.34, 1.56, .64, 1);--safe-bottom:env(safe-area-inset-bottom,0px)}[data-theme=dark]{--bg:#0d1117;--bg-secondary:#161c26;--bg-elevated:#1b2330;--text:#f2f4f7;--text-secondary:#98a2b3;--text-tertiary:#667085;--border:#2a3342;--card-bg:#161c26;--card-shadow:0 1px 2px #0006;--card-shadow-lg:0 12px 28px -8px #0000008c;--header-bg:#0d1117eb;--primary-light:#78350f;--error-bg:#451a1a;--success-bg:#064e3b}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv05" 1, "ss01" 1;line-height:1.5;transition:background-color .25s,color .25s;overflow-x:hidden}#root{background:var(--bg);max-width:480px;min-height:100dvh;margin:0 auto;position:relative}@media (width>=481px){body{background:var(--bg-secondary)}#root{box-shadow:var(--card-shadow-lg);border-left:1px solid var(--border);border-right:1px solid var(--border)}}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;touch-action:manipulation;background:0 0;border:none}input,textarea,select{color:var(--text);background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius);width:100%;transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);outline:none;padding:14px 16px;font-family:inherit;font-size:16px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(var(--primary-rgb), .14)}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}input:disabled,textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-secondary)}textarea{resize:vertical;min-height:80px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.page-enter{animation:.32s cubic-bezier(.21,1.02,.73,1) forwards pageIn}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stagger-item{opacity:0;animation:.38s cubic-bezier(.21,1.02,.73,1) forwards staggerIn;animation-delay:calc(min(var(--stagger-i,0), 12) * 35ms)}@keyframes staggerIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:var(--stagger-opacity,1);transform:translateY(0)scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpBar{0%{opacity:0;transform:translate(-50%,32px)}to{opacity:1;transform:translate(-50%)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes flyToCart{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,calc(50vh - 60px))scale(.2)}}.skeleton{background:var(--bg-secondary);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, rgba(var(--primary-rgb), .07), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.tab-sync-wrap{position:relative}.tab-sync-content{transition:filter .45s,opacity .45s,transform .45s}.tab-sync-content.is-syncing{filter:blur(4px)saturate(.92);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;transform:scale(.992)}.tab-sync-overlay{z-index:2;border-radius:var(--radius-lg);background:linear-gradient(180deg, rgba(var(--primary-rgb), .07), rgba(var(--primary-rgb), .02));justify-content:center;align-items:center;animation:.28s fadeIn;display:flex;position:absolute;inset:0;overflow:hidden}.tab-sync-overlay:after{content:"";background:linear-gradient(90deg, transparent, rgba(var(--primary-rgb), .16), transparent);animation:1.5s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.tab-sync-badge{z-index:1;border-radius:var(--radius-full);background:var(--card-bg);border:1px solid var(--border);color:var(--text);align-items:center;gap:10px;padding:10px 16px;font-size:13px;font-weight:700;animation:1.8s ease-in-out infinite syncBadgePulse;display:flex;position:relative;box-shadow:0 6px 20px #0000001f}@keyframes syncBadgePulse{0%,to{transform:translateY(0);box-shadow:0 6px 20px #0000001f}50%{box-shadow:0 10px 26px rgba(var(--primary-rgb), .28);transform:translateY(-2px)}}.tab-sync-spinner{border:2.5px solid rgba(var(--primary-rgb), .25);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.8s linear infinite spin}.pressable{transition:transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s,opacity .15s}.pressable:active{transform:scale(.97)}.cart-bar{animation:.36s cubic-bezier(.34,1.56,.64,1) forwards slideUpBar}.qty-pop{animation:.26s cubic-bezier(.34,1.56,.64,1) pop}.fly-fab{pointer-events:none;z-index:200;background:var(--primary);color:#fff;width:64px;height:64px;box-shadow:0 10px 30px rgba(var(--primary-rgb), .5);border-radius:9999px;justify-content:center;align-items:center;font-size:22px;font-weight:800;animation:.6s cubic-bezier(.65,0,.35,1) forwards flyToCart;display:flex;position:fixed}.cat-pills{z-index:40;background:var(--header-bg);-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);border-bottom:1px solid var(--border);position:sticky}.cat-pills-track{scrollbar-width:none;-ms-overflow-style:none;gap:8px;padding:10px 20px 12px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000);mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000)}.cat-pills-track::-webkit-scrollbar{display:none}.cat-pill{border-radius:var(--radius-full);white-space:nowrap;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);transition:background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition), transform var(--spring);flex-shrink:0;padding:8px 15px;font-size:13px;font-weight:600}.cat-pill:active{transform:scale(.94)}.cat-pill.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 14px rgba(var(--primary-rgb), .38);transform:scale(1.04)}.app-header{z-index:50;background:var(--header-bg);-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:56px;padding:10px 16px;display:flex;position:sticky;top:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}
