.working-bubble{border-color:var(--brand-hover)!important;background:var(--brand-soft)!important;box-shadow:0 0 0 1px var(--brand-primary) inset}
.working-bubble p{display:flex;align-items:center;gap:9px}
.working-spinner{width:13px;height:13px;border:2px solid var(--brand-primary);border-top-color:var(--brand-deep);border-radius:50%;display:inline-block;flex:0 0 auto;animation:goal-spin .8s linear infinite}
.working-hint{display:block;margin-top:8px;color:var(--muted);font-size:10px;line-height:1.45}
.error-bubble{border-color:var(--danger)!important;background:var(--surface)!important;color:var(--ink)}
.retry-ask{margin-top:11px;border:1px solid var(--brand-primary);background:var(--surface);color:var(--brand-deep);border-radius:9px;padding:7px 10px;font-size:11px;font-weight:750;cursor:pointer}
.retry-ask:hover{background:var(--brand-soft)}
@keyframes goal-spin{to{transform:rotate(360deg)}
}
.architecture-progress{margin-top:16px;border:1px solid var(--brand-primary);background:var(--surface);border-radius:12px;padding:13px 14px}
.architecture-progress-row{display:flex;align-items:center;gap:10px;font-size:12px}
.architecture-progress-row strong{flex:1}
.architecture-progress-row span:last-child{font-variant-numeric:tabular-nums;color:#6b7280;font-weight:750}
.architecture-progress p{margin:7px 0 0 26px;color:var(--muted);font-size:11px;line-height:1.45}
.progress-spinner{width:14px;height:14px;border:2px solid var(--brand-primary);border-top-color:var(--brand-deep);border-radius:50%;animation:architectureSpin .8s linear infinite}
@keyframes architectureSpin{to{transform:rotate(360deg)}
}
/* Reduced motion stops the turn but keeps a slow fade, so a spinner still reads as working instead of frozen. */
@keyframes reduced-motion-working{50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.working-spinner,.progress-spinner,.next-graph-spinner{animation:reduced-motion-working 1.6s ease-in-out infinite!important}}
:is([data-motion="reduced"],body:has(>#workspaceShell[data-motion="reduced"])) :is(.working-spinner,.progress-spinner,.next-graph-spinner){animation:reduced-motion-working 1.6s ease-in-out infinite!important}
