/* EKANANTO global interaction + rendering performance layer */
:root{color-scheme:light;--tap-highlight:transparent;scroll-behavior:auto}
html{min-height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}
body{min-height:100%;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}
button,a,[role="button"],input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button,a,[role="button"]{-webkit-user-select:none;user-select:none}
input,textarea,select{-webkit-user-select:text;user-select:text}
img,svg,video,canvas{max-width:100%}
img{height:auto}
/* Avoid full-page wobble from decorative animations and costly compositing on mobile. */
*,*::before,*::after{animation-duration:0.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
.top{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media (hover:hover) and (pointer:fine){
  button,a,[role="button"],.product,.lux-cta{transition:background-color .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease!important}
}
@media (hover:none),(pointer:coarse){
  button,a,[role="button"],.product,.lux-cta{transition:none!important;transform:none!important}
  .top{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* v7: prevent layout shifts, automatic scroll jumps and mobile tap wobble */
html,body{overflow-x:clip;overscroll-behavior:auto;scroll-behavior:auto!important}
#app{min-height:100dvh}
.shell{min-height:100dvh}
main{animation:none!important;transform:none!important}
.top{position:relative!important;top:auto!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.product,.product:hover,.photo img,.photo img:hover,.hero,.panel,.bottom,.navitem,.navitem:active{transform:none!important;animation:none!important;transition:none!important}
.photo{position:relative;aspect-ratio:1/1;min-height:0;contain:layout paint}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hero{min-height:240px;contain:layout paint}
.hero img{display:block;max-width:42%;max-height:220px;width:auto;height:auto;object-fit:contain}
.bottom{padding-bottom:max(10px,env(safe-area-inset-bottom));transform:translateZ(0)}
button,a,[role="button"]{-webkit-touch-callout:none}
@media(max-width:700px){.hero{min-height:210px}.hero img{max-width:36%;max-height:160px}.shell{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}

/* v8 stability correction: preserve the centered floating navigation geometry. */
.bottom{left:50%!important;right:auto!important;transform:translateX(-50%)!important;will-change:auto!important}
@media(max-width:700px){.bottom{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:calc(100% - 24px)!important}}
