.ai-activity{display:grid;justify-items:center;gap:12px;padding:32px 20px;text-align:center;border:1px solid var(--line,#e8e4ef);border-radius:18px;background:radial-gradient(ellipse at 50% 10%,#f1edff,transparent 72%);min-height:220px}.ai-activity>strong{font:inherit;font-weight:600;font-size:16px}.ai-activity>p{max-width:420px;margin:0;color:var(--muted,#706a7c);font:inherit;font-size:13px;line-height:1.7}.ai-activity-orbit{position:relative;width:76px;height:76px;display:grid;place-items:center}.ai-activity-orbit>div{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:var(--purple,#7955d1);color:white;box-shadow:0 6px 24px #8067c53b;animation:ai-activity-breathe 2.6s ease-in-out infinite}.ai-activity-orbit .ui-icon{width:23px;height:23px}.ai-activity-orbit>span{position:absolute;inset:0;border:1px solid #b7a6ec;border-radius:50%;animation:ai-activity-orbit 5s linear infinite}.ai-activity-orbit>span:after{content:"";position:absolute;top:5px;left:11px;width:7px;height:7px;background:var(--purple,#7955d1);border-radius:50%}.ai-activity-orbit>span:nth-child(2){inset:7px;animation-direction:reverse;animation-duration:7s}.ai-activity-dots{display:flex;gap:6px}.ai-activity-dots i{width:5px;height:5px;border-radius:50%;background:var(--purple,#7955d1);animation:ai-activity-breathe 1.5s ease-in-out infinite}.ai-activity-dots i:nth-child(2){animation-delay:.2s}.ai-activity-dots i:nth-child(3){animation-delay:.4s}.ai-activity-compact{min-height:0;padding:18px;grid-template-columns:48px 1fr;text-align:left;justify-items:start;gap:6px 16px}.ai-activity-compact .ai-activity-orbit{grid-row:span 2;transform:scale(.6);transform-origin:left center;width:48px;height:48px}.ai-activity-compact>p{grid-column:2}.ai-activity-compact .ai-activity-dots{display:none}@keyframes ai-activity-orbit{to{transform:rotate(360deg)}}@keyframes ai-activity-breathe{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.ai-activity-orbit>div,.ai-activity-orbit>span,.ai-activity-dots i{animation:none}}

/* Shared mascot: task labels remain supplied by the actual job state. */
.ai-activity-orbit{width:96px;height:96px}.ai-activity-mascot{width:88px;height:88px;object-fit:contain;position:relative;z-index:1;animation:ai-mascot-float 3s ease-in-out infinite}.ai-activity-orbit>span{opacity:.35}.ai-activity-compact .ai-activity-orbit{transform:none;width:56px;height:56px}.ai-activity-compact .ai-activity-mascot{width:56px;height:56px}.ai-activity-compact{grid-template-columns:56px 1fr}@keyframes ai-mascot-float{50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.ai-activity-mascot{animation:none}}
.ai-activity-compact{align-items:center}.ai-activity-compact:not(:has(>p)) .ai-activity-orbit{grid-row:auto}
