
/* =========================
   星辰加速器 v6.7 双主题正式版
   Light = 云感蓝白
   Dark  = Obsidian Neon 高级暗色
   ========================= */

:root,
html.light {
  color-scheme: light !important;
  --xc-page-bg:
    radial-gradient(circle at 10% 8%, rgba(56,189,248,.22), transparent 30%),
    radial-gradient(circle at 88% 10%, rgba(124,58,237,.10), transparent 28%),
    linear-gradient(180deg, #fbfdff 0%, #f4f9ff 48%, #eef6ff 100%);
  --xc-page-shell: linear-gradient(180deg, rgba(255,255,255,.72), rgba(248,252,255,.56));
  --xc-sider: rgba(248,252,255,.92);
  --xc-header: rgba(255,255,255,.88);
  --xc-panel: rgba(255,255,255,.84);
  --xc-panel-soft: rgba(248,252,255,.78);
  --xc-panel-solid: #ffffff;
  --xc-border: rgba(30,64,175,.11);
  --xc-border-strong: rgba(14,165,233,.20);
  --xc-shadow: 0 18px 45px rgba(37,99,235,.10), 0 6px 18px rgba(15,23,42,.05);
  --xc-text: #0f172a;
  --xc-text-2: #334155;
  --xc-soft: #64748b;
  --xc-muted: #94a3b8;
  --xc-accent: #2563eb;
  --xc-accent-2: #06b6d4;
  --xc-accent-3: #7c3aed;
  --xc-card-head: linear-gradient(90deg, rgba(14,165,233,.10), rgba(37,99,235,.04), transparent 72%);
  --xc-empty-bg: radial-gradient(circle at center, rgba(14,165,233,.09), transparent 60%), rgba(248,252,255,.75);
}

html.dark {
  color-scheme: dark !important;
  --xc-page-bg:
    radial-gradient(circle at 12% 8%, rgba(0,234,255,.13), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(123,97,255,.16), transparent 28%),
    radial-gradient(circle at 50% 100%, rgba(84,163,255,.10), transparent 40%),
    linear-gradient(180deg, #060914 0%, #090f1d 35%, #0b1120 100%);
  --xc-page-shell:
    linear-gradient(180deg, rgba(9,16,31,.78), rgba(8,14,28,.62));
  --xc-sider:
    linear-gradient(180deg, rgba(10,18,34,.92), rgba(12,20,38,.88));
  --xc-header:
    linear-gradient(180deg, rgba(11,18,34,.88), rgba(10,16,30,.84));
  --xc-panel:
    linear-gradient(180deg, rgba(12,20,38,.86), rgba(10,17,33,.82));
  --xc-panel-soft: rgba(14,24,45,.82);
  --xc-panel-solid: #0f1b33;
  --xc-border: rgba(120, 141, 182, .18);
  --xc-border-strong: rgba(0,234,255,.30);
  --xc-shadow: 0 30px 80px rgba(0,0,0,.46), 0 8px 30px rgba(0,234,255,.08);
  --xc-text: #edf4ff;
  --xc-text-2: #d8e4f6;
  --xc-soft: #9fb0c9;
  --xc-muted: #7f93b2;
  --xc-accent: #54a3ff;
  --xc-accent-2: #00eaff;
  --xc-accent-3: #7b61ff;
  --xc-card-head: linear-gradient(90deg, rgba(0,234,255,.12), rgba(84,163,255,.07), rgba(123,97,255,.05), transparent 72%);
  --xc-empty-bg: radial-gradient(circle at center, rgba(0,234,255,.09), transparent 60%), rgba(13,24,46,.78);
}

html, body, #app {
  background: var(--xc-page-bg) !important;
  color: var(--xc-text) !important;
  min-height: 100%;
}

#app .bg-black,
#app .bg-slate-950,
#app .bg-slate-900,
#app .bg-gray-950,
#app .bg-gray-900,
#app .bg-zinc-950,
#app .bg-zinc-900,
#app .bg-neutral-950,
#app .bg-neutral-900,
#app [class*="bg-[#000"],
#app [class*="bg-[#0"],
#app [class*="bg-[#111"],
#app [class*="bg-[#121"],
#app [class*="bg-[#181"],
#app [class*="bg-[#1f"] {
  background-color: transparent !important;
}

#app .n-layout,
#app .n-layout-scroll-container,
#app .n-layout-content,
#app main,
#app section,
#app [class*="layout"],
#app [class*="content"],
#app [class*="page"],
#app [class*="container"] {
  background-color: transparent !important;
}

#app .n-layout-content > div,
#app main > div,
#app [class*="layout-content"] > div {
  min-height: calc(100vh - 88px) !important;
  background: var(--xc-page-shell) !important;
  border-radius: 24px !important;
  border: 1px solid var(--xc-border) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}

#app, #app * { color: inherit; }
#app h1, #app h2, #app h3, #app h4, #app .text-2xl, #app .text-3xl, #app .text-4xl, #app .font-bold, #app .font-semibold { color: var(--xc-text) !important; }
#app .text-gray-400, #app .text-gray-500, #app .text-gray-600, #app .text-gray-500-500 { color: var(--xc-soft) !important; }
#app .text-white { color: var(--xc-text) !important; }
#app a { color: var(--xc-accent-2) !important; }

#app .n-layout-header, #app header {
  height: 66px !important;
  background: var(--xc-header) !important;
  backdrop-filter: blur(18px) saturate(1.16) !important;
  border-bottom: 1px solid var(--xc-border) !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.16) !important;
}
#app .n-layout-header *, #app header * { color: var(--xc-text) !important; }

#app .n-layout-sider {
  background: var(--xc-sider) !important;
  backdrop-filter: blur(20px) saturate(1.18) !important;
  border-right: 1px solid var(--xc-border) !important;
  box-shadow: 14px 0 35px rgba(37,99,235,.07), inset -1px 0 0 rgba(255,255,255,.02) !important;
}
#app .n-layout-sider .logo, #app .n-layout-sider [class*="logo"] {
  margin: 12px !important;
  padding: 10px 12px !important;
  min-height: 58px !important;
  border-radius: 18px !important;
  background: var(--xc-panel-soft) !important;
  border: 1px solid var(--xc-border) !important;
  box-shadow: var(--xc-shadow) !important;
  position: relative;
  overflow: hidden;
}
html.dark #app .n-layout-sider .logo::before,
html.dark #app .n-layout-sider [class*="logo"]::before,
html.dark #app .n-card::before,
html.dark .xc-welcome-card::before,
html.dark .xc-mini-stat::before,
html.dark .xc-route-banner::before,
html.dark .xc-empty-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,234,255,.85), rgba(123,97,255,.85), transparent);
  opacity: .9;
  pointer-events: none;
}
#app .n-layout-sider img[src*="logo"], #app .logo img, #app [class*="logo"] img {
  width: auto !important; height: 38px !important; max-height: 38px !important; max-width: 160px !important; object-fit: contain !important;
}
#app .n-layout-sider .title-text, #app .n-layout-sider [class*="title-text"], #app .n-layout-sider .xc-brand-dup { display: none !important; }

#app .n-menu, #app .n-menu * { background: transparent !important; }
#app .n-menu *, #app .n-menu .n-menu-item-content, #app .n-menu .n-menu-item-content-header, #app .n-menu .n-menu-item-content__icon, #app .n-menu .n-menu-item-content__arrow {
  color: var(--xc-text-2) !important; opacity: 1 !important;
}
#app .n-menu .n-menu-item-content {
  height: 44px !important; margin: 5px 10px !important; border-radius: 14px !important; transition: all .16s ease !important;
}
html.light #app .n-menu .n-menu-item-content:hover { background: rgba(14,165,233,.08) !important; }
html.dark #app .n-menu .n-menu-item-content:hover {
  background: linear-gradient(90deg, rgba(0,234,255,.10), rgba(84,163,255,.08)) !important;
}
#app .n-menu .n-menu-item-content:hover { transform: translateX(3px); }
html.light #app .n-menu .n-menu-item-content.n-menu-item-content--selected {
  background: linear-gradient(135deg, rgba(14,165,233,.15), rgba(37,99,235,.09)) !important; border: 1px solid rgba(14,165,233,.18) !important;
}
html.dark #app .n-menu .n-menu-item-content.n-menu-item-content--selected {
  background: linear-gradient(135deg, rgba(0,234,255,.14), rgba(84,163,255,.11), rgba(123,97,255,.08)) !important;
  border: 1px solid rgba(0,234,255,.22) !important;
  box-shadow: 0 0 0 1px rgba(84,163,255,.08), 0 8px 24px rgba(0,234,255,.12) !important;
}
#app .n-menu .n-menu-item-content.n-menu-item-content--selected *, #app .n-menu .n-menu-item-content:hover * { color: var(--xc-text) !important; }
#app .side-menu:not(.n-menu--collapsed) .n-menu-item-content.n-menu-item-content--selected:before,
#app .side-menu:not(.n-menu--collapsed) .n-menu-item-content:hover:before { display: none !important; }

.xc-dashboard-summary { display:grid; grid-template-columns:minmax(0,1.1fr) repeat(3,minmax(150px,.33fr)); gap:14px; margin-bottom:16px; }
.xc-welcome-card, .xc-mini-stat {
  position: relative;
  border-radius:20px; border:1px solid var(--xc-border) !important; background:var(--xc-panel) !important; box-shadow:var(--xc-shadow) !important;
}
.xc-welcome-card { padding:20px 22px; }
.xc-welcome-kicker { color:var(--xc-accent-2) !important; font-weight:900; letter-spacing:.08em; font-size:12px; margin-bottom:10px; }
.xc-welcome-title { color:var(--xc-text) !important; font-size:28px; font-weight:950; letter-spacing:-.04em; line-height:1.15; margin-bottom:8px; }
.xc-welcome-desc { color:var(--xc-soft) !important; line-height:1.7; font-size:14px; }
.xc-mini-stat { padding:18px; }
.xc-mini-label { color:var(--xc-soft) !important; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; margin-bottom:10px; }
.xc-mini-value { color:var(--xc-text) !important; font-size:22px; font-weight:950; letter-spacing:-.03em; }
.xc-mini-hint { color:var(--xc-soft) !important; font-size:13px; margin-top:8px; }

.xc-route-banner {
  position: relative;
  margin-bottom:16px; padding:18px 20px; border-radius:20px; background:var(--xc-panel) !important; border:1px solid var(--xc-border) !important; box-shadow:var(--xc-shadow) !important;
}
.xc-route-banner__title { color:var(--xc-text) !important; font-size:24px; font-weight:950; letter-spacing:-.035em; margin-bottom:6px; }
.xc-route-banner__desc { color:var(--xc-soft) !important; font-size:14px; line-height:1.65; }

#app .n-card {
  position:relative !important; overflow:hidden !important; border-radius:22px !important; border:1px solid var(--xc-border) !important; background:var(--xc-panel) !important; box-shadow:var(--xc-shadow) !important; color:var(--xc-text) !important;
}
#app .n-card-header {
  min-height:58px !important; background:var(--xc-card-head) !important; border-bottom:1px solid var(--xc-border) !important;
}
#app .n-card-header__main { color:var(--xc-text) !important; font-size:17px !important; font-weight:950 !important; letter-spacing:-.02em !important; }
html.dark #app .n-card,
html.dark .xc-welcome-card,
html.dark .xc-mini-stat,
html.dark .xc-route-banner,
html.dark .xc-empty-panel {
  backdrop-filter: blur(18px) saturate(1.14) !important;
}

/* tables */
html.dark #app table,
html.dark #app .n-data-table,
html.dark #app .n-data-table-wrapper,
html.dark #app .n-data-table-base-table,
html.dark #app .n-table {
  background: transparent !important;
  color: var(--xc-text) !important;
}
html.dark #app thead tr,
html.dark #app .n-data-table-th {
  background: linear-gradient(180deg, rgba(18,28,50,.92), rgba(14,22,40,.88)) !important;
}
html.dark #app tbody tr,
html.dark #app .n-data-table-tr {
  background: rgba(10,18,34,.56) !important;
}
html.dark #app td,
html.dark #app th,
html.dark #app .n-data-table td,
html.dark #app .n-data-table th {
  border-color: rgba(120,141,182,.12) !important;
  color: var(--xc-text) !important;
}
html.dark #app tbody tr:hover,
html.dark #app .n-data-table-tr:hover {
  background: rgba(13,24,46,.85) !important;
}

.xc-subscription-card .cursor-pointer.pt-5.text-center,
.xc-subscription-card [class*="cursor-pointer"][class*="text-center"] {
  min-height:150px !important; border-radius:20px !important; border:1px dashed var(--xc-border-strong) !important; background:var(--xc-empty-bg) !important;
  display:flex !important; align-items:center !important; justify-content:center !important; flex-direction:column !important;
}
.xc-subscription-card .text-4xl { color:var(--xc-accent-2) !important; }

.xc-shortcuts-card .xc-shortcuts-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.xc-shortcuts-card .xc-shortcut-item { min-height:96px; padding:16px !important; border-radius:18px !important; border:1px solid var(--xc-border) !important; background:var(--xc-panel-soft) !important; transition:all .16s ease !important; }
.xc-shortcuts-card .xc-shortcut-item:hover { transform:translateY(-1px); border-color:var(--xc-border-strong) !important; box-shadow:0 14px 24px rgba(14,165,233,.09); }
.xc-shortcuts-card .xc-shortcut-item .text-lg, .xc-shortcuts-card .xc-shortcut-item .font-bold { color:var(--xc-text) !important; font-size:17px !important; font-weight:900 !important; }
.xc-shortcuts-card .xc-shortcut-item .text-gray-500, .xc-shortcuts-card .xc-shortcut-item .text-gray-500-500 { color:var(--xc-soft) !important; font-size:13px !important; }

.xc-empty-panel {
  position: relative;
  margin-top:16px; border-radius:20px; padding:22px; background:var(--xc-panel) !important; border:1px solid var(--xc-border) !important; box-shadow:var(--xc-shadow) !important;
}
.xc-empty-panel__title { color:var(--xc-text) !important; font-size:22px; font-weight:950; letter-spacing:-.03em; margin-bottom:8px; }
.xc-empty-panel__desc { color:var(--xc-soft) !important; line-height:1.75; margin-bottom:14px; }
.xc-empty-panel__btn { display:inline-flex; align-items:center; height:40px; padding:0 14px; border-radius:12px; font-weight:800; text-decoration:none !important; margin-right:10px; }
.xc-empty-panel__btn--primary { color:#fff !important; background:linear-gradient(135deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3)); box-shadow: 0 8px 22px rgba(0,234,255,.16); }
.xc-empty-panel__btn--ghost { color:var(--xc-text) !important; background:var(--xc-panel-soft) !important; border:1px solid var(--xc-border) !important; }

#app .n-button--primary-type, #app button[type="submit"] {
  background:linear-gradient(135deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3)) !important;
  border:0 !important; color:#fff !important; box-shadow:0 10px 22px rgba(0,234,255,.18) !important;
}
#app .n-button { border-radius:13px !important; }
#app .n-input, #app .n-input-wrapper, #app input, #app textarea {
  color:var(--xc-text) !important; background:var(--xc-panel-soft) !important; border-color:var(--xc-border) !important; border-radius:13px !important;
}
html.dark #app .n-input,
html.dark #app .n-input-wrapper,
html.dark #app input,
html.dark #app textarea,
html.dark #app .n-select,
html.dark #app .n-base-selection {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02), 0 0 0 1px rgba(0,234,255,.02) !important;
}
#app .n-progress-graph-line-fill { background:linear-gradient(90deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3)) !important; }
#app .n-tag { border-radius:999px !important; }

#app .xc-theme-pane-light { background:rgba(255,255,255,.72) !important; color:#0f172a !important; }
#app .xc-theme-pane-dark {
  background:linear-gradient(180deg, rgba(12,20,38,.86), rgba(10,17,33,.82)) !important;
  color:#e8eef8 !important;
  border-color:rgba(120,141,182,.14) !important;
}

html.dark #app .n-pagination *,
html.dark #app .n-modal *,
html.dark #app .n-drawer *,
html.dark #app .n-popover *,
html.dark #app .n-dropdown *,
html.dark #app .n-tooltip * { color: var(--xc-text) !important; }
html.dark #app .n-modal,
html.dark #app .n-drawer,
html.dark #app .n-popover-body,
html.dark #app .n-dropdown-menu,
html.dark #app .n-card,
html.dark #app .n-base-select-menu {
  background: linear-gradient(180deg, rgba(12,20,38,.96), rgba(10,17,33,.95)) !important;
  border-color: rgba(120,141,182,.18) !important;
}

@media (max-width:1100px) { .xc-dashboard-summary { grid-template-columns:1fr 1fr; } .xc-welcome-card { grid-column:1/-1; } }
@media (max-width:900px) { .xc-shortcuts-card .xc-shortcuts-grid { grid-template-columns:1fr; } }
@media (max-width:768px) { .xc-dashboard-summary { grid-template-columns:1fr; } .xc-welcome-title { font-size:24px; } }

/* =========================================================
   v6.7.1 gradient-only color enhancement
   说明：仅增强浅色 / 暗色整站渐变色，不改布局、不改 DOM、不改 umi.js。
   ========================================================= */

:root,
html.light {
  --xc-page-bg:
    radial-gradient(circle at 10% 8%, rgba(34,211,238,.30), transparent 32%),
    radial-gradient(circle at 82% 10%, rgba(124,58,237,.18), transparent 34%),
    radial-gradient(circle at 55% 100%, rgba(37,99,235,.14), transparent 42%),
    linear-gradient(135deg, #fbfdff 0%, #f2f8ff 42%, #eef3ff 72%, #f6f3ff 100%) !important;

  --xc-page-shell:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(248,252,255,.58)) !important;

  --xc-sider:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.16), transparent 38%),
    radial-gradient(circle at 100% 18%, rgba(124,58,237,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,251,255,.88)) !important;

  --xc-header:
    linear-gradient(90deg, rgba(255,255,255,.88), rgba(239,246,255,.78), rgba(245,243,255,.78)) !important;

  --xc-panel:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.08), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.90), rgba(248,252,255,.78)) !important;

  --xc-panel-soft:
    linear-gradient(180deg, rgba(248,252,255,.82), rgba(239,246,255,.68)) !important;

  --xc-panel-solid: #ffffff;
  --xc-border: rgba(37,99,235,.12);
  --xc-border-strong: rgba(6,182,212,.26);
  --xc-shadow: 0 20px 50px rgba(37,99,235,.11), 0 6px 20px rgba(15,23,42,.05);
  --xc-accent: #2563eb;
  --xc-accent-2: #06b6d4;
  --xc-accent-3: #7c3aed;
  --xc-card-head: linear-gradient(90deg, rgba(6,182,212,.14), rgba(37,99,235,.08), rgba(124,58,237,.06), transparent 76%);
}

html.dark {
  --xc-page-bg:
    radial-gradient(circle at 12% 8%, rgba(0,234,255,.18), transparent 31%),
    radial-gradient(circle at 86% 10%, rgba(123,97,255,.24), transparent 34%),
    radial-gradient(circle at 52% 100%, rgba(84,163,255,.16), transparent 42%),
    linear-gradient(180deg, #050914 0%, #081021 42%, #0b1430 100%) !important;

  --xc-page-shell:
    radial-gradient(circle at 12% 0%, rgba(0,234,255,.08), transparent 34%),
    linear-gradient(180deg, rgba(9,16,31,.82), rgba(8,14,28,.66)) !important;

  --xc-sider:
    radial-gradient(circle at 0% 0%, rgba(0,234,255,.13), transparent 38%),
    radial-gradient(circle at 100% 18%, rgba(123,97,255,.16), transparent 34%),
    linear-gradient(180deg, rgba(8,14,26,.96), rgba(11,19,36,.92)) !important;

  --xc-header:
    linear-gradient(90deg, rgba(8,14,26,.88), rgba(10,19,38,.82), rgba(16,18,44,.80)) !important;

  --xc-panel:
    radial-gradient(circle at 0% 0%, rgba(0,234,255,.08), transparent 36%),
    linear-gradient(180deg, rgba(14,24,45,.90), rgba(9,16,31,.84)) !important;

  --xc-panel-soft:
    linear-gradient(180deg, rgba(14,24,45,.84), rgba(10,18,34,.74)) !important;

  --xc-panel-solid: #0d1830;
  --xc-border: rgba(96,165,250,.18);
  --xc-border-strong: rgba(0,234,255,.34);
  --xc-shadow: 0 30px 86px rgba(0,0,0,.50), 0 8px 32px rgba(0,234,255,.09);
  --xc-accent: #60a5fa;
  --xc-accent-2: #22d3ee;
  --xc-accent-3: #a78bfa;
  --xc-card-head: linear-gradient(90deg, rgba(0,234,255,.14), rgba(96,165,250,.09), rgba(167,139,250,.07), transparent 76%);
}

/* 更明显的全局渐变层次，只改颜色与质感，不改变尺寸/布局 */
#app .n-layout-header,
#app header {
  background: var(--xc-header) !important;
}

#app .n-layout-sider {
  background: var(--xc-sider) !important;
}

#app .n-card,
.xc-welcome-card,
.xc-mini-stat,
.xc-route-banner,
.xc-empty-panel {
  background: var(--xc-panel) !important;
}

#app .n-menu .n-menu-item-content.n-menu-item-content--selected,
#app .n-menu .n-menu-item-content:hover {
  background: linear-gradient(90deg, rgba(37,99,235,.14), rgba(6,182,212,.10), rgba(124,58,237,.10)) !important;
  border-color: var(--xc-border-strong) !important;
}

html.dark #app .n-menu .n-menu-item-content.n-menu-item-content--selected,
html.dark #app .n-menu .n-menu-item-content:hover {
  background: linear-gradient(90deg, rgba(34,211,238,.16), rgba(96,165,250,.12), rgba(167,139,250,.12)) !important;
  border-color: var(--xc-border-strong) !important;
}

#app .n-button--primary-type,
#app button[type="submit"],
.xc-empty-panel__btn--primary {
  background: linear-gradient(100deg, var(--xc-accent), var(--xc-accent-2) 48%, var(--xc-accent-3)) !important;
}

#app .n-progress-graph-line-fill {
  background: linear-gradient(90deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3)) !important;
}


/* =========================================================
   v6.7.2 profile password card clipping hotfix
   仅修复个人中心“修改密码”卡片底部按钮被裁切，不改变布局结构。
   ========================================================= */

#app .xc-profile-password-card,
#app .xc-profile-password-card.n-card {
  overflow: visible !important;
  min-height: auto !important;
}

#app .xc-profile-password-card .n-card__content,
#app .xc-profile-password-card [class*="card__content"],
#app .xc-profile-password-card .n-form,
#app .xc-profile-password-card form {
  overflow: visible !important;
  min-height: auto !important;
  padding-bottom: 22px !important;
}

#app .xc-profile-password-card .n-form-item,
#app .xc-profile-password-card [class*="form-item"] {
  margin-bottom: 14px !important;
}

#app .xc-profile-password-card .n-button,
#app .xc-profile-password-card button {
  min-height: 38px !important;
  margin-top: 10px !important;
  margin-bottom: 6px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* 防止按钮阴影被卡片内部容器裁掉 */
#app .xc-profile-password-card .n-card__content > *,
#app .xc-profile-password-card form > *,
#app .xc-profile-password-card .n-form > * {
  overflow: visible !important;
}

/* 如果“修改密码”卡片紧贴下一张卡，拉开一点距离 */
#app .xc-profile-password-card {
  margin-bottom: 22px !important;
}


/* =========================================================
   v6.7.3 card bottom clipping hotfix
   修复：个人中心“修改密码”和“我的邀请”佣金卡片底部按钮显示不全。
   原则：只对 JS 精准标记的卡片生效，不改变全局布局。
   ========================================================= */

#app .xc-card-bottom-unclip,
#app .xc-card-bottom-unclip.n-card {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  margin-bottom: 22px !important;
}

#app .xc-card-bottom-unclip > .n-card-header,
#app .xc-card-bottom-unclip .n-card-header {
  flex-shrink: 0 !important;
}

#app .xc-card-bottom-unclip > .n-card__content,
#app .xc-card-bottom-unclip .n-card__content,
#app .xc-card-bottom-unclip [class*="card__content"],
#app .xc-card-bottom-unclip .n-form,
#app .xc-card-bottom-unclip form,
#app .xc-card-bottom-unclip .n-space,
#app .xc-card-bottom-unclip [class*="space"] {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
}

#app .xc-card-bottom-unclip > .n-card__content,
#app .xc-card-bottom-unclip .n-card__content,
#app .xc-card-bottom-unclip [class*="card__content"] {
  padding-bottom: 30px !important;
}

#app .xc-card-bottom-unclip .n-button,
#app .xc-card-bottom-unclip button {
  position: relative !important;
  z-index: 3 !important;
  min-height: 38px !important;
  margin-bottom: 8px !important;
}

/* 个人中心修改密码表单：压缩一点项间距，保证按钮完整露出 */
#app .xc-profile-password-card .n-form-item,
#app .xc-profile-password-card [class*="form-item"] {
  margin-bottom: 12px !important;
}

/* 我的邀请佣金卡：按钮区域额外留白 */
#app .xc-invite-commission-card > .n-card__content,
#app .xc-invite-commission-card .n-card__content,
#app .xc-invite-commission-card [class*="card__content"] {
  padding-bottom: 34px !important;
}

#app .xc-invite-commission-card .n-button,
#app .xc-invite-commission-card button {
  margin-top: 10px !important;
}


/* =========================================================
   v6.7.4 dark list/table panel visual fix
   修复：使用文档、我的订单、节点状态等列表/表格页暗色下出现大块纯黑、不圆角、不统一的问题。
   仅通过路由类生效，不改页面结构。
   ========================================================= */

html.dark.xc-route-docs #app .n-card,
html.dark.xc-route-orders #app .n-card,
html.dark.xc-route-nodes #app .n-card,
html.dark.xc-route-docs #app .n-list,
html.dark.xc-route-orders #app .n-list,
html.dark.xc-route-nodes #app .n-list {
  background: var(--xc-panel) !important;
  border: 1px solid var(--xc-border) !important;
  border-radius: 22px !important;
  box-shadow: var(--xc-shadow) !important;
  overflow: hidden !important;
}

/* 使用文档页面：把卡片底部纯黑内容区统一成深蓝渐变 */
html.dark.xc-route-docs #app .n-card__content,
html.dark.xc-route-docs #app .n-list,
html.dark.xc-route-docs #app .n-list-item,
html.dark.xc-route-docs #app .n-thing,
html.dark.xc-route-docs #app .n-thing-main,
html.dark.xc-route-docs #app .n-thing-main__content,
html.dark.xc-route-docs #app .n-thing-main__description,
html.dark.xc-route-docs #app .n-thing-main__footer {
  background: linear-gradient(180deg, rgba(13,23,43,.88), rgba(10,17,33,.84)) !important;
  color: var(--xc-text) !important;
  border-color: rgba(120,141,182,.14) !important;
}

html.dark.xc-route-docs #app .n-card-header {
  background: linear-gradient(90deg, rgba(0,234,255,.16), rgba(96,165,250,.10), rgba(167,139,250,.08)) !important;
  border-bottom: 1px solid rgba(0,234,255,.18) !important;
}

html.dark.xc-route-docs #app .n-card-header__main,
html.dark.xc-route-docs #app .n-thing-main__title,
html.dark.xc-route-docs #app .n-thing-main__description,
html.dark.xc-route-docs #app .n-list-item * {
  color: var(--xc-text) !important;
}

/* 表格页面：我的订单 / 节点状态，统一表格外观 */
html.dark.xc-route-orders #app .n-data-table,
html.dark.xc-route-orders #app .n-data-table-wrapper,
html.dark.xc-route-orders #app .n-data-table-base-table,
html.dark.xc-route-orders #app .n-data-table-table,
html.dark.xc-route-nodes #app .n-data-table,
html.dark.xc-route-nodes #app .n-data-table-wrapper,
html.dark.xc-route-nodes #app .n-data-table-base-table,
html.dark.xc-route-nodes #app .n-data-table-table,
html.dark.xc-route-orders #app table,
html.dark.xc-route-nodes #app table {
  background: linear-gradient(180deg, rgba(13,23,43,.88), rgba(10,17,33,.84)) !important;
  border: 1px solid rgba(120,141,182,.14) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: var(--xc-shadow) !important;
  color: var(--xc-text) !important;
}

html.dark.xc-route-orders #app .n-data-table-th,
html.dark.xc-route-nodes #app .n-data-table-th,
html.dark.xc-route-orders #app thead tr,
html.dark.xc-route-nodes #app thead tr,
html.dark.xc-route-orders #app th,
html.dark.xc-route-nodes #app th {
  background: linear-gradient(90deg, rgba(0,234,255,.14), rgba(96,165,250,.09), rgba(167,139,250,.07)) !important;
  color: var(--xc-text) !important;
  border-color: rgba(120,141,182,.16) !important;
  font-weight: 900 !important;
}

html.dark.xc-route-orders #app .n-data-table-tr,
html.dark.xc-route-nodes #app .n-data-table-tr,
html.dark.xc-route-orders #app tbody tr,
html.dark.xc-route-nodes #app tbody tr {
  background: rgba(10,18,34,.58) !important;
  transition: background .16s ease !important;
}

html.dark.xc-route-orders #app .n-data-table-tr:nth-child(even),
html.dark.xc-route-nodes #app .n-data-table-tr:nth-child(even),
html.dark.xc-route-orders #app tbody tr:nth-child(even),
html.dark.xc-route-nodes #app tbody tr:nth-child(even) {
  background: rgba(14,24,45,.60) !important;
}

html.dark.xc-route-orders #app .n-data-table-tr:hover,
html.dark.xc-route-nodes #app .n-data-table-tr:hover,
html.dark.xc-route-orders #app tbody tr:hover,
html.dark.xc-route-nodes #app tbody tr:hover {
  background: linear-gradient(90deg, rgba(0,234,255,.08), rgba(96,165,250,.07), rgba(167,139,250,.05)) !important;
}

html.dark.xc-route-orders #app .n-data-table-td,
html.dark.xc-route-nodes #app .n-data-table-td,
html.dark.xc-route-orders #app td,
html.dark.xc-route-nodes #app td {
  background: transparent !important;
  color: var(--xc-text) !important;
  border-color: rgba(120,141,182,.12) !important;
}

/* 搜索框/顶部条在文档页不要纯黑 */
html.dark.xc-route-docs #app .n-input,
html.dark.xc-route-docs #app .n-input-wrapper,
html.dark.xc-route-docs #app input {
  background: rgba(10,18,34,.74) !important;
  border-color: rgba(0,234,255,.18) !important;
}

/* 浅色模式也稍微统一，但不明显改布局 */
html.light.xc-route-docs #app .n-card,
html.light.xc-route-orders #app .n-data-table,
html.light.xc-route-nodes #app .n-data-table,
html.light.xc-route-orders #app table,
html.light.xc-route-nodes #app table {
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 1px solid var(--xc-border) !important;
  box-shadow: var(--xc-shadow) !important;
}


/* =========================================================
   v6.7.5 traffic table + profile notice card fix
   修复：
   1. 流量明细表格暗色下仍然出现纯黑块
   2. 个人中心“通知”卡片底部开关显示不全
   原则：路由/内容精准标记，不改全局布局。
   ========================================================= */

/* 流量明细页面：外层卡片/表格统一暗色渐变，不再是纯黑块 */
html.dark.xc-route-traffic #app .n-card,
html.dark.xc-route-traffic #app .n-list,
html.dark.xc-route-traffic #app .n-data-table,
html.dark.xc-route-traffic #app .n-data-table-wrapper,
html.dark.xc-route-traffic #app .n-data-table-base-table,
html.dark.xc-route-traffic #app .n-data-table-table,
html.dark.xc-route-traffic #app table {
  background:
    radial-gradient(circle at 0% 0%, rgba(0,234,255,.08), transparent 36%),
    linear-gradient(180deg, rgba(13,23,43,.90), rgba(10,17,33,.84)) !important;
  border: 1px solid rgba(120,141,182,.15) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: var(--xc-shadow) !important;
  color: var(--xc-text) !important;
}

/* 流量明细提示条 */
html.dark.xc-route-traffic #app .n-alert,
html.dark.xc-route-traffic #app [role="alert"],
html.dark.xc-route-traffic #app .n-card__content > div:first-child {
  background:
    linear-gradient(90deg, rgba(0,234,255,.12), rgba(96,165,250,.08), rgba(167,139,250,.05)) !important;
  border: 1px solid rgba(0,234,255,.18) !important;
  color: var(--xc-text) !important;
  border-radius: 14px !important;
}

/* 表头 */
html.dark.xc-route-traffic #app .n-data-table-th,
html.dark.xc-route-traffic #app thead tr,
html.dark.xc-route-traffic #app th {
  background:
    linear-gradient(90deg, rgba(0,234,255,.15), rgba(96,165,250,.10), rgba(167,139,250,.08)) !important;
  color: var(--xc-text) !important;
  border-color: rgba(120,141,182,.16) !important;
  font-weight: 900 !important;
}

/* 表格行：压掉纯黑 */
html.dark.xc-route-traffic #app .n-data-table-tr,
html.dark.xc-route-traffic #app tbody tr {
  background:
    linear-gradient(180deg, rgba(13,23,43,.72), rgba(10,18,34,.66)) !important;
  transition: background .16s ease !important;
}

html.dark.xc-route-traffic #app .n-data-table-tr:nth-child(even),
html.dark.xc-route-traffic #app tbody tr:nth-child(even) {
  background:
    linear-gradient(180deg, rgba(15,26,48,.76), rgba(11,19,36,.68)) !important;
}

html.dark.xc-route-traffic #app .n-data-table-tr:hover,
html.dark.xc-route-traffic #app tbody tr:hover {
  background:
    linear-gradient(90deg, rgba(0,234,255,.09), rgba(96,165,250,.08), rgba(167,139,250,.06)) !important;
}

html.dark.xc-route-traffic #app .n-data-table-td,
html.dark.xc-route-traffic #app td {
  background: transparent !important;
  color: var(--xc-text) !important;
  border-color: rgba(120,141,182,.12) !important;
}

/* 流量明细中的倍率标签 */
html.dark.xc-route-traffic #app .n-tag,
html.dark.xc-route-traffic #app [class*="tag"] {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(120,141,182,.24) !important;
  color: var(--xc-text) !important;
}

/* 个人中心通知卡片：防止底部第二个开关被裁切 */
#app .xc-profile-notice-card,
#app .xc-profile-notice-card.n-card {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 158px !important;
  margin-bottom: 22px !important;
}

#app .xc-profile-notice-card > .n-card__content,
#app .xc-profile-notice-card .n-card__content,
#app .xc-profile-notice-card [class*="card__content"] {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 92px !important;
  padding-bottom: 36px !important;
}

#app .xc-profile-notice-card .n-space,
#app .xc-profile-notice-card [class*="space"],
#app .xc-profile-notice-card .n-form,
#app .xc-profile-notice-card form {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

#app .xc-profile-notice-card .n-switch {
  position: relative !important;
  z-index: 3 !important;
  margin-top: 6px !important;
  margin-bottom: 12px !important;
}

#app .xc-profile-notice-card label,
#app .xc-profile-notice-card .n-form-item,
#app .xc-profile-notice-card [class*="form-item"] {
  overflow: visible !important;
  margin-bottom: 10px !important;
}

/* 浅色模式只修裁切，不强改视觉 */
html.light #app .xc-profile-notice-card,
:root:not(.dark) #app .xc-profile-notice-card {
  overflow: visible !important;
}


/* =========================================================
   v6.7.6 profile password action attach fix
   修复个人中心“保存”按钮脱离修改密码卡片。
   只对个人中心被 JS 精准标记的修改密码卡片生效。
   ========================================================= */

#app .xc-profile-password-card,
#app .xc-profile-password-card.n-card {
  overflow: hidden !important;
  height: auto !important;
  max-height: none !important;
  min-height: auto !important;
  margin-bottom: 22px !important;
}

#app .xc-profile-password-card .n-card__content,
#app .xc-profile-password-card [class*="card__content"] {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  padding-bottom: 26px !important;
}

#app .xc-profile-password-card .xc-profile-password-action-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  margin-top: 14px !important;
  padding-top: 2px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  position: relative !important;
  z-index: 3 !important;
}

#app .xc-profile-password-card .xc-profile-password-save,
#app .xc-profile-password-card .xc-profile-password-action-row .n-button,
#app .xc-profile-password-card .xc-profile-password-action-row button {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin: 0 !important;
  min-height: 38px !important;
  height: 38px !important;
  line-height: 38px !important;
  z-index: 4 !important;
}

/* 移动按钮后，把原本遗留在卡片外面的空壳隐藏 */
#app .xc-profile-orphan-action-shell {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* 防止个人中心卡片的按钮阴影被截断 */
#app .xc-profile-password-card .n-button--primary-type {
  box-shadow: 0 10px 22px rgba(0,234,255,.18) !important;
}


/* =========================================================
   v6.7.7 profile compact layout
   1) 通知改成横向两行：文字在左，开关在右
   2) 适度缩小“我的钱包”金额区，释放空间
   ========================================================= */

#app .xc-profile-wallet-card,
#app .xc-profile-wallet-card.n-card {
  overflow: hidden !important;
  margin-bottom: 18px !important;
}

#app .xc-profile-wallet-card .n-card__content,
#app .xc-profile-wallet-card [class*="card__content"] {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  min-height: auto !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-amount {
  font-size: 52px !important;
  line-height: 1.02 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-currency {
  font-size: 16px !important;
  line-height: 1.2 !important;
  margin-left: 8px !important;
  opacity: .8 !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-caption {
  font-size: 14px !important;
  line-height: 1.3 !important;
  opacity: .78 !important;
  margin-top: 2px !important;
  white-space: normal !important;
}

#app .xc-profile-notice-card,
#app .xc-profile-notice-card.n-card {
  overflow: hidden !important;
  margin-bottom: 22px !important;
}

#app .xc-profile-notice-card .n-card__content,
#app .xc-profile-notice-card [class*="card__content"] {
  padding-top: 14px !important;
  padding-bottom: 16px !important;
  min-height: auto !important;
}

#app .xc-profile-notice-card .xc-profile-notice-original {
  display: none !important;
}

#app .xc-profile-notice-card .xc-profile-notice-layout {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
}

#app .xc-profile-notice-card .xc-profile-notice-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  min-height: 40px !important;
  width: 100% !important;
}

#app .xc-profile-notice-card .xc-profile-notice-label {
  display: block !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  color: inherit !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
  white-space: normal !important;
}

#app .xc-profile-notice-card .xc-profile-notice-switch,
#app .xc-profile-notice-card .xc-profile-notice-row .n-switch {
  flex: 0 0 auto !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 720px) {
  #app .xc-profile-wallet-card .xc-profile-wallet-amount {
    font-size: 44px !important;
  }
  #app .xc-profile-notice-card .xc-profile-notice-row {
    min-height: 38px !important;
    gap: 12px !important;
  }
  #app .xc-profile-notice-card .xc-profile-notice-label {
    font-size: 14px !important;
  }
}


/* =========================================================
   v6.7.8 profile one-line notice + wallet compact fix
   修正：
   1) 通知不是两行，而是一行：到期邮件提醒 [开关]  流量邮件提醒 [开关]
   2) 钱包金额进一步缩小，防止 0.00 被裁切/卡片显得更高
   ========================================================= */

/* 钱包卡片：只压缩内容区，不放大 */
#app .xc-profile-wallet-card,
#app .xc-profile-wallet-card.n-card {
  min-height: 118px !important;
  max-height: 148px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

#app .xc-profile-wallet-card .n-card-header {
  min-height: 48px !important;
  height: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#app .xc-profile-wallet-card .n-card__content,
#app .xc-profile-wallet-card [class*="card__content"] {
  padding-top: 8px !important;
  padding-bottom: 10px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-amount {
  font-size: 38px !important;
  line-height: 0.95 !important;
  font-weight: 700 !important;
  margin: 0 !important;
  transform: none !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-currency {
  font-size: 13px !important;
  line-height: 1 !important;
  margin-left: 6px !important;
  opacity: .72 !important;
  vertical-align: baseline !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-caption {
  font-size: 12px !important;
  line-height: 1.15 !important;
  opacity: .70 !important;
  margin-top: 0 !important;
}

/* 通知：一行布局 */
#app .xc-profile-notice-card,
#app .xc-profile-notice-card.n-card {
  overflow: hidden !important;
  min-height: 116px !important;
  max-height: 145px !important;
  margin-bottom: 20px !important;
}

#app .xc-profile-notice-card .n-card-header {
  min-height: 48px !important;
  height: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#app .xc-profile-notice-card .n-card__content,
#app .xc-profile-notice-card [class*="card__content"] {
  padding-top: 14px !important;
  padding-bottom: 16px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

/* 旧 v6.7.7 两行布局和原始布局都隐藏，避免重复 */
#app .xc-profile-notice-card .xc-profile-notice-original {
  display: none !important;
}

#app .xc-profile-notice-card .xc-profile-notice-layout {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 18px 34px !important;
  width: 100% !important;
  min-height: 38px !important;
}

#app .xc-profile-notice-card .xc-profile-notice-row {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 34px !important;
  flex: 0 0 auto !important;
}

#app .xc-profile-notice-card .xc-profile-notice-label {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  color: inherit !important;
  margin: 0 !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

#app .xc-profile-notice-card .xc-profile-notice-switch,
#app .xc-profile-notice-card .xc-profile-notice-row .n-switch {
  flex: 0 0 auto !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 720px) {
  #app .xc-profile-notice-card .xc-profile-notice-layout {
    gap: 12px 18px !important;
  }
  #app .xc-profile-notice-card .xc-profile-notice-label {
    font-size: 13px !important;
  }
  #app .xc-profile-wallet-card .xc-profile-wallet-amount {
    font-size: 34px !important;
  }
}


/* =========================================================
   v6.7.10 profile spacing + reset info safe fix
   这版不再移动/隐藏“重置订阅信息”的原始 DOM，避免内容消失。
   仅做：
   1) 压缩个人中心卡片间距
   2) 修改密码卡片保留保存按钮空间
   3) 重置订阅信息：提示条与重置按钮横向排列
   ========================================================= */

#app .xc-profile-page-compact .n-card {
  margin-bottom: 16px !important;
}

#app .xc-profile-page-compact .n-card-header {
  min-height: 46px !important;
  height: 46px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#app .xc-profile-page-compact .n-card__content,
#app .xc-profile-page-compact [class*="card__content"] {
  padding-top: 12px !important;
  padding-bottom: 14px !important;
}

/* 钱包继续保持紧凑，避免 0.00 过大或被裁 */
#app .xc-profile-wallet-card,
#app .xc-profile-wallet-card.n-card {
  min-height: 110px !important;
  max-height: 136px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

#app .xc-profile-wallet-card .n-card__content,
#app .xc-profile-wallet-card [class*="card__content"] {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  overflow: hidden !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-amount {
  font-size: 34px !important;
  line-height: 0.95 !important;
  margin: 0 !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-currency {
  font-size: 12px !important;
  margin-left: 5px !important;
  opacity: .72 !important;
}

#app .xc-profile-wallet-card .xc-profile-wallet-caption {
  font-size: 12px !important;
  line-height: 1.1 !important;
  margin-top: 0 !important;
  opacity: .68 !important;
}

/* 修改密码：给保存按钮留出明确空间，不让按钮脱离或被裁 */
#app .xc-profile-password-card,
#app .xc-profile-password-card.n-card {
  min-height: 300px !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin-bottom: 18px !important;
}

#app .xc-profile-password-card .n-card__content,
#app .xc-profile-password-card [class*="card__content"] {
  padding-bottom: 26px !important;
  overflow: visible !important;
}

#app .xc-profile-password-card .xc-profile-password-action-row {
  margin-top: 12px !important;
}

/* 通知一行布局保持 */
#app .xc-profile-notice-card,
#app .xc-profile-notice-card.n-card {
  min-height: 108px !important;
  max-height: 132px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

#app .xc-profile-notice-card .n-card__content,
#app .xc-profile-notice-card [class*="card__content"] {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  overflow: hidden !important;
}

/* 重置订阅信息：安全横排，不隐藏原始内容 */
#app .xc-profile-reset-card,
#app .xc-profile-reset-card.n-card {
  min-height: 126px !important;
  height: auto !important;
  overflow: hidden !important;
  margin-bottom: 18px !important;
}

#app .xc-profile-reset-card .n-card__content,
#app .xc-profile-reset-card [class*="card__content"] {
  padding-top: 14px !important;
  padding-bottom: 16px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}

#app .xc-profile-reset-card .xc-profile-reset-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}

#app .xc-profile-reset-card .xc-profile-reset-alert {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

#app .xc-profile-reset-card .xc-profile-reset-alert > * {
  margin: 0 !important;
}

#app .xc-profile-reset-card .xc-profile-reset-button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  margin: 0 !important;
  align-self: center !important;
}

@media (max-width: 900px) {
  #app .xc-profile-reset-card .xc-profile-reset-row {
    flex-wrap: wrap !important;
    align-items: flex-start !important;
  }
}


/* =========================================================
   v6.7.21 emergency safe invite fix
   重点：先恢复页面正常显示，禁止再移动/隐藏邀请页 DOM。
   只做安全压缩 + 邀请码管理内部滚动。
   ========================================================= */

/* 邀请页顶部两块只做安全压缩，不合并、不隐藏、不移动 */
#app .xc-invite-summary-safe,
#app .xc-invite-summary-safe.n-card {
  min-height: 126px !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin-bottom: 16px !important;
}

#app .xc-invite-summary-safe .n-card__content,
#app .xc-invite-summary-safe [class*="card__content"] {
  padding-top: 10px !important;
  padding-bottom: 12px !important;
  overflow: visible !important;
}

#app .xc-invite-stats-safe,
#app .xc-invite-stats-safe.n-card {
  min-height: 104px !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin-bottom: 16px !important;
}

#app .xc-invite-stats-safe .n-card__content,
#app .xc-invite-stats-safe [class*="card__content"] {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  overflow: visible !important;
}

/* 邀请码管理：只让内部内容滚动，不影响整页 */
#app .xc-invite-code-safe,
#app .xc-invite-code-safe.n-card {
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  margin-bottom: 22px !important;
}

#app .xc-invite-code-scroll-safe {
  max-height: 300px !important;
  min-height: 120px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
}

/* 如果 JS 标记在内容区，避免外层继续撑破 */
#app .xc-invite-code-safe .n-card__content,
#app .xc-invite-code-safe [class*="card__content"] {
  overflow: hidden !important;
}

/* 滚动条 */
#app .xc-invite-code-scroll-safe::-webkit-scrollbar {
  width: 10px !important;
}

#app .xc-invite-code-scroll-safe::-webkit-scrollbar-track {
  background: rgba(148, 163, 184, .14) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-safe::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(14,165,233,.78), rgba(124,58,237,.78)) !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-safe {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(59,130,246,.78) rgba(148,163,184,.14) !important;
}

html.dark #app .xc-invite-code-scroll-safe::-webkit-scrollbar-track {
  background: rgba(15,23,42,.72) !important;
}

html.dark #app .xc-invite-code-scroll-safe::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(34,211,238,.78), rgba(139,92,246,.78)) !important;
  border-color: rgba(15,23,42,.82) !important;
}

/* 下面卡片始终正常排版 */
#app .xc-invite-commission-safe,
#app .xc-invite-commission-safe.n-card {
  position: relative !important;
  z-index: 1 !important;
  clear: both !important;
  margin-top: 22px !important;
}

/* 保底：邀请页绝不允许被整页白化/透明化 */
#app .xc-invite-summary-safe,
#app .xc-invite-stats-safe,
#app .xc-invite-code-safe,
#app .xc-invite-commission-safe,
#app .xc-invite-summary-safe *,
#app .xc-invite-stats-safe *,
#app .xc-invite-code-safe *,
#app .xc-invite-commission-safe * {
  opacity: 1 !important;
  filter: none !important;
}

@media (max-height: 820px) {
  #app .xc-invite-code-scroll-safe {
    max-height: 250px !important;
  }
}


/* =========================================================
   v6.7.23 invite final safe fix
   基于 v6.7.21 安全回滚版：
   - 不再移动 0.00 / CNY / 当前剩余佣金
   - 不再创建会产生整行边框的 balance-row
   - 只把“划转”按钮绝对定位回余额卡内部
   - 保留邀请码管理内部滚动
   ========================================================= */

#app .xc-invite-summary-v6723,
#app .xc-invite-summary-v6723.n-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 132px !important;
  margin-bottom: 16px !important;
}

#app .xc-invite-summary-v6723 .n-card__content,
#app .xc-invite-summary-v6723 [class*="card__content"] {
  position: relative !important;
  overflow: visible !important;
  padding-top: 12px !important;
  padding-bottom: 16px !important;
}

/* 删除上一版错误行的视觉影响：如果浏览器仍有旧 DOM，直接隐藏 */
#app .xc-invite-balance-row-safe {
  display: none !important;
}

/* 划转按钮：固定回我的邀请卡片内部，0.00/CNY 右侧 */
#app .xc-invite-summary-v6723 .xc-invite-transfer-v6723,
#app .xc-invite-summary-v6723 button.xc-invite-transfer-v6723,
#app .xc-invite-summary-v6723 .n-button.xc-invite-transfer-v6723 {
  position: absolute !important;
  left: 178px !important;
  top: 14px !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  margin: 0 !important;
  z-index: 10 !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap !important;
  pointer-events: auto !important;
}

/* 避免按钮原父级留下空高度 */
#app .xc-invite-transfer-empty-parent-v6723 {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 统计卡位置固定，不被按钮影响 */
#app .xc-invite-stats-safe,
#app .xc-invite-stats-safe.n-card {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

/* 邀请码管理内部滚动稳定版 */
#app .xc-invite-code-safe,
#app .xc-invite-code-safe.n-card {
  overflow: hidden !important;
  margin-bottom: 22px !important;
}

#app .xc-invite-code-scroll-safe {
  max-height: 300px !important;
  min-height: 120px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
}

/* 如果滚动条标到了表格外层，也强制生效 */
#app .xc-invite-code-safe .n-data-table-base-table-body,
#app .xc-invite-code-safe .n-data-table-wrapper,
#app .xc-invite-code-safe .n-data-table {
  max-height: 300px !important;
}

#app .xc-invite-code-scroll-safe::-webkit-scrollbar {
  width: 10px !important;
}

#app .xc-invite-code-scroll-safe::-webkit-scrollbar-track {
  background: rgba(148,163,184,.14) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-safe::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(14,165,233,.78), rgba(124,58,237,.78)) !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-safe {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(59,130,246,.78) rgba(148,163,184,.14) !important;
}

html.dark #app .xc-invite-code-scroll-safe::-webkit-scrollbar-track {
  background: rgba(15,23,42,.72) !important;
}

html.dark #app .xc-invite-code-scroll-safe::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(34,211,238,.78), rgba(139,92,246,.78)) !important;
  border-color: rgba(15,23,42,.82) !important;
}

@media (max-width: 720px) {
  #app .xc-invite-summary-v6723 .xc-invite-transfer-v6723,
  #app .xc-invite-summary-v6723 button.xc-invite-transfer-v6723,
  #app .xc-invite-summary-v6723 .n-button.xc-invite-transfer-v6723 {
    left: 150px !important;
    top: 14px !important;
  }
}

@media (max-height: 820px) {
  #app .xc-invite-code-scroll-safe,
  #app .xc-invite-code-safe .n-data-table-base-table-body,
  #app .xc-invite-code-safe .n-data-table-wrapper,
  #app .xc-invite-code-safe .n-data-table {
    max-height: 250px !important;
  }
}


/* =========================================================
   v6.7.24 invite final polish
   最后修正：我的邀请顶部金额不裁切、划转按钮不漂移、
   邀请码管理内部滚动稳定。不合并、不隐藏、不重排整页。
   ========================================================= */

/* 顶部余额卡：给内容区足够高度，避免 0.00 / CNY / 当前剩余佣金被裁切 */
#app .xc-invite-summary-v6724,
#app .xc-invite-summary-v6724.n-card {
  position: relative !important;
  min-height: 158px !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

#app .xc-invite-summary-v6724 .n-card__content,
#app .xc-invite-summary-v6724 [class*="card__content"] {
  position: relative !important;
  min-height: 72px !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  padding-top: 12px !important;
  padding-bottom: 18px !important;
}

/* 只压缩原始金额文字，不移动它 */
#app .xc-invite-summary-v6724 .xc-invite-amount-v6724 {
  display: inline-block !important;
  font-size: 36px !important;
  line-height: 1 !important;
  font-weight: 780 !important;
  letter-spacing: -.02em !important;
  margin: 0 !important;
  vertical-align: baseline !important;
}

#app .xc-invite-summary-v6724 .xc-invite-currency-v6724 {
  display: inline-block !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  margin-left: 6px !important;
  color: #64748b !important;
  opacity: 1 !important;
  vertical-align: baseline !important;
}

html.dark #app .xc-invite-summary-v6724 .xc-invite-currency-v6724 {
  color: #9fb0c8 !important;
}

#app .xc-invite-summary-v6724 .xc-invite-caption-v6724 {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  margin-top: 6px !important;
  color: #64748b !important;
  opacity: 1 !important;
}

html.dark #app .xc-invite-summary-v6724 .xc-invite-caption-v6724 {
  color: #9fb0c8 !important;
}

/* 划转按钮：放在金额右侧，固定在卡片内容区内，不再影响统计卡 */
#app .xc-invite-summary-v6724 .xc-invite-transfer-v6724,
#app .xc-invite-summary-v6724 button.xc-invite-transfer-v6724,
#app .xc-invite-summary-v6724 .n-button.xc-invite-transfer-v6724 {
  position: absolute !important;
  left: 174px !important;
  top: 11px !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
  z-index: 10 !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap !important;
  pointer-events: auto !important;
}

/* 旧错误行兜底隐藏，防止出现整条边框 */
#app .xc-invite-balance-row-safe {
  display: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* 统计卡收紧一点，但不挤压文字 */
#app .xc-invite-stats-v6724,
#app .xc-invite-stats-v6724.n-card {
  min-height: 108px !important;
  height: auto !important;
  overflow: visible !important;
  margin-bottom: 18px !important;
}

/* 邀请码管理：内部滚动要稳定，底部不要裁切行 */
#app .xc-invite-code-v6724,
#app .xc-invite-code-v6724.n-card {
  position: relative !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  margin-bottom: 22px !important;
}

#app .xc-invite-code-scroll-v6724 {
  max-height: 318px !important;
  min-height: 154px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
  padding-bottom: 2px !important;
}

#app .xc-invite-code-scroll-v6724::-webkit-scrollbar {
  width: 10px !important;
}

#app .xc-invite-code-scroll-v6724::-webkit-scrollbar-track {
  background: rgba(148,163,184,.14) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-v6724::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(14,165,233,.78), rgba(124,58,237,.78)) !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  border-radius: 999px !important;
}

#app .xc-invite-code-scroll-v6724 {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(59,130,246,.78) rgba(148,163,184,.14) !important;
}

html.dark #app .xc-invite-code-scroll-v6724::-webkit-scrollbar-track {
  background: rgba(15,23,42,.72) !important;
}

html.dark #app .xc-invite-code-scroll-v6724::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(34,211,238,.78), rgba(139,92,246,.78)) !important;
  border-color: rgba(15,23,42,.82) !important;
}

#app .xc-invite-commission-v6724,
#app .xc-invite-commission-v6724.n-card {
  position: relative !important;
  z-index: 1 !important;
  clear: both !important;
  margin-top: 22px !important;
}

/* 小屏时避免按钮压住 CNY */
@media (max-width: 760px) {
  #app .xc-invite-summary-v6724 .xc-invite-transfer-v6724,
  #app .xc-invite-summary-v6724 button.xc-invite-transfer-v6724,
  #app .xc-invite-summary-v6724 .n-button.xc-invite-transfer-v6724 {
    left: 158px !important;
  }
}

@media (max-height: 820px) {
  #app .xc-invite-code-scroll-v6724 {
    max-height: 270px !important;
  }
}


/* =========================================================
   v6.7.25 首页销售转化优化：购买按钮 + 推荐套餐
   ========================================================= */
.xc-dashboard-summary.xc-dashboard-summary-sales,
.xc-dashboard-summary:has(.xc-mini-stat-device) {
  grid-template-columns: minmax(0, 1.35fr) minmax(180px, .42fr) !important;
  align-items: stretch !important;
}
.xc-welcome-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.xc-action-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 14px;
  font-weight: 900;
  text-decoration: none !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.xc-action-btn:hover { transform: translateY(-1px); }
.xc-action-btn--primary {
  color: #fff !important;
  background: linear-gradient(135deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3)) !important;
  box-shadow: 0 12px 26px rgba(37,99,235,.22), 0 5px 16px rgba(6,182,212,.13) !important;
}
.xc-action-btn--ghost {
  color: var(--xc-text) !important;
  background: var(--xc-panel-soft) !important;
  border: 1px solid var(--xc-border) !important;
}
.xc-plan-recommend {
  position: relative;
  margin-bottom: 16px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid var(--xc-border) !important;
  background: var(--xc-panel) !important;
  box-shadow: var(--xc-shadow) !important;
  overflow: hidden;
}
html.dark .xc-plan-recommend::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,234,255,.85), rgba(123,97,255,.85), transparent);
  opacity: .9;
  pointer-events: none;
}
.xc-plan-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}
.xc-plan-title {
  color: var(--xc-text) !important;
  font-size: 19px;
  font-weight: 950;
  letter-spacing: -.03em;
}
.xc-plan-subtitle {
  color: var(--xc-soft) !important;
  margin-top: 4px;
  font-size: 13px;
}
.xc-plan-more {
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none !important;
  color: var(--xc-accent) !important;
}
.xc-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.xc-plan-card {
  position: relative;
  display: flex;
  min-height: 260px;
  flex-direction: column;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid var(--xc-border) !important;
  background: rgba(255,255,255,.62) !important;
  text-decoration: none !important;
  color: var(--xc-text) !important;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.xc-plan-card:hover {
  transform: translateY(-2px);
  border-color: var(--xc-border-strong) !important;
  box-shadow: 0 18px 32px rgba(37,99,235,.14), 0 8px 22px rgba(6,182,212,.08) !important;
}
html.dark .xc-plan-card {
  background: linear-gradient(180deg, rgba(15,27,51,.86), rgba(10,17,33,.82)) !important;
}
.xc-plan-card--primary {
  border-color: rgba(124,58,237,.32) !important;
  box-shadow: 0 18px 38px rgba(124,58,237,.12), 0 8px 24px rgba(37,99,235,.10) !important;
}
.xc-plan-card--warm {
  background: radial-gradient(circle at 100% 0%, rgba(251,146,60,.14), transparent 35%), rgba(255,255,255,.66) !important;
}
html.dark .xc-plan-card--warm {
  background: radial-gradient(circle at 100% 0%, rgba(251,146,60,.16), transparent 35%), linear-gradient(180deg, rgba(15,27,51,.86), rgba(10,17,33,.82)) !important;
}
.xc-plan-badge {
  align-self: flex-start;
  margin-bottom: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(6,182,212,.14));
  color: var(--xc-accent) !important;
  font-size: 12px;
  font-weight: 950;
}
.xc-plan-card--primary .xc-plan-badge {
  color: #fff !important;
  background: linear-gradient(135deg, var(--xc-accent), var(--xc-accent-3));
}
.xc-plan-card--warm .xc-plan-badge {
  color: #fff !important;
  background: linear-gradient(135deg, #f59e0b, #fb923c);
}
.xc-plan-name {
  color: var(--xc-text) !important;
  font-size: 18px;
  font-weight: 950;
  letter-spacing: -.025em;
}
.xc-plan-desc {
  color: var(--xc-soft) !important;
  margin-top: 6px;
  font-size: 13px;
}
.xc-plan-price {
  color: var(--xc-text) !important;
  margin-top: 18px;
  font-size: 34px;
  font-weight: 950;
  letter-spacing: -.045em;
  line-height: 1;
}
.xc-plan-price span {
  color: var(--xc-soft) !important;
  margin-right: 3px;
  font-size: 15px;
  font-weight: 900;
}
.xc-plan-price em {
  color: var(--xc-soft) !important;
  font-style: normal;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
}
.xc-plan-features {
  display: grid;
  gap: 8px;
  margin: 18px 0 16px;
  padding: 0;
  list-style: none;
  color: var(--xc-text-2) !important;
  font-size: 13px;
  line-height: 1.45;
}
.xc-plan-buy {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  margin-top: auto;
  border-radius: 14px;
  color: #fff !important;
  background: linear-gradient(135deg, var(--xc-accent), var(--xc-accent-2), var(--xc-accent-3));
  font-weight: 950;
  box-shadow: 0 12px 22px rgba(37,99,235,.18);
}
.xc-plan-empty {
  padding: 20px;
  border-radius: 18px;
  border: 1px dashed var(--xc-border-strong) !important;
  background: var(--xc-empty-bg) !important;
}
.xc-plan-empty-title {
  color: var(--xc-text) !important;
  font-size: 17px;
  font-weight: 950;
}
.xc-plan-empty-desc {
  color: var(--xc-soft) !important;
  margin: 8px 0 14px;
  font-size: 13px;
}
.xc-plan-skeleton {
  min-height: 220px;
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(148,163,184,.10), rgba(255,255,255,.20), rgba(148,163,184,.10));
  background-size: 240% 100%;
  animation: xc-skeleton 1.25s ease-in-out infinite;
}
@keyframes xc-skeleton { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }

@media (max-width: 1100px) {
  .xc-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xc-dashboard-summary.xc-dashboard-summary-sales,
  .xc-dashboard-summary:has(.xc-mini-stat-device) { grid-template-columns: 1fr !important; }
}
@media (max-width: 768px) {
  .xc-plan-recommend { padding: 16px; }
  .xc-plan-head { align-items: flex-start; }
  .xc-plan-grid { grid-template-columns: 1fr; }
  .xc-plan-card { min-height: 230px; }
  .xc-plan-price { font-size: 30px; }
  .xc-welcome-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .xc-action-btn { min-height: 44px; padding: 0 10px; font-size: 13px; }
}


/* =========================================================
   v6.7.26 无侧边栏单页布局 + 手机自适应
   ========================================================= */
#app.xc-navless-v6726 .n-layout-sider,
#app.xc-navless-v6726 aside.n-layout-sider,
#app.xc-navless-v6726 [class*="n-layout-sider"] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  flex: 0 0 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#app.xc-navless-v6726 .n-layout,
#app.xc-navless-v6726 .n-layout-scroll-container,
#app.xc-navless-v6726 .n-layout-content,
#app.xc-navless-v6726 main {
  width: 100% !important;
  max-width: none !important;
}

#app.xc-navless-v6726 .n-layout-content,
#app.xc-navless-v6726 main,
#app.xc-navless-v6726 [class*="layout-content"] {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

#app.xc-navless-v6726 .n-layout-content > div,
#app.xc-navless-v6726 main > div,
#app.xc-navless-v6726 [class*="layout-content"] > div {
  width: min(100%, 1440px) !important;
  margin: 0 auto !important;
  padding: 18px 22px 28px !important;
}

#app.xc-navless-v6726 .xc-top-nav-v6726 {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 8px !important;
  border: 1px solid var(--xc-border) !important;
  border-radius: 18px !important;
  background: var(--xc-panel) !important;
  box-shadow: var(--xc-shadow) !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

#app.xc-navless-v6726 .xc-top-nav-v6726::-webkit-scrollbar { height: 0 !important; }

#app.xc-navless-v6726 .xc-top-nav-item-v6726 {
  flex: 0 0 auto !important;
  min-height: 38px !important;
  padding: 0 15px !important;
  border-radius: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--xc-text-2) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  border: 1px solid transparent !important;
  transition: transform .16s ease, background .16s ease, border-color .16s ease !important;
}

#app.xc-navless-v6726 .xc-top-nav-item-v6726:hover,
#app.xc-navless-v6726 .xc-top-nav-item-v6726.is-active {
  color: var(--xc-text) !important;
  background: linear-gradient(135deg, rgba(37,99,235,.13), rgba(6,182,212,.11), rgba(124,58,237,.09)) !important;
  border-color: var(--xc-border-strong) !important;
  transform: translateY(-1px) !important;
}

html.dark #app.xc-navless-v6726 .xc-top-nav-item-v6726:hover,
html.dark #app.xc-navless-v6726 .xc-top-nav-item-v6726.is-active {
  background: linear-gradient(135deg, rgba(34,211,238,.16), rgba(96,165,250,.12), rgba(167,139,250,.12)) !important;
}

/* 删除顶部设备支持小卡后，让 Hero 独占整行 */
#app.xc-navless-v6726 .xc-dashboard-summary.xc-dashboard-summary-sales,
#app.xc-navless-v6726 .xc-dashboard-summary.xc-dashboard-summary-navless,
#app.xc-navless-v6726 .xc-dashboard-summary:not(:has(.xc-mini-stat)) {
  grid-template-columns: 1fr !important;
}

#app.xc-navless-v6726 .xc-mini-stat-device { display: none !important; }

#app.xc-navless-v6726 .xc-welcome-card {
  min-height: 190px !important;
}

/* PC：套餐卡横向三列；手机：横滑自适应 */
@media (min-width: 769px) {
  #app.xc-navless-v6726 .xc-plan-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  #app.xc-navless-v6726 .n-layout-content > div,
  #app.xc-navless-v6726 main > div,
  #app.xc-navless-v6726 [class*="layout-content"] > div {
    padding: 12px 10px 22px !important;
    border-radius: 18px !important;
  }

  #app.xc-navless-v6726 .xc-top-nav-v6726 {
    margin-bottom: 12px !important;
    padding: 6px !important;
    border-radius: 15px !important;
  }

  #app.xc-navless-v6726 .xc-top-nav-item-v6726 {
    min-height: 34px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }

  #app.xc-navless-v6726 .xc-welcome-card {
    min-height: 170px !important;
  }

  #app.xc-navless-v6726 .xc-plan-grid {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 4px 10px !important;
    margin: 0 -4px !important;
  }

  #app.xc-navless-v6726 .xc-plan-grid::-webkit-scrollbar { height: 0 !important; }

  #app.xc-navless-v6726 .xc-plan-card {
    min-width: 84% !important;
    max-width: 84% !important;
    scroll-snap-align: start !important;
  }
}

@media (max-width: 430px) {
  #app.xc-navless-v6726 .xc-plan-card {
    min-width: 88% !important;
    max-width: 88% !important;
  }
  #app.xc-navless-v6726 .xc-welcome-actions {
    grid-template-columns: 1fr 1fr !important;
  }
}


/* v6.7.27 返回上一页按钮 */
#app.xc-navless-v6726 .xc-backbar-v6727 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 14px !important;
  padding: 8px 6px !important;
}

#app.xc-navless-v6726 .xc-backbar-btn-v6727 {
  appearance: none !important;
  border: 1px solid var(--xc-border) !important;
  background: var(--xc-panel) !important;
  color: var(--xc-text) !important;
  border-radius: 12px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
  box-shadow: var(--xc-shadow) !important;
  transition: transform .16s ease, border-color .16s ease, background .16s ease !important;
}

#app.xc-navless-v6726 .xc-backbar-btn-v6727:hover {
  transform: translateY(-1px) !important;
  border-color: var(--xc-border-strong) !important;
  background: linear-gradient(135deg, rgba(37,99,235,.08), rgba(124,58,237,.06)) !important;
}

#app.xc-navless-v6726 .xc-backbar-title-v6727 {
  color: var(--xc-soft) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

@media (max-width: 768px) {
  #app.xc-navless-v6726 .xc-backbar-v6727 {
    margin-bottom: 10px !important;
    padding: 2px 2px 6px !important;
  }
  #app.xc-navless-v6726 .xc-backbar-btn-v6727 {
    min-height: 34px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }
  #app.xc-navless-v6726 .xc-backbar-title-v6727 {
    font-size: 13px !important;
  }
}


/* v6.7.28 套餐流量显示修复 + 按钮可读性增强 */
.xc-action-btn--primary,
.xc-plan-buy {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(15, 23, 42, .22) !important;
}

.xc-plan-buy {
  background: linear-gradient(135deg, #2f7df6, #2fc2ff, #7a5cff) !important;
  box-shadow: 0 10px 20px rgba(47, 125, 246, .20) !important;
}

.xc-action-btn--primary {
  background: linear-gradient(135deg, #2f7df6, #2fc2ff, #7a5cff) !important;
  box-shadow: 0 12px 24px rgba(47, 125, 246, .20), 0 4px 12px rgba(47, 194, 255, .10) !important;
}


/* v6.7.30 固定返回按钮 */
.xc-float-back-v6730 {
  position: fixed !important;
  left: 18px !important;
  top: 82px !important;
  z-index: 9999 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 40px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(59, 130, 246, .18) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.92) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .12) !important;
  backdrop-filter: blur(10px) !important;
  cursor: pointer !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.xc-float-back-v6730:hover {
  transform: translateY(-1px) !important;
  background: linear-gradient(135deg, rgba(47,125,246,.10), rgba(47,194,255,.10), rgba(122,92,255,.08)) !important;
}

.xc-float-back-v6730__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #2f7df6, #2fc2ff, #7a5cff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

html.dark .xc-float-back-v6730 {
  background: rgba(15, 23, 42, .88) !important;
  color: #e5eefc !important;
  -webkit-text-fill-color: #e5eefc !important;
  border-color: rgba(148, 163, 184, .18) !important;
}

@media (max-width: 768px) {
  .xc-float-back-v6730 {
    left: 12px !important;
    top: auto !important;
    bottom: 16px !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }
}

/* v6.7.35 安全返回首页按钮 */
.xc-backbar-v6727,
.xc-float-back-v6730 {
  display: none !important;
}

.xc-purchase-home-v6735 {
  position: fixed !important;
  left: 18px !important;
  bottom: 22px !important;
  z-index: 9999 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(59, 130, 246, .24) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  box-shadow: 0 12px 26px rgba(15, 23, 42, .14) !important;
  backdrop-filter: blur(10px) !important;
  cursor: pointer !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
}

.xc-purchase-home-v6735:hover {
  transform: translateY(-1px) !important;
  background: linear-gradient(135deg, rgba(47,125,246,.12), rgba(47,194,255,.12), rgba(122,92,255,.10)) !important;
}

.xc-purchase-home-v6735__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 23px !important;
  height: 23px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #2f7df6, #2fc2ff, #7a5cff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 13px !important;
}

html.dark .xc-purchase-home-v6735 {
  background: rgba(15, 23, 42, .90) !important;
  color: #e5eefc !important;
  -webkit-text-fill-color: #e5eefc !important;
  border-color: rgba(148, 163, 184, .20) !important;
}

@media (max-width: 768px) {
  .xc-purchase-home-v6735 {
    left: 12px !important;
    bottom: 14px !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    font-size: 13px !important;
  }
}


/* v6.7.36 全站安全返回首页按钮 */
.xc-backbar-v6727,
.xc-float-back-v6730,
.xc-purchase-home-v6735 {
  display: none !important;
}

.xc-global-home-v6736 {
  position: fixed !important;
  left: 18px !important;
  bottom: 22px !important;
  z-index: 9999 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(59, 130, 246, .24) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  box-shadow: 0 12px 26px rgba(15, 23, 42, .14) !important;
  backdrop-filter: blur(10px) !important;
  cursor: pointer !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
}

.xc-global-home-v6736:hover {
  transform: translateY(-1px) !important;
  background: linear-gradient(135deg, rgba(47,125,246,.12), rgba(47,194,255,.12), rgba(122,92,255,.10)) !important;
}

.xc-global-home-v6736__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 23px !important;
  height: 23px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #2f7df6, #2fc2ff, #7a5cff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 13px !important;
}

html.dark .xc-global-home-v6736 {
  background: rgba(15, 23, 42, .90) !important;
  color: #e5eefc !important;
  -webkit-text-fill-color: #e5eefc !important;
  border-color: rgba(148, 163, 184, .20) !important;
}

@media (max-width: 768px) {
  .xc-global-home-v6736 {
    left: 12px !important;
    bottom: 14px !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    font-size: 13px !important;
  }
}

/* =========================================================
   v6.7.83 VISUAL LOGIN CLEAN TESTED
   这版不再渲染旧登录卡。旧表单只作为隐藏的功能载体；
   可视登录卡完全重建，因此不会继承黑色卡片/旧阴影/输入框问题。
   ========================================================= */

:root {
  --xc83-blue: #168cff;
  --xc83-cyan: #25c7f6;
  --xc83-purple: #7a46ff;
  --xc83-text: #071631;
  --xc83-muted: #526174;
}

html.xc83-auth,
html.xc83-auth body,
html.xc83-auth #app {
  min-height: 100vh !important;
  color-scheme: light !important;
  background: #eef7ff !important;
}

html.xc83-auth #app {
  position: relative !important;
  min-height: 100vh !important;
  overflow-x: hidden !important;
  background:
    radial-gradient(circle at 78% 30%, rgba(255,255,255,.86) 0, rgba(255,255,255,.46) 26%, rgba(255,255,255,0) 50%),
    radial-gradient(circle at 20% 76%, rgba(56,145,255,.24), rgba(56,145,255,0) 28%),
    linear-gradient(90deg, rgba(221,239,255,.96) 0%, rgba(238,248,255,.98) 54%, rgba(250,253,255,.99) 100%) !important;
  color: var(--xc83-text) !important;
}

html.xc83-auth #app::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 43% 14%, rgba(78,151,255,.24), rgba(78,151,255,0) 15%),
    radial-gradient(circle at 72% 12%, rgba(255,255,255,.64), rgba(255,255,255,0) 17%),
    linear-gradient(115deg, rgba(255,255,255,.16), rgba(255,255,255,.46)) !important;
}

html.xc83-auth #app::after {
  display: none !important;
  content: none !important;
}

/* 原始 Xboard 登录卡隐藏但保留功能 */
.xc83-native-park {
  position: fixed !important;
  left: -10000px !important;
  top: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

.xc83-native-park * {
  pointer-events: none !important;
}

html.xc83-auth .xc83-hidden {
  display: none !important;
}

/* 总布局 */
.xc83-page {
  position: relative !important;
  z-index: 2 !important;
  min-height: 100vh !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(520px, 760px) minmax(390px, 500px) !important;
  gap: clamp(70px, 10vw, 170px) !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 42px clamp(44px, 7vw, 108px) !important;
}

/* 左侧 */
.xc83-hero {
  width: 100% !important;
  max-width: 760px !important;
}

.xc83-brand {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 76px !important;
  font-weight: 950 !important;
  font-size: 28px !important;
  color: #071631 !important;
}

.xc83-brand-logo {
  width: 78px !important;
  height: 42px !important;
  object-fit: contain !important;
}

.xc83-kicker {
  margin: 0 0 12px !important;
  color: #0ea5f7 !important;
  font-size: 25px !important;
  letter-spacing: .16em !important;
  font-weight: 950 !important;
}

.xc83-title {
  margin: 0 !important;
  font-size: clamp(76px, 7vw, 112px) !important;
  line-height: .98 !important;
  font-weight: 950 !important;
  letter-spacing: -.045em !important;
  background: linear-gradient(90deg, #168cff 0%, #136dff 52%, #7d46ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}

.xc83-subtitle {
  margin: 20px 0 34px !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
  color: #1c3156 !important;
  font-weight: 680 !important;
}

.xc83-actions {
  display: flex !important;
  gap: 28px !important;
  margin-bottom: 42px !important;
}

.xc83-btn {
  min-width: 220px !important;
  height: 68px !important;
  border-radius: 16px !important;
  border: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  text-decoration: none !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

.xc83-btn-primary {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, #098cff 0%, #7646ff 100%) !important;
  box-shadow: 0 18px 42px rgba(42,113,255,.26) !important;
}

.xc83-btn-secondary {
  color: #081832 !important;
  -webkit-text-fill-color: #081832 !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(150,172,205,.32) !important;
  box-shadow: 0 14px 30px rgba(45,80,130,.10) !important;
}

.xc83-plan {
  width: min(100%, 720px) !important;
  min-height: 278px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(152,180,220,.48) !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 24px 70px rgba(35,70,120,.15) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  padding: 28px 34px !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
  color: var(--xc83-text) !important;
}

.xc83-plan-badge {
  display: inline-flex !important;
  align-items: center !important;
  height: 42px !important;
  padding: 0 18px !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, #50b8ff, #744cff) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  margin-bottom: 16px !important;
}

.xc83-plan-main {
  display: grid !important;
  grid-template-columns: 170px 1fr !important;
  gap: 28px !important;
  align-items: center !important;
}

.xc83-crown {
  font-size: 68px !important;
  text-align: center !important;
}

.xc83-plan-name {
  font-size: 30px !important;
  font-weight: 950 !important;
  margin: 0 0 14px !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

.xc83-price {
  font-size: 56px !important;
  font-weight: 950 !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  margin: 0 0 20px !important;
}

.xc83-price small {
  font-size: 24px !important;
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
  font-weight: 700 !important;
}

.xc83-features {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 14px !important;
}

.xc83-feature {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: center !important;
  color: #223556 !important;
  -webkit-text-fill-color: #223556 !important;
  font-size: 18px !important;
  font-weight: 750 !important;
}

.xc83-feature-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: rgba(47,139,255,.12) !important;
  color: #168cff !important;
  -webkit-text-fill-color: #168cff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
}

/* 右侧完全自建可视登录卡 */
.xc83-auth-wrap {
  width: 100% !important;
  max-width: 500px !important;
  position: relative !important;
  z-index: 4 !important;
}

.xc83-card {
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  border: 1px solid rgba(145,205,255,.72) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.97), rgba(237,249,255,.88)) !important;
  background-color: rgba(248,252,255,.96) !important;
  box-shadow: 0 26px 70px rgba(40,83,140,.15) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  backdrop-filter: blur(18px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
}

.xc83-card-main {
  padding: 34px 36px 28px !important;
}

.xc83-card-brand {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 42px !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  font-weight: 950 !important;
  font-size: 22px !important;
}

.xc83-card-brand img {
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.68) !important;
}

.xc83-card-brand small {
  display: block !important;
  font-size: 11px !important;
  letter-spacing: .22em !important;
  color: #536176 !important;
  -webkit-text-fill-color: #536176 !important;
  margin-top: 2px !important;
}

.xc83-card-subtitle {
  margin: 0 0 22px !important;
  text-align: center !important;
  font-size: 15px !important;
  color: #17243d !important;
  -webkit-text-fill-color: #17243d !important;
  font-weight: 650 !important;
}

.xc83-field {
  width: 100% !important;
  height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(85, 150, 183, .46) !important;
  background: rgba(255,255,255,.98) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  padding: 0 14px !important;
  outline: none !important;
  box-sizing: border-box !important;
  margin: 0 0 16px !important;
  font-size: 15px !important;
  box-shadow: 0 6px 18px rgba(45,105,160,.08) !important;
}

.xc83-field::placeholder {
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
  opacity: 1 !important;
}

.xc83-submit {
  width: 100% !important;
  height: 42px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #268dff 0%, #25c7f6 48%, #7a4dff 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 10px 24px rgba(69,132,255,.22) !important;
}

.xc83-card-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 18px 36px !important;
  background: rgba(246,251,255,.88) !important;
  border-top: 1px solid rgba(168,210,244,.38) !important;
}

.xc83-card-footer a,
.xc83-card-footer button {
  color: #2563eb !important;
  -webkit-text-fill-color: #2563eb !important;
  font-size: 14px !important;
  text-decoration: none !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
}

/* 响应式 */
@media (max-width: 1180px) {
  .xc83-page {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 100vh !important;
    padding: 24px 14px 34px !important;
    gap: 18px !important;
  }

  .xc83-hero,
  .xc83-auth-wrap {
    width: min(100%, 430px) !important;
    max-width: 430px !important;
  }

  .xc83-brand {
    margin-bottom: 26px !important;
    font-size: 24px !important;
  }

  .xc83-kicker {
    font-size: 16px !important;
  }

  .xc83-title {
    font-size: clamp(42px, 12vw, 60px) !important;
  }

  .xc83-subtitle {
    font-size: 16px !important;
    margin: 12px 0 18px !important;
  }

  .xc83-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-bottom: 16px !important;
  }

  .xc83-btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 54px !important;
    font-size: 18px !important;
  }

  .xc83-plan {
    min-height: 0 !important;
    padding: 18px !important;
    border-radius: 20px !important;
  }

  .xc83-plan-main {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    text-align: center !important;
  }

  .xc83-crown {
    font-size: 52px !important;
  }

  .xc83-plan-name {
    font-size: 22px !important;
  }

  .xc83-price {
    font-size: 40px !important;
  }

  .xc83-features {
    gap: 8px !important;
  }

  .xc83-feature {
    font-size: 14px !important;
  }

  .xc83-card-main {
    padding: 28px 26px 22px !important;
  }

  .xc83-card-footer {
    padding: 16px 26px !important;
  }
}

@media (max-width: 430px) {
  .xc83-page {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}


/* =========================================================
   v6.7.84 VISUAL POLISH TESTED
   针对 v6.7.83 实测截图修复：
   - 右侧输入框仍是深色：改为白色玻璃输入框，并用更高优先级覆盖；
   - Logo 显示过小：用可控的星舰图标容器 + 文字，避免原始 logo 图片空白画布影响；
   - 登录卡上下留白和视觉层次优化；
   - 套餐卡进一步提高文字对比度。
   ========================================================= */

html.xc84-auth .xc83-field,
html.xc84-auth input.xc83-field,
html.xc84-auth .xc83-card input.xc83-field {
  background: rgba(255,255,255,.98) !important;
  background-color: rgba(255,255,255,.98) !important;
  background-image: none !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  caret-color: #168cff !important;
  border: 1px solid rgba(88, 150, 184, .42) !important;
  box-shadow: 0 8px 22px rgba(42, 104, 156, .08) !important;
  opacity: 1 !important;
  filter: none !important;
}

html.xc84-auth .xc83-field::placeholder,
html.xc84-auth input.xc83-field::placeholder {
  color: #5b6878 !important;
  -webkit-text-fill-color: #5b6878 !important;
  opacity: 1 !important;
}

/* 浏览器自动填充也保持浅色 */
html.xc84-auth input.xc83-field:-webkit-autofill,
html.xc84-auth input.xc83-field:-webkit-autofill:hover,
html.xc84-auth input.xc83-field:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px rgba(255,255,255,.98) inset !important;
  -webkit-text-fill-color: #071631 !important;
  caret-color: #168cff !important;
}

/* 可控 logo，不再依赖原图裁切比例 */
html.xc84-auth .xc84-logo-mark {
  width: 74px !important;
  height: 42px !important;
  flex: 0 0 74px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

html.xc84-auth .xc84-logo-mark::before {
  content: "" !important;
  width: 58px !important;
  height: 30px !important;
  display: block !important;
  background:
    linear-gradient(140deg, transparent 0 30%, #1aa4ff 31% 58%, transparent 59%),
    linear-gradient(24deg, transparent 0 34%, #2478ff 35% 66%, transparent 67%),
    radial-gradient(circle at 76% 40%, #7a4dff 0 14%, transparent 15%) !important;
  clip-path: polygon(0 58%, 58% 5%, 100% 22%, 44% 43%, 25% 84%) !important;
  filter: drop-shadow(0 8px 12px rgba(31,122,255,.20)) !important;
}

html.xc84-auth .xc83-brand-logo,
html.xc84-auth .xc83-card-brand img {
  display: none !important;
}

html.xc84-auth .xc83-brand {
  gap: 12px !important;
  font-size: 30px !important;
}

html.xc84-auth .xc83-card-brand {
  justify-content: center !important;
  gap: 14px !important;
  margin-bottom: 38px !important;
}

html.xc84-auth .xc83-card-brand .xc84-logo-mark {
  width: 62px !important;
  height: 52px !important;
  flex-basis: 62px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 10px 26px rgba(55,115,170,.10) !important;
}

html.xc84-auth .xc83-card-brand .xc84-logo-mark::before {
  width: 48px !important;
  height: 28px !important;
}

html.xc84-auth .xc83-card-brand strong {
  display: block !important;
  font-size: 24px !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  line-height: 1.05 !important;
}

html.xc84-auth .xc83-card-brand small {
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
  opacity: 1 !important;
}

/* 登录卡整体更轻，不发暗 */
html.xc84-auth .xc83-card {
  background: linear-gradient(145deg, rgba(255,255,255,.985), rgba(239,250,255,.92)) !important;
  background-color: rgba(249,253,255,.98) !important;
  border-color: rgba(140, 204, 255, .78) !important;
  box-shadow: 0 30px 78px rgba(40,83,140,.14) !important;
}

html.xc84-auth .xc83-card-main {
  padding-top: 36px !important;
}

/* 套餐文字对比度 */
html.xc84-auth .xc83-plan,
html.xc84-auth .xc83-plan * {
  color: #071631 !important;
  -webkit-text-fill-color: currentColor !important;
}

html.xc84-auth .xc83-plan-name,
html.xc84-auth .xc83-price {
  color: #031029 !important;
  -webkit-text-fill-color: #031029 !important;
  opacity: 1 !important;
}

html.xc84-auth .xc83-feature {
  color: #1f3558 !important;
  -webkit-text-fill-color: #1f3558 !important;
  opacity: 1 !important;
}

/* 左上品牌位置更自然 */
html.xc84-auth .xc83-brand {
  margin-bottom: 64px !important;
}

@media (max-width: 1180px) {
  html.xc84-auth .xc83-brand {
    margin-bottom: 24px !important;
    font-size: 24px !important;
  }

  html.xc84-auth .xc84-logo-mark {
    width: 58px !important;
    flex-basis: 58px !important;
  }
}


/* =========================================================
   v6.7.85 FINAL POLISH
   针对 v6.7.84 截图微调：
   - 右侧过白：增加轻宇宙氛围层，不再空白；
   - logo CSS 图标形状过生硬：优化为更像飞船/星舰的渐变图标；
   - 语言按钮出现浏览器焦点框：彻底去掉 outline；
   - 登录卡稍微放大，位置更协调；
   - 套餐卡文字与图标细节增强。
   ========================================================= */

html.xc85-auth #app,
html.xc85-auth body #app {
  background:
    radial-gradient(circle at 76% 28%, rgba(178,226,255,.42) 0, rgba(215,242,255,.24) 18%, rgba(255,255,255,0) 38%),
    radial-gradient(circle at 94% 82%, rgba(135,170,255,.16), rgba(135,170,255,0) 30%),
    radial-gradient(circle at 0% 82%, rgba(50,142,255,.30), rgba(50,142,255,0) 31%),
    linear-gradient(90deg, rgba(220,239,255,.98) 0%, rgba(239,249,255,.96) 52%, rgba(245,251,255,.94) 100%) !important;
}

html.xc85-auth #app::before {
  background:
    radial-gradient(circle at 42% 14%, rgba(70,145,255,.26), rgba(70,145,255,0) 15%),
    radial-gradient(circle at 80% 28%, rgba(255,255,255,.66), rgba(255,255,255,0) 22%),
    linear-gradient(115deg, rgba(255,255,255,.16), rgba(255,255,255,.48)),
    repeating-linear-gradient(128deg, rgba(120,190,255,.055) 0 1px, transparent 1px 46px) !important;
}

/* 右侧背景不要纯白发空 */
html.xc85-auth .xc83-page::after {
  content: "" !important;
  position: fixed !important;
  right: -10vw !important;
  top: 8vh !important;
  width: 54vw !important;
  height: 84vh !important;
  pointer-events: none !important;
  z-index: -1 !important;
  background:
    radial-gradient(circle at 48% 38%, rgba(74,170,255,.13), rgba(74,170,255,0) 34%),
    radial-gradient(circle at 70% 70%, rgba(126,79,255,.08), rgba(126,79,255,0) 26%) !important;
  filter: blur(2px) !important;
}

/* Logo 图标优化 */
html.xc85-auth .xc84-logo-mark::before {
  width: 64px !important;
  height: 34px !important;
  background:
    linear-gradient(150deg, rgba(20,144,255,0) 0 18%, #19a8ff 19% 48%, #2478ff 49% 68%, rgba(20,144,255,0) 69%),
    linear-gradient(18deg, rgba(20,144,255,0) 0 35%, #61d6ff 36% 53%, rgba(20,144,255,0) 54%),
    radial-gradient(circle at 72% 46%, #7c4dff 0 8%, rgba(124,77,255,0) 9%) !important;
  clip-path: polygon(0 62%, 50% 13%, 98% 24%, 58% 40%, 30% 84%, 35% 52%) !important;
  filter: drop-shadow(0 8px 13px rgba(31,122,255,.20)) !important;
}

html.xc85-auth .xc83-card-brand .xc84-logo-mark {
  width: 68px !important;
  height: 56px !important;
  flex-basis: 68px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.82) !important;
}

html.xc85-auth .xc83-card-brand .xc84-logo-mark::before {
  width: 54px !important;
  height: 30px !important;
}

/* 登录卡略放大 */
html.xc85-auth .xc83-auth-wrap {
  max-width: 525px !important;
}

html.xc85-auth .xc83-card-main {
  padding: 38px 40px 30px !important;
}

html.xc85-auth .xc83-card-footer {
  padding: 18px 40px !important;
}

html.xc85-auth .xc83-field {
  height: 42px !important;
  border-radius: 13px !important;
  font-size: 16px !important;
}

html.xc85-auth .xc83-submit {
  height: 46px !important;
  border-radius: 13px !important;
  font-size: 17px !important;
}

/* 去掉语言按钮/链接焦点框 */
html.xc85-auth .xc83-card-footer a,
html.xc85-auth .xc83-card-footer button,
html.xc85-auth .xc83-card-footer * {
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

html.xc85-auth .xc83-card-footer a:focus,
html.xc85-auth .xc83-card-footer a:focus-visible,
html.xc85-auth .xc83-card-footer button:focus,
html.xc85-auth .xc83-card-footer button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* 套餐卡细节 */
html.xc85-auth .xc83-plan {
  background: rgba(255,255,255,.82) !important;
}

html.xc85-auth .xc83-feature-icon {
  color: #168cff !important;
  -webkit-text-fill-color: #168cff !important;
  background: rgba(47,139,255,.13) !important;
  font-weight: 900 !important;
}

@media (max-width: 1180px) {
  html.xc85-auth .xc83-auth-wrap {
    max-width: 430px !important;
  }

  html.xc85-auth .xc83-card-main {
    padding: 30px 26px 24px !important;
  }

  html.xc85-auth .xc83-card-footer {
    padding: 16px 26px !important;
  }

  html.xc85-auth .xc83-page::after {
    display: none !important;
  }
}


/* =========================================================
   v6.7.86 LINK ACTIONS FIX
   修复可视登录卡的注册、忘记密码、语言切换点击事件。
   ========================================================= */

html.xc86-auth .xc83-card-footer button {
  font-family: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  color: #2563eb !important;
  -webkit-text-fill-color: #2563eb !important;
}

html.xc86-auth .xc83-card-footer a,
html.xc86-auth .xc83-card-footer button {
  user-select: none !important;
}

html.xc86-auth .xc83-card-footer a:hover,
html.xc86-auth .xc83-card-footer button:hover {
  opacity: .82 !important;
}


/* =========================================================
   v6.7.87 ACTIONS SELF-TESTED
   注册、忘记密码、语言按钮改为确定性路由/可见菜单，不再依赖隐藏原生按钮点击。
   ========================================================= */

html.xc87-auth .xc87-lang-wrap {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
}

html.xc87-auth .xc87-lang-menu {
  position: absolute !important;
  right: 0 !important;
  top: calc(100% + 8px) !important;
  min-width: 132px !important;
  padding: 8px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(145,205,255,.72) !important;
  box-shadow: 0 16px 38px rgba(40,83,140,.16) !important;
  z-index: 30 !important;
}

html.xc87-auth .xc87-lang-menu[hidden] {
  display: none !important;
}

html.xc87-auth .xc87-lang-menu button {
  display: block !important;
  width: 100% !important;
  height: 32px !important;
  padding: 0 10px !important;
  text-align: left !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  cursor: pointer !important;
  font-size: 13px !important;
}

html.xc87-auth .xc87-lang-menu button:hover {
  background: rgba(37, 99, 235, .08) !important;
}

html.xc87-auth #xc86-register,
html.xc87-auth #xc86-forget,
html.xc87-auth #xc86-lang {
  cursor: pointer !important;
  pointer-events: auto !important;
}


/* =========================================================
   v6.7.88 AUTH ROUTE REAL FIX
   注册/忘记密码路由不再套用伪登录卡，交给真实 Xboard 页面渲染。
   ========================================================= */

html.xc83-auth .xc83-card-footer button,
html.xc83-auth .xc83-actions button {
  font-family: inherit !important;
}

html.xc83-auth .xc83-actions button.xc83-btn {
  cursor: pointer !important;
}

html.xc83-auth .xc83-card-footer button {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #2563eb !important;
  -webkit-text-fill-color: #2563eb !important;
  cursor: pointer !important;
}

html.xc83-auth .xc83-card-footer button:hover {
  opacity: .82 !important;
}

/* 原生注册/忘记密码页基础浅色兜底 */
html:not(.xc83-auth) body,
html:not(.xc83-auth) #app {
  color-scheme: light !important;
}


/* =========================================================
   v6.7.89 LOGIN RETURN FIX
   从注册/忘记密码返回 #/login 后，重新生成完整首页，不停留在原始白底登录卡。
   ========================================================= */

html.xc89-auth .xc83-card-footer button,
html.xc89-auth .xc83-actions button {
  font-family: inherit !important;
}

html.xc89-auth .xc83-actions button.xc83-btn {
  cursor: pointer !important;
}

html.xc89-auth .xc83-card-footer button {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #2563eb !important;
  -webkit-text-fill-color: #2563eb !important;
  cursor: pointer !important;
  outline: none !important;
}

html.xc89-auth .xc83-card-footer button:hover {
  opacity: .82 !important;
}

html.xc89-auth .xc83-native-park {
  position: fixed !important;
  left: -10000px !important;
  top: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  z-index: -1 !important;
}


/* =========================================================
   v6.7.94 AUTH CLEAN ROLLBACK FIX
   只修注册 / 忘记密码 / 重置密码页颜色。
   不改登录页布局，不改登录后页面，不改表单结构。
   ========================================================= */

html.xc94-auth-clean,
html.xc94-auth-clean body,
html.xc94-auth-clean #app {
  color-scheme: light !important;
  min-height: 100vh !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(37,199,246,.14), rgba(37,199,246,0) 28%),
    radial-gradient(circle at 88% 8%, rgba(122,70,255,.10), rgba(122,70,255,0) 32%),
    linear-gradient(135deg, #eef7ff 0%, #f8fbff 48%, #f7f3ff 100%) !important;
  color: #071631 !important;
}

/* 认证页卡片：只改背景/边框/阴影，不改变内部 DOM 结构 */
html.xc94-auth-clean :is(form,.n-card,.ant-card,.el-card,.card,[class*="login"],[class*="register"],[class*="auth"]) {
  background: rgba(255,255,255,.94) !important;
  background-color: rgba(255,255,255,.94) !important;
  color: #071631 !important;
  border-color: rgba(142,198,245,.48) !important;
  box-shadow: 0 24px 70px rgba(35,72,125,.16) !important;
}

/* 标题与普通文字：只限认证页 */
html.xc94-auth-clean :is(h1,h2,h3,h4,h5,h6,label,p,span,small,strong,b) {
  color: #071631 !important;
}

/* 输入框和常见输入框 wrapper：改浅色，不删除 placeholder，不改宽度 */
html.xc94-auth-clean :is(
  input,
  textarea,
  select,
  .n-input,
  .n-input-wrapper,
  .n-input__input,
  .n-input__input-el,
  .n-input__prefix,
  .n-input__suffix,
  .ant-input,
  .ant-input-affix-wrapper,
  .ant-input-group,
  .ant-input-group-wrapper,
  .ant-input-wrapper,
  .ant-input-prefix,
  .ant-input-suffix,
  .el-input,
  .el-input__wrapper,
  .el-input__inner,
  .el-input-group,
  .el-input-group__append,
  .el-input-group__prepend
) {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  caret-color: #168cff !important;
  border-color: rgba(130,182,230,.46) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

html.xc94-auth-clean :is(input::placeholder,textarea::placeholder) {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  opacity: 1 !important;
}

/* 只修暗色 footer，不把 footer 里的“注册/忘记密码”改成按钮 */
html.xc94-auth-clean :is(footer,[class*="footer"],[class*="bottom"]) {
  background: rgba(248,251,255,.94) !important;
  background-color: rgba(248,251,255,.94) !important;
  color: #526174 !important;
  border-color: rgba(167,196,230,.35) !important;
}

html.xc94-auth-clean :is(a,[role="link"]) {
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
}

html.xc94-auth-clean :is(a:hover,[role="link"]:hover) {
  color: #168cff !important;
  -webkit-text-fill-color: #168cff !important;
}

/* 认证页主按钮：只匹配真正的 primary/submit，不碰普通链接 */
html.xc94-auth-clean :is(.n-button--primary-type,.ant-btn-primary,.el-button--primary,button[type="submit"],input[type="submit"]) {
  border: 0 !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #168cff 0%, #25c7f6 50%, #7a46ff 100%) !important;
  background-color: #25c7f6 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 12px 30px rgba(43,119,255,.22) !important;
}

/* 验证码发送按钮只保持小按钮尺寸，不允许撑满一整行 */
html.xc94-forgot-page button,
html.xc94-forgot-page [role="button"] {
  max-width: none;
}

html.xc94-forgot-page :is(button,[role="button"]) {
  white-space: nowrap !important;
}

/* 暗色块局部压浅：只在注册/忘记密码认证页生效 */
html.xc94-auth-clean :is(
  [style*="background: rgb(0"],
  [style*="background-color: rgb(0"],
  [style*="background:#000"],
  [style*="background-color:#000"],
  [style*="background: #000"],
  [style*="background-color: #000"],
  [style*="background:#111"],
  [style*="background-color:#111"],
  [style*="background: #111"],
  [style*="background-color: #111"]
) {
  background: rgba(255,255,255,.94) !important;
  background-color: rgba(255,255,255,.94) !important;
  color: #071631 !important;
}

/* 小屏兜底 */
@media (max-width: 560px) {
  html.xc94-auth-clean :is(form,.n-card,.ant-card,.el-card,.card,[class*="login"],[class*="register"],[class*="auth"]) {
    max-width: calc(100vw - 28px) !important;
  }
}





/* =========================================================
   v6.7.96 LANGUAGE ONLY NO-COLOR
   只处理登录页语言菜单显示/隐藏，不改卡片、footer、输入框、按钮颜色。
   ========================================================= */

html.xc87-auth #xc87-lang-menu[hidden] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

html.xc87-auth #xc87-lang-menu:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* 只定位语言菜单，不改任何背景颜色 */
html.xc87-auth .xc87-lang-wrap {
  position: relative !important;
}

html.xc87-auth #xc87-lang-menu {
  position: absolute !important;
  right: 0 !important;
  left: auto !important;
  top: auto !important;
  bottom: calc(100% + 8px) !important;
  z-index: 9999 !important;
}


/* =========================================================
   v6.7.97 AUTH ROUTE FORCE LIGHT SAFETY
   认证页无论用户之前在仪表盘选了暗色还是亮色，均默认亮色。
   ========================================================= */
html.xc94-auth-clean,
html.xc87-auth,
html.xc94-auth-clean body,
html.xc87-auth body {
  color-scheme: light !important;
}


/* =========================================================
   v6.7.98 AUTH FOOTER INPUT FINAL
   认证页固定亮色，补齐注册/忘记密码底部黑条和输入框暗色残留。
   不改登录后页面。
   ========================================================= */

html.xc98-auth-final-light,
html.xc98-auth-final-light body,
html.xc98-auth-final-light #app {
  color-scheme: light !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(37,199,246,.14), rgba(37,199,246,0) 28%),
    radial-gradient(circle at 88% 8%, rgba(122,70,255,.10), rgba(122,70,255,0) 32%),
    linear-gradient(135deg, #eef7ff 0%, #f8fbff 48%, #f7f3ff 100%) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

html.xc98-auth-final-light .xc98-auth-card {
  background: rgba(255,255,255,.94) !important;
  background-color: rgba(255,255,255,.94) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  border-color: rgba(142,198,245,.48) !important;
  box-shadow: 0 24px 70px rgba(35,72,125,.16) !important;
  overflow: hidden !important;
}

/* 输入框和输入框 wrapper 全部浅色 */
html.xc98-auth-final-light .xc98-auth-card :is(
  input,
  textarea,
  select,
  .xc98-auth-input-clean,
  .n-input,
  .n-input-wrapper,
  .n-input__input,
  .n-input__input-el,
  .n-input__prefix,
  .n-input__suffix,
  .ant-input,
  .ant-input-affix-wrapper,
  .ant-input-group,
  .ant-input-wrapper,
  .ant-input-prefix,
  .ant-input-suffix,
  .el-input,
  .el-input__wrapper,
  .el-input__inner,
  .el-input-group,
  .el-input-group__append,
  .el-input-group__prepend
) {
  background: rgba(255,255,255,.98) !important;
  background-color: rgba(255,255,255,.98) !important;
  background-image: none !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  caret-color: #168cff !important;
  border-color: rgba(130,182,230,.46) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

html.xc98-auth-final-light .xc98-auth-card :is(input::placeholder,textarea::placeholder) {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  opacity: 1 !important;
}

/* 输入框右侧眼睛图标暗色小块，强制透明 */
html.xc98-auth-final-light .xc98-auth-card :is(
  .xc98-auth-affix-clean,
  [class*="prefix"],
  [class*="suffix"],
  [class*="addon"],
  [class*="append"],
  [class*="prepend"],
  [class*="affix"]
) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
}

html.xc98-auth-final-light .xc98-auth-card :is(svg,i,[class*="icon"]) {
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
}

/* 底部黑条修复：footer 及包含返回登录/语言的区域 */
html.xc98-auth-final-light .xc98-auth-card :is(
  .xc98-auth-footer-clean,
  footer,
  [class*="footer"],
  [class*="bottom"]
) {
  background: rgba(248,251,255,.94) !important;
  background-color: rgba(248,251,255,.94) !important;
  background-image: none !important;
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
  border-color: rgba(167,196,230,.35) !important;
}

html.xc98-auth-final-light .xc98-auth-card :is(.xc98-auth-link-clean,a) {
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
}

html.xc98-auth-final-light .xc98-auth-card :is(.xc98-auth-link-clean:hover,a:hover) {
  color: #168cff !important;
  -webkit-text-fill-color: #168cff !important;
}

/* 如果暗色主题以内联样式回来，只在认证卡片内部压掉 */
html.xc98-auth-final-light .xc98-auth-card :is(
  [style*="background: rgb(0"],
  [style*="background-color: rgb(0"],
  [style*="background:#000"],
  [style*="background-color:#000"],
  [style*="background: #000"],
  [style*="background-color: #000"],
  [style*="background:#111"],
  [style*="background-color:#111"],
  [style*="background: #111"],
  [style*="background-color: #111"]
) {
  background: rgba(255,255,255,.94) !important;
  background-color: rgba(255,255,255,.94) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

/* 主按钮保持蓝紫渐变 */
html.xc98-auth-final-light .xc98-auth-card :is(.n-button--primary-type,.ant-btn-primary,.el-button--primary,button[type="submit"],input[type="submit"]) {
  border: 0 !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #168cff 0%, #25c7f6 50%, #7a46ff 100%) !important;
  background-color: #25c7f6 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 12px 30px rgba(43,119,255,.22) !important;
}


/* =========================================================
   v6.7.99 PROFILE NOTICE ROW FIX
   个人中心通知模块：到期邮件提醒 / 流量邮件提醒 横向排成一行。
   ========================================================= */

html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-items-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
  flex-wrap: wrap !important;
}

html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 180px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-item :is(label,span,p,div) {
  white-space: nowrap !important;
}

/* 如果原生每个提醒独占一行，用 margin 压掉 */
html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-expire,
html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-traffic {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* 小屏保持可换行，不挤压 */
@media (max-width: 640px) {
  html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-items-wrap {
    gap: 14px !important;
  }

  html.xc99-profile-notice-row .xc99-notice-card .xc99-notice-item {
    min-width: 150px !important;
  }
}


/* =========================================================
   v6.7.100 PROFILE NOTICE BUTTON FIRST
   个人中心通知模块：按钮在前，文字在后，保持两组之间的间距。
   ========================================================= */

html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-items-wrap,
html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-items-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
  column-gap: 34px !important;
  row-gap: 12px !important;
  flex-wrap: wrap !important;
}

html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-item,
html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-item {
  display: inline-flex !important;
  align-items: center !important;
  flex-direction: row-reverse !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  min-width: 190px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 文本在按钮后面，保持一行 */
html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-item :is(label,span,p,div),
html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-item :is(label,span,p,div) {
  white-space: nowrap !important;
}

/* 开关按钮不压缩 */
html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-item :is(button,[role="switch"],.n-switch,.ant-switch,.el-switch,input[type="checkbox"]),
html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-item :is(button,[role="switch"],.n-switch,.ant-switch,.el-switch,input[type="checkbox"]) {
  flex: 0 0 auto !important;
  order: 0 !important;
}

/* 小屏保持间距并允许换行 */
@media (max-width: 640px) {
  html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-items-wrap,
  html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-items-wrap {
    gap: 16px !important;
    column-gap: 16px !important;
    row-gap: 10px !important;
  }

  html.xc100-profile-notice-button-first .xc100-notice-card .xc100-notice-item,
  html.xc100-profile-notice-button-first .xc99-notice-card .xc99-notice-item {
    min-width: 160px !important;
  }
}


/* =========================================================
   v6.7.101 PROFILE NOTICE STABLE FIX
   刷新前/刷新后统一：按钮在前，文字在后，保持间距。
   ========================================================= */

html.xc101-profile-notice-stable .xc101-notice-stable-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
  column-gap: 34px !important;
  row-gap: 12px !important;
  flex-wrap: wrap !important;
  padding: 12px 22px 16px 22px !important;
}

html.xc101-profile-notice-stable .xc101-notice-row {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  min-width: 190px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.xc101-profile-notice-stable .xc101-notice-label {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

html.xc101-profile-notice-stable .xc101-notice-row :is(button,[role="switch"],.n-switch,.ant-switch,.el-switch,input[type="checkbox"]) {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

html.xc101-profile-notice-stable .xc101-original-notice-label-hidden {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* 兼容旧版 6.7.99 / 6.7.100 class，避免它们影响最终稳定布局 */
html.xc101-profile-notice-stable .xc99-notice-items-wrap,
html.xc101-profile-notice-stable .xc100-notice-items-wrap {
  display: none !important;
}

/* 小屏保持间距并允许换行 */
@media (max-width: 640px) {
  html.xc101-profile-notice-stable .xc101-notice-stable-wrap {
    gap: 16px !important;
    column-gap: 16px !important;
    row-gap: 10px !important;
    padding: 12px 14px 16px 14px !important;
  }

  html.xc101-profile-notice-stable .xc101-notice-row {
    min-width: 160px !important;
  }
}


/* =========================================================
   v6.7.102 USER PAGES LIGHT TABLE FIX
   修复使用文档、订单、邀请、节点状态、流量明细黑底。
   ========================================================= */

html.xc102-user-light-page,
html.xc102-user-light-page body {
  color-scheme: light !important;
}

html.xc102-user-light-page #app {
  background:
    radial-gradient(circle at 8% 0%, rgba(37,199,246,.12), rgba(37,199,246,0) 28%),
    radial-gradient(circle at 88% 8%, rgba(122,70,255,.10), rgba(122,70,255,0) 32%),
    linear-gradient(135deg, #eef7ff 0%, #f8fbff 48%, #f7f3ff 100%) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

/* 主内容区背景和卡片 */
html.xc102-user-light-page :is(main,[class*="content"],[class*="container"],[class*="page"],[class*="layout-content"]) {
  background: transparent !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

html.xc102-user-light-page :is(
  .xc102-light-surface,
  .n-card,
  .ant-card,
  .el-card,
  [class*="card"],
  [class*="panel"],
  [class*="list"],
  [class*="table-wrapper"]
) {
  background: rgba(255,255,255,.90) !important;
  background-color: rgba(255,255,255,.90) !important;
  background-image: none !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  border-color: rgba(142,198,245,.42) !important;
  box-shadow: 0 18px 48px rgba(35,72,125,.10) !important;
}

/* 表格整体改浅色 */
html.xc102-user-light-page :is(
  table,
  thead,
  tbody,
  tr,
  td,
  th,
  .n-data-table,
  .n-data-table-table,
  .n-data-table-thead,
  .n-data-table-tbody,
  .n-data-table-th,
  .n-data-table-td,
  .ant-table,
  .ant-table-container,
  .ant-table-thead,
  .ant-table-tbody,
  .ant-table-cell,
  .el-table,
  .el-table__header,
  .el-table__body,
  .el-table__row,
  .el-table__cell
) {
  background: rgba(255,255,255,.92) !important;
  background-color: rgba(255,255,255,.92) !important;
  background-image: none !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  border-color: rgba(167,196,230,.42) !important;
}

/* 表头保留一点蓝色层次，不再黑底 */
html.xc102-user-light-page :is(
  thead,
  th,
  .n-data-table-th,
  .ant-table-thead > tr > th,
  .el-table__header th,
  [class*="header"]
) {
  background: linear-gradient(135deg, rgba(214,244,252,.92), rgba(241,245,255,.92)) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  font-weight: 800 !important;
}

/* 行、列表项黑底压浅 */
html.xc102-user-light-page :is(
  tr,
  td,
  .n-data-table-td,
  .ant-table-tbody > tr > td,
  .el-table__body td,
  [class*="row"],
  [class*="item"]
) {
  background: rgba(255,255,255,.78) !important;
  background-color: rgba(255,255,255,.78) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
}

/* 提示条 / 空状态 */
html.xc102-user-light-page :is(
  .n-alert,
  .ant-alert,
  .el-alert,
  [class*="alert"],
  [class*="empty"],
  [class*="no-data"]
) {
  background: rgba(232,246,255,.88) !important;
  background-color: rgba(232,246,255,.88) !important;
  color: #071631 !important;
  -webkit-text-fill-color: #071631 !important;
  border-color: rgba(142,198,245,.42) !important;
}

/* 文本颜色统一 */
html.xc102-user-light-page :is(h1,h2,h3,h4,h5,h6,p,span,small,strong,b,label,div) {
  color: #071631 !important;
}

/* 状态小点和成功/失败颜色不要被全部压黑 */
html.xc102-user-light-page :is([class*="success"],[class*="green"]) {
  color: #11a36a !important;
  -webkit-text-fill-color: #11a36a !important;
}

html.xc102-user-light-page :is([class*="danger"],[class*="error"],[class*="red"]) {
  color: #e5484d !important;
  -webkit-text-fill-color: #e5484d !important;
}

/* 订单页“查看详情 / 取消”亮度统一 */
html.xc102-page-order .xc102-order-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 24px !important;
  padding: 3px 10px !important;
  margin: 0 4px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  border: 1px solid rgba(50,126,245,.26) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

html.xc102-page-order .xc102-order-action-detail {
  background: rgba(37, 139, 255, .12) !important;
  background-color: rgba(37, 139, 255, .12) !important;
  color: #1677ff !important;
  -webkit-text-fill-color: #1677ff !important;
}

html.xc102-page-order .xc102-order-action-cancel {
  background: rgba(82, 97, 116, .10) !important;
  background-color: rgba(82, 97, 116, .10) !important;
  color: #526174 !important;
  -webkit-text-fill-color: #526174 !important;
  border-color: rgba(82, 97, 116, .18) !important;
}

html.xc102-page-order .xc102-order-action:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.03) !important;
}

/* 只保留左侧导航暗色，不影响主体浅色；避免误伤 sidebar */
html.xc102-user-light-page :is([class*="sidebar"],[class*="sider"],aside) {
  -webkit-text-fill-color: initial !important;
}

/* 小屏表格保持横向滚动，不挤爆 */
@media (max-width: 760px) {
  html.xc102-user-light-page :is(table,.n-data-table,.ant-table,.el-table) {
    min-width: 680px !important;
  }
}
