/* 로딩 스피너 */ .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; } }