/* ═════════════════════════════════════════════════════════════════
   疯狂水世界 · 控制台 — 尊享视觉层（lux.css）v2
   ─────────────────────────────────────────────────────────────────
   · 在 theme.css 之后加载，仅覆盖配色令牌与门面样式，零 JS / DOM 结构改动
   · 设计语言：深夜墨黑 + 香槟金点缀（Dark）/ 暖象牙 + 金（Light），克制高级感
   · 登录页 v2：修复标题溢出、品牌区留白、金色降饱和只做点缀
   ═════════════════════════════════════════════════════════════════ */

/* ── 深色 · 尊享模式（默认）· 墨黑底 + 香槟金 ──────────────────── */
:root[data-mode="dark"]{
  --theme-bg:#0a0c12;
  --theme-primary:#caa45a;
  --theme-secondary:#3a6ea5;
  --theme-gradient:linear-gradient(135deg,#c9a55c 0%,#ecd9a8 50%,#c9a55c 100%);
  --app-bg:
    radial-gradient(1100px 620px at 82% -12%, rgba(202,164,90,.09), transparent 60%),
    radial-gradient(900px 560px at -8% 112%, rgba(58,110,165,.07), transparent 55%),
    linear-gradient(180deg,#0b0e16 0%,#070910 100%);

  --surface-1:rgba(20,24,35,.72);
  --surface-2:#171c29;
  --surface-3:#1d2333;
  --surface:#141826;
  --surface-muted:#222a3b;
  --surface-border:rgba(202,164,90,.13);
  --surface-border-strong:rgba(202,164,90,.28);
  --surface-shadow:0 24px 64px rgba(0,0,0,.55);
  --surface-shadow-soft:0 8px 28px rgba(0,0,0,.40);
  --card-shadow:0 12px 38px rgba(0,0,0,.46);
  --panel-glow:rgba(202,164,90,.10);

  --paper:#0d1119;
  --paper-2:#121826;
  --paper-3:#1a2130;
  --card:rgba(20,24,35,.78);
  --ink:#ece7da;
  --ink-2:#b9b3a4;
  --muted:#9b9486;
  --muted-2:#6f6a5f;
  --rule:rgba(202,164,90,.13);
  --rule-2:rgba(202,164,90,.07);

  --accent:#d9b877;
  --accent-2:#5b9bd1;
  --accent-soft:rgba(202,164,90,.12);
  --positive:#56c08c;
  --positive-soft:rgba(86,192,140,.14);
  --warning:#e0a23c;
  --warning-soft:rgba(224,162,60,.14);
  --danger:#e0655f;
  --danger-soft:rgba(224,101,95,.14);
  --info:#d9b877;

  --rail-bg:rgba(11,14,22,.82);
  --bar-bg:rgba(11,14,22,.66);
  --head-bg:rgba(11,14,22,.58);
  --line:rgba(202,164,90,.11);
  --card-solid:#141826;
  --ctl-bg:rgba(30,36,52,.92);
  --ctl-bg-hover:#222a3b;
  --scroll-thumb:rgba(202,164,90,.22);
  --scroll-thumb-hover:rgba(202,164,90,.42);
}

/* ── 浅色 · 暖象牙 + 金 ─────────────────────────────────────────── */
:root,
:root[data-mode="light"]{
  --theme-bg:#f3ede1;
  --theme-primary:#b8902f;
  --theme-secondary:#3a6ea5;
  --theme-gradient:linear-gradient(135deg,#a87f24 0%,#dcb877 50%,#a87f24 100%);
  --app-bg:
    radial-gradient(1100px 620px at 82% -12%, rgba(184,144,47,.08), transparent 60%),
    radial-gradient(900px 560px at -8% 112%, rgba(58,110,165,.06), transparent 55%),
    linear-gradient(180deg,#f8f3e9 0%,#f1eadc 100%);

  --surface-1:#ffffff;
  --surface-2:#f6f0e4;
  --surface-3:#ffffff;
  --surface:#ffffff;
  --surface-muted:#efe8da;
  --surface-border:#e7ddca;
  --surface-border-strong:#d8cbb0;
  --surface-shadow:0 18px 46px rgba(60,45,20,.12);
  --surface-shadow-soft:0 4px 14px rgba(60,45,20,.08);
  --card-shadow:0 2px 4px rgba(60,45,20,.05),0 3px 12px rgba(60,45,20,.07);
  --panel-glow:rgba(184,144,47,.10);

  --paper:#f3ede1;
  --paper-2:#f6f0e4;
  --paper-3:#fbf7ef;
  --card:#ffffff;
  --ink:#241f16;
  --ink-2:#5a5240;
  --muted:#857a64;
  --muted-2:#b3a98f;
  --rule:#e7ddca;
  --rule-2:#f1eadc;

  --accent:#a87f24;
  --accent-2:#3a6ea5;
  --accent-soft:rgba(184,144,47,.12);
  --positive:#3f9b6d;
  --positive-soft:rgba(63,155,109,.12);
  --warning:#c98a2a;
  --warning-soft:rgba(201,138,42,.12);
  --danger:#d2554f;
  --danger-soft:rgba(210,85,79,.10);
  --info:#a87f24;

  --rail-bg:rgba(255,252,246,.92);
  --bar-bg:rgba(255,252,246,.86);
  --head-bg:rgba(255,252,246,.80);
  --line:#e7ddca;
  --card-solid:#ffffff;
  --ctl-bg:#ffffff;
  --ctl-bg-hover:#f1eadc;
  --scroll-thumb:rgba(120,100,60,.26);
  --scroll-thumb-hover:rgba(120,100,60,.46);
}

/* ── 顶栏 / 侧栏 / 账号栏：玻璃质感 ────────────────────────────── */
.rail, .acct-bar, .masthead{
  backdrop-filter:blur(18px) saturate(120%);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
}
.masthead{
  border-bottom:1px solid var(--line);
  box-shadow:0 1px 0 rgba(202,164,90,.08);
}
.rail{ border-right:1px solid var(--line); }
.brand{ border-bottom:1px solid var(--line); }
.rail-foot{ border-top:1px solid var(--line); }

.brand-mark .n{
  background:var(--theme-gradient);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 1px 6px rgba(202,164,90,.18));
}

/* 侧栏选中项：金调 */
.nav-it.on{
  background:var(--accent-soft);
  font-weight:700;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent);
}
:root[data-mode="dark"] .nav-it.on{ color:#eed9a6; }
:root[data-mode="dark"] .nav-it.on .idx,:root[data-mode="dark"] .nav-it.on .srv{ color:#eed9a6; }

/* 主操作按钮：金底深字 */
.tbtn.primary{ color:#1c1405 !important; font-weight:800; letter-spacing:.02em; }
.tbtn.primary:hover{ color:#1c1405 !important; }

/* ═════════════════════════════════════════════════════════════════
   登录门面 v2 · 重构版
   ═════════════════════════════════════════════════════════════════ */

/* 全屏背景：深空 + 双侧极淡光晕 */
.auth.open{
  align-items:center; justify-content:center;
  min-height:100vh; min-height:100dvh;
  padding:28px;
  background:
    radial-gradient(1100px 640px at 78% -14%, rgba(202,164,90,.11), transparent 58%),
    radial-gradient(880px 600px at -6% 114%, rgba(58,110,165,.09), transparent 55%),
    linear-gradient(165deg,#0b0e16 0%,#06080e 100%);
}
:root[data-mode="light"] .auth.open{
  background:
    radial-gradient(1100px 640px at 78% -14%, rgba(184,144,47,.10), transparent 58%),
    radial-gradient(880px 600px at -6% 114%, rgba(58,110,165,.07), transparent 55%),
    linear-gradient(165deg,#f9f4ea 0%,#efe7d7 100%);
}

/* 卡片容器：更大、更松弛；面板贴合无缝、等高拉伸 */
.auth.open .auth-inner{
  max-width:1040px;
  gap:0;
  align-items:stretch;
  border-radius:22px;
  overflow:hidden;
  background:#0d1017;
  border:1px solid var(--surface-border);
  box-shadow:0 48px 140px rgba(0,0,0,.55), 0 8px 32px rgba(0,0,0,.4);
}
:root[data-mode="light"] .auth.open .auth-inner{
  background:#ffffff;
  box-shadow:0 40px 100px rgba(60,45,20,.22), 0 8px 28px rgba(60,45,20,.12);
}

/* 左栏 · 品牌：呼吸留白 + 顶部微光 + 装饰环 */
.auth-brand{
  position:relative;
  padding:64px 56px;
  overflow:hidden;
  background:
    radial-gradient(560px 320px at 12% 0%, rgba(202,164,90,.10), transparent 62%),
    linear-gradient(160deg,#12151f 0%,#0c0f17 100%);
}
:root[data-mode="light"] .auth-brand{
  background:
    radial-gradient(560px 320px at 12% 0%, rgba(184,144,47,.10), transparent 62%),
    linear-gradient(160deg,#fdfaf3 0%,#f4edde 100%);
}
/* 装饰环：极淡金圈，增加空间层次 */
.auth-brand::after{
  content:''; position:absolute; right:-120px; bottom:-140px;
  width:340px; height:340px; border-radius:50%;
  border:1px solid rgba(202,164,90,.16);
  box-shadow:inset 0 0 60px rgba(202,164,90,.05);
  pointer-events:none;
}
.auth-brand .tag{
  display:inline-block; margin:0 0 20px; padding:5px 14px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);
  color:var(--accent); background:rgba(202,164,90,.08);
  font-size:10px; letter-spacing:.22em; font-weight:600;
}
.auth-brand .n{
  font-size:clamp(34px,4vw,52px) !important;      /* 收进安全字号，杜绝溢出裁切 */
  line-height:1.08; letter-spacing:-.02em; font-weight:800;
  background:var(--theme-gradient);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 12px rgba(202,164,90,.16));
}
.auth-brand .rule{
  width:52px; height:3px; margin:24px 0 20px;
  background:var(--theme-gradient); border-radius:99px;
}
.auth-brand .lede{
  margin:0; font-size:14px; line-height:1.9; color:var(--muted); max-width:34ch;
}
/* 特性清单：金点 + 灰字，填补左栏留白 */
.auth-feats{
  list-style:none; margin:26px 0 0; padding:0;
  display:flex; flex-direction:column; gap:12px;
}
.auth-feats li{
  position:relative; padding-left:20px;
  font-size:13px; color:var(--ink-2); line-height:1.5;
}
.auth-feats li::before{
  content:''; position:absolute; left:0; top:.55em;
  width:6px; height:6px; border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 3px rgba(202,164,90,.14);
}

/* 右栏 · 表单：近黑面板 + 金色发丝分隔线 */
.auth-form{
  padding:52px 48px;
  border-radius:0;
  border:0;
  border-left:1px solid var(--surface-border);
  background:#0d1017;
  backdrop-filter:none; -webkit-backdrop-filter:none;
}
:root[data-mode="light"] .auth-form{ background:#ffffff; }
/* 去掉 v1 的整条金色顶线（改为面板间发丝线，更克制） */
.auth-form::before{ content:none; }

/* 登录/注册切换：更松弛的下划线式 */
.auth-form .auth-tabs{ gap:22px; margin-bottom:26px; padding-bottom:10px; }
.auth-form .auth-tab{ font-size:14px; font-weight:600; color:var(--muted); }
.auth-form .auth-tab.on{ color:var(--accent); border-bottom-width:2px; }
:root[data-mode="dark"] .auth-form .auth-tab.on{ color:#eed9a6; }

/* 标题与提示 */
.auth-form h2{ margin:0 0 6px; font-size:22px; font-weight:700; letter-spacing:-.01em; }
.auth-form .hint{ margin:0 0 22px; font-size:12.5px; color:var(--muted); }

/* 表单字段：深色输入 + 聚焦金环 */
.auth-form .fld{ margin-bottom:16px; }
.auth-form .fld label, .auth-form .mlabel{
  display:block; margin-bottom:8px;
  font-size:12px; font-weight:600; letter-spacing:.04em; color:var(--muted);
}
.auth-form .inp{
  width:100%; min-height:46px; padding:0 14px;
  background:#151926; border:1px solid #272d3c; border-radius:11px;
  color:var(--ink); font-size:14px;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
:root[data-mode="light"] .auth-form .inp{
  background:#faf7f0; border-color:#e2d8c4;
}
.auth-form .inp:focus{
  outline:0; border-color:color-mix(in srgb,var(--accent) 60%,transparent);
  box-shadow:0 0 0 3px rgba(202,164,90,.14);
}
.auth-form .inp::placeholder{ color:var(--muted-2); }
.auth-form .pwd-hint{ margin-top:6px; font-size:11px; color:var(--muted-2); }

/* CTA：金渐变 + 深字，克制不刺眼 */
.auth-form .btn{
  width:100%; min-height:48px; margin-top:6px; padding:0;
  background:var(--theme-gradient); color:#191104 !important;
  font-size:14px; font-weight:800; letter-spacing:.12em;
  border:0; border-radius:12px; cursor:pointer;
  box-shadow:0 10px 28px rgba(202,164,90,.22);
  transition:filter .18s ease, transform .18s ease, box-shadow .18s ease;
}
.auth-form .btn:hover{
  background:var(--theme-gradient);
  filter:brightness(1.06); transform:translateY(-1px);
  box-shadow:0 14px 34px rgba(202,164,90,.28);
}
.auth-form .btn:active{ transform:translateY(0); filter:brightness(.98); }

/* 免费领卡条 */
.auth-claim{
  margin-top:14px; padding:10px 12px;
  background:rgba(202,164,90,.08);
  border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);
  border-radius:10px;
  font-size:11.5px; color:var(--muted);
}
.auth-claim button{
  padding:6px 14px; background:var(--theme-gradient); border:0;
  font-size:11px; font-weight:700; border-radius:8px; color:#191104;
}

/* 底部链接 */
.auth-links{ margin-top:20px; padding-top:16px; border-top:1px solid var(--rule); }
.auth-links a{ color:var(--muted); font-size:12px; }
.auth-links a:hover{ color:var(--accent); }

/* ═════════════════════════════════════════════════════════════════
   统一细节（规整 / 协调）
   ═════════════════════════════════════════════════════════════════ */

/* 区块标题：左侧金色短饰条 */
.sect h2, .fac-head h3, .modal-hd h3{
  position:relative; padding-left:14px;
}
.sect h2::before, .fac-head h3::before, .modal-hd h3::before{
  content:''; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:4px; height:1em; border-radius:99px;
  background:color-mix(in srgb,var(--accent) 70%,transparent);
}

/* 二级标签选中态 */
.subtab.on, .logtab.on, .dyn-tab.on{
  background:var(--accent-soft); font-weight:700;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent);
}
:root[data-mode="dark"] .subtab.on,
:root[data-mode="dark"] .logtab.on,
:root[data-mode="dark"] .dyn-tab.on{ color:#eed9a6; }

/* 表格表头：极淡金调 */
.tbl th{
  background:color-mix(in srgb,var(--accent) 7%,var(--paper-3));
  border-bottom:1px solid var(--surface-border-strong);
}
.tbl tr:hover td{ background:var(--accent-soft); }

/* 链接 */
a{ color:var(--accent); }
:root[data-mode="dark"] a{ color:#e2c88e; }
.auth-links a{ color:var(--muted); }

/* chip */
.chip{ border:1px solid var(--surface-border-strong); background:var(--surface-2); color:var(--ink-2); }
.chip.ok{ color:var(--positive); border-color:color-mix(in srgb,var(--positive) 34%,transparent); background:var(--positive-soft); }
.chip.warn{ color:var(--warning); border-color:color-mix(in srgb,var(--warning) 34%,transparent); background:var(--warning-soft); }
.chip.danger{ color:var(--danger); border-color:color-mix(in srgb,var(--danger) 34%,transparent); background:var(--danger-soft); }

/* 卡片 hover：金调柔光 */
.acard:hover, .dyn-card:hover, .faccard:hover, .bcard:hover, .herocard:hover,
.mtask:hover, .st-card:hover{
  box-shadow:0 18px 46px rgba(0,0,0,.40);
  border-color:color-mix(in srgb,var(--accent) 26%,var(--surface-border-strong));
}

/* 弹窗头部 */
.modal-hd{ background:color-mix(in srgb,var(--accent) 6%,transparent); }

/* 空态 */
.empty .big{
  background:var(--theme-gradient);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; font-weight:800;
}

/* ═════════════════════════════════════════════════════════════════
   响应式（登录页）
   ═════════════════════════════════════════════════════════════════ */
@media (max-width:900px){
  .auth.open{ padding:18px; align-items:center; }
  .auth.open .auth-inner{
    grid-template-columns:1fr;
    max-width:460px; width:100%;
    border-radius:18px;
    margin:auto;
  }
  .auth-brand{ padding:38px 30px 30px; text-align:center; }
  .auth-brand .rule{ margin-left:auto; margin-right:auto; }
  .auth-brand .lede{ margin-left:auto; margin-right:auto; }
  .auth-feats{
    align-items:center; margin-top:20px; gap:9px;
  }
  .auth-feats li{ padding-left:18px; font-size:12px; }
  .auth-brand::after{ right:-90px; bottom:-110px; width:240px; height:240px; }
  .auth-form{ border-left:0; border-top:1px solid var(--surface-border); padding:30px 26px 30px; }
}
@media (max-width:480px){
  .auth.open{ padding:10px; }
  .auth.open .auth-inner{ border-radius:15px; }
  .auth-brand{ padding:30px 20px 24px; }
  .auth-brand .n{ font-size:clamp(30px,10vw,42px) !important; }
  .auth-form{ padding:26px 18px 26px; }
  .auth-form .btn{ min-height:46px; }
}
