@import"https://fonts.googleapis.com/css2?family=Work+Sans:wght@300;400;500;600;700;800;900&display=swap";:root{--bg-base: #1a1114;--bg-card: #261a1e;--bg-card-hover: #2e2024;--bg-surface: #1f1518;--bg-overlay: rgba(15, 8, 10, .85);--bg-hero-gradient: linear-gradient(135deg, #1a1114 0%, #2a1a1e 50%, #1a1114 100%);--text-primary: #f5ede8;--text-secondary: #9a8a8e;--text-muted: #6b5c60;--accent-color: #a13941;--accent-light: #c4545d;--accent-dark: #742f37;--accent-glow: rgba(161, 57, 65, .25);--accent-subtle: rgba(161, 57, 65, .12);--star-active: #d4a853;--star-inactive: #3d2e32;--border-color: #352a2d;--border-light: rgba(245, 237, 232, .06);--font-family: "Work Sans", sans-serif;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px var(--accent-glow);--transition-fast: .15s ease;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{--bg-base: #faf6f3;--bg-card: #ffffff;--bg-card-hover: #fef9f6;--bg-surface: #f3eeea;--bg-overlay: rgba(0, 0, 0, .4);--bg-hero-gradient: linear-gradient(135deg, #faf6f3 0%, #f0e8e2 50%, #faf6f3 100%);--text-primary: #1a1114;--text-secondary: #6b5c60;--text-muted: #9a8a8e;--accent-color: #8c2e36;--accent-light: #a13941;--accent-dark: #6e242c;--accent-glow: rgba(140, 46, 54, .15);--accent-subtle: rgba(140, 46, 54, .08);--star-active: #c49a3a;--star-inactive: #ddd4cc;--border-color: #e8e0da;--border-light: rgba(26, 17, 20, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .15);--shadow-glow: 0 0 20px var(--accent-glow)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);background-color:#0e090b;color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-smooth),color var(--transition-smooth)}[data-theme=light] body,body:has([data-theme=light]){background-color:#e8e0da}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img{display:block;max-width:100%}.container{width:100%;max-width:600px;margin:0 auto;position:relative;background-color:var(--bg-base);min-height:100vh;box-shadow:var(--shadow-lg);overflow-x:hidden}.text-accent{color:var(--accent-color)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.category-pill{padding:6px 14px;border-radius:var(--radius-md);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:1px;transition:all var(--transition-smooth);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-secondary);white-space:nowrap;cursor:pointer}.category-pill:hover{border-color:var(--accent-color);color:var(--accent-light)}.category-pill.active{background-color:var(--accent-color);border-color:var(--accent-color);color:#fff;box-shadow:var(--shadow-glow)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-bottom:120px}@media(max-width:480px){.product-grid{gap:10px}}.product-card{background-color:var(--bg-card);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:all var(--transition-smooth);display:flex;flex-direction:column;border:1px solid var(--border-light);height:100%;animation:slideUp .4s ease both}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);background-color:var(--bg-card-hover)}.product-card .card-image{width:100%;padding-top:85%;position:relative;overflow:hidden}.product-card .card-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--transition-smooth)}.product-card:hover .card-image img{transform:scale(1.05)}.product-card .card-body{padding:14px;display:flex;flex-direction:column;flex:1}.product-card .card-title{font-size:.95rem;font-weight:700;margin-bottom:4px;line-height:1.3}.product-card .card-price{font-size:.85rem;font-weight:700;color:var(--accent-light);margin-bottom:6px}.product-card .card-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.4;flex:1;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card .card-action{padding:8px 0;border-radius:var(--radius-sm);font-weight:600;font-size:.8rem;text-align:center;background-color:var(--accent-subtle);color:var(--accent-light);border:1px solid var(--accent-dark);transition:all var(--transition-fast);cursor:pointer}.product-card .card-action:hover{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}.rating-badge{display:inline-flex;align-items:center;gap:3px;background-color:var(--bg-surface);padding:2px 6px;border-radius:var(--radius-xs);font-size:.75rem;font-weight:600}.modal-overlay{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:600px;height:100dvh;background-color:var(--bg-overlay);z-index:1000;display:flex;align-items:flex-end;justify-content:center}.modal-content{background-color:var(--bg-base);width:100%;max-height:92dvh;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);overflow-y:auto;position:relative;display:flex;flex-direction:column;animation:slideInFromBottom .35s ease-out}.modal-content.closing{animation:none;transform:translateY(100%);opacity:0;transition:all var(--transition-smooth)}.info-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;background-color:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-color)}.info-chip .dot{width:6px;height:6px;border-radius:50%;background-color:var(--accent-color)}.google-review-btn{display:flex;align-items:center;justify-content:center;gap:12px;background-color:#fff;color:#1a1a1a;padding:14px 24px;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;border:none;cursor:pointer;transition:all var(--transition-fast);width:100%;text-decoration:none}.google-review-btn:hover{transform:scale(1.02);box-shadow:var(--shadow-md)}.welcome-screen{display:flex;flex-direction:column;min-height:100vh;position:relative;overflow:hidden}.welcome-hero{position:relative;width:100%;height:min(70vh,600px);min-height:400px;overflow:hidden}@media(max-width:480px){.welcome-hero{height:65vh}}.welcome-hero img{width:100%;height:100%;object-fit:cover}.welcome-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,var(--bg-base) 0%,transparent 100%);pointer-events:none}.welcome-hero .hero-overlay{position:absolute;bottom:0;left:0;right:0;padding:40px 24px 24px;z-index:2}.welcome-hero .hero-title{font-size:2.5rem;font-weight:900;letter-spacing:-.5px;line-height:1.1;margin-bottom:8px;text-shadow:0 2px 20px rgba(0,0,0,.5)}.welcome-hero .hero-subtitle{font-size:1rem;color:var(--text-secondary);font-weight:400;max-width:300px}.welcome-categories{padding:24px 20px}.welcome-categories h3{font-size:1.1rem;font-weight:700;margin-bottom:16px;letter-spacing:.5px}.welcome-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:480px){.welcome-cat-grid{grid-template-columns:repeat(2,1fr);gap:16px}}.welcome-cat-item{position:relative;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;aspect-ratio:1;transition:transform var(--transition-fast)}.welcome-cat-item:hover{transform:scale(1.05)}.welcome-cat-item img{width:100%;height:100%;object-fit:cover}.welcome-cat-item:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 60%)}.welcome-cat-item span{position:absolute;bottom:8px;left:8px;z-index:2;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#fff}.recommended-section{padding:8px 20px 32px}.recommended-section h3{font-size:1.1rem;font-weight:700;margin-bottom:16px}.recommended-scroll{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.recommended-scroll::-webkit-scrollbar{display:none}.recommended-card{min-width:220px;max-width:220px;scroll-snap-align:start;background-color:var(--bg-card);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:all var(--transition-smooth);border:1px solid var(--border-light);flex-shrink:0}.recommended-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.recommended-card .rec-image{width:100%;height:140px;overflow:hidden}.recommended-card .rec-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-smooth)}.recommended-card:hover .rec-image img{transform:scale(1.05)}.recommended-card .rec-body{padding:12px}.recommended-card .rec-title{font-size:.9rem;font-weight:700;margin-bottom:2px}.recommended-card .rec-price{font-size:.8rem;color:var(--accent-light);font-weight:600;margin-bottom:4px}.recommended-card .rec-desc{font-size:.72rem;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}.recommended-card .rec-action{display:block;width:100%;padding:7px 0;border-radius:var(--radius-sm);font-weight:600;font-size:.75rem;text-align:center;background-color:var(--accent-subtle);color:var(--accent-light);border:1px solid var(--accent-dark);cursor:pointer;transition:all var(--transition-fast)}.recommended-card .rec-action:hover{background-color:var(--accent-color);color:#fff}.app-footer{background-color:var(--bg-surface);border-top:1px solid var(--border-color);padding:24px 20px}.footer-brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1rem;margin-bottom:8px}.footer-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.5;margin-bottom:16px;max-width:300px}.footer-links{display:flex;gap:20px;margin-bottom:16px}.footer-links a{font-size:.78rem;color:var(--text-muted);transition:color var(--transition-fast)}.footer-links a:hover{color:var(--accent-light)}.footer-copy{font-size:.7rem;color:var(--text-muted);border-top:1px solid var(--border-color);padding-top:16px;text-align:center}.location-fab{position:fixed;bottom:24px;right:max(24px,calc(50vw - 276px));background-color:var(--accent-color);color:#fff;padding:12px 24px;border-radius:var(--radius-full);display:flex;align-items:center;gap:8px;font-weight:600;font-size:.875rem;text-decoration:none;box-shadow:var(--shadow-lg),var(--shadow-glow);z-index:40;transition:all var(--transition-fast)}.location-fab:hover{transform:scale(1.05);box-shadow:var(--shadow-lg),0 0 30px var(--accent-glow)}
