html, body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 14px; }
a { color: inherit; text-decoration: none; }
.layui-layout-admin .layui-header { position: fixed; left: 0; right: 0; top: 0; z-index: 1000; background: #111827; }
.layui-layout-admin .layui-logo { position: fixed; left: 0; top: 0; text-align: center; background: #0b1220; }
.layui-layout-admin .layui-side { position: fixed; left: 0; bottom: 0; z-index: 999; overflow: hidden; background: #111827; }
.layui-layout-admin .layui-body { position: fixed; right: 0; overflow: auto; }
.layui-side-scroll { width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; }
.layui-bg-black { background: #111827; color: #dbe4f0; }
.layui-nav { margin: 0; padding: 10px 0; list-style: none; background: transparent; }
.layui-nav-tree .layui-nav-item a { display: block; height: 42px; line-height: 42px; padding: 0 18px; color: #dbe4f0; }
.layui-nav-tree .layui-nav-item a:hover,
.layui-nav-tree .layui-this a { background: #1f2937; color: #fff; }
.layui-tab-title { display: flex; margin: 0; padding: 0; list-style: none; white-space: nowrap; overflow-x: auto; }
.layui-tab-title li { position: relative; display: inline-flex; align-items: center; padding: 0 18px; cursor: pointer; color: #475569; }
.layui-tab-title .layui-this { color: #1677ff; font-weight: 700; }
.layui-tab-title .layui-this::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 2px; background: #1677ff; }
.layui-card { background: #fff; border-radius: 4px; }
.layui-card-body { padding: 14px; }
.layui-input, .layui-select { width: 100%; height: 34px; padding: 0 10px; border: 1px solid #d8dee8; border-radius: 4px; background: #fff; color: #172033; }
.layui-input:focus, .layui-select:focus { outline: 0; border-color: #1677ff; box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.12); }
.layui-btn { display: inline-flex; align-items: center; justify-content: center; height: 34px; padding: 0 14px; border: 1px solid #1677ff; border-radius: 4px; background: #1677ff; color: #fff; cursor: pointer; font-weight: 600; white-space: nowrap; }
.layui-btn:hover { filter: brightness(0.96); }
.layui-btn[disabled] { opacity: 0.45; cursor: not-allowed; }
.layui-btn-primary { background: #fff; border-color: #d8dee8; color: #172033; }
.layui-btn-danger { background: #dc2626; border-color: #dc2626; color: #fff; }
.layui-btn-warm { background: #f59e0b; border-color: #f59e0b; color: #fff; }
.layui-btn-sm { height: 32px; padding: 0 12px; font-size: 13px; }
.layui-btn-xs { height: 26px; padding: 0 8px; font-size: 12px; }
.layui-table { width: 100%; border-collapse: collapse; background: #fff; color: #172033; }
.layui-table th, .layui-table td { border: 1px solid #e2e8f0; text-align: left; }
.layui-hide-xs { display: block; }
.layui-icon { font-style: normal; }
.layui-icon-refresh::before { content: "R"; }
.layui-icon-console::before { content: "D"; }
.layui-icon-screen-full::before { content: "T"; }
.layui-icon-group::before { content: "G"; }
.layui-icon-engine::before { content: "C"; }
.layui-icon-link::before { content: "U"; }
.layui-icon-upload-drag::before { content: "V"; }
.layui-icon-picture::before { content: "P"; }
.layui-icon-username::before { content: "A"; }
.layui-icon-log::before { content: "L"; }
.layui-icon-release::before { content: ">"; }
.layui-icon-refresh-3::before { content: "↻"; }
.layui-icon-add-1::before { content: "+"; }
.layui-icon-edit::before { content: "E"; }
.layui-icon-search::before { content: "S"; }
.layui-icon-ok::before { content: "✓"; }
