/* 六脉神剑 · 布局 + 气色。盖在原样式之后。 */
:root, :root[data-fisher-theme="dark"] {
  --fs-body-bg: #100e0c;
  --fs-sider-bg: #16120e;
  --fs-sider-text: #f3e6c8;
  --fs-sider-text-muted: #b5a48a;
  --fs-text-primary: #f4ead8;
  --fs-text-secondary: #cbbda6;
  --fs-card-bg: #1a1511;
  --fs-card-border: rgba(224, 177, 90, 0.35);
  --fs-btn-default-bg: #241c16;
  --fs-btn-default-border: #a68445;
  --fs-btn-default-text: #f3e6c8;
  --lm-gold: #e0b15a;
}

:root[data-fisher-theme="light"] {
  --fs-body-bg: #f3ecdf;
  --fs-sider-bg: #f7f1e6;
  --fs-sider-text: #2a2118;
  --fs-text-primary: #241c16;
  --fs-card-bg: #fffaf2;
  --fs-card-border: rgba(120, 72, 36, 0.28);
  --fs-btn-default-bg: #fffaf2;
  --fs-btn-default-border: #8c6239;
  --fs-btn-default-text: #3a2a1c;
}

html, body, #root, .ant-layout, .ant-layout-content {
  background: var(--fs-body-bg) !important;
  color: var(--fs-text-primary);
}

/* 熊猫底图写死在页面里。不靠脚本，出错也不能露出来。 */
[style*="login-background"] {
  background-image: none !important;
  background-color: #070605 !important;
}
/* 登录：左竖题，右表单，不再居中小卡片 */
html.fisher-on-login,
html.fisher-on-login body,
html.fisher-on-login #root,
html.fisher-on-login #root > div,
html.fisher-on-login #root > div > div {
  background-image: none !important;
  background-color: #070605 !important;
}
html.fisher-on-login img[src*="login"],
html.fisher-on-login img[src*="panda"],
html.fisher-on-login img[src*="logo"] {
  display: none !important;
}
body.fisher-on-login > #root,
body.fisher-on-login > #root > div,
body.fisher-on-login > #root > div > div[style*="min-height"] {
  min-height: 100vh !important;
  width: 100% !important;
  max-width: none !important;
}
body.fisher-on-login > #root > div > div[style*="min-height"] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 0 !important;
  background-color: #070605 !important;
  background-image: none !important;
}
body.fisher-on-login > #root > div > div[style*="min-height"]::before {
  content: "六\A脉\A神\A剑";
  white-space: pre;
  box-sizing: border-box;
  width: 108px;
  flex: 0 0 108px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid rgba(224, 177, 90, 0.45);
  background: #120e0b;
  color: #f0d7a0;
  font-family: "Songti SC", "STSong", "SimSun", serif;
  font-size: 40px;
  line-height: 1.15;
  letter-spacing: 0.2em;
  padding-top: 0.4em;
  align-self: stretch !important;
}
body.fisher-on-login .fisher-login-card,
body.fisher-on-login div[style*="width: 400px"][style*="border-radius"] {
  width: min(460px, calc(100vw - 160px)) !important;
  margin: auto !important;
  border-radius: 0 !important;
  border: 1px solid rgba(224, 177, 90, 0.55) !important;
  background: #14110e !important;
  box-shadow: none !important;
}
body.fisher-on-login .ant-row.ant-row-center {
  align-items: center !important;
  align-self: center !important;
  height: auto !important;
  min-height: 0 !important;
}
body.fisher-on-login .ant-col {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  min-height: 0 !important;
}
body.fisher-on-login .fisher-login-card {
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
}
html.fisher-on-login h3,
body.fisher-on-login h3 {
  font-size: 0 !important;
  line-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: transparent !important;
}
body.fisher-on-login .fisher-login-card .ant-card-body::before {
  content: "六脉神剑";
  display: block;
  text-align: center;
  margin: 4px 0 18px;
  font-family: "Songti SC", "STSong", "SimSun", serif;
  font-size: 28px;
  letter-spacing: 0.42em;
  color: #f0d7a0;
}
body.fisher-on-login .fisher-login-card img { display: none !important; }
body.fisher-on-login .fisher-login-card button.ant-btn-primary {
  background: #8d2c2c !important;
  border: 1px solid #e0b15a !important;
  border-radius: 0 !important;
  color: #fff8ea !important;
  box-shadow: none !important;
}
.ant-layout-header > div:first-child { display: none !important; }
body.fisher-on-login .fisher-login-card::after {
  content: "段誉 · 六脉神剑";
  display: block;
  text-align: center;
  margin-top: 10px;
  letter-spacing: 0.35em;
  color: #cbbda6;
  font-family: "Songti SC", "STSong", "SimSun", serif;
}

/* 登录后：左侧栏改成顶上横卷。
   选择器要比 fisher-branding 的 .ant-layout-sider { height:100vh; position:sticky } 更具体，
   否则后注入的主题会把顶栏拉成整屏黑块，盖住设备列表。 */
html body .ant-layout.ant-layout-has-sider {
  flex-direction: column !important;
}
html body aside.ant-layout-sider,
html body aside.ant-layout-sider.ant-layout-sider-dark,
html body aside.ant-layout-sider.ant-layout-sider-light {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  z-index: 1000 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  flex: 0 0 auto !important;
  height: auto !important;
  inset: auto !important;
  align-self: flex-start !important;
  overflow: visible !important;
  box-shadow: none !important;
  background: var(--fs-sider-bg) !important;
  border-right: none !important;
  border-bottom: 1px solid rgba(224, 177, 90, 0.4) !important;
}
.ant-layout-sider-children {
  min-height: 0 !important;
  height: auto !important;
}
.ant-layout-sider-trigger { display: none !important; }
.ant-layout-sider + .ant-layout,
.ant-layout-has-sider > .ant-layout {
  margin-left: 0 !important;
  padding-top: calc(var(--lm-nav-h, 46px) + 42px) !important;
  padding-left: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
}
.ant-layout-sider-children {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.fisher-sider-brand {
  width: auto !important;
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px;
  border-right: 1px solid rgba(224, 177, 90, 0.35);
  padding: 0 14px !important;
}
img.fisher-sider-logo { display: none !important; }
.ant-layout-header .ant-avatar.lm-avatar-logo {
  background: #16120e !important;
  border: 1px solid #e0b15a !important;
  color: #f0d7a0 !important;
}
.ant-layout-header .ant-avatar.lm-avatar-logo .anticon { display: none !important; }
.ant-layout-header .ant-avatar.lm-avatar-logo::after {
  content: "剑";
  font-family: "Songti SC", "STSong", "SimSun", serif;
  font-size: 18px;
  line-height: 1;
}
.fisher-sider-brand::before {
  content: "剑";
  width: 32px;
  height: 32px;
  border: 1px solid #e0b15a;
  color: #f0d7a0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Songti SC", "STSong", "SimSun", serif;
  font-size: 18px;
  flex: 0 0 32px;
}
#brandCard .form-row.lm-hide-bg,
#brandCard .logo-preview img,
#brandCard .form-row.lm-logo-row button,
#brandCard .form-row.lm-logo-row .kv-hint { display: none !important; }
#brandCard .form-row.lm-logo-row { justify-content: flex-start !important; }
#brandCard .logo-preview {
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 1px solid #e0b15a !important;
  background: transparent !important;
  color: #f0d7a0 !important;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  font-size: 18px !important;
}
.fisher-sider-brand::after {
  content: "六脉神剑" !important;
  display: block !important;
  margin: 0 !important;
  font-family: "Songti SC", "STSong", "SimSun", serif;
  letter-spacing: 0.22em;
  font-size: 15px;
  color: #f0d7a0;
  white-space: nowrap;
}
#fisher-sidebar [data-key="cdn"],
#fisher-sidebar [data-key="btDeploy"],
#fisher-sidebar [data-key="domainManage"] { display: none !important; }
#fisher-sidebar {
  flex: 1 1 auto !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
  padding: 4px 8px !important;
  overflow: visible !important;
}
#fisher-sidebar .fs-item,
#fisher-sidebar .fs-top-item {
  flex: 0 0 auto !important;
  height: 32px !important;
  line-height: 32px !important;
  padding: 0 10px !important;
  white-space: nowrap !important;
}
#fisher-sidebar .fs-item > span,
#fisher-sidebar .fs-top-item > span {
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}
#fisher-sidebar .fs-top,
#fisher-sidebar .fs-group,
#fisher-sidebar .fs-items {
  display: contents !important;
}
#fisher-sidebar .fs-group-header,
#fisher-sidebar .fs-group-arrow { display: none !important; }
#fisher-sidebar .fs-group-header {
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 8px !important;
  font-family: "Songti SC", "STSong", "SimSun", serif;
  letter-spacing: 0.08em;
  font-size: 12px !important;
  white-space: nowrap !important;
}
#fisher-sidebar .fs-group-arrow { display: none !important; }
#fisher-sidebar .fs-items {
  display: contents !important;
}
#fisher-sidebar .fs-group.fs-collapsed .fs-items {
  max-height: none !important;
  display: flex !important;
}
#fisher-sidebar .fs-item,
#fisher-sidebar .fs-top-item {
  height: 32px !important;
  line-height: 32px !important;
  padding: 0 10px !important;
}
#fisher-sidebar .fs-item.fs-active::before {
  right: auto !important;
  left: 6px !important;
  top: auto !important;
  bottom: 4px !important;
  width: calc(100% - 12px) !important;
  height: 2px !important;
  background: #c45c48 !important;
}
html body .ant-layout-header {
  position: fixed !important;
  top: var(--lm-nav-h, 46px) !important;
  right: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 42px !important;
  line-height: 42px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  background: #120f0c !important;
  border-bottom: 1px solid rgba(224, 177, 90, 0.28) !important;
  z-index: 1000 !important;
}
html body .ant-layout-header .ant-dropdown-trigger {
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
}

.ant-layout-header .anticon-menu-fold,
.ant-layout-header .anticon-menu-unfold { display: none !important; }
.ant-layout-content {
  padding: 12px 16px 28px !important;
  min-height: calc(100vh - 100px) !important;
  overflow: auto !important;
}
.ant-form-inline,
.ant-form-inline > div {
  flex-wrap: wrap !important;
  max-width: 100% !important;
  width: 100% !important;
}
#fisher-iframe-wrap {
  left: 0 !important;
  top: calc(var(--lm-nav-h, 46px) + 42px) !important;
  z-index: 30 !important;
}

/* 按钮一律改成扁印章，不改尺寸逻辑以外的圆角和字 */
button, .ant-btn, .btn, #fisher-life-bar button {
  border-radius: 0 !important;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  letter-spacing: 0.04em !important;
  border: 1px solid #e0b15a !important;
  background: #1a1511 !important;
  background-image: none !important;
  color: #e0b15a !important;
  box-shadow: none !important;
}
.ant-btn-primary, .btn-primary, #fisher-life-bar button.on,
.ant-btn-dangerous, .ant-btn-danger, .btn-danger,
.ant-btn-default, .ant-btn-color-primary, .ant-btn-variant-solid {
  background: #1a1511 !important;
  background-image: none !important;
  border: 1px solid #e0b15a !important;
  color: #e0b15a !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.ant-btn-link {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: #e0b15a !important;
}
.ant-btn[disabled], .ant-btn-disabled, .fisher-btn-off, button[disabled] {
  opacity: 0.4 !important;
}

.ant-card, .ant-modal-content, .ant-drawer-content {
  border-radius: 0 !important;
  background: var(--fs-card-bg) !important;
  border: 1px solid var(--fs-card-border) !important;
  color: var(--fs-text-primary) !important;
}
.ant-card-head-title, .ant-modal-title {
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  letter-spacing: 0.14em;
}
.ant-input, .ant-input-affix-wrapper, .ant-select-selector, textarea, select, .field {
  border-radius: 0 !important;
  background: #120f0c !important;
  border-color: rgba(224, 177, 90, 0.35) !important;
  color: #f4ead8 !important;
}
:root[data-fisher-theme="light"] .ant-input,
:root[data-fisher-theme="light"] .ant-input-affix-wrapper,
:root[data-fisher-theme="light"] .ant-select-selector {
  background: #fffaf2 !important;
  color: #241c16 !important;
}
.ant-table-thead > tr > th {
  background: #241c16 !important;
  color: #e0c48a !important;
  border-radius: 0 !important;
}
.ant-tabs-ink-bar { background: #c45c48 !important; }
.ant-tabs-tab-active .ant-tabs-tab-btn { color: #e0b15a !important; }

html:not(.fisher-ui-ready) body:has(#root)::after {
  background: #100e0c !important;
  color: #e0b15a !important;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  letter-spacing: 0.45em;
  content: "六脉神剑" !important;
}

.ant-space-horizontal { flex-wrap: wrap !important; }

/* 登录后的每一页：主框架和后台内页同一套 */
:root, :root[data-fisher-theme="dark"] {
  --fs-body-bg: #100e0c !important;
  --fs-card-bg: #1a1511 !important;
  --fs-card-border: rgba(224, 177, 90, 0.35) !important;
  --fs-text-primary: #f4ead8 !important;
  --fs-text-secondary: #cbbda6 !important;
  --fs-text-muted: #8f8170 !important;
  --fs-divider: rgba(224, 177, 90, 0.18) !important;
  --fs-accent: #c45c48 !important;
  --fs-input-bg: #120f0c !important;
  --fs-input-border: rgba(224, 177, 90, 0.35) !important;
  --fs-input-text: #f4ead8 !important;
  --fs-btn-default-bg: #241c16 !important;
  --fs-btn-default-border: #a68445 !important;
  --fs-btn-default-text: #f3e6c8 !important;
  --fs-table-thead-bg: #241c16 !important;
  --fs-table-row-hover: rgba(196, 92, 72, 0.1) !important;
}
body {
  background: #100e0c !important;
  color: #f4ead8 !important;
}
.card, .stat-card, .gauge-card, .info-card {
  background: #1a1511 !important;
  border: 1px solid rgba(224, 177, 90, 0.32) !important;
  border-radius: 0 !important;
  color: #f4ead8 !important;
}
.card h2, .dash-title h2, h2 {
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  letter-spacing: 0.16em;
  color: #f0d7a0 !important;
}
.btn, .btn-primary, .btn-danger, .btn-warn, .btn-refresh {
  border-radius: 0 !important;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  letter-spacing: 0.08em;
}
.btn-primary, .btn-refresh {
  background: #8d2c2c !important;
  border: 1px solid #e0b15a !important;
  color: #fff8ea !important;
}
.btn-danger { background: #3a1414 !important; border: 1px solid #c45c48 !important; color: #ffd9d0 !important; }
th { background: #241c16 !important; color: #e0c48a !important; }
td { border-bottom: 1px solid rgba(224, 177, 90, 0.12) !important; color: #f4ead8 !important; }
input, select, textarea {
  background: #120f0c !important;
  color: #f4ead8 !important;
  border: 1px solid rgba(224, 177, 90, 0.35) !important;
  border-radius: 0 !important;
}
input.fisher-list-remark {
  color: #ff4d4f !important;
  background: transparent !important;
  width: 148px !important;
  border-color: #d0d7de !important;
}
.fisher-list-remark-col {
  width: 156px !important;
  max-width: 156px !important;
  flex: 0 0 156px !important;
}
.stat-v.blue, :root[data-fisher-theme="dark"] .stat-v.blue { color: #e0b15a !important; }
.stat-v.purple, :root[data-fisher-theme="dark"] .stat-v.purple { color: #e7c98a !important; }
.dash-clocks { display: none !important; }
.dash-head {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 0 !important;
}
.dash-actions { margin-left: auto !important; }
.stat-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.stat-grid.life-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.gauge-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.info-grid { grid-template-columns: 1fr !important; }

/* 仪表盘：上两行铺满，下半屏左仪表右信息 */
body:has(.stat-grid) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.95fr) !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) !important;
  gap: 8px !important;
  height: 100vh !important;
  min-height: 0 !important;
  padding: 10px 14px 12px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  align-content: stretch !important;
}
body:has(.stat-grid) > .toast,
body:has(.stat-grid) > .pend-mask {
  position: fixed !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
}
body:has(.stat-grid) > .card,
body:has(.stat-grid) > .stat-grid,
body:has(.stat-grid) > .life-wrap,
body:has(.stat-grid) > .gauge-grid,
body:has(.stat-grid) > .info-grid {
  margin: 0 !important;
}
body:has(.stat-grid) .card {
  padding: 8px 12px !important;
  margin-bottom: 0 !important;
}
body:has(.stat-grid) > .card:has(.dash-head) {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
}
body:has(.stat-grid) .dash-title h2 {
  margin: 0 !important;
  font-size: 18px !important;
}
body:has(.stat-grid) .scope-tip {
  display: none !important;
}
body:has(.stat-grid) > .stat-grid {
  display: grid !important;
  gap: 8px !important;
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
}
body:has(.stat-grid) .stat-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-items: baseline !important;
  column-gap: 10px !important;
  row-gap: 2px !important;
  padding: 10px 12px !important;
  min-height: 0 !important;
}
body:has(.stat-grid) .stat-k {
  grid-column: 1 !important;
  margin: 0 !important;
  font-size: 12px !important;
}
body:has(.stat-grid) .stat-v {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  font-size: 22px !important;
  line-height: 1.1 !important;
  text-align: right !important;
}
body:has(.stat-grid) .stat-sub {
  grid-column: 1 !important;
  margin: 0 !important;
  font-size: 11px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body:has(.stat-grid) > .life-wrap {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: stretch !important;
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  padding: 8px !important;
}
body:has(.stat-grid) .life-head {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
}
body:has(.stat-grid) .life-head h3 {
  margin: 0 !important;
  font-size: 14px !important;
  letter-spacing: 0.12em;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  color: #f0d7a0 !important;
}
body:has(.stat-grid) .life-ranges {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
}
body:has(.stat-grid) .life-ranges button {
  padding: 2px 8px !important;
  font-size: 12px !important;
  min-width: 0 !important;
  height: 24px !important;
}
body:has(.stat-grid) .life-grid {
  display: contents !important;
}
body:has(.stat-grid) > .gauge-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px !important;
  grid-column: 1 !important;
  grid-row: 4 !important;
  min-height: 0 !important;
  align-items: stretch !important;
}
body:has(.stat-grid) .gauge-card {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 4px !important;
  padding: 10px 12px !important;
  min-height: 0 !important;
}
body:has(.stat-grid) .gauge-card h3 {
  grid-column: 1 / -1 !important;
  margin: 0 0 2px !important;
  font-size: 13px !important;
  letter-spacing: 0.1em;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  color: #f0d7a0 !important;
}
body:has(.stat-grid) .gauge-wrap {
  padding: 0 !important;
}
body:has(.stat-grid) .gauge {
  width: 96px !important;
  height: 96px !important;
}
body:has(.stat-grid) .gauge-inner {
  width: 70px !important;
  height: 70px !important;
  font-size: 18px !important;
}
body:has(.stat-grid) .gauge-card .kv {
  margin-top: 0 !important;
  min-width: 0 !important;
}
body:has(.stat-grid) #gNet {
  grid-template-columns: 1fr !important;
}
body:has(.stat-grid) .net-line {
  margin: 4px 0 !important;
}
body:has(.stat-grid) .net-v {
  font-size: 16px !important;
}
body:has(.stat-grid) .kv-row {
  padding: 5px 0 !important;
}
body:has(.stat-grid) > .info-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px !important;
  grid-column: 2 !important;
  grid-row: 4 !important;
  min-height: 0 !important;
  align-items: stretch !important;
}
body:has(.stat-grid) .info-card {
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
body:has(.stat-grid) .info-card h3 {
  margin: 0 0 4px !important;
  font-size: 13px !important;
  letter-spacing: 0.1em;
  font-family: "Songti SC", "STSong", "SimSun", serif !important;
  color: #f0d7a0 !important;
}
@media (max-width: 1180px) {
  body:has(.stat-grid) {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto auto auto !important;
  }
  body:has(.stat-grid) > .stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body:has(.stat-grid) > .life-wrap { grid-template-columns: 1fr 1fr 1fr !important; }
  body:has(.stat-grid) .life-head { grid-column: 1 / -1 !important; flex-direction: row !important; align-items: center !important; }
  body:has(.stat-grid) > .gauge-grid,
  body:has(.stat-grid) > .info-grid {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }
}
.ant-pagination-item-active, .ant-switch-checked, .ant-checkbox-checked .ant-checkbox-inner, .ant-radio-checked .ant-radio-inner {
  background: #8d2c2c !important;
  border-color: #e0b15a !important;
}
.ant-menu-item-selected { background: rgba(141, 44, 44, 0.35) !important; }

/* 顶栏只留剑印和菜单，旧菜单和分组下拉收起来 */
.ant-layout-sider .ant-menu { display: none !important; }
.ant-layout-sider-children > div:last-child { display: none !important; }

/* 设备卡片：顶上操作、中间手机加名录、底下功能条 */
body:not(.fisher-on-login) .ant-card.ant-card-hoverable {
  border-radius: 0 !important;
  border: 1px solid rgba(224, 177, 90, 0.4) !important;
  background: #14110e !important;
  box-shadow: none !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body,
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div {
  padding: 0 !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:first-child,
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body > div:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  min-height: 40px !important;
  padding: 6px 10px !important;
  background: #2a1614 !important;
  border-bottom: 1px solid rgba(224, 177, 90, 0.35) !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable .ant-btn {
  letter-spacing: 0 !important;
  height: 28px !important;
  padding: 0 8px !important;
  border-radius: 0 !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:nth-child(2),
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body > div:nth-child(2) {
  display: flex !important;
  gap: 12px !important;
  padding: 10px 12px !important;
  align-items: stretch !important;
  background: #14110e !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:nth-child(2) > div:first-child,
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body > div:nth-child(2) > div:first-child {
  flex: 0 0 72px !important;
  width: 72px !important;
  max-height: 200px !important;
  overflow: hidden !important;
  border: 1px solid rgba(224, 177, 90, 0.35);
  background: #0c0a09;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:nth-child(2) > div:last-child,
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body > div:nth-child(2) > div:last-child {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  line-height: 1.45 !important;
  font-size: 12px !important;
  background: transparent !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:nth-child(2) > div:last-child > div {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:nth-child(2) > div:last-child > div > div {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-width: 0 !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:first-child .ant-btn-primary:first-of-type {
  min-width: 72px !important;
  height: 32px !important;
  font-weight: 700 !important;
}
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > div > div:last-child,
body:not(.fisher-on-login) .ant-card.ant-card-hoverable > .ant-card-body > div:last-child {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 6px 10px !important;
  background: #0c0a09 !important;
  border-top: 1px solid rgba(224, 177, 90, 0.28) !important;
}

/* 简洁列表：先看见是哪台、在不在线，再点控制。名字不许被挤没 */
.ant-layout-content div[style*="border-radius: 8px"]:has(div[style*="repeat(6, 1fr)"]) {
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
  border-radius: 0 !important;
  border: 1px solid rgba(224, 177, 90, 0.28) !important;
  border-left: 3px solid #8d2c2c !important;
  background: #14110e !important;
  box-shadow: none !important;
}
.ant-layout-content div[style*="border-radius: 8px"]:has(div[style*="repeat(6, 1fr)"] > button:first-child:disabled) {
  border-left-color: #4a4038 !important;
  background: #100e0c !important;
}
.ant-layout-content div[style*="border-radius: 8px"]:has(div[style*="repeat(6, 1fr)"]) > div[style*="width: 36px"] {
  display: none !important;
}
.ant-layout-content div[style*="border-radius: 8px"]:has(div[style*="repeat(6, 1fr)"]) > div[style*="align-items: flex-start"] {
  flex-wrap: wrap !important;
  align-items: center !important;
  align-content: center !important;
  row-gap: 2px !important;
  column-gap: 12px !important;
  min-width: 0 !important;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 200px"] {
  flex: 0 0 240px !important;
  width: 240px !important;
  min-width: 230px !important;
  max-width: 260px !important;
  overflow: hidden !important;
  order: 1;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 158px"] {
  flex: 1 1 130px !important;
  width: auto !important;
  min-width: 120px !important;
  max-width: 160px !important;
  overflow: hidden !important;
  order: 2;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 96px"] {
  flex: 0 0 80px !important;
  width: 80px !important;
  min-width: 72px !important;
  max-width: 90px !important;
  overflow: hidden !important;
  order: 3;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 236px"] {
  flex: 0 0 236px !important;
  width: 236px !important;
  min-width: 220px !important;
  max-width: 250px !important;
  overflow: hidden !important;
  order: 4;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 100px"] {
  flex: 0 1 120px !important;
  width: 120px !important;
  min-width: 90px !important;
  max-width: 140px !important;
  order: 5;
}
.ant-layout-content div[style*="align-items: flex-start"] > div[style*="width: 124px"] {
  flex: 0 1 130px !important;
  width: 130px !important;
  min-width: 110px !important;
  max-width: 160px !important;
  order: 6;
}
.ant-layout-content div[style*="repeat(6, 1fr)"] {
  width: 392px !important;
  flex: 0 0 392px !important;
  grid-template-columns: 76px repeat(5, minmax(0, 1fr)) !important;
  grid-template-rows: 32px 32px !important;
  gap: 4px !important;
  align-self: center !important;
}
.ant-layout-content div[style*="repeat(6, 1fr)"] > .ant-btn {
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  height: 32px !important;
  padding: 0 2px !important;
  font-size: 13px !important;
  box-shadow: none !important;
}
.ant-layout-content div[style*="repeat(6, 1fr)"] > .ant-btn-primary:not(:first-child) {
  background: transparent !important;
  color: #f0d7a0 !important;
  border-color: rgba(224, 177, 90, 0.45) !important;
}
.ant-layout-content div[style*="repeat(6, 1fr)"] > .ant-btn:first-child {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  height: 68px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}
.ant-layout-content div[style*="repeat(6, 1fr)"] > .ant-btn:first-child:not(:disabled) {
  background: #8d2c2c !important;
  border-color: #e0b15a !important;
  color: #fff8ea !important;
}

/* 小图标是兵器图形，不是字 */
#fisher-sidebar .fs-item-icon,
.lm-weapon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 20px !important;
  height: 20px !important;
  color: #e0b15a !important;
  line-height: 0 !important;
  flex: 0 0 20px;
}
.lm-weapon-svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
  overflow: visible;
}
.anticon .lm-weapon {
  width: 20px !important;
  height: 20px !important;
}
button .anticon {
  color: #e0b15a !important;
}
.ant-switch.lm-prot-off {
  opacity: 0.35 !important;
  filter: grayscale(1);
  pointer-events: none !important;
  cursor: not-allowed !important;
}
