/* Short, quiet transitions. No perpetual motion or hidden waiting content. */
html{scrollbar-gutter:stable}
.button,.text-button,.nav-toggle,.languages button,.catalog-filters button{transition:background-color .18s ease,color .18s ease,transform .18s ease,border-color .18s ease}
input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease}
input:focus,select:focus,textarea:focus{border-color:#a3a3a3;box-shadow:0 0 0 2px #ffffff15}
:is(a,button,summary,input,select,textarea):focus-visible{outline:2px solid #f5f5f5;outline-offset:4px}
.button:active,.nav-toggle:active,.catalog-filters button:active{transform:scale(.985)}
@keyframes volt-enter{from{opacity:.25;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.motion-enter{animation:volt-enter .36s cubic-bezier(.2,.7,.2,1) both}
.result-box.motion-enter{animation-duration:.25s}
.product-photo-frame.photo-preview{display:block;position:relative;padding:0;border:0;color:inherit;cursor:zoom-in;flex:none;line-height:0;min-height:44px}
.product-photo{transition:transform .32s cubic-bezier(.2,.7,.2,1)}
.photo-preview:focus-visible{outline-offset:5px}
.photo-preview:disabled{cursor:default}
@media(hover:hover) and (pointer:fine){
 .button:not(:disabled):hover,.catalog-filters button:not(:disabled):hover{transform:translateY(-2px)}
 .photo-preview:not(:disabled):hover .product-photo{transform:scale(1.035)}
 .home-entry-links a:hover,.back-home:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
}
.faq-list details[open]>p{animation:volt-enter .22s ease-out}
@media(max-width:767px){.nav-open nav{animation:volt-enter .18s ease-out}}
.photo-dialog{position:fixed;inset:0;margin:auto;width:min(900px,calc(100% - 32px));max-width:900px;max-height:calc(100dvh - 32px);padding:20px;background:#171717;color:#f5f5f5;border:1px solid #444;border-radius:6px;overflow:auto;box-shadow:0 24px 80px #0008}
.photo-dialog:not([open]){display:none}
.photo-dialog[open]{animation:volt-enter .2s ease-out}
.photo-dialog::backdrop{background:#000c}
.photo-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.photo-dialog-header h2{margin:0;font-size:clamp(18px,3vw,24px);line-height:1.4;overflow-wrap:anywhere}
.photo-dialog-close{flex:none;min-width:64px;min-height:44px;padding:10px 14px;background:#2b2b2b;color:white;border:0;border-radius:3px;font-size:14px;cursor:pointer}
.photo-dialog-stage{display:grid;place-items:center;min-height:120px;background:#101010}
.photo-dialog-stage img{display:block;width:100%;max-height:calc(100dvh - 150px);object-fit:contain}
.photo-dialog-error{padding:24px;font-size:16px;line-height:1.7}
body.photo-dialog-open{overflow:hidden}
@media(max-width:767px){.photo-dialog{padding:12px}.photo-dialog-header{gap:8px;margin-bottom:12px}.photo-dialog-header h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
 .motion-enter,.button,.product-photo,.shop-photo-view img{transform:none!important}
}
