/* Shared interaction rhythm. Drawing geometry and scroll-driven scenes keep their own transforms. */
:root{--motion-fast:120ms;--motion-normal:180ms;--motion-view:240ms;--motion-ease:cubic-bezier(.2,.75,.25,1);--motion-accent:#80684e}
body :is(.nav-links>a,.nav-dropdown-label,.nav-dropdown-menu>a,.home-desktop-nav>a,.home-material-menu>summary,.home-material-menu>div>a,.mobile-menu-links a,.mobile-menu-label,.home-mobile-menu nav>a,.chapter-nav button,.btn,.primary-link,.play-button,.replay,.menu-toggle,.home-menu-toggle,.works-filter-button,.works-gallery-open,.material-media,.submit-btn,.back-to-top,.lightbox-nav,.lightbox-return,.works-lightbox-close,.works-lightbox-nav,.faq-question>summary,.wizard-choice,.material-choice,.custom-kind-button,.text-button,.primary-button,.secondary-button){transition:color var(--motion-fast),background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-normal),opacity var(--motion-normal),transform var(--motion-normal) var(--motion-ease),translate var(--motion-normal) var(--motion-ease),scale var(--motion-fast) var(--motion-ease)}
body :is(.nav-links>a,.home-desktop-nav>a){display:inline-flex}
body :is(.chapter-nav-label,.home-material-menu summary svg){transition:color var(--motion-fast),transform var(--motion-normal) var(--motion-ease)}
body :is(.material-quick-filters button,.custom-purpose-button,[role="tab"],[data-plan-align]){transition:color var(--motion-fast),background-color var(--motion-fast),border-color var(--motion-fast),translate var(--motion-normal) var(--motion-ease),scale var(--motion-fast) var(--motion-ease)}
body :is(a,button,summary,input,select,textarea):focus-visible{outline:2px solid var(--motion-accent);outline-offset:4px}
body :is(.material-media img,.works-gallery-media img){transition:transform var(--motion-view) var(--motion-ease)}
body .works-category-links a{transition:color var(--motion-fast),translate var(--motion-normal) var(--motion-ease)}
body .works-category-links a:hover{padding-left:2px}
body :is(.primary-link,.wizard-choice,.material-choice):hover{transform:none}
@media(hover:hover) and (pointer:fine){
 body :is(.nav-links>a,.nav-dropdown-label,.home-desktop-nav>a,.home-material-menu>summary,.chapter-nav button,.works-filter-button,.material-quick-filters button,.custom-purpose-button,[role="tab"],[data-plan-align]):not(:disabled):hover{translate:0 -2px}
 body :is(.nav-links>a,.nav-dropdown-label,.home-desktop-nav>a,.home-material-menu>summary,.chapter-nav button,.works-filter-button,.material-quick-filters button,.custom-purpose-button,[role="tab"],[data-plan-align]):not(:disabled,[aria-current],[aria-pressed="true"],[aria-selected="true"],.is-selected):hover{color:var(--motion-accent);border-color:var(--motion-accent)}
 body .chapter-nav button:hover .chapter-nav-label{color:var(--motion-accent)}
 body :is(.nav-dropdown-menu>a,.home-material-menu>div>a,.faq-question>summary):hover{color:var(--motion-accent);background-color:#80684e0d}
 body :is(.btn,.primary-link,.play-button,.replay,.works-gallery-open,.material-media,.submit-btn,.wizard-choice,.material-choice,.custom-kind-button,.primary-button,.secondary-button):not(:disabled,[aria-disabled="true"]):hover{translate:0 -2px}
 body :is(.wizard-choice,.material-choice,.custom-kind-button):not(:disabled,[aria-pressed="true"],.is-selected):hover{border-color:var(--motion-accent);box-shadow:0 4px 12px #80684e12}
 body .works-category-links a:hover{translate:4px 0}
 body :is(.btn,.primary-link,.works-filter-button,.menu-toggle,.home-menu-toggle,.chapter-nav button):not(:disabled):active{translate:0 0;scale:.98}
}
body .is-site-pressed:not(:disabled){scale:.98;translate:0 0}
body :is(.nav-links a,.mobile-menu-links a,.home-mobile-menu nav>a,.chapter-nav button,.faq-question>summary).is-site-pressed{color:var(--motion-accent)}
body .mobile-menu:not([hidden]){visibility:visible}
body .mobile-menu[hidden]{display:none}
body .mobile-menu-panel{transition:transform var(--motion-view) var(--motion-ease);overflow-y:auto;overscroll-behavior:contain}
body .mobile-menu-backdrop{transition:opacity var(--motion-normal) var(--motion-ease)}
body :is(.nav-dropdown[open]>.nav-dropdown-menu,.home-desktop-nav .home-material-menu[open]>div){animation:site-panel-in var(--motion-normal) var(--motion-ease)}
body :is(.home-mobile-menu,.material-lightbox,.works-lightbox)[open]{animation:site-panel-in var(--motion-view) var(--motion-ease)}
body :is(.home-mobile-menu,.material-lightbox,.works-lightbox)[open]::backdrop{animation:site-fade-in var(--motion-normal) var(--motion-ease)}
@keyframes site-panel-in{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
@keyframes site-fade-in{from{opacity:0}to{opacity:1}}
@media(hover:none),(pointer:coarse){
 body :is(.material-card:hover .material-media img,.works-gallery-open:hover .works-gallery-media img){transform:none}
 body .primary-link:hover{transform:none}
 body :is(.nav-links>a,.home-desktop-nav>a,.chapter-nav button,.works-filter-button,.btn,.primary-link,.wizard-choice,.material-choice):hover{translate:none}
 body.boxuu-motion-ready button:not(.is-site-pressed):active{scale:1}
 body .works-category-links a:hover{translate:none}
 body :is(.menu-toggle,.home-menu-toggle,.home-menu-heading button,.chapter-nav button,.play-button,.replay,.works-filter-button){min-height:44px}
 body :is(.nav,.site-header,.works-filter-bar){backdrop-filter:none;background-color:#fcfbf9f5}
 body :is(.material-lightbox,.works-lightbox)::backdrop{backdrop-filter:none}
 body .reveal-line{filter:none!important;will-change:opacity,transform}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 body *,body *::before,body *::after,body *::backdrop{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 body .is-site-pressed,body :is(a,button,summary):hover,body :is(a,button,summary):active{translate:none!important;scale:1!important}
}
