
.loader {
    border-top-color: #3498db;
    -webkit-animation: spinner 1.5s linear infinite;
    animation: spinner 1.5s linear infinite;
}

@keyframes spinner {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* --- CSS HIỆU ỨNG LOADING & TRẠNG THÁI NÚT --- */
.btn-loading {
    background-color: #d97706 !important;
    color: white !important;
    cursor: not-allowed !important;
    opacity: 0.9;
    pointer-events: none;
    transform: scale(1.01);
    transition: all 0.2s ease-in-out;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.spinning-loader {
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top: 2px solid #ffffff;
    border-radius: 50%;
    display: inline-block;
    animation: spin 0.9s linear infinite;
    vertical-align: middle;
    flex-shrink: 0;
}

.loading-state {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
}

.loading-state .spinning-loader {
    border-color: rgba(59, 130, 246, 0.25);
    border-top-color: #3b82f6;
}