/* MoxKit statistic widget. */
/* Counter widget: icon + content box laid out by the Icon > Position control. */
.moxkit-stat{display:flex;flex-direction:column;align-items:var(--moxkit-stat-h,center);gap:14px;text-align:center}
.moxkit-stat-icon{font-size:40px;color:var(--moxkit-accent);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:1;transition:color .25s,background-color .25s,transform .25s}
.moxkit-stat:hover .moxkit-stat-icon{transform:translateY(-2px)}
.moxkit-stat-content{min-width:0;max-width:100%}
.moxkit-stat-number{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--moxkit-ink);font-variant-numeric:tabular-nums;display:flex;align-items:baseline;justify-content:var(--moxkit-stat-h,center);gap:2px}
.moxkit-stat-affix{font-size:.7em;font-weight:750}
.moxkit-stat-title{font-size:16px;font-weight:600;margin:10px 0 0;color:inherit}
.moxkit-stat .moxkit-description{margin:10px 0 0}
/* Number animation. Hidden states apply only once JS has armed the counter. */
.moxkit-stat-value{display:inline-flex}
.moxkit-stat.is-done .moxkit-stat-number{animation:moxkit-stat-pulse .6s cubic-bezier(.2,.8,.2,1)}
.moxkit-odo-digit{display:inline-block;height:1.1em;overflow:hidden;line-height:1.1;vertical-align:bottom}
.moxkit-odo-strip{display:block;transform:translateY(0);transition-property:transform;transition-timing-function:cubic-bezier(.2,.8,.2,1)}
.moxkit-odo-strip>span{display:block;height:1.1em}
.moxkit-odo-strip.is-slot{transition-timing-function:cubic-bezier(.3,1.35,.5,1)}
.moxkit-counter-char{display:inline-block;white-space:pre}
.moxkit-counter-char.is-hidden{display:none}
.moxkit-counter-char.is-scrambling:not(.is-locked){opacity:.5}
.moxkit-counter-char.is-waiting{visibility:hidden}
.moxkit-counter-char.is-wave{animation-name:moxkit-char-wave;animation-fill-mode:both;animation-timing-function:cubic-bezier(.3,1.4,.5,1)}
.moxkit-counter-char.is-flip{animation-name:moxkit-char-flip;animation-fill-mode:both;animation-timing-function:cubic-bezier(.2,.8,.2,1);transform-origin:50% 0;backface-visibility:hidden}
.moxkit-counter-char.is-blur{animation-name:moxkit-char-blur;animation-fill-mode:both;animation-timing-function:ease-out}
.moxkit-counter-char.is-drop{animation-name:moxkit-char-drop;animation-fill-mode:both;animation-timing-function:linear}
.moxkit-counter-char.is-waiting{animation-name:none}
.moxkit-counter-caret{display:inline-block;width:.08em;height:.9em;margin-left:.04em;background:currentColor;align-self:center;animation:moxkit-caret 1s steps(1) infinite}
@media(max-width:767px){
 .moxkit-stat-number{font-size:36px}
}
@keyframes moxkit-stat-pulse{40%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes moxkit-char-wave{0%{opacity:0;transform:translateY(.6em)}100%{opacity:1;transform:none}}
@keyframes moxkit-char-flip{0%{opacity:0;transform:perspective(400px) rotateX(-90deg)}100%{opacity:1;transform:perspective(400px) rotateX(0)}}
@keyframes moxkit-char-blur{0%{opacity:0;filter:blur(.3em);transform:scale(1.4)}100%{opacity:1;filter:blur(0);transform:none}}
@keyframes moxkit-char-drop{0%{opacity:0;transform:translateY(-1.2em)}45%{opacity:1;transform:translateY(0)}65%{transform:translateY(-.25em)}82%{transform:translateY(0)}92%{transform:translateY(-.07em)}100%{transform:translateY(0)}}
@keyframes moxkit-caret{50%{opacity:0}}
