/* Exact resting geometry remains the reference geometry. No pinned/hijacked scroll. */
[data-reveal]{transition:none}
.button,.icon-button{transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease,transform 140ms cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
 .button:active,.icon-button:active{transform:scale(.98)}
 .program-directory-card,.section-catalog-card,.library-card,.editorial-card{transition:border-color 180ms ease,box-shadow 180ms ease}
 .program-directory-card:hover,.section-catalog-card:hover,.library-card:hover,.editorial-card:hover{border-color:var(--coral);box-shadow:0 8px 25px #4b4d5008}
}
@media(prefers-reduced-motion:no-preference){
 html[data-input-mode=pointer] dialog[open]:modal{animation:proandro-dialog-enter 180ms cubic-bezier(.22,1,.36,1)}
 html[data-input-mode=pointer] dialog[open]::backdrop{animation:proandro-backdrop-enter 160ms ease-out}
}
@keyframes proandro-dialog-enter{from{opacity:.4;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}
@keyframes proandro-backdrop-enter{from{opacity:0}to{opacity:1}}
html[data-input-mode=keyboard] .button,html[data-input-mode=keyboard] .icon-button{transition:none}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
