guanghulab/modules/m-channel/channel-dashboard.css

200 lines
3.0 KiB
CSS
Raw Normal View History

/**
* channel-dashboard.css
* 频道数据面板样式·深色主题
*/
.dashboard-container {
padding: 20px;
max-width: 1200px;
margin: 0 auto;
color: #e0e0e0;
}
.dashboard-header {
text-align: center;
margin-bottom: 30px;
}
.dashboard-header h2 {
font-size: 24px;
color: #4fc3f7;
margin-bottom: 8px;
}
.dashboard-header p {
font-size: 14px;
color: #888;
}
/* 图表网格 */
.charts-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-bottom: 30px;
}
.chart-card {
background: #1a1a2e;
border-radius: 12px;
padding: 20px;
border: 1px solid #2a2a4a;
}
.chart-card h3 {
font-size: 16px;
color: #4fc3f7;
margin-bottom: 15px;
padding-bottom: 8px;
border-bottom: 1px solid #2a2a4a;
}
.chart-card canvas {
width: 100% !important;
height: 200px !important;
display: block;
}
/* 柱状图 */
.bar-chart {
display: flex;
align-items: flex-end;
justify-content: space-around;
height: 200px;
padding: 10px 0;
border-bottom: 2px solid #333;
}
.bar-item {
display: flex;
flex-direction: column;
align-items: center;
flex: 1;
max-width: 80px;
}
.bar-fill {
width: 40px;
border-radius: 4px 4px 0 0;
transition: height 0.5s ease;
min-height: 4px;
}
.bar-label {
margin-top: 8px;
font-size: 11px;
color: #aaa;
text-align: center;
word-break: break-all;
}
.bar-value {
font-size: 12px;
color: #fff;
margin-bottom: 4px;
}
/* 饼图 */
.pie-container {
display: flex;
align-items: center;
gap: 20px;
}
.pie-canvas-wrap {
flex-shrink: 0;
}
.pie-legend {
list-style: none;
padding: 0;
margin: 0;
}
.pie-legend li {
display: flex;
align-items: center;
margin-bottom: 6px;
font-size: 13px;
}
.pie-legend .dot {
width: 10px;
height: 10px;
border-radius: 50%;
margin-right: 8px;
flex-shrink: 0;
}
/* 折线图 */
.line-chart-wrap {
position: relative;
height: 200px;
}
/* 性能表格 */
.perf-table {
width: 100%;
border-collapse: collapse;
font-size: 13px;
}
.perf-table th {
text-align: left;
padding: 8px;
background: #2a2a4a;
color: #4fc3f7;
font-weight: normal;
}
.perf-table td {
padding: 8px;
border-bottom: 1px solid #2a2a4a;
}
.perf-table tr:last-child td {
border-bottom: none;
}
.perf-table .slow {
color: #ff5252;
font-weight: bold;
}
/* 按钮 */
.dashboard-actions {
margin-top: 20px;
text-align: right;
}
.btn-clear {
background: #ff5252;
color: #fff;
border: none;
padding: 10px 24px;
border-radius: 8px;
font-size: 14px;
cursor: pointer;
transition: background 0.3s;
}
.btn-clear:hover {
background: #ff1744;
}
/* 响应式 */
@media (max-width: 768px) {
.charts-grid {
grid-template-columns: 1fr;
}
.pie-container {
flex-direction: column;
}
}
/* 饼图 canvas 保持正方形 */
.pie-canvas-wrap canvas {
width: 160px !important;
height: 160px !important;
}