/* 全局与侧边栏样式（可直接沿用原系统 styles.css，此处为关键样式） */
* { margin:0; padding:0; box-sizing:border-box; font-family: 'Microsoft YaHei', sans-serif; }
body { background: #f5f7fa; height:100vh; overflow:hidden; }
.app-container { display:flex; height:100vh; }
.sidebar { width:220px; background:#1a2a4a; color:white; padding-top:20px; display:flex; flex-direction:column; flex-shrink:0; }
.sidebar-header { text-align:center; padding:16px 0; border-bottom:1px solid rgba(255,255,255,0.1); }
.sidebar-header h2 { font-size:16px; margin-top:8px; color:#9a7b4f; }
.menu-list { list-style:none; padding:0 10px; flex:1; }
.menu-item { padding:10px 14px; cursor:pointer; margin:2px 0; border-radius:6px; display:flex; align-items:center; transition:0.2s; }
.menu-item:hover { background:rgba(255,255,255,0.1); }
.menu-item.active { background:#9a7b4f; }
.menu-item i { margin-right:10px; width:20px; text-align:center; }
.menu-item.disabled { opacity:0.4; cursor:not-allowed; }
.user-info { padding:16px; border-top:1px solid rgba(255,255,255,0.1); text-align:center; }
.user-info .avatar { width:36px; height:36px; border-radius:50%; background:#9a7b4f; display:inline-flex; align-items:center; justify-content:center; margin-bottom:6px; }
.user-info .name { display:block; font-weight:600; }
.user-info .role { font-size:12px; color:#aaa; }
.logout { margin-top:10px; color:#e74c3c; cursor:pointer; }
.logout i { margin-right:6px; }
.main-content { flex:1; padding:20px; overflow-y:auto; }
.header { background:white; padding:15px 20px; border-radius:8px; box-shadow:0 2px 8px rgba(0,0,0,0.05); margin-bottom:20px; display:flex; justify-content:space-between; align-items:center; }
.header-title { font-size:20px; font-weight:600; }
.btn { padding:6px 14px; border:none; border-radius:4px; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
.btn-primary { background:#1a2a4a; color:white; }
.btn-primary:hover { background:#2d4a6f; }
table { width:100%; background:white; border-radius:8px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,0.05); }
th { background:#f5f6fa; font-weight:600; padding:10px 12px; text-align:left; }
td { padding:10px 12px; border-bottom:1px solid #eee; }