.cas-mark { display: block; overflow: visible; color: inherit; }
.cas-a { animation-duration: 1800ms; animation-delay: var(--cas-delay, 0ms); animation-fill-mode: both; animation-iteration-count: 1; animation-timing-function: linear; animation-play-state: paused; }
.cas-mark.is-playing .cas-a, .is-playing .cas-mark .cas-a { animation-play-state: running; }
.cas-outline { fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linejoin: miter; stroke-dasharray: 1000; stroke-dashoffset: 0; opacity: 0; animation-name: cas-outline; }
.cas-fillin { fill: currentColor; fill-rule: evenodd; opacity: 1; animation-name: cas-fillin; }
.cas-press { transform-origin: 32px 32px; transform: scale(1); animation-name: cas-press; }
.cas-echo { fill: none; stroke: var(--color-accent-fill, #D9831A); stroke-width: 2.5; transform-origin: 32px 32px; transform: scale(1.75); opacity: 0; animation-name: cas-echo; }
@keyframes cas-outline { 0% { stroke-dashoffset: 1000; opacity: 1; animation-timing-function: cubic-bezier(.65,0,.35,1); } 50% { stroke-dashoffset: 0; opacity: 1; } 63.889% { stroke-dashoffset: 0; opacity: 0; } 100% { stroke-dashoffset: 0; opacity: 0; } }
@keyframes cas-fillin { 0% { opacity: 0; } 47.222% { opacity: 0; } 61.111% { opacity: 1; } 100% { opacity: 1; } }
@keyframes cas-press { 0% { transform: scale(1); } 58.889% { transform: scale(1); animation-timing-function: cubic-bezier(.2,.8,.3,1); } 65.556% { transform: scale(1.06); animation-timing-function: cubic-bezier(.2,.8,.3,1); } 77.778% { transform: scale(1); } 100% { transform: scale(1); } }
@keyframes cas-echo { 0% { transform: scale(1); opacity: 0; } 58.833% { transform: scale(1); opacity: 0; } 58.889% { transform: scale(1); opacity: 1; animation-timing-function: cubic-bezier(.1,.6,.3,1); } 97.778% { transform: scale(1.75); opacity: 0; } 100% { transform: scale(1.75); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .cas-a { animation: none !important; } }
