/* Meltech motion identity: Corporate, rigid materials, no bounce.
   Primary: short spatial entry. Secondary: light/shadow feedback.
   Ambient: settling surface contrast; no decorative continuous motion. */
:root { --motion-quick:120ms; --motion-standard:240ms; --motion-slow:360ms; --motion-ease:cubic-bezier(.2,0,0,1); --motion-exit:cubic-bezier(.3,0,1,1); }
@keyframes meltech-enter { from { opacity:0; transform:translateY(12px) scale(.995); } to { opacity:1; transform:translateY(0) scale(1); } }
@keyframes meltech-notice { from { opacity:0; transform:translateY(8px) scale(.98); } to { opacity:1; transform:translateY(0) scale(1); } }
@media (prefers-reduced-motion:no-preference) {
  /* Routes own entrances so live redraws do not repeatedly animate cards. */
  #view .rise,#view .rise-2,#view .rise-3 { animation:none; }
  #mmtLogin > div { animation:meltech-enter var(--motion-slow) var(--motion-ease) both; }
  #mmtLogin > div > div:first-child { animation:meltech-enter var(--motion-standard) var(--motion-ease) 100ms both; }
  .btn,.icon-btn,#mmtLogin button { transition:transform var(--motion-quick) var(--motion-ease),box-shadow var(--motion-standard) var(--motion-ease),background-color 80ms var(--motion-ease),border-color 80ms var(--motion-ease); }
  .btn:not(:disabled):active,.icon-btn:not(:disabled):active,#mmtLogin button:not(:disabled):active { transform:translateY(1px) scale(.98); }
  .btn svg,.icon-btn svg { transition:transform var(--motion-quick) var(--motion-ease); }
  .btn:not(:disabled):active svg { transform:translateY(1px); }
  .nav-item { transition:background-color 80ms var(--motion-ease),color 80ms var(--motion-ease),box-shadow var(--motion-standard) var(--motion-ease); }
  .field input,.field textarea,.field select,.input,#mmtLogin input { transition:border-color var(--motion-quick) var(--motion-ease),box-shadow var(--motion-standard) var(--motion-ease); }
  .drawer { transition:transform 200ms var(--motion-exit); }
  .drawer.open { transition-duration:320ms; transition-timing-function:var(--motion-ease); }
  .palette { animation:meltech-enter 320ms var(--motion-ease) both; }
  .toast { animation:meltech-notice var(--motion-standard) var(--motion-ease) both; }
  .overlay.open { animation:none; }
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .icon-btn:not(:disabled):hover,#mmtLogin button:not(:disabled):hover { transform:translateY(-1px); }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
