/* Спокойное движение предмета и сигнала, единая сетка с основной формой. */
.stock-submit-pending{display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:wait;opacity:1!important}
.stock-submit-pending::before{content:'';width:15px;height:15px;flex:none;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:stock-submit-spin .8s linear infinite}
.stock-submit-progress{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid var(--border);min-width:0;animation:stock-submit-appear .35s cubic-bezier(.16,1,.3,1)}
.stock-submit-progress[hidden]{display:none}
.stock-submit-motion{width:48px;height:52px;color:var(--teal);perspective:180px}
.stock-submit-motion svg{display:block;width:48px;height:48px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linejoin:round;stroke-linecap:round}
.stock-submit-cube{fill:var(--surface-2);transform-origin:28px 30px;animation:stock-submit-float 2.8s cubic-bezier(.45,0,.55,1) infinite}
.stock-submit-shadow{fill:currentColor;stroke:none;opacity:.08;transform-origin:28px 41px;animation:stock-submit-shadow 2.8s ease-in-out infinite}
.stock-submit-seam{opacity:.45}.stock-submit-trace{stroke-dasharray:12 65;stroke-dashoffset:78;opacity:.75;animation:stock-submit-trace 2.1s ease-in-out infinite}.stock-submit-signal{fill:currentColor;stroke:none;opacity:0;animation:stock-submit-signal 2.1s ease-out infinite}
.stock-submit-copy{display:grid;gap:5px;min-width:0}.stock-submit-copy>p{font:500 13px/1.45 var(--font-body);color:var(--text-soft);margin:0;overflow-wrap:anywhere}
.stock-submit-copy>small{font:400 12px/1.45 var(--font-body);color:var(--text-muted);overflow-wrap:anywhere}.stock-submit-copy>small:empty{display:none}
.stock-submit-steps{display:flex;align-items:center;gap:0;list-style:none;margin:4px 0 0;padding:0;min-width:0;font:400 11px/1.4 var(--font-body);color:var(--text-muted)}
.stock-submit-steps li{display:flex;align-items:center;gap:6px;min-width:0;transition:color .3s}.stock-submit-steps li::before{content:'';width:4px;height:4px;flex:none;border-radius:50%;background:currentColor;opacity:.45;transition:box-shadow .3s,opacity .3s}
.stock-submit-steps li+li::before{margin-left:12px}.stock-submit-steps .is-current{color:var(--teal)}.stock-submit-steps .is-current::before{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 12%,transparent);animation:stock-submit-pulse 1.8s ease-in-out infinite}.stock-submit-steps .is-complete{color:var(--text-soft)}
.stock-submit-progress[data-phase=checking] .stock-submit-cube{animation:stock-submit-check 2.4s ease-in-out infinite}
.stock-submit-progress:is([data-phase=done],[data-phase=error]) .stock-submit-motion *{animation:none}.stock-submit-progress[data-phase=done]{color:var(--teal)}.stock-submit-progress[data-phase=error] .stock-submit-motion{color:var(--amber)}
@keyframes stock-submit-spin{to{transform:rotate(360deg)}}
@keyframes stock-submit-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes stock-submit-float{0%,100%{transform:translateY(1px) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1deg)}}
@keyframes stock-submit-shadow{0%,100%{opacity:.09;transform:scaleX(1)}50%{opacity:.04;transform:scaleX(.84)}}
@keyframes stock-submit-trace{0%{stroke-dashoffset:78;opacity:0}25%{opacity:.85}85%,100%{stroke-dashoffset:-12;opacity:0}}
@keyframes stock-submit-signal{0%,30%{opacity:0;transform:translateY(0)}40%{opacity:.8}85%,100%{opacity:0;transform:translateY(-16px)}}
@keyframes stock-submit-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--teal) 4%,transparent)}}
@keyframes stock-submit-check{0%,100%{transform:translateY(-1px)}50%{transform:translateY(-1px) scale(.96)}}
@media(max-width:600px){.stock-submit-progress{grid-template-columns:40px minmax(0,1fr);gap:10px}.stock-submit-motion,.stock-submit-motion svg{width:40px;height:44px}.stock-submit-steps li+li::before{margin-left:10px}}
@media(prefers-reduced-motion:reduce){.stock-submit-progress,.stock-submit-progress *,.stock-submit-pending::before{animation:none!important;transition:none!important}.stock-submit-pending::before{border-right-color:currentColor;opacity:.6}.stock-submit-trace,.stock-submit-signal{display:none}}

.item>.stock-submit-progress{grid-column:1/-1;width:100%;margin-top:4px}.stock-submit-progress.is-removing .stock-submit-cube{animation:stock-submit-remove 2s ease-in-out infinite}@keyframes stock-submit-remove{0%,100%{transform:translateY(1px)}50%{transform:translateY(-7px);opacity:.4}}
@media(prefers-reduced-motion:reduce){.stock-submit-progress.is-removing .stock-submit-cube{animation:none}}
