*,*:before,*:after{box-sizing:border-box;margin:0}html,body{overflow-x:hidden}body{background:var(--color-body-bg, #fff);color:var(--color-text, #1a1a1a);font-family:var(--font-body, system-ui, -apple-system, sans-serif);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:block;max-width:100%}:root{--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 36px;--text-4xl: 48px;--color-text: #1a1a1a;--color-text-secondary: #666;--color-text-muted: #999;--color-border: #e5e5e5;--color-border-light: #f0f0f0;--color-surface: #fafafa;--color-error: #991b1b;--color-success: #166534;--container: 1200px;--radius: 8px;--radius-lg: 12px;--ease: cubic-bezier(.4, 0, .2, 1);--duration: .25s}:focus-visible{outline:2px solid var(--color-primary, #12634A);outline-offset:2px}.img-zoom{overflow:hidden}.img-zoom img{transition:transform .5s var(--ease)}.img-zoom:hover img{transform:scale(1.04)}@keyframes spin{to{transform:rotate(360deg)}}.mobile-nav-overlay{position:fixed;inset:0;background:#0000004d;z-index:200;animation:fadeIn .2s var(--ease)}.mobile-nav-panel{position:fixed;top:0;right:0;width:80vw;max-width:320px;height:100%;background:#fff;z-index:201;display:flex;flex-direction:column;animation:slideIn .25s var(--ease);box-shadow:-4px 0 24px #00000014}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}html{scroll-behavior:smooth}::selection{background:var(--color-primary, #12634A);color:#fff}@keyframes panelSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes panelSlideOut{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}@keyframes itemSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes clipRevealUp{0%{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes lineExpand{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fabBreathe{0%,to{transform:scale(1);box-shadow:0 6px 28px #00000040}50%{transform:scale(1.06);box-shadow:0 8px 36px #0000004d}}.chat-fab{animation:fabBreathe 4s cubic-bezier(.4,0,.6,1) infinite}.chat-fab:hover{animation:none}.cart-panel-enter{animation:panelSlideIn .4s cubic-bezier(.16,1,.3,1) forwards}.cart-backdrop-enter{animation:backdropIn .3s ease forwards}.cart-item-enter{animation:itemSlideUp .4s cubic-bezier(.16,1,.3,1) both}.chat-panel-enter{animation:panelSlideIn .4s cubic-bezier(.16,1,.3,1) forwards}.chat-message-enter{animation:itemSlideUp .35s cubic-bezier(.16,1,.3,1) both}.preview-panel-enter{animation:scaleIn .35s cubic-bezier(.16,1,.3,1) forwards}.product-card-wrap:hover .product-hover-overlay{opacity:1!important;transform:translateY(0)!important}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0003}.btn-glow{position:relative;overflow:hidden}.btn-glow:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:none}.btn-glow:hover:after{animation:shimmer .6s ease forwards}
