/* SorfPanel v29 — final responsive/accessibility polish */
:root{
  --sp-safe-bottom: env(safe-area-inset-bottom,0px);
  --sp-safe-top: env(safe-area-inset-top,0px);
  --sp-focus-ring: 0 0 0 3px color-mix(in srgb, var(--sp-orange,#ff6000) 24%, transparent);
}
html{overflow-x:clip;text-size-adjust:100%;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{overflow-x:clip;min-width:320px}
img,video,svg{max-width:100%}
img{image-rendering:auto}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea,[tabindex]:not([tabindex="-1"]){-webkit-tap-highlight-color:transparent}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--sp-orange,#ff6000);outline-offset:2px;box-shadow:var(--sp-focus-ring)}
:where(button,.btn,[role="button"]){touch-action:manipulation}
:where(.product-card,.sp-product-card,.account-card,.order-card,.store-card){min-width:0}
:where(.product-card,.sp-product-card) :where(h2,h3,.title,.product-title){overflow-wrap:anywhere}
:where(.container,.page-shell,.account-shell,.checkout-shell,.cart-shell){min-width:0}
.site-footer{content-visibility:auto;contain-intrinsic-size:600px}
@supports (content-visibility:auto){
  :where(.home-section,.product-section,.recommendation-section,.store-section){content-visibility:auto;contain-intrinsic-size:700px}
}
@media (max-width:767px){
  body{padding-bottom:max(var(--sp-mobile-nav-height,64px),calc(58px + var(--sp-safe-bottom)))}
  .mobile-nav{padding-bottom:var(--sp-safe-bottom);height:calc(var(--sp-mobile-nav-height,64px) + var(--sp-safe-bottom))}
  :where(.btn,button,input,select,textarea){min-height:44px}
  .sp-toast-stack{bottom:calc(74px + var(--sp-safe-bottom))}
  .sp-install-banner{bottom:calc(72px + var(--sp-safe-bottom));max-width:calc(100vw - 24px)}
  table{max-width:100%}
}
@media (min-width:768px){
  .mobile-nav{display:none!important}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media (forced-colors:active){
  :where(.btn,button,.product-card,.sp-product-card){border:1px solid CanvasText}
}
