/* 通知组件样式 */  
.notification {  
    position: fixed;  
    top: 20px;  
    right: 20px;  
    background: var(--surface-color);  
    border-radius: 8px;  
    box-shadow: var(--shadow-lg);  
    padding: 16px 20px;  
    max-width: 400px;  
    z-index: 10100;  
    border-left: 4px solid var(--primary-color);  
    animation: notificationSlideIn 0.3s ease;  
}  
  
.notification.success {  
    border-left-color: var(--success-color);  
}  
  
.notification.warning {  
    border-left-color: var(--warning-color);  
}  
  
.notification.error {  
    border-left-color: var(--error-color);  
}  
  
.notification-content {  
    display: flex;  
    align-items: center;  
    gap: 10px;  
}  
  
.notification-close {  
    background: none;  
    border: none;  
    font-size: 18px;  
    cursor: pointer;  
    color: var(--text-secondary);  
    margin-left: auto;  
}  
  
.restart-notification {  
    position: fixed;  
    top: 20px;  
    right: 20px;  
    background: var(--surface-color);  
    border: 1px solid var(--border-color);  
    border-radius: 8px;  
    padding: 15px;  
    box-shadow: var(--shadow-lg);  
    z-index: 1000;  
    animation: notificationSlideIn 0.3s ease;  
}  
  
@keyframes notificationSlideIn {  
    from {  
        transform: translateX(100%);  
        opacity: 0;  
    }  
    to {  
        transform: translateX(0);  
        opacity: 1;  
    }  
}