:root{--font-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-primary: #f9eef1;--bg-secondary: #f6e1e8;--bg-surface: rgba(255, 248, 249, .95);--bg-surface-hover: rgba(255, 234, 237, .95);--border-color: rgba(214, 36, 126, .14);--border-hover: rgba(245, 176, 51, .35);--text-primary: #3a1e29;--text-secondary: #7e5468;--text-muted: #a78b96;--accent-saffron: #d6247e;--accent-saffron-rgb: 214, 36, 126;--accent-gold: #f5b033;--accent-gold-rgb: 245, 176, 51;--accent-green: #1f7f6d;--accent-green-rgb: 31, 127, 109;--accent-red: #c32c3a;--glass-blur: blur(14px);--shadow-premium: 0 14px 36px 0 rgba(149, 56, 15, .12);--shadow-glow: 0 0 24px rgba(var(--accent-saffron-rgb), .12);--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px;--header-height: 70px;--transition-smooth: all .28s cubic-bezier(.4, 0, .2, 1)}body.dark{--bg-primary: #140712;--bg-secondary: #2a1324;--bg-surface: rgba(38, 14, 34, .92);--bg-surface-hover: rgba(62, 20, 47, .95);--border-color: rgba(245, 176, 51, .14);--border-hover: rgba(214, 36, 126, .45);--text-primary: #f7e9e9;--text-secondary: #d6b7c4;--text-muted: #ab93a1;--shadow-premium: 0 14px 40px 0 rgba(0, 0, 0, .55);--shadow-glow: 0 0 24px rgba(214, 36, 126, .18)}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100vh;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden;transition:background-color .3s ease,color .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--accent-gold)}.app-container{display:flex;flex-direction:column;min-height:100vh}.content-wrapper{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:24px 16px 80px}.glass-panel{background:var(--bg-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);transition:var(--transition-smooth)}.glass-panel-hover:hover{background:var(--bg-surface-hover);border-color:var(--border-hover);box-shadow:var(--shadow-glow),var(--shadow-premium);transform:translateY(-2px)}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-saffron) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-bg{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-saffron) 100%)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-family:var(--font-sans);font-size:14px;font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:var(--transition-smooth)}.btn-primary{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-saffron) 100%);color:#fff;box-shadow:0 4px 12px rgba(var(--accent-saffron-rgb),.3)}.btn-primary:hover{box-shadow:0 6px 20px rgba(var(--accent-saffron-rgb),.45),var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--border-color);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-surface-hover);border-color:var(--text-secondary)}.btn-danger{background:#ef444426;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.btn-danger:hover{background:var(--accent-red);color:#fff}.btn-icon{width:40px;height:40px;padding:0;border-radius:50%}.input-control{width:100%;padding:12px 16px;font-family:var(--font-sans);font-size:15px;background:#fff9f2e6;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);outline:none;transition:var(--transition-smooth)}body.dark .input-control{background:#fff3e414}.input-control:focus{border-color:var(--accent-gold);box-shadow:0 0 0 3px rgba(var(--accent-gold-rgb),.15)}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px rgba(var(--accent-saffron-rgb),.15)}50%{box-shadow:0 0 25px rgba(var(--accent-saffron-rgb),.35)}}@keyframes voicePulse{0%{transform:scale(1);box-shadow:0 0 rgba(var(--accent-saffron-rgb),.6),0 0 rgba(var(--accent-gold-rgb),.4)}70%{transform:scale(1.08);box-shadow:0 0 0 12px rgba(var(--accent-saffron-rgb),0),0 0 0 20px rgba(var(--accent-gold-rgb),0)}to{transform:scale(1);box-shadow:0 0 rgba(var(--accent-saffron-rgb),0),0 0 rgba(var(--accent-gold-rgb),0)}}@keyframes soundwave{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1.4)}}@keyframes timerPulse{0%{box-shadow:0 0 rgba(var(--accent-gold-rgb),.5)}70%{box-shadow:0 0 0 12px rgba(var(--accent-gold-rgb),0)}to{box-shadow:0 0 rgba(var(--accent-gold-rgb),0)}}@keyframes strike{0%{width:0}to{width:100%}}@keyframes wave{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.animate-fade-in{animation:fadeIn .45s cubic-bezier(.34,1.56,.64,1) forwards}.animate-slide-up{animation:slideUp .6s cubic-bezier(.34,1.56,.64,1) forwards}.animate-pulse-glow{animation:pulseGlow 2s infinite ease-in-out}.animate-voice-active{animation:voicePulse 1.5s infinite cubic-bezier(.66,0,0,1)}.timer-active-pulse{animation:timerPulse 1.8s infinite cubic-bezier(.66,0,0,1)}.wave-bar{transform-origin:center;animation:soundwave 1.2s infinite ease-in-out}.strike-through-animated{position:relative;display:inline-block;width:100%}.strike-through-animated:after{content:"";position:absolute;left:0;top:50%;height:1.5px;background:var(--text-muted);width:0;animation:strike .25s cubic-bezier(.4,0,.2,1) forwards}.bottom-nav-btn{transition:var(--transition-smooth)}.bottom-nav-btn:hover{transform:translateY(-2px) scale(1.05)}.bottom-nav-btn:active{transform:scale(.92)}.badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;border-radius:20px;text-transform:capitalize}.badge-diet-veg{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.3)}.badge-diet-nonveg{background:#ef444426;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.badge-diet-vegan{background:#10b98140;color:#34d399;border:1px solid rgba(52,211,153,.4)}.badge-diet-gf{background:rgba(var(--accent-gold-rgb),.15);color:var(--accent-gold);border:1px solid rgba(var(--accent-gold-rgb),.3)}.grid-cols-responsive{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.store-map-canvas{width:100%;height:300px;border-radius:var(--radius-md);position:relative;overflow:hidden;background-color:#fff4ea;border:1px solid var(--border-color)}body.dark .store-map-canvas{background-color:#2b190f}.pulse-marker{position:absolute;width:14px;height:14px;background-color:var(--accent-saffron);border-radius:50%;transform:translate(-50%,-50%);z-index:10;box-shadow:0 0 10px #00000080}.pulse-marker:after{content:"";position:absolute;top:-6px;left:-6px;right:-6px;bottom:-6px;border:2px solid var(--accent-saffron);border-radius:50%;animation:wave 1.5s infinite linear}.user-marker{position:absolute;width:16px;height:16px;background-color:#3b82f6;border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);z-index:20;box-shadow:0 0 15px #3b82f699}.store-marker-label{position:absolute;font-size:11px;font-weight:500;background:var(--bg-secondary);color:var(--text-primary);padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border-color);pointer-events:none;white-space:nowrap;transform:translate(-50%,-32px);z-index:12}@media print{body{background:#fff!important;color:#000!important}.no-print{display:none!important}.print-only{display:block!important}.glass-panel{background:none!important;border:1px solid #ccc!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}body.forced-mobile{display:flex;justify-content:center;align-items:center;min-height:100vh;background:radial-gradient(circle at top left,var(--bg-secondary),var(--bg-primary))!important;padding:20px 0}body.forced-mobile .app-container{width:420px;height:880px;max-height:95vh;border-radius:40px;border:12px solid #2a1324;box-shadow:var(--shadow-premium),var(--shadow-glow),0 25px 50px -12px #000000b3;overflow-y:auto;overflow-x:hidden;position:relative;background-color:var(--bg-primary);-webkit-overflow-scrolling:touch}body.forced-mobile header{border-radius:28px 28px 0 0!important}body.forced-mobile .content-wrapper{padding:16px 12px 100px}body.forced-mobile .app-container::-webkit-scrollbar{width:5px}body.forced-mobile .app-container::-webkit-scrollbar-thumb{background:rgba(var(--accent-saffron-rgb),.2);border-radius:10px}.bg-mesh-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:-1;overflow:hidden;opacity:.65;transition:opacity .5s ease}.bg-mesh-orb{position:absolute;border-radius:50%;filter:blur(130px);mix-blend-mode:multiply;opacity:.15;animation:float-mesh 25s infinite alternate ease-in-out}body.dark .bg-mesh-orb{mix-blend-mode:screen;opacity:.25}.bg-mesh-orb-1{top:-10%;left:10%;width:500px;height:500px;background:radial-gradient(circle,var(--accent-saffron) 0%,transparent 80%);animation-duration:20s}.bg-mesh-orb-2{bottom:-10%;right:15%;width:600px;height:600px;background:radial-gradient(circle,var(--accent-gold) 0%,transparent 80%);animation-duration:28s;animation-delay:-5s}.bg-mesh-orb-3{top:40%;left:50%;width:450px;height:450px;background:radial-gradient(circle,var(--accent-green) 0%,transparent 80%);animation-duration:24s;animation-delay:-10s}@keyframes float-mesh{0%{transform:translate(0) scale(1) rotate(0)}50%{transform:translate(8%,12%) scale(1.15) rotate(180deg)}to{transform:translate(-8%,-8%) scale(.9) rotate(360deg)}}.cursor-glow{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;background:radial-gradient(600px circle at var(--mouse-x, -1000px) var(--mouse-y, -1000px),rgba(var(--accent-saffron-rgb),.04),transparent 85%);transition:opacity .3s ease}body.dark .cursor-glow{background:radial-gradient(600px circle at var(--mouse-x, -1000px) var(--mouse-y, -1000px),rgba(var(--accent-gold-rgb),.07),transparent 85%)}.btn{position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,background-color .25s ease,border-color .25s ease,color .25s ease!important}.btn:hover{transform:scale(1.05) translateY(-1px);box-shadow:0 6px 20px rgba(var(--accent-saffron-rgb),.15)}.btn:active{transform:scale(.97) translateY(0)}.btn:before{content:"";position:absolute;top:0;left:-150%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff59,#fff0);transform:skew(-25deg);transition:none;pointer-events:none}.btn:hover:before{animation:button-shine 1.1s ease-in-out}@keyframes button-shine{to{left:150%}}@keyframes fadeInUpStagger{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.animate-reveal{opacity:0;animation:fadeInUpStagger .85s cubic-bezier(.34,1.56,.64,1) forwards}.delay-50{animation-delay:50ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-250{animation-delay:.25s}.delay-300{animation-delay:.3s}.delay-350{animation-delay:.35s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.glass-panel-hover{transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s ease,border-color .4s ease,background-color .4s ease!important}.glass-panel-hover:hover{border-color:rgba(var(--accent-gold-rgb),.55)!important;transform:translateY(-6px) scale(1.015)!important;box-shadow:0 16px 38px #0000001f,0 0 24px rgba(var(--accent-saffron-rgb),.12),0 0 1px 1px rgba(var(--accent-gold-rgb),.25)!important}.zoom-container{overflow:hidden;position:relative}.zoom-image{transition:transform .75s cubic-bezier(.25,1,.5,1)!important}.glass-panel-hover:hover .zoom-image{transform:scale(1.07)}.icon-container-hover{transition:transform .4s cubic-bezier(.34,1.56,.64,1)!important}.glass-panel-hover:hover .icon-container-hover{transform:scale(1.15) rotate(6deg)}
