#app{width:100%;height:100%}:root{--gw-primary-color: #FF3A66;--gw-primary-light: #FF6B8E;--gw-primary-lighter: #FFB0BD;--gw-primary-dark: #D91E4B;--gw-success-color: #48CB7E;--gw-warning-color: #FFA52F;--gw-danger-color: #FF0300;--gw-info-color: #909399;--gw-bg-color: #FFF1F3;--gw-sidebar-bg: #FFFFFF;--gw-sidebar-width: 220px;--gw-sidebar-collapsed-width: 64px;--gw-header-height: 56px;--gw-border-color: #EBEEF5;--gw-text-color: #3D3D3D;--gw-text-secondary: #606266;--gw-text-placeholder: #C0C4CC;--gw-chart-purple: #C9B8E7;--gw-chart-lpurple: #EEE6FF;--gw-chart-orange: #FFA52F;--gw-chart-blue: #3D89FF;--gw-chart-green: #48CB7E;--gw-chart-pink: #FFB0BD;--gw-chart-gray: #EAEAEA}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:PingFang SC,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;color:var(--gw-text-color);background-color:var(--gw-bg-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--gw-primary-color);text-decoration:none}a:hover{color:var(--gw-primary-light)}#nprogress .bar{background:var(--gw-primary-color)!important}#nprogress .peg{box-shadow:0 0 10px var(--gw-primary-color),0 0 5px var(--gw-primary-color)!important}#nprogress .spinner-icon{border-top-color:var(--gw-primary-color)!important;border-left-color:var(--gw-primary-color)!important}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-1{flex:1}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--gw-primary-color)}.text-success{color:var(--gw-success-color)}.text-warning{color:var(--gw-warning-color)}.text-danger{color:var(--gw-danger-color)}.text-info{color:var(--gw-info-color)}.page-container{padding:24px;background-color:#fff;border-radius:8px}.search-form{margin-bottom:20px;padding:20px;background-color:#fff;border-radius:8px}.table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.table-toolbar .toolbar-left,.table-toolbar .toolbar-right{display:flex;gap:10px}.pagination-container{display:flex;justify-content:center;margin-top:20px}.stat-card{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 12px #0000000d}.stat-card .stat-value{font-size:28px;font-weight:600;color:var(--gw-text-color);line-height:1.5}.stat-card .stat-label{font-size:14px;color:var(--gw-text-secondary);margin-top:8px}.stat-card .stat-trend{font-size:12px;margin-top:8px}.stat-card .stat-trend.up{color:var(--gw-success-color)}.stat-card .stat-trend.down{color:var(--gw-danger-color)}.dashboard-page .section-title{font-size:16px;font-weight:600;color:var(--gw-text-color);margin-bottom:16px;display:flex;align-items:center;gap:8px}.dashboard-page .section-title.primary{color:var(--gw-primary-color)}.dashboard-page .section-title.success{color:var(--gw-success-color)}.dashboard-page .section-title.warning{color:var(--gw-warning-color)}.dashboard-page .section-title.danger{color:var(--gw-danger-color)}.dashboard-page .section-title.blue{color:var(--gw-chart-blue)}.dashboard-page .section-title.purple{color:var(--gw-chart-purple)}.dashboard-page .card-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000a}.dashboard-page .metric-value{font-size:24px;font-weight:600}.dashboard-page .metric-value.primary{color:var(--gw-primary-color)}.dashboard-page .metric-value.success{color:var(--gw-success-color)}.dashboard-page .metric-value.warning{color:var(--gw-warning-color)}.dashboard-page .metric-value.danger{color:var(--gw-danger-color)}.dashboard-page .metric-value.blue{color:var(--gw-chart-blue)}.dashboard-page .metric-value.purple{color:var(--gw-chart-purple)}.dashboard-page .metric-label{font-size:13px;color:var(--gw-text-secondary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#909399}.el-menu-item.is-active{color:var(--gw-primary-color)!important}
