/* 로딩 스피너 */
.spinner {
    border: 3px solid #f3f4f6;
    border-top-color: #3b82f6;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* 실시간 업데이트 깜빡임 효과 */
.flash-up {
    animation: flashUp 0.5s ease-out;
}
.flash-down {
    animation: flashDown 0.5s ease-out;
}

@keyframes flashUp {
    0%   { background-color: #fee2e2; }
    100% { background-color: transparent; }
}
@keyframes flashDown {
    0%   { background-color: #dbeafe; }
    100% { background-color: transparent; }
}
