.upload-progress{margin:0 0 9px 92px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--violet) 45%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--panel2) 88%,var(--violet));box-shadow:0 8px 24px #0002}
.upload-progress[hidden]{display:none!important}
.upload-progress-main{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0}
.upload-progress-icon{position:relative;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--violet) 20%,var(--panel));color:var(--pink)}
.upload-progress-icon::before{content:"\2191";font-size:16px;font-weight:900;line-height:1}
.upload-progress-icon i{position:absolute;inset:3px;border:1px solid transparent;border-top-color:currentColor;border-radius:50%;animation:trejj-upload-spin 1.1s linear infinite}
.upload-progress-copy{display:grid;min-width:0;gap:1px;line-height:1.35}
.upload-progress-copy strong,.upload-progress-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.upload-progress-copy strong{font-size:12px;color:var(--text)}
.upload-progress-copy small{font-size:11px;color:var(--muted)}
.upload-progress-value{min-width:36px;color:var(--pink);font-size:11px;font-weight:850;text-align:right;font-variant-numeric:tabular-nums}
.composer .upload-progress-cancel{position:static!important;inset:auto!important;width:auto!important;min-width:62px;height:38px!important;padding:0 12px;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--panel)!important;color:var(--text)!important;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.composer .upload-progress-cancel:hover,.composer .upload-progress-cancel:focus-visible{border-color:var(--violet)!important;outline:2px solid color-mix(in srgb,var(--violet) 55%,transparent);outline-offset:2px}
.upload-progress-track{position:relative;display:block;height:4px;margin-top:9px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line) 76%,transparent)}
.upload-progress-track i{position:absolute;inset:0 auto 0 0;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--pink));box-shadow:0 0 9px color-mix(in srgb,var(--violet) 65%,transparent);transition:width .12s linear}
.upload-progress.is-indeterminate .upload-progress-track i{width:38%;transition:none;animation:trejj-upload-track 1.45s ease-in-out infinite}
.composer.uploading .composer-row>button:disabled{cursor:not-allowed;opacity:.48}
@keyframes trejj-upload-spin{to{transform:rotate(1turn)}}
@keyframes trejj-upload-track{from{transform:translateX(-110%)}to{transform:translateX(365%)}}
@media(max-width:760px){.upload-progress{margin-left:0;padding:9px 10px}.upload-progress-main{grid-template-columns:30px minmax(0,1fr) auto auto;gap:7px}.upload-progress-icon{width:29px;height:29px}.upload-progress-copy strong{font-size:11px}.upload-progress-copy small{font-size:10px}.composer .upload-progress-cancel{min-width:64px;height:44px!important;padding:0 10px}.upload-progress-track{margin-top:7px}}
@media(max-width:430px){.upload-progress-main{grid-template-columns:30px minmax(0,1fr) auto}.upload-progress-value{grid-column:2;text-align:left}.composer .upload-progress-cancel{grid-column:3;grid-row:1/3}.upload-progress-copy small{max-width:46vw}}
@media(prefers-reduced-motion:reduce){.upload-progress-icon i,.upload-progress.is-indeterminate .upload-progress-track i{animation:none}.upload-progress.is-indeterminate .upload-progress-track i{width:100%;opacity:.55}}
@media(forced-colors:active){.upload-progress,.composer .upload-progress-cancel,.upload-progress-track{border:1px solid CanvasText!important}.upload-progress-track i{background:Highlight;box-shadow:none}}
