/* Gaming motion: brief blue accents and tactile state changes; no looping flashes. */
:root{--motion-fast:140ms;--motion-enter:300ms;--motion-ease:cubic-bezier(.2,.7,.2,1)}
.fade-in{animation:none!important}
#main h1{position:relative}
#main h1::after{content:"";display:block;width:48px;height:3px;margin-top:16px;background:var(--blue);transform-origin:left;animation:gz-accent 420ms var(--motion-ease) both;pointer-events:none}
.hero h1::after{display:none!important}
.button,.chip,.icon-button,.save-button,.game-pills a,.sim-console-nav a,.sim-view-toggle button{transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}
.button:active:not(:disabled),.chip:active:not(:disabled),.icon-button:active:not(:disabled){box-shadow:inset 0 0 0 2px #82bfff80}
.button:focus-visible,.chip:focus-visible,.timeline-cell:focus-visible,.sim-console-nav a:focus-visible{outline:2px solid #95c8ff;outline-offset:3px}
.venue-card,.sim-item-card,.sim-panel{transition:border-color 180ms ease,box-shadow 180ms ease}
@media(hover:hover){.venue-card:hover,.sim-item-card:hover{border-color:#398ff0;box-shadow:inset 0 2px 0 #398ff0}.button.primary:hover{box-shadow:0 0 0 3px #318dff25}.sim-console-nav a:hover{box-shadow:inset 3px 0 #318dff}}
.timeline-cell{transition:background-color 100ms ease,border-color 100ms ease;transform:none!important}
input,select,textarea{transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #318dff20}
dialog[open]{animation:gz-dialog 180ms var(--motion-ease)}
dialog[open]::backdrop{animation:gz-backdrop 180ms ease}
details[open]>p{animation:gz-content 180ms ease}
@keyframes gz-accent{from{transform:scaleX(.15);opacity:.4}to{transform:scaleX(1);opacity:1}}
@keyframes gz-dialog{from{opacity:.4;translate:0 6px}to{opacity:1;translate:0 0}}
@keyframes gz-backdrop{from{opacity:0}to{opacity:1}}
@keyframes gz-content{from{opacity:.6}to{opacity:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
