/* ═══ Queued Actions Tray ════════════════════════════════════════════════════ */

.qa-tray {
  position: fixed;
  bottom: 72px;
  right: 20px;
  width: 280px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  z-index: var(--z-toast);
  pointer-events: none;
}

.qa-tray > * {
  pointer-events: auto;
}

.qa-row {
  background: var(--surface-container-highest);
  border: 1px solid var(--outline-variant);
  border-radius: var(--radius-md);
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  box-shadow: var(--shadow-md);
  animation: qa-row-in 0.15s ease-out;
}

@keyframes qa-row-in {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.qa-row-header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.qa-label {
  flex: 1;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--on-surface);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.qa-status-badge {
  font-size: 0.6875rem;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: var(--radius-full);
  flex-shrink: 0;
}

.qa-status-badge--pending {
  background: var(--surface-container);
  color: var(--on-surface-muted);
}

.qa-status-badge--in-progress {
  background: var(--tertiary-container);
  color: var(--tertiary);
}

.qa-status-badge--done {
  background: var(--surface-container);
  color: var(--priority-low);
}

.qa-status-badge--failed {
  background: var(--error-container);
  color: var(--error);
}

.qa-dismiss-btn {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--on-surface-muted);
  font-size: 0.875rem;
  padding: 0 2px;
  line-height: 1;
  flex-shrink: 0;
}

.qa-dismiss-btn:hover {
  color: var(--on-surface);
}

.qa-count {
  font-size: 0.75rem;
  color: var(--on-surface-muted);
}

.qa-bar {
  width: 100%;
  height: 4px;
  background: var(--surface-container);
  border-radius: var(--radius-full);
  overflow: hidden;
}

.qa-bar-fill {
  height: 100%;
  background: var(--primary);
  transition: width 100ms ease-out;
}

.qa-clear-all {
  align-self: flex-end;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.75rem;
  color: var(--on-surface-muted);
  padding: 2px 4px;
  border-radius: var(--radius-xs);
}

.qa-clear-all:hover {
  color: var(--on-surface);
  background: var(--surface-container);
}

.qa-cancel-btn {
  align-self: flex-end;
  background: none;
  border: 1px solid var(--outline-variant);
  cursor: pointer;
  font-size: 0.75rem;
  color: var(--on-surface-muted);
  padding: 2px 8px;
  border-radius: var(--radius-xs);
}

.qa-cancel-btn:hover {
  color: var(--error);
  border-color: var(--error);
}
