/* GENERATED by build.mjs (the loader's one source of truth): do not edit by hand; tune build.mjs and run `node site/assets/loader/build.mjs`.
   The IcedCoffee ice loader. Markup: ice-loader.html. The cube's frames:
   ice-loader-sprite.svg (once per document, by <use href> to the file or inlined). Theme: --ic-loader-size (default 1em),
   color or --ic-loader-line (the lines and solids, default currentColor), --ic-loader-tint (the ice faces),
   --ic-loader-glint (the lit top edge), --ic-loader-duration (one loop), --ic-loader-calm-duration (the calm pulse),
   --ic-loader-stroke / --ic-loader-knockout (line and gap width, strip units).
   Look: Solid knockout, faceted; others: none. Take: All at once, nonstop; others: none.
   Under 24 px the loader is calm on its own (.ic-loader--full: full motion at any size); .ic-loader--calm:
   calm at any size; prefers-reduced-motion: calm at any size. */
.ic-loader { --_d: var(--ic-loader-duration, 1.2s); position: relative; display: inline-block; flex: none; vertical-align: middle;
  width: var(--ic-loader-size, 1em); height: var(--ic-loader-size, 1em); container-type: size; pointer-events: none; }
.ic-loader__cube { position: absolute; width: 50%; height: 50%; }
.ic-loader__cube--a { left: 0; top: 50%; }
.ic-loader__cube--b { left: 25%; top: 0; }
.ic-loader__cube--c { left: 50%; top: 50%; }
.ic-loader__hop, .ic-loader__win { display: block; width: 100%; height: 100%; }
.ic-loader__win { overflow: hidden; }
.ic-loader__cube--a .ic-loader__win { transform: scaleX(-1); }
.ic-loader__strip { display: block; width: 3600%; height: 100%; will-change: transform; --_sw: 9; --_back: .25; --_glint: .8; --_faces: 1; --_ko: 8; --_lines: 1; --_solid: 0; --_shade: 0; }
.ic-loader__strip svg { display: block; width: 100%; height: 100%; overflow: hidden; }
.ic-loader__hop { will-change: transform; }
.ic-loader__strip { --_sw: var(--ic-loader-stroke, 6.5); --_back: 0.28; --_glint: 0.9; --_ko: var(--ic-loader-knockout, 6); }
@container (max-width: 56px) { .ic-loader__strip { --_sw: var(--ic-loader-stroke, 7.5); --_back: 0.26; --_glint: 0.85; --_ko: var(--ic-loader-knockout, 7); } }
@container (max-width: 40px) { .ic-loader__strip { --_sw: var(--ic-loader-stroke, 9); --_back: 0.22; --_glint: 0.75; --_ko: var(--ic-loader-knockout, 8.5); } }
@container (max-width: 28px) { .ic-loader__strip { --_sw: var(--ic-loader-stroke, 11); --_back: 0; --_glint: 0.6; --_ko: var(--ic-loader-knockout, 10.5); } }
@container (max-width: 20px) { .ic-loader__strip { --_sw: var(--ic-loader-stroke, 13); --_back: 0; --_glint: 0; --_ko: var(--ic-loader-knockout, 13); } }
.ic-loader .ic-loader__strip { --_lines: 0; --_solid: 1; --_shade: 1; }
@keyframes ic-loader-turn-nonstop { 0% { transform: translateX(-0%); animation-timing-function: steps(36, end); } 100% { transform: translateX(-100%); } }
.ic-loader .ic-loader__cube--a .ic-loader__strip { animation: ic-loader-turn-nonstop var(--_d) infinite; animation-delay: 0s; }
.ic-loader .ic-loader__cube--a .ic-loader__hop { animation: none; animation-delay: 0s; }
.ic-loader .ic-loader__cube--b .ic-loader__strip { animation: ic-loader-turn-nonstop var(--_d) infinite; animation-delay: 0s; }
.ic-loader .ic-loader__cube--b .ic-loader__hop { animation: none; animation-delay: 0s; }
.ic-loader .ic-loader__cube--c .ic-loader__strip { animation: ic-loader-turn-nonstop var(--_d) infinite; animation-delay: 0s; }
.ic-loader .ic-loader__cube--c .ic-loader__hop { animation: none; animation-delay: 0s; }
@keyframes ic-loader-calm { 0%, 100% { opacity: 1; } 50% { opacity: .42; } }
.ic-loader.ic-loader--calm .ic-loader__strip, .ic-loader.ic-loader--calm .ic-loader__hop { animation: none; }
.ic-loader.ic-loader--calm .ic-loader__cube--a .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: 0s; }
.ic-loader.ic-loader--calm .ic-loader__cube--b .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.6667); }
.ic-loader.ic-loader--calm .ic-loader__cube--c .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.3333); }
@container (max-width: 23.98px) {
.ic-loader:not(.ic-loader--full) .ic-loader__strip, .ic-loader:not(.ic-loader--full) .ic-loader__hop { animation: none; }
.ic-loader:not(.ic-loader--full) .ic-loader__cube--a .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: 0s; }
.ic-loader:not(.ic-loader--full) .ic-loader__cube--b .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.6667); }
.ic-loader:not(.ic-loader--full) .ic-loader__cube--c .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.3333); }
}
@media (prefers-reduced-motion: reduce) {
.ic-loader.ic-loader .ic-loader__strip, .ic-loader.ic-loader .ic-loader__hop { animation: none; }
.ic-loader.ic-loader .ic-loader__cube--a .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: 0s; }
.ic-loader.ic-loader .ic-loader__cube--b .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.6667); }
.ic-loader.ic-loader .ic-loader__cube--c .ic-loader__win { animation: ic-loader-calm var(--ic-loader-calm-duration, 2.6s) ease-in-out infinite; animation-delay: calc(var(--ic-loader-calm-duration, 2.6s) * -0.3333); }
}
