/* Pending work, not decoration. Keep Catalyst's existing palette and type. */
.catalyst-pending {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    color: var(--text-dark, #1a1a1a);
    font: inherit;
    min-height: 1.5rem;
}
.catalyst-pending[hidden] { display: none; }
.catalyst-loader-slot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    color: inherit;
}
.catalyst-loader-slot.section-loader {
    flex-basis: 36px;
    width: 36px;
    height: 36px;
    color: var(--primary-orange, #ff6b35);
}
.catalyst-loader-slot:empty::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 2px solid currentColor;
    border-radius: 50%;
}
.catalyst-loader-slot[hidden] { display: none; }
.catalyst-busy-button { position: relative; }
.catalyst-busy-button > .catalyst-loader-slot {
    position: absolute;
    inset-inline-end: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
}
.catalyst-busy-button:disabled { opacity: 1; cursor: wait; }
.admin-pending { margin-block: .5rem; font-size: .9rem; }
#loading .catalyst-loader-slot { margin-inline: auto; }
.btn { transition: transform 160ms ease, opacity 160ms ease; }
.btn:hover:not(:disabled) { transform: translateY(-2px); }
.btn:active:not(:disabled) { transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
    .btn { transition: none !important; }
    .btn:hover, .btn:active { transform: none !important; }
}
