/* ============================================
   ERROR HANDLING STYLES
   ============================================ */

/* Error Message */
.error-message {
    position: fixed; top: 80px; right: 20px; background: #dc3545; color: white; padding: 16px 24px; border-radius: 8px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); z-index: 10000; opacity: 0; transform: translateX(400px); transition: opacity 0.3s ease, transform 0.3s ease; max-width: 400px; font-weight: 500; }

/* Image Error State */
.image-error {
    filter: grayscale(100%); }

.image-error::after {
    content: '⚠️'; left: 50%; font-size: 2rem; }
