/* Shared night palettes and lightweight decorative motion. */
[data-season=spring]{--night-bg:#101f1d;--night-card:#1b342a;--night-accent:#b0d28c;--night-halo:#a4cd67}
[data-season=summer]{--night-bg:#09252e;--night-card:#123d47;--night-accent:#79d6d7;--night-halo:#77c9cf}
[data-season=autumn]{--night-bg:#21140f;--night-card:#39241a;--night-accent:#e8ac67;--night-halo:#d38335}
[data-season=winter]{--night-bg:#101d30;--night-card:#1b304b;--night-accent:#a3d4f2;--night-halo:#68d9c2}
[data-season=nowruz]{--night-bg:#102820;--night-card:#1d3d2e;--night-accent:#e8ce89;--night-halo:#e5bd62}
[data-season=christmas]{--night-bg:#10251e;--night-card:#203c31;--night-accent:#efc77b;--night-halo:#b9df8c}
[data-season=halloween]{--night-bg:#130d0b;--night-card:#2e1b12;--night-accent:#f3a14f;--night-halo:#a976ce}
[data-season=valentine]{--night-bg:#29121e;--night-card:#421e31;--night-accent:#f0a3bd;--night-halo:#ce6e95}
.hero-art[data-mode=dark] .phone,.mini-phone[data-mode=dark]{--paper:var(--night-bg);--card:var(--night-card);--surface:var(--night-card);--season:var(--night-accent);--preview-color:var(--night-accent)!important;--dark-bg:var(--night-bg);--dark-card:var(--night-card);--dark-accent:var(--night-accent);background:var(--night-bg);color:#f8f1e9}
.mini-phone[data-mode=dark] .mini-cover,.mini-phone[data-mode=dark] .mini-categories span{background:var(--night-card)}.mini-phone[data-mode=dark] .mini-products small{color:var(--night-accent)}
.night-decor{display:none;position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3;border-radius:inherit;isolation:isolate}.hero-art[data-mode=dark] .night-decor,.mini-phone[data-mode=dark] .night-decor{display:block}.night-decor>*{position:absolute;pointer-events:none}.night-glow{inset:0;background:radial-gradient(ellipse at 88% 0%,color-mix(in srgb,var(--night-halo) 12%,transparent),transparent 43%);opacity:.8}.night-sparks{inset:0}.night-sparks i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:var(--night-accent);box-shadow:0 0 8px 2px var(--night-halo);opacity:.25;animation:night-shimmer 5s ease-in-out infinite;animation-delay:calc(var(--n)*-.7s)}
.night-garland,.night-ghost,.night-moon,.night-waves,.night-leaves,.night-lantern,.night-hearts{display:none}
.night-decor[data-night-season=christmas] .night-garland{display:flex;top:3px;left:0;right:0;justify-content:space-around;height:29px;border-top:1px solid #98b58b70;transform:rotate(-1deg)}.night-garland i{width:7px;height:11px;border-radius:4px 4px 7px 7px;background:var(--bulb);color:var(--bulb);box-shadow:0 0 12px 3px currentColor;transform:translateY(calc(3px + mod(var(--n),3)*3px));animation:night-bulb 3.8s ease-in-out infinite;animation-delay:calc(var(--n)*-.47s)}.night-garland i:before{content:'';position:absolute;left:3px;bottom:100%;height:7px;width:1px;background:#8ba58a}
.night-decor[data-night-season=halloween] .night-ghost{display:block;width:57px;height:70px;left:112px;bottom:18px;filter:drop-shadow(0 0 10px #b183d77a);animation:night-hover 5.5s ease-in-out infinite}.night-decor[data-night-season=halloween] .night-glow{background:radial-gradient(ellipse at 8% 100%,#db742f24,transparent 35%),radial-gradient(ellipse at 100% 0%,#8b55be18,transparent 42%)}
.night-decor[data-night-season=spring] .night-sparks i{width:4px;height:4px;background:#c6e788;animation:night-firefly 8s ease-in-out infinite;animation-delay:calc(var(--n)*-.85s)}
.night-decor[data-night-season=summer] .night-moon{display:block;width:27px;height:27px;left:79px;top:30px;border-radius:50%;background:#ffedbb;box-shadow:0 0 22px #ffe6a24d}.night-decor[data-night-season=summer] .night-waves{display:block;left:-8%;right:-8%;bottom:-30px;height:100px;border-top:2px solid #73cedc35;border-radius:48%;box-shadow:0 -12px 0 #63c3d810,0 -26px 0 #63c3d807;animation:night-tide 11s ease-in-out infinite}
.night-decor[data-night-season=autumn] .night-leaves{display:flex;left:5px;bottom:10px;gap:11px}.night-leaves i{width:18px;height:29px;border-radius:90% 10% 80% 20%;background:#c88d3e66;transform:rotate(25deg)}.night-leaves i:nth-child(2){transform:rotate(65deg);background:#b75c3066}.night-leaves i:nth-child(3){transform:rotate(-25deg);width:12px}.night-decor[data-night-season=autumn] .night-sparks i{animation:night-ember 9s ease-in-out infinite;animation-delay:calc(var(--n)*-.8s);background:#e6a34e}
.night-decor[data-night-season=winter] .night-glow{inset:-40% -20% 50%;background:linear-gradient(125deg,transparent 20%,#72d5c620 40%,#9291e026 55%,transparent 75%);filter:blur(20px);animation:night-aurora 16s ease-in-out infinite}.night-decor[data-night-season=winter] .night-sparks i{background:#e5f4ff;box-shadow:0 0 5px #a0cdf5;animation-duration:7s}
.night-decor[data-night-season=nowruz] .night-lantern{display:block;right:20px;bottom:14px;width:28px;height:39px;border:1px solid #e3c78390;border-radius:45% 45% 20% 20%;background:radial-gradient(ellipse at 50% 65%,#f2d18b48,transparent 70%);box-shadow:0 0 20px #e5b85a15;animation:night-shimmer 6s ease-in-out infinite}.night-lantern:before{content:'';position:absolute;width:12px;height:9px;border:1px solid #e3c78380;border-bottom:0;border-radius:50% 50% 0 0;top:-10px;left:7px}.night-lantern i{position:absolute;width:4px;height:13px;left:11px;top:15px;border-radius:60% 60% 30% 30%;background:#ffdf9d;box-shadow:0 0 10px #efb45b}
.night-decor[data-night-season=valentine] .night-hearts{display:flex;left:106px;bottom:25px;gap:14px;align-items:end}.night-hearts i{position:relative;width:12px;height:12px;transform:rotate(-45deg);background:#d78ca55c;animation:night-heart 6s ease-in-out infinite}.night-hearts i:before,.night-hearts i:after{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:inherit}.night-hearts i:before{top:-6px;left:0}.night-hearts i:after{left:6px;top:0}.night-hearts i:nth-child(2){animation-delay:-2s;bottom:18px}.night-hearts i:nth-child(3){animation-delay:-4s}
.mini-phone{isolation:isolate}.mini-phone .night-garland i{width:4px;height:7px;box-shadow:0 0 6px currentColor}.mini-phone .night-ghost{left:62px;bottom:8px;width:30px;height:37px}.mini-phone .night-moon{left:12px;top:30px;width:14px;height:14px}.mini-phone .night-hearts{left:66px;bottom:15px;gap:7px;scale:.6;transform-origin:left bottom}.mini-phone .night-lantern{scale:.7;right:10px;bottom:8px}.mini-phone .night-leaves{scale:.7;left:64px;transform-origin:left bottom}.mini-phone .night-sparks i{width:2px;height:2px;box-shadow:0 0 4px currentColor}
@keyframes night-shimmer{0%,100%{opacity:.2}50%{opacity:.7}}@keyframes night-bulb{0%,100%{opacity:.35;box-shadow:0 0 5px currentColor}50%{opacity:.95;box-shadow:0 0 14px 3px currentColor}}@keyframes night-hover{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-12px) rotate(5deg)}}@keyframes night-firefly{0%,100%{opacity:.1;transform:translate(0,0)}50%{opacity:.7;transform:translate(12px,-15px)}}@keyframes night-tide{50%{transform:translate(4%,6px) rotate(2deg)}}@keyframes night-ember{0%,100%{opacity:.1;transform:translateY(8px)}50%{opacity:.6;transform:translateY(-18px)}}@keyframes night-aurora{50%{transform:translate(7%,12%) rotate(-8deg);opacity:.4}}@keyframes night-heart{0%,100%{opacity:.25;translate:0 0}50%{opacity:.7;translate:0 -8px}}
@media(max-width:700px){.customer-shell .night-ghost{left:94px;bottom:13px;width:42px;height:52px}.customer-shell .night-hearts{left:96px;bottom:24px;gap:12px}.night-garland i{width:5px;height:8px}.night-lantern{scale:.8;transform-origin:right bottom}}
@media(prefers-reduced-motion:reduce){.night-decor *{animation:none!important}.night-sparks i{opacity:.35}.night-garland i{opacity:.7}}
.customer-shell[data-mode=dark] .customer-categories button.active{color:#1b2420}.hero-art[data-mode=dark] .menu-cats button.active{color:#1b2420}
