body { margin: 0; font-family: 'Segoe UI', 'PingFang SC', 'Hiragino Sans', Arial, sans-serif; background: #f3f7f9; color: #222; } .container { display: flex; height: 100vh; } /* 修改侧边栏相关样式 */ .sidebar { width: 280px; background: #2A58AE; /* 更深的蓝色背景 */ color: #fff; display: flex; flex-direction: column; padding: 0; } .sidebar-logo { display: flex; align-items: center; justify-content: center; padding: 20px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); height: 180px; } .sidebar-logo img { width: 120px; height: auto; } .sidebar-menu ul { list-style: none; padding: 0; margin: 0; } /* 主菜单项样式 */ .sidebar-menu > ul > li { width: 100%; padding: 0; cursor: pointer; font-size: 16px; position: relative; margin-bottom: 0; /* 移除底部间距 */ /* background: palegoldenrod; */ padding: 20px 0px; padding-left: 50px; min-height: 50px; } .sidebar-menu > ul > li > a { display: block; color: #9EA5AD; text-decoration: none; font-weight: 600; /* 稍微加粗 */ font-size: 1.3vw; } /* 子菜单项活动状态下的链接颜色 */ .sidebar-submenu li.active > a { color: #ffffff; /* 纯白色 */ } /* 活动菜单项的竖线 */ /* .sidebar-menu > ul > li.active::before { content: ''; position: absolute; left: 0; top: 0; height: 100%; width: 4px; background: #fff; } */ .sidebar-menu > ul > li.active{ border-left: 8px solid rgba(255,255,255,0.8); background: #1D4791; } /* 主菜单hover效果 */ .sidebar-menu > ul > li:hover > a { color: #ffffff; } .sidebar-menu > ul > li:hover { background: rgba(255, 255, 255, 0.1); } /* 子菜单样式 */ .sidebar-submenu { padding-left: 0; margin-left: 42px; /* 调整左边距 */ position: relative; margin-bottom: 12px; /* 增加底部间距 */ margin-top: 30px; background: palegoldenrod; } /* 子菜单的垂直连接线 */ .sidebar-submenu::before { content: ''; position: absolute; left: -20px; /* 调整位置 */ top: 0; height: 100%; width: 1px; background: rgba(255, 255, 255, 0.4); /* 略微调亮 */ } .sidebar-submenu li { padding: 6px 16px ; /* 减少上下padding */ font-size: 14px ; position: relative; margin-bottom: 2px; /* 减少项目间距 */ color: rgba(255, 255, 255, 0.6); /* 默认颜色 */ transition: color 0.2s; min-height: 50px; } .sidebar-submenu li a{ color: #9EA5AD; font-size: 1.3vw; font-weight: 600; } /* 子菜单项的水平连接线 */ .sidebar-submenu li::before { content: ''; position: absolute; left: -20px; /* 位置调整 */ top: 50%; width: 20px; /* 调整水平线长度 */ height: 1px; background: rgba(255, 255, 255, 0.4); /* 保持一致性 */ } /* 活动子菜单项样式 */ .sidebar-submenu li.active { color: #ffffff; /* 全白 */ background: none !important; border: none !important; } /* 主菜单项活动状态下的链接颜色 */ .sidebar-menu > ul > li.active > a { color: #ffffff; /* 纯白色 */ } /* 非活动子菜单项样式 */ .sidebar-submenu li:not(.active) { color: rgba(255, 255, 255, 0.6); /* 更明显的透明度 */ } /* 禁用的菜单项 */ .sidebar-submenu li[style*="opacity"] { opacity: 0.4 !important; color: rgba(255, 255, 255, 0.5); } .sidebar-submenu li.active::before { background: #fff; } /* 移除之前的hover效果 */ .sidebar-menu li:hover, .sidebar-submenu li:hover { background: none; border-left: none; text-decoration: none; } /* 子菜单hover效果 */ .sidebar-submenu li:not([style*="opacity"]):hover { opacity: 1; } /* ----------------------------- */ /* 添加重启按钮样式 */ .restart-btn { background-color: #f56c6c; color: white; border: none; border-radius: 4px; padding: 7px 15px; font-size: 14px; cursor: pointer; display: flex; align-items: center; gap: 6px; transition: background-color 0.3s; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .restart-btn:hover { background-color: #e64242; } .restart-btn:focus { outline: none; box-shadow: 0 0 0 2px rgba(245, 108, 108, 0.3); } /* ---------------- */ .main { flex: 1; display: flex; flex-direction: column; background: #eaf1f5; } .header { display: flex; align-items: center; justify-content: space-between; background: #fff; padding: 18px 36px; box-shadow: 0 2px 8px rgba(0,0,0,0.03); } .header-user { display: flex; align-items: center; font-size: 18px; color: #204080; font-weight: 600; } .header-user .icon { background: #e3eafc; border-radius: 50%; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; margin-right: 10px; font-size: 20px; } .summary-row { display: flex; gap: 24px; margin: 32px 0 0 0; } .summary-card { background: #fff; border-radius: 14px; box-shadow: 0 2px 8px rgba(0,0,0,0.04); flex: 1; padding: 28px 0; display: flex; flex-direction: column; align-items: center; min-width: 0; } .summary-card .label { color: #888; font-weight: 600; margin-bottom: 8px; } .summary-card .value { font-size: 2.1rem; font-weight: bold; color: #204080; } .summary-card .unit { font-size: 13px; color: #bbb; margin-top: 2px; } .fan-row { display: flex; gap: 24px; margin: 24px 0 0 0; } .fan-card { background: #fff; border-radius: 14px; box-shadow: 0 2px 8px rgba(0,0,0,0.04); flex: 1; padding: 28px 0; display: flex; flex-direction: column; align-items: center; min-width: 0; } .fan-card .label { color: #888; font-weight: 600; margin-bottom: 8px; } .fan-card .circle { margin-bottom: 8px; } .fan-card .value { font-size: 1.7rem; font-weight: bold; color: #204080; } .fan-card .unit { font-size: 13px; color: #bbb; margin-top: 2px; } .section { background: #fff; border-radius: 14px; box-shadow: 0 2px 8px rgba(0,0,0,0.04); margin-top: 32px; padding: 24px 28px; } .section-title { font-size: 18px; font-weight: bold; margin-bottom: 18px; } .pools-table { width: 100%; border-collapse: collapse; font-size: 15px; } .pools-table th, .pools-table td { padding: 10px 8px; text-align: center; } .pools-table th { background: #f3f7fa; color: #204080; font-weight: 600; } .pools-table tr:not(:last-child) { border-bottom: 1px solid #e0e6ed; } .badge { display: inline-block; padding: 2px 14px; border-radius: 12px; font-size: 13px; font-weight: 600; } .badge-normal { background: #e3f2fd; color: #1976d2; } .badge-error { background: #ffebee; color: #d32f2f; } .diagnostic-log { font-family: 'Fira Mono', 'Consolas', monospace; color: #d32f2f; background: #fff5f5; border-radius: 8px; padding: 12px 16px; font-size: 14px; max-height: 120px; overflow-y: auto; margin-top: 8px; } @media (max-width: 1100px) { .summary-row, .fan-row { flex-direction: column; gap: 12px; } } @media (max-width: 800px) { .container { flex-direction: column; } .sidebar { width: 100%; flex-direction: row; height: 60px; } .sidebar-logo { padding: 10px 12px; font-size: 16px; } .sidebar-menu { display: flex; flex-direction: row; } .sidebar-menu ul { display: flex; } .sidebar-menu li { padding: 8px 16px; font-size: 14px; } .main { padding: 0 4px; } .header { padding: 10px 12px; } .section { padding: 12px 6px; } }