/* ===========================================================================
   OOGLEX 终端设计系统 · Terminal Design System
   ---------------------------------------------------------------------------
   一套样式表，两层职责：

     外壳  .t-tabs / .t-fnbar / .t-crumb / .t-quote / .t-cmdbar / .t-entry /
           .t-acts / .t-menu / .t-fields / .t-subtabs / .t-pop / .t-sugg
           = 导航。颜色承载「功能属于哪一类」，所以允许 8 种分类色。
     数据区 .t-win / .t-panel / .t-tbl / .t-sig / .t-chart / .t-bars / .t-list
           = 数字。颜色只承载涨跌方向与风险档位，严格控色，且一律有文字标签
             并行 —— 颜色不是唯一编码。

   命名只有一套：全部 .t- 前缀。合并时撞名的三处已显式改名，不靠后者覆盖：
     命令行容器 .t-cmdbar（.t-cmd 是命令行输入框）
     建议功能条 .t-sugg（.t-foot 是页脚一行）
     横滚容器   .t-scroll-x（.t-scroll 是窗口修饰符）
   表格也只有一套 .t-tbl（带标准/专业双密度与四级字号）。

   刻意不做的事
     · 无渐变、无发光、无玻璃拟态、无圆角（≤2px）、无装饰动画
     · 不用任何第三方的商标、标识或它们自己的功能助记符
     · 没有买卖下单键 —— 站内没有经纪或订单通道，画一个就是假的

   桌面优先 1920×1080 与 2560×1440，向下适配 MacBook 与窄屏。
   =========================================================================== */

:root{
  /* ── 底色 ── */
  --t-bg:#050505;          /* 页面底 */
  --t-bg2:#080808;         /* 次级底 */
  --t-panel:#101010;       /* 窗口底 */
  --t-panel2:#151515;      /* 窗口内次级区 / 表头 */
  --t-head:#0b0b0b;        /* 标题栏、功能栏 */
  --t-row:#0d0d0d;         /* 斑马行 */

  /* ── 描边 ── */
  --t-line:#1f1f1f;        /* 常规分隔 */
  --t-line2:#2e2e2e;       /* 强分隔 / 窗口边框 */
  --t-line3:#3d3d3d;       /* 交互态 */

  /* ── 文字 ── */
  --t-ink:#f0f0f0;         /* 主文字 */
  --t-ink2:#c6c6c6;        /* 次文字 */
  --t-dim:#8a8a8a;         /* 三级 */
  --t-faint:#5e5e5e;       /* 元信息 */

  /* ── 功能色（严格控制数量）── */
  --t-amber:#ffa028;       /* 菜单、模块标题、选中态 */
  --t-amber-dim:#8a5613;
  --t-yellow:#ffd24a;      /* 重要数据 */
  --t-up:#00b86b;          /* 上涨 / 正向 */
  --t-dn:#ff4d4d;          /* 下跌 / 风险 */
  --t-blue:#4c9eea;        /* 中性信息 / 链接 */
  --t-signal-watch:#ffd24a;
  --t-signal-risk:#ff8c1a;
  --t-signal-stress:#ff4d4d;

  /* ── 字体 ── */
  --t-sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
  --t-mono:ui-monospace,SFMono-Regular,"SF Mono","Cascadia Mono",Menlo,Consolas,"Liberation Mono",monospace;

  /* ── 四级字号 ── */
  --t-f1:10.5px;           /* 一级：模块名称（大写、字距） */
  --t-f2:12px;             /* 二级：Ticker / 指标名称 */
  --t-f3:12.5px;           /* 三级：数字 */
  --t-f4:9.5px;            /* 四级：时间 / 来源 / 状态 */

  /* ── 密度（专业模式下由 JS 覆写）── */
  --t-row-h:22px;
  --t-cell-py:3px;
  --t-gap:1px;

  /* ── 外壳专有底色：外壳比数据区浅一档，形成「窗框 / 内容」的层次 ── */
  --t-chrome:#1c1c1c;      /* 标签条 */
  --t-chrome2:#2b2b2b;     /* 激活标签 */
  --t-bar:#0a0a0a;         /* 功能键条底 */
  --t-crumb:#141414;       /* 面包屑 */
  --t-quote:#000000;       /* 报价头 */
  --t-band:#3a3a3a;        /* 分区色带 */
  --t-cmd-bg:#5c1015;      /* 命令行底（暗红） */
  --t-cmd-bg2:#6e1219;     /* 命令行按钮 */
  --t-cmd-key:#2a2000;     /* 琥珀键底 */
  --t-cmd-line:#ffd24a;    /* 琥珀键描边 */
  --t-sel:#1d5fa6;         /* 选中行（蓝） */
}

/* 专业模式：更紧的行高与更小的字号，用于机构多窗口作业 */
html[data-density="pro"]{
  --t-f2:11px; --t-f3:11.5px; --t-f4:9px;
  --t-row-h:19px; --t-cell-py:2px;
}
/* 标准模式：面向日常研究，行距与字号放松一档 */
html[data-density="std"]{
  --t-f2:12.5px; --t-f3:13.5px; --t-f4:10px;
  --t-row-h:26px; --t-cell-py:5px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{background:var(--t-bg)}
body{
  background:var(--t-bg); color:var(--t-ink);
  font-family:var(--t-sans); font-size:var(--t-f2); line-height:1.45;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{
  outline:1px solid var(--t-amber); outline-offset:1px;
}
/* 控件 reset：不写这条，外壳里那些 <button> 会露出浏览器默认的浅灰底 */
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:inherit}
input,select{font:inherit;color:inherit}
table{width:100%;border-collapse:collapse}
.t-num{font-family:var(--t-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.t-up{color:var(--t-up)} .t-dn{color:var(--t-dn)} .t-flat{color:var(--t-dim)}
.t-key{color:var(--t-yellow)}                 /* 重要数据 */
.t-mono{font-family:var(--t-mono)}
.t-hide{display:none!important}

/* ===========================================================================
   顶部功能栏
   =========================================================================== */
.t-topbar{background:var(--t-head);border-bottom:1px solid var(--t-line2)}
.t-topbar .t-row1{display:flex;align-items:stretch;min-height:34px}
.t-brand{display:flex;align-items:center;gap:10px;padding:0 14px;border-right:1px solid var(--t-line)}
.t-brand .t-wm{font-size:15px;font-weight:700;letter-spacing:.2em;color:var(--t-ink)}
.t-brand .t-tags{display:flex;gap:4px}
.t-brand .t-tags span{
  font-family:var(--t-mono);font-size:8.5px;letter-spacing:.1em;padding:1px 4px;
  border:1px solid var(--t-line2);color:var(--t-faint);
}
.t-brand .t-tags .on{color:var(--t-amber);border-color:var(--t-amber-dim)}

.t-nav{display:flex;align-items:stretch;flex-wrap:wrap}
.t-nav a{
  display:flex;align-items:center;padding:0 13px;font-size:var(--t-f2);color:var(--t-ink2);
  border-right:1px solid var(--t-line);border-bottom:2px solid transparent;white-space:nowrap;
}
.t-nav a:hover{background:var(--t-panel);color:var(--t-ink)}
.t-nav a.on{color:var(--t-amber);border-bottom-color:var(--t-amber)}

.t-cmdwrap{flex:1 1 280px;display:flex;align-items:center;gap:8px;padding:0 12px;border-left:1px solid var(--t-line);min-width:0}
.t-cmdwrap .t-caret{color:var(--t-amber);font-family:var(--t-mono);font-size:12px}
.t-cmd{
  flex:1 1 auto;min-width:0;background:var(--t-panel);border:1px solid var(--t-line2);color:var(--t-ink);
  font-family:var(--t-mono);font-size:11.5px;padding:4px 8px;letter-spacing:.04em;
}
.t-cmd::placeholder{color:var(--t-faint);letter-spacing:0}
.t-cmd:focus{border-color:var(--t-amber-dim);background:#000}
/* 命令行的 GO 键用 .t-entry .go（见第 5 节）。这里原有一条同名 .t-go 的琥珀块规则，
   与行内详情链接的 .t-go 撞名 —— 链接继承到琥珀底后白字只剩 1.79:1，已删除。
   撞名的教训与合并时那三处一样：靠后者覆盖不可靠，重名就得有一方改名或删掉。 */

.t-modes{display:flex;align-items:center;border-left:1px solid var(--t-line)}
.t-modes button{
  font:inherit;font-size:10.5px;font-family:var(--t-mono);letter-spacing:.06em;
  padding:0 11px;height:100%;min-height:32px;background:none;border:0;border-right:1px solid var(--t-line);
  color:var(--t-dim);cursor:pointer;white-space:nowrap;
}
.t-modes button:hover{color:var(--t-ink)}
.t-modes button[aria-pressed="true"]{background:var(--t-amber);color:#000;font-weight:700}

/* 快捷功能键行 */
.t-fkeys{display:flex;flex-wrap:wrap;background:var(--t-bg2);border-top:1px solid var(--t-line)}
.t-fkeys a{
  display:flex;align-items:center;gap:5px;padding:3px 11px;border-right:1px solid var(--t-line);
  font-family:var(--t-mono);font-size:10px;letter-spacing:.08em;color:var(--t-dim);white-space:nowrap;
}
.t-fkeys a:hover{background:var(--t-panel);color:var(--t-amber)}
.t-fkeys a i{font-style:normal;color:var(--t-faint);font-size:9px}
.t-fkeys .t-right{margin-left:auto;border-right:0;color:var(--t-faint)}

/* 状态条：时钟 / 市场状态 / 数据状态 */
.t-status{display:flex;flex-wrap:wrap;background:var(--t-head);border-top:1px solid var(--t-line);
  font-family:var(--t-mono);font-size:var(--t-f4);letter-spacing:.05em;color:var(--t-faint)}
.t-status > span{padding:3px 12px;border-right:1px solid var(--t-line);white-space:nowrap}
/* 时钟与市场状态是「一组单元格」：外层只做容器，不自己当单元格，否则窄屏整段无法换行 */
.t-status > [data-clocks],.t-status > [data-markets]{
  display:inline-flex;flex-wrap:wrap;padding:0;border-right:0;white-space:normal;
}
.t-status [data-clocks] > span,.t-status [data-markets] > span{
  padding:3px 12px;border-right:1px solid var(--t-line);white-space:nowrap;
}
.t-status b{color:var(--t-ink2);font-weight:600}
.t-status .t-right{margin-left:auto;border-right:0}
.t-mkt{display:inline-flex;align-items:center;gap:4px}
.t-mkt i{width:5px;height:5px;background:var(--t-faint);display:inline-block}
.t-mkt.open i{background:var(--t-up)} .t-mkt.open b{color:var(--t-up)}
.t-mkt.closed i{background:var(--t-faint)}

/* ===========================================================================
   窗口（所有模块用同一种规则矩形窗口）
   =========================================================================== */
.t-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--t-gap);background:var(--t-line)}
.t-grid > *{min-width:0}
.c2{grid-column:span 2} .c3{grid-column:span 3} .c4{grid-column:span 4}
.c5{grid-column:span 5} .c6{grid-column:span 6} .c7{grid-column:span 7}
.c8{grid-column:span 8} .c9{grid-column:span 9} .c12{grid-column:span 12}

.t-win{background:var(--t-panel);display:flex;flex-direction:column;min-width:0}
.t-win > header{
  display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--t-head);
  border-bottom:1px solid var(--t-line2);
}
.t-win > header h2{
  font-family:var(--t-mono);font-size:var(--t-f1);font-weight:700;letter-spacing:.14em;
  color:var(--t-amber);text-transform:uppercase;white-space:nowrap;
  min-width:0;overflow:hidden;text-overflow:ellipsis;   /* 标题可压缩，工具按钮不被挤出 */
}
.t-win > header .t-sub{font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-faint);letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t-win > header .t-tools{margin-left:auto;display:flex;gap:3px;flex:0 0 auto}
.t-win > header .t-tools button{
  font-family:var(--t-mono);font-size:8.5px;letter-spacing:.08em;padding:1px 4px;
  background:none;border:1px solid var(--t-line2);color:var(--t-faint);cursor:pointer;
}
.t-win > header .t-tools button:hover{color:var(--t-amber);border-color:var(--t-amber-dim)}
.t-win > .t-body{min-width:0;overflow:hidden}
.t-win > footer{
  margin-top:auto;padding:3px 8px;border-top:1px solid var(--t-line);
  font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-faint);line-height:1.5;
}
.t-win.t-scroll > .t-body{overflow:auto}

/* ===========================================================================
   数据表（终端主力组件）
   =========================================================================== */
.t-tbl{font-size:var(--t-f3)}
.t-tbl thead th{
  position:sticky;top:0;z-index:1;background:var(--t-panel2);
  font-family:var(--t-mono);font-size:var(--t-f4);font-weight:400;letter-spacing:.1em;color:var(--t-dim);
  text-align:right;padding:3px 8px 3px 0;border-bottom:1px solid var(--t-line2);white-space:nowrap;
}
.t-tbl thead th:first-child{text-align:left;padding-left:8px}
.t-tbl thead th.sortable{cursor:pointer;user-select:none}
.t-tbl thead th.sortable:hover{color:var(--t-ink2)}
.t-tbl thead th[aria-sort="ascending"]::after{content:" ▲";color:var(--t-amber);font-size:7px}
.t-tbl thead th[aria-sort="descending"]::after{content:" ▼";color:var(--t-amber);font-size:7px}
.t-tbl td{
  text-align:right;padding:var(--t-cell-py) 8px var(--t-cell-py) 0;height:var(--t-row-h);
  white-space:nowrap;border-bottom:1px solid rgba(31,31,31,.7);
  font-family:var(--t-mono);font-variant-numeric:tabular-nums;
}
.t-tbl td:first-child{text-align:left;padding-left:8px;font-family:var(--t-sans)}
.t-tbl.t-wrap td:first-child{white-space:normal;overflow-wrap:anywhere}
.t-tbl.t-wrap .t-nm{display:block;margin-left:0}
.t-tbl tbody tr:nth-child(even){background:var(--t-row)}
.t-tbl tbody tr:hover{background:rgba(255,160,40,.08)}
.t-tbl .t-tk{font-family:var(--t-mono);font-weight:700;color:var(--t-ink);letter-spacing:.02em}
.t-tbl .t-nm{color:var(--t-dim);font-size:var(--t-f4);margin-left:6px}
.t-tbl .t-last{color:var(--t-yellow);font-weight:700}
.t-tbl .t-grp td{
  background:var(--t-bg2);color:var(--t-amber);font-family:var(--t-mono);font-size:var(--t-f4);
  letter-spacing:.14em;padding:2px 8px;height:auto;border-bottom:1px solid var(--t-line2);
}
.t-tbl .t-grp:hover td{background:var(--t-bg2)}
.t-tbl .t-na{color:var(--t-faint)}

/* 标的名称上的详情页链接。
   可点提示是代码下面一条虚线：不用色块也不用实心下划线 —— 色块会把密排表格的行距
   撑开、并压掉文字对比度（上一版就是这么把白字压到 1.79:1 的）；虚线常态可见，所以
   「能点」不必悬停才看得出来，也不只靠颜色编码。没有详情页的行保持纯文本。
   这里显式清掉 background/border/padding/font：这个类名曾与命令行 GO 键撞名，
   显式归零比指望别处不定义同名规则可靠。 */
.t-go{
  color:inherit;text-decoration:none;display:inline-block;max-width:100%;
  background:none;padding:0;font:inherit;letter-spacing:inherit;text-align:inherit;
  border:0;border-bottom:1px dotted var(--t-amber-dim);
}
/* 有代码块的行，虚线只压在代码下面；没有 .t-tk 的（同业表、榜单行是「1)NVDA英伟达」
   这种整串文字）就压在整个链接下面 —— 每一行都要有常态提示，不能只有一部分表格有。
   :has() 不支持时两处都会带线，多一条线而已，不会漏。 */
.t-go:has(.t-tk){border-bottom:0}
.t-go .t-tk{border-bottom:1px dotted var(--t-amber-dim);padding-bottom:1px}
.t-go:hover,.t-go:focus-visible{color:var(--t-cmd-line);border-bottom-style:solid}
.t-go:hover .t-tk,.t-go:focus-visible .t-tk{
  color:var(--t-cmd-line);border-bottom-style:solid;border-bottom-color:currentColor;
}
.t-go:hover .t-nm,.t-go:focus-visible .t-nm{color:var(--t-ink)}
/* 跨资产强弱条那边名称就是纯文字，没有 .t-tk 可挂，虚线直接给链接本身 */
.t-bars .r .nm .t-go{border-bottom:1px dotted var(--t-amber-dim)}
.t-bars .r .nm .t-go:hover,.t-bars .r .nm .t-go:focus-visible{border-bottom-style:solid}
.t-tbl tbody tr:hover td:first-child .t-go{color:var(--t-cmd-line)}
/* 合成信号：展开中的那一条给琥珀块＋深字（10.3:1），一眼看出图画的是哪一行。
   这是「选中态」，与模式键 aria-pressed 的表达一致，不是链接的常态。 */
.t-go[aria-expanded="true"] .t-tk{
  background:var(--t-amber);color:#140d00;border-bottom-color:transparent;
  padding:1px 5px;margin:-1px -1px -1px 0;
}
/* 小倍数：一条序列一张小图，共用同一个纵轴。六条线叠一张图谁也看不清，
   所以叠加图旁边总配一条小倍数带；每张图只有一条线，身份靠标题不靠颜色。 */
.t-smgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:4px;padding:5px 8px 7px}
.t-sm{border:1px solid var(--t-line);background:#0b0b0b;padding:3px 5px 4px;min-width:0}
.t-sm figcaption{display:flex;gap:6px;align-items:baseline;font-family:var(--t-mono);font-size:9.5px}
.t-sm figcaption b{color:var(--t-ink);font-size:10.5px;font-weight:700}
.t-sm figcaption.sub{color:var(--t-faint);font-size:8.5px;margin-top:1px}
.t-sm svg{display:block;width:100%;height:auto;margin:2px 0 1px}

/* 相关性矩阵：首行首列是表头，格子里一律印数字，染色只是辅助 */
.t-corr th[scope="row"]{
  text-align:left;font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-ink2);
  position:sticky;left:0;background:var(--t-panel2);padding-left:8px;white-space:nowrap;
}
.t-corr thead th{text-align:center;padding-right:0}
.t-corr td{text-align:center;padding-right:0;font-size:var(--t-f4)}

/* 已选标的的小牌子：比较页要能看清当前选了哪几个、并逐个摘掉 */
.t-chips{display:flex;flex-wrap:wrap;gap:3px;align-items:center;min-width:0}
.t-chip{
  display:inline-flex;align-items:center;gap:4px;font-family:var(--t-mono);font-size:10px;
  background:#1a1a1a;border:1px solid var(--t-line2);padding:1px 2px 1px 6px;color:var(--t-ink2);
}
.t-chip.on{border-color:var(--t-cmd-line);color:var(--t-cmd-line)}
.t-chip button{color:var(--t-faint);font-size:11px;line-height:1;padding:0 3px}
.t-chip button:hover{color:var(--t-dn)}

/* 非美元报价的币种标记：价格数字后面跟一个小号币种，避免把本币价当美元读 */
.t-tbl .t-cur{font-size:8px;color:var(--t-faint);letter-spacing:.06em;margin-left:3px;vertical-align:.15em}

/* 窗口内的小节标签：一个窗口里放两张口径不同的表时，用它分隔并写清口径差异 */
.t-sect{
  background:var(--t-bg2);color:var(--t-amber);font-family:var(--t-mono);font-size:var(--t-f4);
  letter-spacing:.14em;padding:3px 8px;border-top:1px solid var(--t-line2);
  border-bottom:1px solid var(--t-line2);text-transform:uppercase;
}
.t-sect em{font-style:normal;color:var(--t-faint);letter-spacing:.04em;text-transform:none;margin-left:8px}
.t-tbl sup{color:var(--t-amber);font-size:8px}

/* 状态徽标：NORMAL / WATCH / RISK / STRESS */
.t-sig{
  display:inline-block;font-family:var(--t-mono);font-size:var(--t-f4);font-weight:700;letter-spacing:.1em;
  padding:1px 5px;border:1px solid currentColor;
}
.t-sig.normal{color:var(--t-up)}
.t-sig.watch{color:var(--t-signal-watch)}
.t-sig.risk{color:var(--t-signal-risk)}
.t-sig.stress{color:var(--t-signal-stress)}
.t-sig.na{color:var(--t-faint)}

/* 小型图形：曲线、迷你走势、横向条 */
.t-chart{padding:6px 8px}
.t-chart svg{display:block;width:100%;height:auto}
.t-legend{display:flex;flex-wrap:wrap;gap:2px 14px;font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-dim);padding:2px 8px 4px}
.t-legend b{color:var(--t-ink2)}
.t-spark{display:block}

.t-bars .r{display:grid;grid-template-columns:96px minmax(0,1fr) 58px;gap:8px;align-items:center;padding:2px 8px}
.t-bars .nm{font-size:var(--t-f2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t-bars .tr{position:relative;height:9px;background:var(--t-panel2)}
.t-bars .tr i{position:absolute;top:0;bottom:0}
.t-bars .tr .z{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--t-line3)}
.t-bars .vv{text-align:right;font-family:var(--t-mono);font-size:var(--t-f3);font-weight:700}

/* 事件 / 新闻列表 */
.t-list{font-size:var(--t-f2)}
.t-list li{list-style:none;display:flex;gap:8px;padding:var(--t-cell-py) 8px;border-bottom:1px solid rgba(31,31,31,.7);align-items:baseline}
.t-list li:hover{background:rgba(255,160,40,.06)}
.t-list .tm{font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-dim);flex:0 0 auto;width:72px}
.t-list .imp{flex:0 0 auto;width:4px;height:10px;align-self:center}
.t-list .imp.h{background:var(--t-dn)} .t-list .imp.m{background:var(--t-signal-watch)} .t-list .imp.l{background:var(--t-line3)}
.t-list .tx{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t-list .vv{flex:0 0 auto;font-family:var(--t-mono);font-size:var(--t-f4)}
.t-list .src{flex:0 0 auto;font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-faint)}

/* 大读数（克制版：只在少数窗口用，字号远小于原科幻版） */
.t-read{display:flex;align-items:baseline;gap:8px;padding:6px 8px}
.t-read b{font-family:var(--t-mono);font-size:24px;line-height:1;font-weight:700}
.t-read span{font-size:var(--t-f2)}
.t-read .meta{margin-left:auto;font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-faint);text-align:right}

.t-scale{margin:4px 8px 2px;height:5px;background:var(--t-panel2);border:1px solid var(--t-line);position:relative}
.t-scale i{position:absolute;top:-1px;bottom:-1px;width:2px;background:var(--t-ink)}
.t-scale u{position:absolute;top:0;bottom:0;border-right:1px solid var(--t-line2)}
.t-ax{display:flex;justify-content:space-between;font-family:var(--t-mono);font-size:var(--t-f4);color:var(--t-faint);padding:0 8px 4px}

.t-note{padding:4px 8px;font-size:var(--t-f4);font-family:var(--t-mono);color:var(--t-faint);line-height:1.55}
.t-note.warn{color:var(--t-signal-watch)}

/* 页脚 */
.t-foot{border-top:1px solid var(--t-line2);padding:6px 12px 26px;font-family:var(--t-mono);
  font-size:var(--t-f4);color:var(--t-faint);display:flex;flex-wrap:wrap;gap:3px 18px}
.t-foot a{color:var(--t-dim)}
.t-foot .t-right{margin-left:auto}

/* 草案标识条（仅评审用，落地时删掉） */
.t-draft{background:#14100a;border-bottom:1px solid var(--t-amber-dim);font-size:10.5px;color:var(--t-ink2);
  padding:4px 12px;display:flex;flex-wrap:wrap;gap:3px 16px;font-family:var(--t-mono)}
.t-draft b{color:var(--t-amber)}
.t-draft a{color:var(--t-blue);border-bottom:1px solid #24455f}

/* ===========================================================================
   响应式：桌面优先 2560 / 1920，向下适配
   =========================================================================== */
@media (min-width:2100px){
  :root{--t-f2:12.5px;--t-f3:13px;--t-row-h:23px}
}
@media (max-width:1400px){
  .c3{grid-column:span 4} .c2{grid-column:span 3}
}
@media (max-width:1100px){
  .c3,.c4{grid-column:span 6} .c2{grid-column:span 4}
  .c5,.c7{grid-column:span 12} .c8,.c9{grid-column:span 12}
}
@media (max-width:760px){
  /* 窄屏默认收起次要列：窗口内容不该逼着页面横向滚动 */
  .t-col-x{display:none}
  /* 首列（代码 + 中文名）改为两行，否则 nowrap 会把窄屏表撑出屏幕 */
  .t-tbl td:first-child,.t-tbl th:first-child{white-space:normal;overflow-wrap:anywhere}
  .t-tbl .t-nm{display:block;margin-left:0}
  .t-tbl th,.t-tbl td{padding-right:6px}
  .t-win > header{flex-wrap:wrap}
  .t-win > header .t-sub{flex:1 1 auto}
  .t-grid > *{grid-column:span 12!important}
  .t-topbar .t-row1{flex-wrap:wrap}
  .t-brand{width:100%;border-right:0;border-bottom:1px solid var(--t-line);justify-content:space-between}
  .t-cmdwrap{order:5;width:100%;border-left:0;border-top:1px solid var(--t-line);padding:6px 12px}
  .t-modes{border-left:0}
  .t-col-x{display:none}
  .t-status .t-right{margin-left:0}
  .t-foot .t-right{margin-left:0}
}

/* 命令栏命中态：终端里定位到某行/某窗口的标记 */
.t-cmd-hit{outline:1px solid var(--t-amber);outline-offset:-1px;background:rgba(255,160,40,.10)!important}
.t-win.t-cmd-hit > header{background:var(--t-amber);}
.t-win.t-cmd-hit > header h2{color:#000}
.t-win.t-maxed{outline:1px solid var(--t-amber-dim);outline-offset:-1px}

/* ===========================================================================
   动效：本设计系统不含任何过渡与动画（唯一的"动"是时钟秒进这一文本更新）。
   下面这条是向后约束——即使后续有人加入过渡或动效，也不会违反用户的减少动态偏好。
   =========================================================================== */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important;
  }
}


/* ===========================================================================
   1 标签条：助记符 + 说明，与专业终端一致的「一个标签一个功能」
   =========================================================================== */
.t-tabs{
  display:flex;align-items:stretch;background:var(--t-chrome);
  border-bottom:1px solid #000;min-height:30px;
}
.t-tabs .tab{
  display:flex;align-items:center;gap:7px;padding:0 11px;min-width:0;
  border-right:1px solid #000;color:var(--t-dim);flex:0 1 auto;max-width:180px;
}
.t-tabs .tab b{
  font-family:var(--t-mono);font-size:10.5px;font-weight:700;letter-spacing:.06em;
  color:var(--t-ink2);flex:0 0 auto;
}
.t-tabs .tab span{
  font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
}
.t-tabs .tab:hover{background:#242424;color:var(--t-ink2)}
.t-tabs .tab.on{background:var(--t-chrome2);color:var(--t-ink)}
.t-tabs .tab.on b{color:#fff}
.t-tabs .tab.on span{color:#fff}
.t-tabs .x{
  font-family:var(--t-mono);font-size:12px;color:var(--t-dim);padding:0 1px;line-height:1;
}
.t-tabs .x:hover{color:var(--t-dn)}
.t-tabs .add{
  padding:0 11px;font-size:17px;line-height:1;color:var(--t-dim);border-right:1px solid #000;
}
.t-tabs .add:hover{color:var(--t-ink)}
.t-tabs .sysr{margin-left:auto;display:flex;align-items:center;gap:2px;padding-right:6px;flex:0 0 auto}
.t-tabs .sysr button,.t-tabs .sysr span{
  padding:0 8px;color:var(--t-dim);font-size:12px;display:flex;align-items:center;height:100%;
}
.t-tabs .sysr button:hover{color:var(--t-ink)}
.t-tabs .sysr .opt{font-size:12px;color:var(--t-ink2)}

/* ===========================================================================
   2 彩色功能键条 —— 用户明确点名的那一条
   一格一个功能，颜色按分类，底色饱和、文字对比度全部过 AA。
   数据由 chrome/registry.js 生成，HTML 里没有写死任何功能名。
   =========================================================================== */
.t-fnbar{
  display:flex;flex-wrap:wrap;gap:1px;background:var(--t-bar);
  padding:2px 3px;border-bottom:1px solid var(--t-line2);
}
.t-fnbar a,.t-fnbar button{
  font-family:var(--t-mono);font-size:10.5px;font-weight:700;letter-spacing:.04em;
  padding:2px 7px;line-height:1.5;white-space:nowrap;max-width:118px;overflow:hidden;
  text-overflow:ellipsis;border:1px solid transparent;
}
.t-fnbar a:hover,.t-fnbar button:hover{border-color:#fff;filter:brightness(1.14)}
.t-fnbar a.draft::after{content:"·";margin-left:4px;opacity:.75}
.t-fnbar .gap{flex:0 0 7px}
.t-fnbar .tools{margin-left:auto;display:flex;gap:1px;align-items:center}
.t-fnbar .wrench{
  background:none;color:var(--t-dim);font-size:12px;padding:2px 7px;border:1px solid transparent;
}
.t-fnbar .wrench:hover{color:var(--t-ink);border-color:var(--t-line2);filter:none}

/* ===========================================================================
   3 面包屑：历史箭头 / 标的 / 功能 / 相关功能菜单
   =========================================================================== */
.t-crumb{
  display:flex;align-items:center;gap:0;background:var(--t-crumb);
  border-bottom:1px solid var(--t-line2);min-height:27px;padding:0 6px;
}
.t-crumb .nav{display:flex;gap:2px;padding-right:8px;border-right:1px solid var(--t-line2);margin-right:9px}
.t-crumb .nav button{color:var(--t-dim);padding:0 5px;font-size:14px;line-height:1}
.t-crumb .nav button:hover{color:var(--t-ink)}
.t-crumb .fld{
  display:flex;align-items:baseline;gap:6px;padding:2px 8px;margin-right:6px;
  border:1px solid transparent;
}
.t-crumb .fld:hover{border-color:var(--t-line2);background:#191919}
.t-crumb .fld b{font-size:13px;color:var(--t-ink);font-weight:600}
.t-crumb .fld i{font-style:normal;font-size:11.5px;color:var(--t-dim)}
.t-crumb .fld u{text-decoration:none;color:var(--t-dim);font-size:9px}
.t-crumb .rel{color:var(--t-ink2);font-size:12.5px;padding:2px 8px;border:1px solid transparent}
.t-crumb .rel:hover{border-color:var(--t-line2);background:#191919}
.t-crumb .right{margin-left:auto;display:flex;align-items:center;gap:3px}
.t-crumb .right button{color:var(--t-ink2);font-size:12px;padding:2px 8px}
.t-crumb .right button:hover{color:#fff}
.t-crumb .help{
  background:var(--t-cmd-line);color:#1a1400;font-family:var(--t-mono);font-weight:700;
  font-size:11px;padding:1px 7px;
}

/* ===========================================================================
   4 报价头：只在单证券页出现
   =========================================================================== */
.t-quote{background:var(--t-quote);padding:6px 12px 7px;border-bottom:1px solid var(--t-line2)}
.t-quote .l1{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.t-quote .tk{font-family:var(--t-mono);font-size:21px;font-weight:700;letter-spacing:.01em}
.t-quote .nm{font-size:13px;color:var(--t-ink2)}
.t-quote .cur{font-size:14px;color:var(--t-dim)}
.t-quote .px{font-family:var(--t-mono);font-size:21px;font-weight:700}
.t-quote .px .ar{font-size:15px;margin-right:2px}
.t-quote .chg{font-family:var(--t-mono);font-size:15px}
.t-quote .grp{display:flex;flex-direction:column;gap:1px;font-family:var(--t-mono);font-size:12px}
.t-quote .grp em{font-style:normal;color:var(--t-faint);font-size:9px;letter-spacing:.12em}
.t-quote .grp b{font-weight:400;color:var(--t-ink2)}
.t-quote .l2{
  display:flex;gap:16px;flex-wrap:wrap;margin-top:4px;font-family:var(--t-mono);
  font-size:10px;color:var(--t-faint);letter-spacing:.05em;
}
.t-quote .l2 b{color:var(--t-ink2);font-weight:400}
.t-quote .up{color:var(--t-up)} .t-quote .dn{color:var(--t-dn)} .t-quote .fl{color:var(--t-dim)}
.t-quote .na{color:var(--t-faint)}

/* ===========================================================================
   5 命令行：琥珀键 + 暗红条 + 页码，专业终端最标志性的一行
   =========================================================================== */
.t-cmdbar{
  display:flex;align-items:stretch;background:var(--t-cmd-bg);min-height:30px;
  border-bottom:1px solid #000;
}
.t-cmdbar .key{
  display:flex;align-items:center;background:var(--t-cmd-key);border:1px solid var(--t-cmd-line);
  margin:3px 0 3px 4px;padding:0 10px;font-family:var(--t-mono);font-size:13px;
  color:var(--t-cmd-line);font-weight:700;white-space:nowrap;max-width:44vw;overflow:hidden;
  text-overflow:ellipsis;
}
.t-cmdbar .act{
  display:flex;align-items:center;gap:5px;padding:0 14px;color:#fff;font-size:13.5px;
  border-right:1px solid rgba(255,255,255,.14);
}
.t-cmdbar .act:first-of-type{border-left:1px solid rgba(255,255,255,.14);margin-left:8px}
.t-cmdbar .act:hover{background:var(--t-cmd-bg2)}
.t-cmdbar .act u{text-decoration:none;font-size:9px;opacity:.8}
.t-cmdbar .pg{
  margin-left:auto;display:flex;align-items:center;gap:10px;padding:0 12px;
  font-family:var(--t-mono);font-size:12px;color:#fff;
}
.t-cmdbar .pg button{color:#fff;padding:0 5px;font-size:13px;opacity:.8}
.t-cmdbar .pg button:hover{opacity:1}
.t-cmdbar .pg .ttl{font-family:var(--t-sans);font-size:14px}

/* 命令行输入：一整行琥珀框，`)` 提示符用蓝色，和专业终端一致 */
.t-entry{display:flex;align-items:center;background:#000;padding:3px 4px;border-bottom:1px solid var(--t-line2)}
.t-entry .caret{
  background:var(--t-sel);color:#fff;font-family:var(--t-mono);font-size:13px;font-weight:700;
  padding:2px 7px;flex:0 0 auto;
}
.t-entry input{
  flex:1 1 auto;min-width:0;background:#000;border:1px solid var(--t-sel);border-left:0;
  color:var(--t-cmd-line);font-family:var(--t-mono);font-size:12.5px;padding:2px 8px;
}
.t-entry input::placeholder{color:#5a5a5a}
.t-entry .go{
  font-family:var(--t-mono);font-size:10.5px;font-weight:700;background:var(--t-cmd-line);
  color:#1a1400;padding:3px 11px;margin-left:3px;flex:0 0 auto;
}
.t-entry .hint{font-family:var(--t-mono);font-size:9.5px;color:var(--t-faint);padding:0 8px;flex:0 0 auto}

/* ===========================================================================
   6 编号动作键：94) 95) 96) —— 编号是可键入的，不是装饰
   本站没有下单通道，所以这里不做买卖键，只做真实可用的动作。
   =========================================================================== */
.t-acts{display:flex;justify-content:center;gap:7px;padding:7px 10px;background:#000;flex-wrap:wrap}
.t-acts button{
  display:flex;align-items:center;gap:6px;padding:3px 14px;font-size:13px;
  border:1px solid var(--t-line2);background:#151515;color:var(--t-ink2);
}
.t-acts button i{font-style:normal;font-family:var(--t-mono);font-size:10.5px;color:var(--t-amber)}
.t-acts button:hover{border-color:var(--t-dim);color:#fff}
.t-acts button.ok{background:#0d3f26;border-color:#1d7a3c;color:#dff5e8}
.t-acts button.ok i{color:#8ce0b0}
.t-acts button.info{background:#10304f;border-color:#1d5fa6;color:#dceaf8}
.t-acts button.info i{color:#8fc4f0}
.t-acts .noorder{
  font-family:var(--t-mono);font-size:9.5px;color:var(--t-faint);align-self:center;
  padding-left:6px;max-width:40ch;line-height:1.5;
}

/* ===========================================================================
   7 编号菜单（左栏）：11) 12) 13)… 未接入的置灰且不可点
   =========================================================================== */
.t-menu{background:#101010;border:1px solid var(--t-line2);align-self:start;min-width:0}
.t-menu .hd{
  padding:4px 10px;font-size:12px;font-weight:600;color:var(--t-ink);
  border-bottom:1px solid var(--t-line2);background:#161616;
}
.t-menu a,.t-menu .off{
  display:flex;align-items:baseline;gap:8px;padding:3px 10px;font-size:12.5px;color:var(--t-ink2);
}
.t-menu a i,.t-menu .off i{
  font-style:normal;font-family:var(--t-mono);font-size:10.5px;color:var(--t-amber);
  flex:0 0 22px;text-align:right;
}
.t-menu a:hover{background:#1c1c1c;color:#fff}
.t-menu a.on{background:var(--t-sel);color:#fff}
.t-menu a.on i{color:#fff}
.t-menu .off{color:var(--t-faint)}
.t-menu .off i{color:#6b5426}
.t-menu .sep{height:1px;background:var(--t-line2);margin:4px 0}
.t-menu .two{display:flex;flex-direction:column;padding:0 0 5px}
.t-menu .two a{display:flex;align-items:baseline;gap:9px;padding:2px 10px}
.t-menu .two a:hover{background:#1c1c1c}
.t-menu .two a .mn{
  font-family:var(--t-mono);font-size:10px;font-weight:700;color:#0a0a0a;
  padding:0 4px;flex:0 0 40px;text-align:center;
}
.t-menu .two a .lb{
  font-size:12px;color:var(--t-ink2);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.t-menu .two a:hover .lb{color:#fff}

/* ===========================================================================
   8 字段区：分区色带 + 琥珀标签 / 白值
   =========================================================================== */
.t-block{border:1px solid var(--t-line2);background:#0d0d0d;min-width:0}
.t-block > h2{
  background:var(--t-band);color:#fff;font-size:13px;font-weight:600;padding:3px 10px;
  letter-spacing:.01em;
}
.t-block > h2 em{font-style:normal;font-family:var(--t-mono);font-size:9.5px;color:#d8d8d8;margin-left:8px}
.t-fields{display:grid;grid-template-columns:auto 1fr;gap:0;padding:3px 0 5px}
.t-fields.two{grid-template-columns:auto 1fr auto 1fr}
.t-fields dt{
  font-family:var(--t-sans);font-size:12.5px;color:var(--t-amber);padding:2px 10px 2px 10px;
  white-space:nowrap;
}
.t-fields dd{
  font-size:12.5px;color:var(--t-ink);padding:2px 14px 2px 0;min-width:0;
  overflow-wrap:anywhere;
}
.t-fields dd.mono{font-family:var(--t-mono);font-size:12px}
.t-fields dd.box{border:1px dotted var(--t-line2);padding:1px 6px;display:inline-block;margin:1px 0}
.t-fields dd.na{color:var(--t-faint);font-size:11.5px}
.t-fields dd .u{color:var(--t-dim);font-size:10.5px;margin-left:5px}

/* ===========================================================================
   9 表格：全终端只有一套 —— .t-tbl（定义见上面「数据表」一节，带双密度与四级字号）。
   外壳原先另有一套 .t-tbl，合并时整块删除，只把它独有的几个变体并进来。
   =========================================================================== */
.t-tbl td.t-rownum{font-family:var(--t-sans);color:var(--t-ink);text-align:left}
.t-tbl td.t-rownum i{font-style:normal;font-family:var(--t-mono);font-size:10.5px;color:var(--t-amber);margin-right:7px}
.t-tbl td.t-rownum .sub{color:var(--t-dim);font-size:10.5px;margin-left:6px}
.t-tbl td.t-sum{
  font-family:var(--t-sans);color:var(--t-amber);text-align:left;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;max-width:360px;
}
.t-tbl .t-bar{display:block;height:9px;background:var(--t-sel);min-width:1px}
.t-tbl td.t-barc{width:120px;padding-right:10px}
.t-tbl svg.t-spk{display:block;width:52px;height:15px}
.t-tbl th[data-k]{cursor:pointer}
.t-tbl th[data-k]:hover{color:var(--t-cmd-line)}
.t-scroll-x{overflow:auto}

/* 子标签行：蓝色激活（专业终端惯例） */
.t-subtabs{display:flex;gap:2px;background:#0a0a0a;padding:3px 4px 0;flex-wrap:wrap;align-items:center}
.t-subtabs button{
  padding:2px 12px;font-size:12px;background:#262626;color:var(--t-ink2);
  border:1px solid #000;border-bottom:0;
}
.t-subtabs button.on{background:var(--t-sel);color:#fff}
.t-subtabs button:hover{color:#fff}
.t-subtabs .lbl{font-size:11.5px;color:var(--t-dim);padding:0 6px 0 12px}
.t-subtabs .pick{
  background:var(--t-cmd-key);border:1px solid var(--t-cmd-line);color:var(--t-cmd-line);
  font-family:var(--t-mono);font-size:11px;padding:2px 8px;
}
.t-subtabs .sp{flex:1 1 auto}
.t-tabs2{display:flex;gap:2px;background:#141414;padding:3px 4px;flex-wrap:wrap;border-bottom:1px solid var(--t-line2)}
.t-tabs2 button{padding:2px 11px;font-size:11.5px;background:#1e1e1e;color:var(--t-dim);border:1px solid #000}
.t-tabs2 button.on{background:#3a3a3a;color:#fff}
.t-tabs2 button:hover{color:var(--t-ink)}

/* 橙色筛选条（对标专业终端表头下那一条） */
.t-filter{display:flex;gap:1px;background:var(--t-cmd-line);padding:1px;align-items:stretch}
.t-filter input,.t-filter select{
  background:#1a1400;border:0;color:var(--t-cmd-line);font-family:var(--t-mono);font-size:11px;
  padding:2px 7px;min-width:0;
}
.t-filter input{flex:1 1 auto}

/* ===========================================================================
   10 面板（多功能监控页）
   =========================================================================== */
.t-panel{border:1px solid var(--t-line2);background:#0d0d0d;display:flex;flex-direction:column;min-width:0}
.t-panel > header{
  display:flex;align-items:center;gap:8px;background:var(--t-band);padding:2px 8px;min-height:20px;
}
.t-panel > header h3{
  font-family:var(--t-mono);font-size:10px;font-weight:700;letter-spacing:.12em;color:#fff;
  text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
}
.t-panel > header .mn{
  font-family:var(--t-mono);font-size:9px;font-weight:700;padding:0 5px;flex:0 0 auto;
}
.t-panel > header .sub{font-family:var(--t-mono);font-size:9px;color:#dcdcdc;margin-left:auto;flex:0 0 auto}
.t-panel > .bd{flex:1 1 auto;min-height:0;overflow:auto}
.t-panel > footer{
  font-family:var(--t-mono);font-size:9px;color:var(--t-faint);padding:2px 8px;
  border-top:1px solid var(--t-line);line-height:1.5;
}

/* ===========================================================================
   11 图（GP 式价格走势）
   =========================================================================== */

/* ===========================================================================
   12 底部建议功能条 + 草案横幅 + 说明块
   =========================================================================== */
.t-sugg{
  margin-top:auto;
  display:flex;align-items:stretch;gap:0;background:#101010;border-top:1px solid var(--t-line2);
  margin-top:10px;flex-wrap:wrap;
}
.t-sugg .lb{
  font-family:var(--t-mono);font-size:9.5px;color:var(--t-faint);padding:5px 12px;
  letter-spacing:.12em;text-transform:uppercase;border-right:1px solid var(--t-line2);
  display:flex;align-items:center;flex:0 0 auto;
}
.t-sugg a{
  display:flex;align-items:baseline;gap:8px;padding:5px 14px;font-size:12px;color:var(--t-ink2);
  border-right:1px solid var(--t-line2);min-width:0;
}
.t-sugg a b{font-family:var(--t-mono);font-size:10.5px;font-weight:700;flex:0 0 auto;padding:0 4px}
.t-sugg a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.t-sugg a:hover{background:#191919;color:#fff}



/* 弹层：相关功能菜单 / 功能目录 / 帮助 */
.t-pop{
  position:fixed;z-index:60;background:#0d0d0d;border:1px solid var(--t-line2);
  box-shadow:none;max-height:78vh;overflow:auto;min-width:260px;max-width:min(96vw,900px);
}
.t-pop > h3{
  background:var(--t-band);color:#fff;font-size:12.5px;font-weight:600;padding:4px 10px;
  display:flex;align-items:center;gap:10px;position:sticky;top:0;
}
.t-pop > h3 button{margin-left:auto;color:#ddd;font-family:var(--t-mono);font-size:12px}
.t-pop .bd{padding:6px 0 8px}
.t-pop .grp{
  font-family:var(--t-mono);font-size:9.5px;letter-spacing:.12em;color:var(--t-faint);
  padding:6px 10px 2px;text-transform:uppercase;
}
.t-pop .row{
  display:grid;grid-template-columns:54px 1fr;gap:0 10px;padding:2px 10px;align-items:baseline;
}
.t-pop a.row:hover{background:#1a1a1a}
.t-pop .row .mn{font-family:var(--t-mono);font-size:10.5px;font-weight:700;padding:1px 5px;text-align:center}
.t-pop .row .tx{font-size:12px;color:var(--t-ink2);min-width:0}
.t-pop .row .tx em{font-style:normal;color:var(--t-faint);font-size:10.5px;margin-left:7px}
.t-pop .row .tx p{font-family:var(--t-mono);font-size:9.5px;color:var(--t-faint);line-height:1.55;margin-top:1px}
.t-pop .row.dead .mn{opacity:.45}
.t-pop .row.dead .tx{color:var(--t-faint)}
.t-pop kbd{
  font-family:var(--t-mono);font-size:10px;background:#1e1e1e;border:1px solid var(--t-line2);
  padding:0 5px;color:var(--t-ink2);
}
.t-backdrop{position:fixed;inset:0;z-index:55;background:rgba(0,0,0,.55)}

/* 命中高亮（命令行定位到的窗口/行） */
.t-hit{outline:1px solid var(--t-cmd-line);outline-offset:-1px}
tr.t-hit td{background:#2a2000 !important}

/* ===========================================================================
   13 响应式：桌面优先 2560 / 1920，向下适配笔记本与窄屏
   =========================================================================== */
@media (max-width:1400px){
  .t-tabs .tab{max-width:140px}
  .t-fields.two{grid-template-columns:auto 1fr}
}
@media (max-width:1100px){
  .t-quote .tk{font-size:18px} .t-quote .px{font-size:18px}
  .t-tbl td.sum{max-width:220px}
}
@media (max-width:760px){
  body{font-size:12.5px}
  .t-tabs{overflow-x:auto}
  .t-tabs .tab{max-width:126px;flex:0 0 auto}
  .t-tabs .sysr{position:sticky;right:0;background:var(--t-chrome)}
  .t-fnbar{max-height:64px;overflow-y:auto}
  .t-crumb{flex-wrap:wrap;padding:3px 6px;gap:2px}
  .t-crumb .right{margin-left:0;flex-basis:100%;flex-wrap:wrap;row-gap:2px}
  /* 窄屏：右侧那组（时钟、功能目录、帮助）允许折行，否则一长串顶出视口 */
  .t-crumb .right > *{min-width:0}
  .t-crumb .right [data-clocks]{white-space:normal;line-height:1.7}
  .t-cmdbar{flex-wrap:wrap}
  .t-cmdbar .key{max-width:100%;flex:1 1 auto}
  .t-cmdbar .pg{margin-left:0;flex-basis:100%;border-top:1px solid rgba(255,255,255,.12)}
  .t-cmdbar .act:first-of-type{margin-left:0}
  .t-acts{justify-content:flex-start}
  .t-acts .noorder{max-width:100%;flex-basis:100%;padding-left:0}
  .t-tbl td.nm{max-width:150px;white-space:normal;overflow-wrap:anywhere}
  .t-tbl td.sum{max-width:none;white-space:normal;overflow-wrap:anywhere}
  .t-fields{grid-template-columns:1fr}
  .t-fields dt{padding-bottom:0;font-size:11.5px}
  .t-fields dd{padding-left:10px;padding-bottom:3px}
  .t-pop{left:2vw !important;right:2vw;min-width:0}
}

/* 本外壳不含任何过渡与动画；下面是向后约束 */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important;
  }
}
