/* 通知页面样式 */ #notifications-page { background-color: #f5f5f5; min-height: 100vh; padding-bottom: 20px; } /* 页面头部 */ .page-header { background: #f6f6f6; color: rgb(43, 42, 42); padding: 15px 0; position: sticky; top: 0; z-index: 100; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); } .header-content { display: flex; align-items: center; justify-content: space-between; padding: 0 20px; max-width: 1200px; margin: 0 auto; } .back-btn, .settings-btn { background: none; border: none; color: rgb(0, 0, 0); font-size: 18px; padding: 8px; border-radius: 50%; cursor: pointer; transition: background-color 0.3s ease; } .back-btn:hover, .settings-btn:hover { background-color: rgba(255, 255, 255, 0.1); } .page-title { font-size: 18px; font-weight: 600; margin: 0; } /* 家庭选择器 */ .family-selector { background: white; margin: 20px; border-radius: 12px; padding: 15px 20px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08); cursor: pointer; transition: background-color 0.3s ease; } .family-selector:hover { background-color: #f8f9fa; } .selector-content { display: flex; align-items: center; justify-content: space-between; } .family-name { font-size: 16px; font-weight: 500; color: #333; } .selector-content i { color: #666; font-size: 14px; } /* 消息分类 */ .message-categories { display: flex; background: white; margin: 0 20px 20px; border-radius: 12px; padding: 5px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08); } .category-item { flex: 1; text-align: center; padding: 12px 20px; border-radius: 8px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.3s ease; color: #666; } .category-item.active { background: linear-gradient(135deg, #ff6900 0%, #ff8533 100%); color: white; box-shadow: 0 2px 8px rgba(255, 105, 0, 0.3); } /* 消息状态 */ .message-status { margin: 0 20px 20px; } .status-info { display: flex; align-items: center; justify-content: space-between; padding: 0 5px; } .unread-count { font-size: 14px; color: #666; } .mark-all-read { background: none; border: none; color: #ff6900; font-size: 14px; cursor: pointer; padding: 5px 10px; border-radius: 6px; transition: background-color 0.3s ease; } .mark-all-read:hover { background-color: rgba(255, 105, 0, 0.1); } /* 消息列表 */ .message-list { margin: 0 20px; } .message-item { background: white; border-radius: 12px; padding: 16px; margin-bottom: 12px; display: flex; align-items: flex-start; gap: 15px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08); cursor: pointer; transition: all 0.3s ease; } .message-item:hover { transform: translateY(-1px); box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12); } .message-item:last-child { margin-bottom: 0; } .message-icon { flex-shrink: 0; } .icon-wrapper { width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; font-size: 16px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); } /* 消息图标配色方案 - 橙色系 */ .icon-wrapper.scene { background: linear-gradient(135deg, #ff6900, #ff8533); } .icon-wrapper.device { background: linear-gradient(135deg, #ff8533, #ffab66); } .icon-wrapper.security { background: linear-gradient(135deg, #ff4500, #ff6900); } .icon-wrapper.system { background: linear-gradient(135deg, #ffab66, #ffc299); } .message-content { flex: 1; min-width: 0; } .message-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; } .message-type { font-size: 12px; color: #666; background: #f0f0f0; padding: 2px 8px; border-radius: 10px; } .message-time { font-size: 12px; color: #999; } .message-text h4 { margin: 0; font-size: 14px; font-weight: 500; color: #333; line-height: 1.4; } /* 空状态 */ .empty-state { text-align: center; padding: 60px 20px; color: #999; } .empty-icon { font-size: 48px; margin-bottom: 20px; opacity: 0.5; } .empty-text { font-size: 16px; font-weight: 500; margin: 0 0 8px 0; color: #666; } .empty-subtext { font-size: 14px; margin: 0; line-height: 1.5; } /* 响应式设计 */ @media (max-width: 768px) { .header-content { padding: 0 15px; } .family-selector, .message-categories, .message-status, .message-list { margin-left: 15px; margin-right: 15px; } .message-item { padding: 14px; } .icon-wrapper { width: 36px; height: 36px; font-size: 14px; } } @media (max-width: 480px) { .page-header { padding: 12px 0; } .header-content { padding: 0 12px; } .family-selector, .message-categories, .message-status, .message-list { margin-left: 12px; margin-right: 12px; } .message-item { padding: 12px; gap: 12px; } .empty-state { padding: 40px 15px; } } /* 动画效果 */ @keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .family-selector, .message-categories, .message-status, .message-item { animation: fadeInUp 0.6s ease-out; } .message-categories { animation-delay: 0.1s; } .message-status { animation-delay: 0.2s; } .message-item:nth-child(1) { animation-delay: 0.3s; } .message-item:nth-child(2) { animation-delay: 0.4s; } .message-item:nth-child(3) { animation-delay: 0.5s; }