* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; background:#0b1622; color:#dce3ea; font-size:14px; line-height:1.6; }
a { color:#c9a84c; text-decoration:none; }
a:hover { color:#e0c268; }

/* 登录页 */
.login-body { display:flex; align-items:center; justify-content:center; min-height:100vh; background:linear-gradient(135deg,#0b1622,#132030); }
.login-box { background:#132030; padding:40px; border-radius:8px; width:340px; border:1px solid rgba(201,168,76,0.2); }
.login-box h1 { font-size:22px; color:#c9a84c; text-align:center; margin-bottom:24px; }
.login-box input { width:100%; padding:12px; margin-bottom:14px; background:#0b1622; border:1px solid rgba(201,168,76,0.3); border-radius:4px; color:#fff; }
.login-box button { width:100%; padding:12px; }
.login-box .error { color:#e74c3c; text-align:center; margin-bottom:12px; }
.login-box .back-home { display:block; text-align:center; margin-top:14px; font-size:13px; color:#8a9bb0; }

/* 布局 */
.admin-layout { display:flex; min-height:100vh; }
.admin-sidebar { width:220px; background:#0a1420; border-right:1px solid rgba(201,168,76,0.15); padding:20px 0; position:fixed; top:0; bottom:0; left:0; overflow-y:auto; }
.admin-logo a { display:block; padding:0 20px 20px; font-size:17px; font-weight:700; color:#c9a84c; border-bottom:1px solid rgba(201,168,76,0.15); margin-bottom:14px; }
.admin-nav a { display:block; padding:10px 20px; color:#8a9bb0; font-size:14px; }
.admin-nav a:hover { color:#c9a84c; background:rgba(201,168,76,0.05); }
.admin-nav a.active { color:#c9a84c; background:rgba(201,168,76,0.1); border-left:3px solid #c9a84c; }
.admin-nav-group { padding:14px 20px 6px; font-size:12px; color:#5a6b80; text-transform:uppercase; letter-spacing:1px; }

.admin-main { flex:1; margin-left:220px; }
.admin-topbar { background:#0a1420; padding:18px 30px; border-bottom:1px solid rgba(201,168,76,0.15); }
.admin-topbar h1 { font-size:18px; color:#fff; }
.admin-content { padding:30px; max-width:1100px; }

/* 卡片 */
.dashboard-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:20px; margin-bottom:30px; }
.dash-card { background:#132030; padding:24px; border-radius:8px; border:1px solid rgba(201,168,76,0.15); text-align:center; }
.dash-num { font-size:32px; color:#c9a84c; font-weight:700; }
.dash-label { font-size:13px; color:#8a9bb0; margin-top:6px; }

/* 面板 */
.admin-panel { background:#132030; border:1px solid rgba(201,168,76,0.15); border-radius:8px; padding:24px; margin-bottom:24px; }
.admin-panel h2 { font-size:16px; color:#c9a84c; margin-bottom:16px; }

/* 表格 */
.admin-table { width:100%; border-collapse:collapse; }
.admin-table th, .admin-table td { padding:12px 10px; text-align:left; border-bottom:1px solid rgba(201,168,76,0.1); font-size:13px; }
.admin-table th { color:#8a9bb0; font-weight:500; }
.admin-table .empty { text-align:center; color:#5a6b80; padding:30px; }
.badge-ok { color:#2ecc71; font-size:12px; }
.badge-off { color:#8a9bb0; font-size:12px; }

/* 表单 */
.admin-form .form-row { margin-bottom:18px; }
.admin-form label { display:block; margin-bottom:6px; color:#8a9bb0; font-size:13px; }
.admin-form input[type=text],
.admin-form input[type=password],
.admin-form textarea,
.admin-form select { width:100%; padding:10px 12px; background:#0b1622; border:1px solid rgba(201,168,76,0.25); border-radius:4px; color:#dce3ea; font-family:inherit; font-size:14px; }
.admin-form textarea { resize:vertical; }
.admin-form textarea.code-area { font-family:Consolas,Monaco,monospace; font-size:13px; }
.admin-form .form-fieldset { border:1px solid rgba(201,168,76,0.2); padding:18px; margin-bottom:24px; border-radius:6px; }
.admin-form .form-fieldset legend { padding:0 10px; color:#c9a84c; font-size:13px; }
.form-actions { display:flex; gap:12px; margin-top:20px; }
.form-check label { display:flex; align-items:center; gap:8px; }

/* 按钮 */
.btn { display:inline-block; padding:10px 22px; border-radius:4px; font-size:14px; border:none; cursor:pointer; transition:all .2s; }
.btn-primary { background:#c9a84c; color:#0b1622; font-weight:600; }
.btn-primary:hover { background:#e0c268; }
.btn-outline { border:1px solid #c9a84c; color:#c9a84c; background:transparent; }
.btn-outline:hover { background:rgba(201,168,76,0.1); }

/* 提示 */
.admin-msg { padding:12px 16px; background:rgba(46,204,113,0.1); border-left:3px solid #2ecc71; color:#2ecc71; margin-bottom:20px; border-radius:4px; }

/* 工具条 & 分页 */
.admin-toolbar { margin-bottom:20px; }
.pagination { margin-top:20px; display:flex; gap:6px; }
.pagination a { padding:6px 12px; background:#0b1622; border:1px solid rgba(201,168,76,0.2); border-radius:4px; color:#8a9bb0; }
.pagination a.active { background:#c9a84c; color:#0b1622; border-color:#c9a84c; }

.link-danger { color:#e74c3c !important; }
.link-danger:hover { color:#ff6b5b !important; }