/* Kubear Play motion kit (window.KM). Transform/opacity only. Pairs with motion.js. */
:root{--km-fast:120ms;--km-base:220ms;--km-slow:420ms;--km-pop:360ms;--km-ease-out:cubic-bezier(.2,.8,.2,1);--km-ease-snap:cubic-bezier(.34,1.56,.64,1);--km-ease-stamp:cubic-bezier(.5,0,.2,1)}
.km-num{font-variant-numeric:tabular-nums}
/* marker swipe */
.km-mark{position:relative;isolation:isolate}
.km-mark::before{content:"";position:absolute;left:-.12em;right:-.12em;bottom:.06em;height:.52em;background:#F6A91B;z-index:-1;transform:scaleX(0);transform-origin:left center;transition:transform var(--km-slow) var(--km-ease-out)}
.km-mark.km-mark-on::before{transform:scaleX(1)}
/* pressed state (KM.press) */
.km-pressed{transform:translate(3px,3px)!important;box-shadow:1px 1px 0 var(--ink,#14110F)!important;transition:transform var(--km-fast) var(--km-ease-out),box-shadow var(--km-fast) var(--km-ease-out)}
/* particle layer */
.km-layer{position:fixed;left:0;top:0;width:0;height:0;z-index:2147483000;pointer-events:none;contain:layout style}
.km-piece{position:fixed;left:0;top:0;display:none;pointer-events:none;border:1.5px solid #14110F;opacity:0}
.km-piece.km-on{display:block}
.km-piece.km-coin{width:14px;height:14px;border-radius:50%;background:#F6A91B}
.km-piece.km-chip{width:10px;height:6px;border-radius:2px}
.km-piece.km-label{width:auto;height:auto;padding:2px 8px;border-radius:999px;background:#FFF4DC;color:#14110F;font:700 11px/1.4 'Kubear Mono',ui-monospace,monospace;white-space:nowrap}
/* Calm motion (setting) or OS reduced motion */
html.km-reduce *,html.km-reduce *::before,html.km-reduce *::after{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
html.km-reduce .km-mark::before{transform:scaleX(1);transition:none}
html.km-reduce .km-pressed{transform:none!important}
html.km-reduce .km-layer{display:none}
@media (prefers-reduced-motion:reduce){.km-mark::before{transform:scaleX(1);transition:none}.km-pressed{transform:none!important}.km-layer{display:none}}
