/* ===== 智惠极简主题（对齐 zhihui.kaogong.art 黑白设计语言） ===== */
:root{
  --bg:#fafafa; --panel:#ffffff; --panel2:#f5f5f6; --panel3:#ececee;
  --line:#e8e8ea; --line-hover:#d7d7da;
  --fg:#0f0f10; --dim:#6b6b70; --dim-light:#9b9ba1;
  --accent:#111113; --accent-hover:#000000; --accent-soft:#f2f2f3;
  --accent2:#111113; --accent2-soft:#f2f2f3;
  --warn:#9a6700; --warn-soft:#fdf6e3;
  --think:#52525b; --think-soft:#f4f4f5;
  --bad:#b42318; --bad-soft:#fef3f2;
  --shadow-sm:0 1px 2px rgba(15,15,16,.04);
  --shadow:0 1px 3px rgba(15,15,16,.05);
  --shadow-md:0 12px 32px rgba(15,15,16,.08);
  --header-bg:rgba(255,255,255,.88);
  color-scheme:light;
}
[data-theme="dark"]{
  --bg:#0b0b0c; --panel:#141416; --panel2:#1b1b1e; --panel3:#242427;
  --line:#2a2a2e; --line-hover:#3a3a3f;
  --fg:#f4f4f5; --dim:#a1a1a8; --dim-light:#77777e;
  --accent:#f4f4f5; --accent-hover:#ffffff; --accent-soft:#242427;
  --accent2:#f4f4f5; --accent2-soft:#242427;
  --warn:#e0b341; --warn-soft:#2a2210;
  --think:#a1a1aa; --think-soft:#1f1f22;
  --bad:#f97066; --bad-soft:#2a1414;
  --shadow-sm:0 1px 2px rgba(0,0,0,.5);
  --shadow:0 1px 3px rgba(0,0,0,.55);
  --shadow-md:0 12px 32px rgba(0,0,0,.6);
  --header-bg:rgba(11,11,12,.88);
  color-scheme:dark;
}
html,body{
  background:var(--bg)!important;
  color:var(--fg)!important;
  font-family:"Inter","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  letter-spacing:-.01em;
}
h1,h2,h3,h4{letter-spacing:-.02em;font-weight:600}
/* 卡片：白底、细边、无重阴影 */
.card,.sec,.key-card,.modal,.menu-pop,.page-nav-item,.table-wrap,.log-line{
  background:var(--panel)!important;
  border-color:var(--line)!important;
  box-shadow:var(--shadow-sm)!important;
}
.card,.key-card,.modal{border-radius:16px!important}
.sec{border-radius:14px!important}
/* 按钮：主按钮黑胶囊，次按钮描边胶囊 */
button{font-family:inherit;font-weight:500}
button.primary,.primary{
  background:var(--accent)!important;color:var(--bg)!important;
  border:1px solid var(--accent)!important;border-radius:999px!important;
  font-weight:600;box-shadow:none!important;
}
button.primary:hover,.primary:hover{background:var(--accent-hover)!important}
button.sec,button.key-action-btn,.range-btn,.main-nav-btn{border-radius:999px!important;box-shadow:none!important}
button.sec,button.key-action-btn{
  background:var(--panel)!important;border:1px solid var(--line)!important;color:var(--fg)!important;
}
button.sec:hover,button.key-action-btn:hover{background:var(--panel2)!important;border-color:var(--line-hover)!important}
.key-action-btn.danger{color:var(--bad)!important;border-color:var(--line)!important}
.main-nav-btn{border:1px solid transparent!important;color:var(--dim)!important}
.main-nav-btn:hover{background:var(--panel2)!important;color:var(--fg)!important}
.main-nav-btn.active{background:var(--accent-soft)!important;color:var(--fg)!important;border-color:transparent!important;box-shadow:none!important;font-weight:600}
.range-btn.active{background:var(--accent-soft)!important;color:var(--fg)!important}
/* 输入框：白底、胶囊/圆角、黑色焦点环 */
input,textarea,select{
  background:var(--panel)!important;color:var(--fg)!important;
  border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:none!important;
}
input:focus,textarea:focus,select:focus{
  outline:none!important;border-color:var(--fg)!important;
  box-shadow:0 0 0 3px var(--accent-soft)!important;
}
/* 登录卡片 */
#loginModal .modal,#loginModal .card{border-radius:24px!important;border:none!important;background:var(--panel2)!important;box-shadow:none!important}
/* 徽章：中性化，仅保留语义色 */
.badge{
  border-radius:999px!important;background:var(--panel2)!important;
  border:1px solid var(--line)!important;color:var(--dim)!important;font-weight:500;
}
.badge.ok{background:var(--accent2-soft)!important;color:var(--fg)!important;border-color:var(--line)!important}
.badge.warn{background:var(--warn-soft)!important;color:var(--warn)!important;border-color:transparent!important}
.badge.bad{background:var(--bad-soft)!important;color:var(--bad)!important;border-color:transparent!important}
.badge.off{background:var(--panel2)!important;color:var(--dim-light)!important}
/* 表格 */
table{font-size:12.5px}
th{color:var(--dim)!important;font-weight:500!important;background:transparent!important;border-color:var(--line)!important}
td{border-color:var(--line)!important}
tr:hover td{background:var(--panel2)!important}
/* 头部 */
header{background:var(--header-bg)!important;border-bottom:1px solid var(--line)!important;backdrop-filter:saturate(180%) blur(12px)}
/* 进度条与强调块去彩色 */
.bar-fill{background:var(--accent)!important}
.dot{box-shadow:none!important}
/* 去掉残留发光/彩色描边 */
.card,.sec,.key-card,.badge,.main-nav-btn,.key-action-btn{text-shadow:none!important}
/* 密码登录门：对齐参考页的灰底大圆角卡片 + 胶囊控件 */
#panelGate{background:#fff!important}
#panelGate>div{
  background:var(--panel2)!important;border:none!important;border-radius:24px!important;
  padding:36px 32px!important;box-shadow:none!important;min-width:360px!important;
}
#panelGate h1,#panelGate h2{font-size:22px!important;letter-spacing:-.02em!important;margin-bottom:6px!important}
#panelGate input{border-radius:999px!important;height:44px!important;padding:0 18px!important}
#panelGate button{
  border-radius:999px!important;height:44px!important;padding:0 20px!important;
  font-size:14px!important;font-weight:600!important;background:var(--accent)!important;color:var(--bg)!important;
}
/* ===== 动效与留白（对齐参考页 enter 150ms / color 300ms 体系） ===== */
@keyframes zh-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.main-page{animation:zh-fade .18s cubic-bezier(.4,0,.2,1) both}
.card,.sec,.key-card{
  transition:box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1)!important;
}
.card:hover,.key-card:hover{box-shadow:0 8px 24px rgba(15,15,16,.06)!important;transform:translateY(-1px);border-color:#dcdcdf!important}
button,.main-nav-btn,.range-btn,.key-action-btn,.badge{
  transition:background-color .18s cubic-bezier(.4,0,.2,1),color .18s cubic-bezier(.4,0,.2,1),border-color .18s cubic-bezier(.4,0,.2,1),transform .18s cubic-bezier(.4,0,.2,1)!important;
}
button:active{transform:scale(.985)}
h1{letter-spacing:-.025em!important}
h2{letter-spacing:-.02em!important;font-size:17px!important;margin-bottom:10px!important}
.card{padding:16px 18px!important}
table th{padding-top:9px!important;padding-bottom:9px!important;font-size:12px!important;letter-spacing:.01em}
table td{padding-top:9px!important;padding-bottom:9px!important}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* ===== 留白与滚动条微调 ===== */
header{padding:14px 24px!important}
main.main-page{padding:22px 24px!important}
.main-page h1{font-size:20px!important;letter-spacing:-.025em}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#d9d9dc;border-radius:999px;border:2px solid #fff}
::-webkit-scrollbar-thumb:hover{background:#c4c4c8}
[data-theme="dark"] ::-webkit-scrollbar-thumb{background:#3a3a3f;border-color:#0b0b0c}
/* 对齐参考看板：20px 卡片、-0.03em 标题、11px 标签、等宽数字 */
.card,.key-card,.modal{border-radius:20px!important}
.sec{border-radius:18px!important}
h1{letter-spacing:-.03em!important}
.hint,.mini{font-size:11px!important;letter-spacing:.01em}
.mono,table td,table th{font-variant-numeric:tabular-nums}
/* ===== 布局重塑 v2：居中限宽 + 侧栏卡片化 + 页切换动效 ===== */
header{
  position:sticky;top:0;z-index:60;
  max-width:1280px;margin:0 auto;
  padding:12px 20px!important;
  border-bottom:1px solid var(--line)!important;
}
header .header-left{gap:22px!important}
header h1{font-size:19px!important;letter-spacing:-.03em!important}
.main-page{
  max-width:1280px;margin:0 auto;
  grid-template-columns:200px minmax(0,1fr)!important;
  gap:24px!important;
  padding:10px 0 28px!important;
}
.main-page.active{animation:zh-page .22s cubic-bezier(.22,1,.36,1) both}
@keyframes zh-page{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.page-sidebar{
  position:sticky;top:86px;align-self:start;
  background:var(--panel)!important;border:1px solid var(--line)!important;
  border-radius:16px!important;padding:10px!important;
  box-shadow:var(--shadow-sm)!important;
}
.page-sidebar a,.page-sidebar button{
  padding:8px 10px!important;border-radius:10px!important;font-size:12.5px!important;
  transition:background-color .18s cubic-bezier(.4,0,.2,1),color .18s cubic-bezier(.4,0,.2,1),transform .18s cubic-bezier(.4,0,.2,1)!important;
}
.page-sidebar a:hover,.page-sidebar button:hover{background:var(--panel2)!important;transform:translateX(1px)}
.page-nav-body{min-width:0}
.cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:16px!important}
h2{display:flex;align-items:center;gap:8px;font-size:17px!important;margin:4px 0 12px!important}
h2::before{content:"";width:4px;height:16px;border-radius:99px;background:var(--fg);opacity:.9}
.card{padding:20px 20px!important}
.table-wrap{border:1px solid var(--line)!important;border-radius:16px!important;background:var(--panel)!important}
thead th{position:sticky;top:0;background:var(--panel)!important;z-index:1}
/* ===== 动效细节：模态弹性进场 + 平滑滚动 ===== */
html{scroll-behavior:smooth}
.modal-mask{animation:zh-mask .16s ease-out both}
@keyframes zh-mask{from{opacity:0}to{opacity:1}}
.modal{animation:zh-pop .22s cubic-bezier(.22,1,.36,1) both}
@keyframes zh-pop{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
/* ===== v3 全面重塑：左侧应用栏 + 横向子导航 + 居中内容 ===== */
@media (min-width:1100px){
  :root{--rail-w:248px}
  header{
    position:fixed!important;left:0;top:0;bottom:0;right:auto;
    width:var(--rail-w)!important;height:100vh!important;
    max-width:none!important;margin:0!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    padding:18px 14px 16px!important;
    background:var(--panel)!important;
    border-right:1px solid var(--line)!important;border-bottom:0!important;
    z-index:50!important;
  }
  .header-left{
    flex-direction:column!important;align-items:stretch!important;
    gap:14px!important;width:100%!important;flex:1!important;min-width:0;
  }
  header h1{
    font-size:18px!important;letter-spacing:-.03em!important;
    padding:4px 10px 16px!important;margin:0!important;
    border-bottom:1px solid var(--line);
  }
  .main-nav{
    display:flex!important;flex-direction:column!important;gap:3px!important;
    background:transparent!important;border:0!important;padding:0!important;width:100%!important;
  }
  .main-nav-btn{
    width:100%!important;justify-content:flex-start!important;
    padding:10px 12px!important;border-radius:10px!important;font-size:13px!important;
  }
  .main-nav-btn.active{background:var(--accent)!important;color:var(--bg)!important;box-shadow:none!important}
  .header-right{
    order:2;margin-top:auto!important;width:100%!important;
    flex-direction:column!important;align-items:stretch!important;gap:8px!important;
    padding-top:14px!important;border-top:1px solid var(--line);
  }
  main{
    margin-left:var(--rail-w)!important;margin-right:0!important;
    padding:28px 32px 64px!important;max-width:none!important;
  }
  .main-page{max-width:1240px;margin:0 auto}
  .main-page.page-nav-on.active{
    display:flex!important;flex-direction:column!important;gap:18px!important;
    grid-template-columns:none!important;
  }
  .page-sidebar{
    position:sticky!important;top:12px!important;z-index:40;
    display:flex!important;flex-direction:row!important;align-items:center!important;
    gap:8px!important;width:100%!important;height:auto!important;min-height:0!important;
    padding:8px!important;border:1px solid var(--line)!important;border-radius:14px!important;
    background:var(--panel)!important;box-shadow:var(--shadow-sm)!important;
    overflow-x:auto!important;
  }
  .page-sidebar-head,.page-sidebar-toggle,.page-nav-top{display:none!important}
  .page-sidebar .page-nav{
    display:flex!important;flex-direction:row!important;gap:4px!important;width:100%!important;flex-wrap:nowrap!important;
  }
  .page-sidebar .page-nav>*{
    flex:0 0 auto!important;padding:7px 12px!important;border-radius:999px!important;
    font-size:12.5px!important;white-space:nowrap!important;
  }
  .page-sidebar .page-nav>*.active{background:var(--accent)!important;color:var(--bg)!important}
  .page-nav-body{width:100%!important;min-width:0}
  .cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:16px!important}
  #schedulerBar{width:100%}
  section[id^="page-sec"],#sectionGrowthTasks{scroll-margin-top:88px}
}
@media (min-width:1100px){
  .page-sidebar{
    min-height:50px!important;max-height:none!important;height:auto!important;
    overflow-x:auto!important;overflow-y:hidden!important;
  }
  .page-sidebar .page-nav{min-height:33px!important;align-items:center!important}
}
/* 统计卡片层级强化 */
#cards .card .k{font-size:11px!important;letter-spacing:.02em;font-weight:500}
#cards .card .v{font-size:26px!important;font-weight:600!important;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
#cards .card .s{font-size:11.5px!important}
