@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap";:root{--primary: var(--jay-copper, #D4956A);--primary-dark: var(--jay-copper-hover, #C4864E);--primary-light: var(--jay-copper-light, #D4A574);--primary-glow: var(--jay-copper-soft, rgba(212, 149, 106, .1));--bg-dark: var(--jay-bg, #1C1613);--bg-card: var(--jay-card, #2A2220);--bg-surface: var(--jay-surface, #241E19);--text-primary: var(--jay-text-primary, #F0EAE3);--text-secondary: var(--jay-text-muted, #BDB3A7);--text-muted: var(--jay-text-subtle, rgba(240, 234, 227, .35));--border: var(--jay-border, #3D332E);--accent-gold: var(--jay-warning, #FBBF24);--accent-green: var(--jay-success, #34D399);--accent-red: var(--jay-error, #F87171);--accent-orange: #FB923C;--accent-pink: #F472B6;--accent-cyan: #22D3EE;--gradient-primary: linear-gradient(135deg, var(--jay-copper, #D4956A), var(--jay-copper-hover, #C4864E));--gradient-warm: linear-gradient(135deg, #F472B6, var(--jay-copper, #D4956A));--gradient-qr: linear-gradient(135deg, #F87171, #FB923C)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;background:var(--bg-dark);color:var(--text-primary);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}#root{min-height:100vh;display:flex;flex-direction:column}.safe-top{padding-top:env(safe-area-inset-top,0px)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.safe-all{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}input,textarea,select{font-family:inherit;font-size:16px}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px var(--jay-copper-soft, rgba(168, 85, 247, .3))}50%{box-shadow:0 0 30px var(--jay-copper-soft, rgba(168, 85, 247, .5))}}@keyframes store-pulse{0%,to{box-shadow:0 0 20px var(--jay-copper-soft),0 0 40px var(--jay-copper-soft);border-color:var(--primary)}50%{box-shadow:0 0 30px var(--jay-copper-soft),0 0 60px var(--jay-copper-soft);border-color:var(--primary-light)}}.store-card-pulse{animation:store-pulse 2s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}:root{--jay-copper: var(--tenant-accent, #D4956A);--jay-copper-hover: var(--tenant-accent-hover, #C4864E);--jay-copper-soft: var(--tenant-accent-soft, rgba(212, 149, 106, .1));--jay-copper-border: var(--tenant-accent-border, rgba(212, 149, 106, .25));--jay-copper-light: var(--tenant-accent-light, #D4A574);--jay-font: var(--tenant-font, "DM Sans"), -apple-system, BlinkMacSystemFont, sans-serif;--jay-radius-pill: 100px;--jay-radius-card: 16px;--jay-radius-input: 14px;--jay-radius-icon: 12px;--jay-radius-streak: 10px;--jay-page-px: 24px;--jay-page-px-onboarding: 32px;--jay-card-gap: 10px;--jay-section-gap: 16px;--jay-icon-container: 40px;--jay-touch-min: 44px;--jay-nav-height: 68px;--jay-stamp-size: 27px;--jay-ease: cubic-bezier(.4, 0, .2, 1);--jay-duration: .3s;--jay-text-on-accent: #FFFFFF}[data-theme=dark]{--jay-copper: var(--tenant-dark-accent, var(--tenant-accent, #D4956A));--jay-copper-hover: var(--tenant-dark-accent-hover, var(--tenant-accent-hover, #C4864E));--jay-copper-soft: var(--tenant-dark-accent-soft, var(--tenant-accent-soft, rgba(212, 149, 106, .1)));--jay-copper-border: var(--tenant-dark-accent-border, var(--tenant-accent-border, rgba(212, 149, 106, .25)));--jay-bg: var(--tenant-dark-bg, #1C1613);--jay-surface: var(--tenant-dark-surface, #241E19);--jay-card: var(--tenant-dark-card, #2A2220);--jay-border: var(--tenant-dark-border, #3D332E);--jay-text-primary: var(--tenant-dark-text, #F0EAE3);--jay-text-muted: var(--tenant-dark-text-muted, #BDB3A7);--jay-text-subtle: var(--tenant-dark-text-subtle, rgba(240, 234, 227, .35));--jay-text-faint: var(--tenant-dark-text-faint, rgba(240, 234, 227, .15));--jay-input-bg: rgba(255, 255, 255, .06);--jay-input-border: rgba(255, 255, 255, .1);--jay-success: #22C55E;--jay-success-soft: rgba(34, 197, 94, .12);--jay-error: #EF4444;--jay-error-soft: rgba(239, 68, 68, .12);--jay-warning: #FBBF24;--jay-warning-soft: rgba(251, 191, 36, .12);--jay-info: #3B82F6;--jay-info-soft: rgba(59, 130, 246, .12);--jay-overlay: rgba(0, 0, 0, .6);--jay-overlay-heavy: rgba(0, 0, 0, .8);--jay-scrim: rgba(255, 255, 255, .06);--jay-shadow-card: 0 2px 8px rgba(0, 0, 0, .3);--jay-shadow-modal: 0 8px 32px rgba(0, 0, 0, .5);--jay-shadow-button: 0 4px 12px rgba(0, 0, 0, .3);--jay-fade-solid: var(--tenant-dark-bg, #1C1613);--jay-fade-97: color-mix(in srgb, var(--jay-fade-solid) 97%, transparent);--jay-fade-70: color-mix(in srgb, var(--jay-fade-solid) 70%, transparent);--jay-fade-0: transparent}[data-theme=light]{--jay-bg: var(--tenant-light-bg, #F5F0EB);--jay-surface: var(--tenant-light-surface, #FDFBF9);--jay-card: var(--tenant-light-card, #FFFFFF);--jay-border: var(--tenant-light-border, #E8E0D8);--jay-text-primary: var(--tenant-light-text, #2C2420);--jay-text-muted: var(--tenant-light-text-muted, #8A7E74);--jay-text-subtle: var(--tenant-light-text-subtle, #C4BAB0);--jay-text-faint: var(--tenant-light-text-faint, rgba(44, 36, 32, .15));--jay-input-bg: rgba(44, 36, 32, .04);--jay-input-border: rgba(44, 36, 32, .1);--jay-success: #16A34A;--jay-success-soft: rgba(22, 163, 74, .1);--jay-error: #DC2626;--jay-error-soft: rgba(220, 38, 38, .1);--jay-warning: #F59E0B;--jay-warning-soft: rgba(245, 158, 11, .1);--jay-info: #2563EB;--jay-info-soft: rgba(37, 99, 235, .1);--jay-overlay: rgba(0, 0, 0, .4);--jay-overlay-heavy: rgba(0, 0, 0, .6);--jay-scrim: rgba(0, 0, 0, .04);--jay-shadow-card: 0 2px 8px rgba(0, 0, 0, .08);--jay-shadow-modal: 0 8px 32px rgba(0, 0, 0, .15);--jay-shadow-button: 0 4px 12px rgba(0, 0, 0, .1);--jay-fade-solid: var(--tenant-light-bg, #F5F0EB);--jay-fade-97: color-mix(in srgb, var(--jay-fade-solid) 97%, transparent);--jay-fade-70: color-mix(in srgb, var(--jay-fade-solid) 70%, transparent);--jay-fade-0: transparent}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-family:var(--jay-font);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--jay-bg);color:var(--jay-text-primary);line-height:1.65;min-height:100dvh;overflow-x:hidden;overscroll-behavior:none}a{color:var(--jay-copper);text-decoration:none}button{font-family:var(--jay-font);border:none;background:none;cursor:pointer;color:inherit;font-size:inherit;-webkit-appearance:none}input,textarea,select{font-family:var(--jay-font);-webkit-appearance:none;appearance:none;outline:none}img{max-width:100%;display:block}.jay-hide-scrollbar::-webkit-scrollbar{display:none}.jay-hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.jay-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--jay-copper)}.jay-heading{font-size:28px;font-weight:800;letter-spacing:-.5px;line-height:1.15;color:var(--jay-text-primary)}.jay-body{font-size:14px;font-weight:400;line-height:1.65;color:var(--jay-text-muted)}.jay-proof{font-size:12px;font-weight:500;color:var(--jay-text-subtle)}.jay-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.jay-press:active{transform:scale(.98);transition:transform .1s var(--jay-ease)}.jay-fade-overlay{position:absolute;bottom:0;left:0;right:0;height:calc(var(--fade-height, 70) * 1%);background:linear-gradient(calc(var(--fade-direction, 0) * 1deg),var(--jay-fade-solid) 0%,var(--jay-fade-solid) 18%,var(--jay-fade-97) 32%,var(--jay-fade-70) 55%,var(--jay-fade-0) 100%);pointer-events:none}.jay-app-shell{display:flex;flex-direction:column;min-height:100vh;padding-top:48px}.jay-page-content{flex:1;padding-bottom:110px;overflow:auto}.jay-nav{position:fixed;bottom:0;left:0;right:0;background:var(--jay-card);border-top:1px solid var(--jay-border);z-index:100;padding-bottom:28px}.jay-nav-inner{display:flex;align-items:flex-end;justify-content:center;height:68px;position:relative}.jay-nav-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;flex:1;transition:all .2s;color:var(--jay-text-muted)}.jay-nav-tab.active{color:var(--jay-copper)}.jay-nav-tab-label{font-size:11px;font-weight:500;letter-spacing:.3px}.jay-nav-tab.active .jay-nav-tab-label{font-weight:700}.jay-nav-center{flex:1;display:flex;justify-content:center;position:relative}.jay-nav-qr-btn{position:absolute;bottom:8px;width:56px;height:56px;border-radius:16px;background:var(--jay-copper);display:flex;align-items:center;justify-content:center;box-shadow:var(--jay-shadow-button);transition:all .3s;color:var(--jay-text-on-accent)}.jay-nav-qr-btn.active{background:linear-gradient(135deg,var(--jay-copper-hover),var(--jay-copper))}.jay-offline-banner{position:fixed;top:0;left:0;right:0;z-index:200;padding:8px 16px;background:var(--jay-error);color:var(--jay-text-on-accent);text-align:center;font-size:12px;font-weight:600}.jay-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.jay-page-title{font-size:20px;font-weight:800;color:var(--jay-text-primary)}.jay-page-subtitle{font-size:12px;color:var(--jay-text-muted)}.jay-back-btn{width:40px;height:40px;border-radius:var(--jay-radius-icon);background:var(--jay-surface);border:1px solid var(--jay-border);display:flex;align-items:center;justify-content:center;color:var(--jay-text-primary)}.jay-icon-btn{width:40px;height:40px;border-radius:50%;background:var(--jay-surface);border:1px solid var(--jay-border);display:flex;align-items:center;justify-content:center;color:var(--jay-text-primary)}.jay-quick-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:28px}.jay-quick-btn{background:var(--jay-card);border-radius:var(--jay-radius-card);padding:14px 8px;border:1px solid var(--jay-border);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.jay-quick-icon{width:44px;height:44px;border-radius:var(--jay-radius-icon);display:flex;align-items:center;justify-content:center}.jay-quick-label{font-weight:600;font-size:13px;color:var(--jay-text-primary)}.jay-section{margin-bottom:24px}.jay-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.jay-section-title{font-size:20px;font-weight:700;color:var(--jay-text-primary)}.jay-section-link{color:var(--jay-copper-light);font-size:14px;font-weight:600}.jay-section-link-sm{color:var(--jay-copper-light);font-size:13px;font-weight:600}.jay-hscroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.jay-hscroll::-webkit-scrollbar{display:none}.jay-product-sm{width:115px;min-width:115px;background:var(--jay-card);border-radius:12px;border:1px solid var(--jay-border);text-align:left;display:flex;flex-direction:column;scroll-snap-align:start;flex-shrink:0}.jay-product-sm-img{width:100%;height:90px;border-radius:12px 12px 0 0;background:var(--jay-surface);display:flex;align-items:center;justify-content:center;overflow:hidden}.jay-product-sm-img img{width:100%;height:100%;object-fit:cover}.jay-product-sm-body{padding:8px 10px;flex:1;display:flex;flex-direction:column;justify-content:space-between}.jay-product-sm-name{font-weight:600;font-size:12px;margin-bottom:4px;line-height:1.3;color:var(--jay-text-primary)}.jay-product-sm-footer{display:flex;justify-content:space-between;align-items:center}.jay-product-sm-price{color:var(--jay-text-muted);font-size:12px;font-weight:600}.jay-product-sm-add{width:24px;height:24px;border-radius:6px;background:var(--jay-copper);display:flex;align-items:center;justify-content:center;color:var(--jay-text-on-accent)}.jay-offer-card{width:100%;background:var(--jay-card);border-radius:var(--jay-radius-card);border:1px solid var(--jay-copper-border);padding:16px;display:flex;align-items:center;gap:14px;text-align:left}.jay-offer-icon{width:60px;height:60px;border-radius:14px;flex-shrink:0;background:linear-gradient(135deg,var(--jay-copper),var(--jay-copper-hover));display:flex;align-items:center;justify-content:center;font-size:28px}.jay-offer-content{flex:1;min-width:0}.jay-offer-badge-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.jay-badge-new{background:var(--jay-copper);color:var(--jay-text-on-accent);font-size:10px;font-weight:700;padding:2px 8px;border-radius:6px}.jay-offer-expiry{color:var(--jay-text-muted);font-size:12px}.jay-offer-title{font-weight:700;font-size:16px;margin-bottom:3px;color:var(--jay-text-primary)}.jay-offer-desc{color:var(--jay-text-muted);font-size:13px}.jay-sparks-card{background:var(--jay-copper);border-radius:20px;padding:20px;margin-bottom:16px;position:relative;overflow:hidden;color:var(--jay-text-on-accent)}.jay-sparks-header{display:flex;justify-content:space-between;align-items:flex-start}.jay-sparks-label{font-size:13px;opacity:.85;margin-bottom:4px}.jay-sparks-balance{font-size:42px;font-weight:800;line-height:1}.jay-sparks-tier{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:6px 14px;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.jay-sparks-progress{margin-top:16px}.jay-sparks-track{width:100%;height:6px;border-radius:3px;background:#fff3}.jay-sparks-fill{height:100%;border-radius:3px;background:#fffc}.jay-sparks-hint{font-size:12px;opacity:.75;margin-top:6px}.jay-sparks-divider{height:1px;background:#ffffff26;margin:16px 0}.jay-stamps-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.jay-stamps-label{font-size:13px;font-weight:600}.jay-stamps-count{opacity:.7}.jay-stamps-reward{font-size:12px;opacity:.8}.jay-stamps-grid{display:flex;gap:6px;justify-content:space-between}.jay-stamp{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s}.jay-stamp.filled{background:#ffffffd9}.jay-stamp.empty{background:#ffffff1f}.jay-promo-wrap{margin-bottom:24px;margin-left:-16px;margin-right:-16px;overflow:hidden}.jay-promo-slide{min-width:100%;padding:0 16px;box-sizing:border-box;flex-shrink:0}.jay-promo-card{border-radius:18px;padding:20px;min-height:140px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;color:var(--jay-text-on-accent)}.jay-promo-emoji{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:52px;opacity:.9}.jay-promo-badge{background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.jay-promo-timer{background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.jay-promo-title{font-size:22px;font-weight:800;margin-bottom:4px;max-width:65%}.jay-promo-desc{font-size:13px;opacity:.85;max-width:65%}.jay-promo-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.jay-promo-dot{height:6px;border-radius:3px;transition:all .3s;padding:0;border:none;cursor:pointer}.jay-promo-dot.active{width:20px;background:var(--jay-copper)}.jay-promo-dot.inactive{width:6px;background:var(--jay-text-subtle)}.jay-reorder-card{min-width:100px;background:var(--jay-card);border-radius:14px;border:1px solid var(--jay-border);padding:10px;display:flex;flex-direction:column;align-items:center;gap:8px;scroll-snap-align:start;flex-shrink:0}.jay-reorder-img{width:56px;height:56px;border-radius:12px;background:var(--jay-surface);display:flex;align-items:center;justify-content:center;overflow:hidden}.jay-reorder-img img{width:100%;height:100%;object-fit:cover}.jay-reorder-name{font-size:12px;font-weight:600;text-align:center;line-height:1.3;max-width:80px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--jay-text-primary)}.jay-reorder-count{font-size:11px;color:var(--jay-text-subtle);display:flex;align-items:center;gap:2px}.jay-empty{padding:20px 16px;text-align:center;color:var(--jay-text-subtle);width:100%;font-size:13px}
