/* 管理后台样式 · 沿用像素风 */
:root {
  --bg: #1a1c2c; --bg2: #232538; --panel: #2a2d42;
  --border: #4a4e69; --border-dark: #16182a;
  --text: #e0e6ff; --text-dim: #9aa0c3;
  --accent: #f8b739; --accent2: #4fc3f7; --pink: #f7768e; --green: #9ece6a;
  --shadow: #0e0f1a;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Courier New",monospace; background:var(--bg); color:var(--text); line-height:1.6; }

.topbar { background:var(--bg2); border-bottom:3px solid var(--border-dark); padding:12px 20px; }
.topbar-inner { max-width:1000px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.topbar h1 { color:var(--accent); font-size:1.4em; }

.wrap { max-width:1000px; margin:0 auto; padding:24px 20px 80px; }
.brand { color:var(--accent2); text-decoration:none; }

.btn {
  font-family:inherit; background:var(--accent); color:#111; border:3px solid var(--border-dark);
  padding:8px 14px; font-weight:bold; cursor:pointer; box-shadow:3px 3px 0 var(--shadow);
}
.btn:hover { background:var(--accent2); }
.btn-danger { background:var(--pink); color:#111; }
.btn-sm { padding:4px 8px; font-size:.8em; box-shadow:2px 2px 0 var(--shadow); }
.input {
  font-family:inherit; background:var(--bg2); border:2px solid var(--border); color:var(--text);
  padding:7px 10px; margin:3px; min-width:110px;
}
.row { display:flex; gap:6px; flex-wrap:wrap; align-items:center; }

.panel { background:var(--panel); border:3px solid var(--border-dark); box-shadow:6px 6px 0 var(--shadow); padding:20px; margin-bottom:28px; }
.panel-head { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:12px; margin-bottom:14px; }
.panel-head h2 { color:var(--accent2); }

.tbl { width:100%; border-collapse:collapse; font-size:.85em; }
.tbl th, .tbl td { border:1px solid var(--border); padding:8px 10px; text-align:left; }
.tbl th { background:var(--bg2); color:var(--text); }
.tbl tr:nth-child(even) td { background:var(--bg2); }
.badge { padding:2px 8px; font-size:.75em; border:2px solid; }
.badge-admin { color:var(--accent); border-color:var(--accent); }
.badge-member { color:var(--accent2); border-color:var(--accent2); }
.badge-active { color:var(--green); border-color:var(--green); }
.badge-disabled { color:var(--pink); border-color:var(--pink); }

.need-login { text-align:center; padding:80px 20px; }
.need-login p { margin-bottom:20px; color:var(--text-dim); }
@media (max-width:600px){ .tbl{font-size:.7em} .input{min-width:80px} }

/* 天气设置 */
.wx-setting { display:flex; flex-direction:column; gap:12px; max-width:560px; }
.wx-row { display:flex; align-items:center; gap:12px; }
.wx-label { color:var(--text-dim); font-size:.9em; min-width:80px; }
.wx-row .input { min-width:180px; }
.wx-row input[type=range] { flex:1; accent-color:var(--accent); }
.wx-val { color:var(--accent2); min-width:44px; font-size:.9em; }

/* 等级突破配置 */
.lv-break-cell { font-size: .82em; color: var(--text-dim); }
.lv-cb { display: flex; align-items: center; gap: 4px; margin-bottom: 4px; color: var(--text); }
.lv-brk-row { display: flex; align-items: center; gap: 4px; margin-top: 3px; white-space: nowrap; }
.lv-brk-row .input { height: 24px; padding: 0 4px; font-size: .85em; }
