.fs-shape-loader{--path:#2f3545;--dot:#5628ee;--duration:3s;width:36px;height:36px;position:relative;display:inline-block;margin:0 12px}.dark .fs-shape-loader{--path:#94a3b8;--dot:#818cf8}.fs-shape-loader:before{content:"";width:5px;height:5px;border-radius:50%;position:absolute;display:block;background:var(--dot);top:30px;left:16px;transform:translate(-15px,-15px);animation:fs-shape-dotRect var(--duration) cubic-bezier(.785,.135,.15,.86) infinite}.fs-shape-loader svg{display:block;width:100%;height:100%}.fs-shape-loader svg circle,.fs-shape-loader svg polygon,.fs-shape-loader svg rect{fill:none;stroke:var(--path);stroke-width:10px;stroke-linejoin:round;stroke-linecap:round}.fs-shape-loader svg polygon{stroke-dasharray:145 76 145 76;stroke-dashoffset:0;animation:fs-shape-pathTriangle var(--duration) cubic-bezier(.785,.135,.15,.86) infinite}.fs-shape-loader svg rect{stroke-dasharray:192 64 192 64;stroke-dashoffset:0;animation:fs-shape-pathRect 3s cubic-bezier(.785,.135,.15,.86) infinite}.fs-shape-loader svg circle{stroke-dasharray:150 50 150 50;stroke-dashoffset:75;animation:fs-shape-pathCircle var(--duration) cubic-bezier(.785,.135,.15,.86) infinite}.fs-shape-loader.triangle{width:40px}.fs-shape-loader.triangle:before{left:17px;transform:translate(-8px,-15px);animation:fs-shape-dotTriangle var(--duration) cubic-bezier(.785,.135,.15,.86) infinite}@keyframes fs-shape-pathTriangle{33%{stroke-dashoffset:74}66%{stroke-dashoffset:147}to{stroke-dashoffset:221}}@keyframes fs-shape-dotTriangle{33%{transform:translate(0)}66%{transform:translate(8px,-15px)}to{transform:translate(-8px,-15px)}}@keyframes fs-shape-pathRect{25%{stroke-dashoffset:64}50%{stroke-dashoffset:128}75%{stroke-dashoffset:192}to{stroke-dashoffset:256}}@keyframes fs-shape-dotRect{25%{transform:translate(0)}50%{transform:translate(15px,-15px)}75%{transform:translateY(-30px)}to{transform:translate(-15px,-15px)}}@keyframes fs-shape-pathCircle{25%{stroke-dashoffset:125}50%{stroke-dashoffset:175}75%{stroke-dashoffset:225}to{stroke-dashoffset:275}}.fs-shape-loader-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0}@media (prefers-reduced-motion:reduce){.fs-shape-loader svg circle,.fs-shape-loader svg polygon,.fs-shape-loader svg rect,.fs-shape-loader:before{animation:none}}