/* A quiet tactile response: short, consistent and optional. */
:root{--ease-out:cubic-bezier(.2,.65,.3,1)}
.button,.nav-item,.suggestion,.operator-input,.thread,.toggle,.company-mark{transition:background-color 150ms var(--ease-out),border-color 150ms var(--ease-out),box-shadow 150ms var(--ease-out),transform 120ms var(--ease-out)}
.button:hover{box-shadow:0 2px 5px #173b2510}.button.primary:hover{box-shadow:0 3px 9px #183e2525}.button:active,.suggestion:active,.operator-input:active{transform:translateY(1px) scale(.985);box-shadow:0 1px 2px #173b2512}.nav-item:active{transform:scale(.988)}.toggle:before{transition:transform 150ms var(--ease-out),left 150ms var(--ease-out)}
.main>.page-heading,.main>.metrics,.main>.grid-main,.main>.journey-list,.main>.full-grid,.main>.details-grid{animation:arrive 180ms var(--ease-out) both}.main>.metrics{animation-delay:20ms}.main>.grid-main{animation-delay:40ms}dialog[open]{animation:dialog-in 160ms var(--ease-out)}dialog[open]::backdrop{animation:backdrop-in 140ms ease-out}.panel:focus-within{outline-offset:2px}.input{transition:border-color 140ms,box-shadow 140ms}.input:focus{box-shadow:0 0 0 3px #7b9d6812}.thread:hover{background:#f5f8f0}.suggestion:hover{background:#f5f9ef;border-color:#b6cba6;box-shadow:0 2px 7px #2647210a}
@keyframes arrive{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(5px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.button:active,.suggestion:active,.operator-input:active,.nav-item:active{transform:none}}
