/* ============ 管理后台（PC 宽屏，深色侧边栏） ============ */
.admin-layout{display:flex; min-height:100vh; background:var(--wc-bg);}
.admin-sidebar{width:220px; background:#1E1E1E; color:#cfcfcf; display:flex; flex-direction:column; position:fixed; top:0; bottom:0; left:0; z-index:50; transition:.2s;}
.admin-sidebar .brand{display:flex; align-items:center; gap:10px; padding:18px 18px; color:#fff; font-weight:700; font-size:16px; border-bottom:1px solid #2c2c2c;}
.admin-sidebar .brand .logo{width:30px; height:30px; border-radius:8px; background:var(--wc-green); display:flex; align-items:center; justify-content:center; color:#fff;}
.admin-sidebar .menu{flex:1; overflow:auto; padding:8px 0;}
.admin-sidebar .menu-group{position:relative; color:#7a7a7a; font-size:12px; padding:10px 18px; cursor:pointer; display:flex; align-items:center; gap:8px; user-select:none;-webkit-user-select:none; transition:.2s;}
.admin-sidebar .menu-group:hover{color:#aaa;}
.admin-sidebar .menu-group .group-icon{width:16px; height:16px; flex:none; opacity:.8;}
.admin-sidebar .menu-group .group-label{flex:1;}
.admin-sidebar .collapse-arrow{transition:.2s; opacity:.5; flex:none;}
.admin-sidebar .menu-group.open .collapse-arrow{transform:rotate(90deg); opacity:1;}
.admin-sidebar .children{overflow:hidden;}
.admin-sidebar .menu-group.drop-up + .children{position:absolute; left:0; bottom:100%; width:220px; background:#1E1E1E; box-shadow:0 -4px 16px rgba(0,0,0,.35); z-index:10; border-radius:8px 8px 0 0; padding:6px 0;}
.admin-sidebar .menu-group.drop-up + .children .menu-item.child{padding-left:18px;}
.admin-sidebar .menu-item{padding:10px 18px; cursor:pointer; display:flex; align-items:center; gap:10px; color:#cfcfcf; font-size:14px; border-left:3px solid transparent; transition:.15s;}
.admin-sidebar .menu-item:hover{background:#2a2a2a; color:#fff;}
.admin-sidebar .menu-item.active{background:#2a2a2a; color:#fff; border-left-color:var(--wc-green);}
.admin-sidebar .menu-item .mi-icon{width:18px; height:18px; flex:none;}
.admin-sidebar .menu-item.child{padding-left:42px; font-size:13px; color:#aaa;}

.admin-main{margin-left:220px; flex:1; display:flex; flex-direction:column; min-width:0;}
.admin-topbar{height:58px; background:#fff; border-bottom:1px solid var(--wc-line); display:flex; align-items:center; padding:0 20px; gap:14px; position:sticky; top:0; z-index:40;}
.admin-topbar .crumb{color:var(--wc-sub); font-size:14px;}
.admin-topbar .spacer{flex:1;}
.admin-topbar .avatar{width:34px; height:34px; border-radius:50%; background:var(--wc-green); color:#fff; display:flex; align-items:center; justify-content:center; font-size:13px;}
.admin-topbar .adm-name{font-size:14px;}
.admin-content{padding:20px; max-width:1600px;}
.admin-content .page-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; flex-wrap:wrap; gap:10px;}
.admin-content .page-head h2{margin:0; font-size:20px;}
.stat-row{display:flex; gap:12px; flex-wrap:wrap; margin-bottom:14px;}

@media(max-width:768px){
  .admin-sidebar{transform:translateX(-100%);}
  .admin-sidebar.open{transform:none; width:200px;}
  .admin-main{margin-left:0;}
  .admin-overlay{position:fixed; inset:0; background:rgba(0,0,0,.4); z-index:49; display:none;}
  .admin-overlay.show{display:block;}
}
.wc-table-responsive{overflow-x:auto;}
.upload-preview img{width:60px; height:60px; object-fit-cover; border-radius:8px;}

/* 学员管理新版布局 */
.m-tabs{display:flex; gap:4px; border-bottom:1px solid var(--wc-line); margin-bottom:14px; flex-wrap:wrap;}
.m-tab{padding:8px 16px; font-size:14px; color:var(--wc-sub); cursor:pointer; border-bottom:2px solid transparent; user-select:none;}
.m-tab:hover{color:var(--wc-text);}
.m-tab.active{color:var(--wc-green); border-bottom-color:var(--wc-green); font-weight:600;}

.m-filter{background:#f8f9fa; border:1px solid var(--wc-line); border-radius:8px; padding:14px; margin-bottom:14px;}
.m-filter-row{display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:10px; align-items:end;}
.m-filter-row + .m-filter-row{margin-top:10px;}
.m-field{display:flex; flex-direction:column; gap:4px; min-width:0;}
.m-field label{font-size:12px; color:var(--wc-sub); margin-bottom:2px;}
.m-field .wc-input,.m-field .wc-select{width:100%; min-width:0;}
.m-filter-actions{display:flex; gap:8px; margin-top:12px; flex-wrap:wrap; align-items:center;}
#m-expand{justify-self:start; white-space:nowrap;}

.m-batch{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid var(--wc-line);}
.m-batch .wc-btn-danger{background:#ef4444; color:#fff; border-color:#ef4444;}
.m-batch .wc-btn-danger:hover{background:#dc2626;}

.pc-ring{display:inline-flex; align-items:center; gap:6px;}
.pc-ring svg{flex:none;}
.pc-ring .pc-text{font-size:12px; color:var(--wc-sub);}

.m-upload-row{display:flex; align-items:center; gap:10px;}
.m-upload-row input[type=file]{display:none;}
.m-upload-preview{width:72px; height:72px; border:1px dashed var(--wc-line); border-radius:8px; display:flex; align-items:center; justify-content:center; color:var(--wc-sub); font-size:12px; background:#fafafa; overflow:hidden; cursor:pointer; flex:none;}
.m-upload-preview img{width:100%; height:100%; object-fit:cover;}
.m-upload-row::after{content:"点击选择图片"; font-size:12px; color:var(--wc-sub);}

.m-row-dropdown{position:absolute; background:#fff; border:1px solid var(--wc-line); border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,.12); padding:4px 0; min-width:120px; z-index:100; max-height:260px; overflow:auto;}
.m-row-dropdown .m-row-dd-item{padding:8px 14px; font-size:13px; cursor:pointer; white-space:nowrap;}
.m-row-dropdown .m-row-dd-item:hover{background:#f3f4f6;}
.m-row-dropdown .m-row-dd-item.danger{color:#ef4444;}
.m-row-dropdown.up{transform:translateY(-100%); margin-top:-8px;}

@media(max-width:768px){
  .m-field{min-width:calc(50% - 10px);}
  .m-filter-row{gap:8px;}
  .m-batch{gap:6px;}
  .m-batch .wc-btn{font-size:12px; padding:5px 8px;}
}
