/* 闻雅德OS UI 2.0 (v1.11) — 设计 Token + 视觉覆盖层。只改外观，不改结构/逻辑。
   Figma: 闻雅德OS UI 2.0 / 设计系统（变量集合 WYDE Tokens 2.0） */
@font-face{font-family:WYPF;src:local("PingFang SC"),url(/static/vendor/fonts/pf-r.woff2?v=20261107-w1) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:WYPF;src:local("PingFang SC Medium"),url(/static/vendor/fonts/pf-m.woff2?v=20261107-w1) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:WYPF;src:local("PingFang SC Semibold"),url(/static/vendor/fonts/pf-b.woff2?v=20261107-w1) format("woff2");font-weight:600 700;font-display:swap}
:root{
  --wy-violet:#493AD6;--wy-violet-600:#3A2DB8;--wy-lavender:#E8E5FB;--wy-leaf:#6FAF40;--wy-leaf-soft:#EAF5E2;
  --wy-crimson:#C8343F;--wy-crimson-soft:#FBE9EA;--wy-amber:#B7791F;--wy-amber-soft:#FDF4E3;
  --wy-canvas:#F6F5FC;--wy-surface:#FFFFFF;--wy-subtle:#F1EFFB;--wy-border:#E6E3F3;
  --wy-text:#1B1840;--wy-text-2:#5B5878;--wy-text-3:#8E8BA8;
  --wy-s4:4px;--wy-s8:8px;--wy-s12:12px;--wy-s16:16px;--wy-s20:20px;--wy-s24:24px;--wy-s32:32px;
  --wy-r-sm:8px;--wy-r-md:12px;--wy-r-lg:16px;--wy-r-xl:24px;
  --wy-sh-1:0 1px 2px rgba(27,24,64,.04),0 4px 16px rgba(27,24,64,.06);
  --wy-sh-2:0 2px 4px rgba(27,24,64,.04),0 12px 32px rgba(27,24,64,.10);
  --wy-sh-brand:0 12px 32px rgba(73,58,214,.28);
  --wy-font:"PingFang SC",WYPF,"SF Pro Text",-apple-system,"Microsoft YaHei","Noto Sans CJK SC","Noto Sans SC",sans-serif;
  /* 旧变量映射到新 token */
  --bg:var(--wy-canvas);--card:var(--wy-surface);--line:var(--wy-border);--mut:var(--wy-text-2);
  --ink:var(--wy-text);--deep:var(--wy-text);--v1:var(--wy-subtle);--r:var(--wy-r-lg);--sh:var(--wy-sh-1);--panel:var(--wy-surface);
}
body{font-family:var(--wy-font);background:var(--wy-canvas);color:var(--wy-text);-webkit-font-smoothing:antialiased;letter-spacing:.1px}
.shell{background:linear-gradient(90deg,var(--wy-surface) 236px,var(--wy-canvas) 236px)}
/* 侧栏 */
.sb{border-right:1px solid var(--wy-border)}
.sb-i{border-radius:var(--wy-r-md);color:var(--wy-text-2);transition:background .15s,color .15s}
.sb-i:hover{background:var(--wy-subtle);color:var(--wy-violet)}
.sb-i.on{background:var(--wy-lavender);color:var(--wy-violet);font-weight:600;box-shadow:none;position:relative}
.sb-i.on .ico{color:var(--wy-violet)}
.sb-i.on:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--wy-violet)}
.sb-me{background:var(--wy-subtle);border-radius:var(--wy-r-lg)}
/* 顶栏 */
.tb{padding:24px 32px 8px}
.tb-hi h1{font-size:26px;font-weight:700;letter-spacing:-.2px;color:var(--wy-text)}
.tb-hi p{color:var(--wy-text-3)}
/* 卡片 / KPI */
.card{background:var(--wy-surface);border-left:0;border-radius:var(--wy-r-lg);box-shadow:var(--wy-sh-1);padding:18px 20px;border:1px solid rgba(230,227,243,.7)}
.kpi{background:var(--wy-surface);border-radius:var(--wy-r-lg);box-shadow:var(--wy-sh-1);padding:16px 18px}
.kpi b{color:var(--wy-text);font-weight:700;letter-spacing:-.3px}
.hero{background:radial-gradient(120% 140% at 100% 0%,#7B6DE0 0%,rgba(123,109,224,0) 55%),linear-gradient(135deg,#493AD6 0%,#3A2DB8 100%);border-radius:var(--wy-r-xl);box-shadow:var(--wy-sh-brand)}
/* 表格 */
table{background:var(--wy-surface);border-radius:var(--wy-r-md);box-shadow:var(--wy-sh-1)}
th{background:var(--wy-subtle);color:var(--wy-text-2);font-weight:600;font-size:12.5px}
td,th{border-bottom:1px solid var(--wy-border);padding:10px 12px}
tbody tr:hover td{background:#FAF9FE}
/* 按钮 */
button,.btn{border-radius:var(--wy-r-md);font-weight:500;transition:background .15s,box-shadow .15s,transform .05s}
button:active,.btn:active{transform:translateY(1px)}
button:hover,.btn:hover{background:var(--wy-violet-600)}
.btn-pill{border-radius:999px}
.btn-pill.on,.btn.on{--bg:var(--wy-violet);--fg:#fff;background:var(--wy-violet)!important;color:#fff!important}
/* 表单 */
input,select,textarea{border:1px solid var(--wy-border);border-radius:var(--wy-r-md);background:var(--wy-surface);padding:8px 11px;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--wy-violet);box-shadow:0 0 0 3px rgba(73,58,214,.14)}
/* 状态胶囊（Crimson 仅用于警示） */
.pill.late{background:var(--wy-crimson-soft);color:var(--wy-crimson)}
.pill.wait,.pill.soon{background:var(--wy-amber-soft);color:var(--wy-amber)}
/* 助手抽屉 */
#wyas-panel{border-radius:var(--wy-r-xl)!important;box-shadow:var(--wy-sh-2),0 24px 64px rgba(27,24,64,.18)!important;overflow:hidden}
#wyas-chips button{background:var(--wy-lavender)!important;color:var(--wy-violet)!important;border:0!important;font-weight:500;opacity:1!important}
#wyas-chips button:hover{background:#D8D3F7!important}
#wyas-fab{box-shadow:var(--wy-sh-brand)!important}
/* 手机 */
@media(max-width:760px){
  .shell{background:var(--wy-canvas)!important}
  .tb{padding:16px 16px 4px}.tb-hi h1{font-size:21px}
  .card{padding:14px 16px;border-radius:var(--wy-r-lg)}
  .hero{border-radius:20px}
}
