.tt-async-activity{position:fixed;bottom:16px;right:20px;z-index:var(--z-toast-top,200000);display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--r-md,8px);background:var(--c-card);color:var(--c-text2);box-shadow:0 4px 18px color-mix(in srgb,var(--c-text) 12%,transparent);font:13px/1.5 var(--font);pointer-events:none}
.tt-async-activity[hidden]{display:none}
.tt-async-feedback{min-height:34px}
.tt-async-activity[popover]{inset:auto 20px 16px auto;margin:0}
.tt-async-activity::before,.tt-async-spinner{content:'';display:inline-block;flex:0 0 auto;width:14px;height:14px;border:2px solid var(--c-border);border-top-color:var(--c-accent);border-radius:50%;animation:tt-async-spin .8s linear infinite}
.tt-async-activity-elapsed{color:var(--c-text3);font-variant-numeric:tabular-nums;white-space:nowrap}
.tt-async-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:30px;color:var(--c-text2);font-size:12px;line-height:1.5}
.tt-async-status.is-error{color:var(--c-bad)}
.tt-async-status>span{min-width:0;overflow-wrap:anywhere}
.tt-async-line{height:3px;overflow:hidden;background:var(--c-border);border-radius:var(--r-pill,999px)}
.tt-async-line::after{content:'';display:block;width:35%;height:100%;background:var(--c-accent);animation:tt-async-slide 1.5s ease-in-out infinite}
.tt-async-skeleton{display:grid;gap:10px;padding:16px;min-height:160px}
.tt-async-skeleton span{height:16px;background:var(--c-border);border-radius:var(--r-sm,4px);animation:tt-async-pulse 1.5s ease-in-out infinite}
.tt-async-skeleton span:first-child{width:40%;height:24px}
@keyframes tt-async-spin{to{transform:rotate(360deg)}}
@keyframes tt-async-slide{from{transform:translateX(-100%)}to{transform:translateX(390%)}}
@keyframes tt-async-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.tt-async-activity::before,.tt-async-spinner,.tt-async-line::after,.tt-async-skeleton span{animation:none}}
@media(max-width:720px){.tt-async-activity{bottom:calc(12px + env(safe-area-inset-bottom));right:12px;font-size:12px}}
