/* Public source: user-provided exchange prototype; existing theme-global.css semantic tokens. */
#page-quantum-exchange { color: var(--th-text); font-size: 14px; letter-spacing: 0; }
#page-quantum-exchange .exchange-workspace-tabs {
  display: flex; align-items: stretch; gap: 8px; overflow-x: auto;
  border-bottom: 1px solid var(--th-border); padding-bottom: 0; scrollbar-width: thin;
}
.exchange-workspace-tabs > button {
  display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0;
  padding: 12px 16px; border-bottom: 2px solid transparent;
  font-size: 14px; font-weight: 500; color: var(--th-text-secondary); background: transparent;
}
.exchange-workspace-tabs > button[aria-selected="true"] { color: var(--th-accent); border-bottom-color: var(--th-accent); }
.exchange-workspace-tabs > button:hover { background: var(--th-surface-subtle); }
.exchange-workspace-tabs svg, .exchange-command svg, .exchange-icon-button svg { width: 18px; height: 18px; flex-shrink: 0; }
.exchange-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid var(--th-border); border-radius: 6px; color: var(--th-text-secondary); background: var(--th-bg-2); flex-shrink: 0; }
.exchange-icon-button:hover { color: var(--th-text); background: var(--th-card-hover); }
.exchange-command { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 8px 16px; border-radius: 6px; font-size: 14px; font-weight: 600; }
#page-quantum-exchange button:focus-visible, #page-quantum-exchange input:focus-visible,
#page-quantum-exchange select:focus-visible, #page-quantum-exchange textarea:focus-visible { outline: 2px solid var(--th-accent); outline-offset: 3px; }
#page-quantum-exchange button:disabled { opacity: .55; cursor: not-allowed; }
#page-quantum-exchange .hidden, .exchange-workspace-tabs > .hidden { display: none !important; }
/* hidden **属性** 与 .hidden 类都要能压住组件自己的 display: `[hidden]` 的 UA 样式是
   display:none, 但任何作者样式里的 display 都会覆盖它 ——
   `#page-quantum-exchange .mkt-filter-chips{display:flex}` 正是如此, 于是"有筛选条件才显示"
   的筛选条在没有任何筛选时也常驻显示。 */
#page-quantum-exchange [hidden] { display: none !important; }

.exchange-market-layout { display: grid; grid-template-columns: minmax(0, 1fr) 224px; gap: 28px; align-items: start; }
.exchange-market-results { grid-column: 1; grid-row: 1; min-width: 0; display: grid; gap: 16px; }
.exchange-market-filters { grid-column: 2; grid-row: 1; padding-left: 24px; border-left: 1px solid var(--th-border); }
.exchange-market-filters > summary { display: none; }
.exchange-filter-content { display: grid; gap: 24px; }
.exchange-market-categories { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding-bottom: 12px; border-bottom: 1px solid var(--th-border); }
#page-quantum-exchange .exchange-market-categories .mkt-rail-item { width: auto; min-width: 104px; gap: 16px; }
#page-quantum-exchange .mkt-input { height: 40px; font-size: 13px; border-radius: 10px; background: var(--th-input-bg); color: var(--th-text); border: 1px solid var(--th-border); }
#page-quantum-exchange .mkt-rail-title { font-size: 13px; font-weight: 600; letter-spacing: 0; color: var(--th-text); margin-bottom: 12px; }
#page-quantum-exchange .mkt-rail-item { min-height: 40px; border-radius: 6px; font-size: 13px; color: var(--th-text-secondary); }
#page-quantum-exchange .mkt-rail-item.on { color: var(--th-accent); border-color: var(--th-border); background: var(--th-surface-muted); }
#page-quantum-exchange .mkt-rail-count { color: var(--th-text-secondary); font-size: 12px; }
#page-quantum-exchange .mkt-grid { display: grid; align-items: stretch; grid-template-columns: repeat(auto-fill, minmax(min(290px, 100%), 1fr)); gap: 16px; }
#page-quantum-exchange .mkt-seller { max-width: 100%; overflow-wrap: anywhere; }
#page-quantum-exchange .mkt-rating svg { fill: currentColor; }

/* 交易市场之外的页签 (我的号池/我的购买/卖家中心/运营管理) 与店面统一为同一套卡片语言:
   此前把它们"剥成"无边框区域, 与新的店面卡片割裂, 整页看起来像两个产品。
   现在统一半径/描边/底色/内边距, 并把段落头部做成统一的 section header。 */
#page-quantum-exchange :is(#exchange-view-pool, #exchange-view-subs, #exchange-view-admin, #exchange-view-seller) .glass-panel {
  padding: 18px; border: 1px solid var(--th-border); border-radius: 14px;
  background: var(--th-card); box-shadow: none; backdrop-filter: none;
}
#page-quantum-exchange :is(#exchange-view-pool, #exchange-view-subs, #exchange-view-admin, #exchange-view-seller) .glass-panel:hover {
  background: var(--th-card); border-color: var(--th-border); box-shadow: none;
}
#page-quantum-exchange :is(#exchange-view-pool, #exchange-view-subs, #exchange-view-admin, #exchange-view-seller) .glass-panel > div:first-child {
  padding-bottom: 12px; border-bottom: 1px solid var(--th-border);
}
#page-quantum-exchange :is(#exchange-view-pool, #exchange-view-subs, #exchange-view-admin, #exchange-view-seller) [class*="text-[10"],
#page-quantum-exchange :is(#exchange-view-pool, #exchange-view-subs, #exchange-view-admin, #exchange-view-seller) [class*="text-[11"] { font-size: 13px; }
/* 卖家指标: 与店面卡片一致的统计块 (不再是无底色裸数字)。 */
.exchange-seller-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap: 14px; }
#page-quantum-exchange .exchange-seller-metrics .holo-stat {
  padding: 18px; border: 1px solid var(--th-border); border-radius: 14px; background: var(--th-card);
}
.exchange-wallet-value { color: var(--th-text); font-size: 28px; line-height: 1.4; font-weight: 600; font-variant-numeric: tabular-nums; }
.marketplace-purchase-dialog { width: min(480px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 24px; overflow-y: auto; border: 1px solid var(--th-border); border-radius: 8px; background: var(--th-bg); color: var(--th-text); box-shadow: 0 16px 60px #0006; }
.marketplace-purchase-dialog::backdrop { background: #0009; }
.marketplace-purchase-dialog form { display: grid; gap: 18px; }
.marketplace-purchase-dialog h2 { font-size: 20px; font-weight: 600; }
.marketplace-purchase-dialog p { overflow-wrap: anywhere; }
.marketplace-purchase-dialog label { display: grid; gap: 8px; font-size: 14px; }
.marketplace-purchase-dialog [hidden] { display: none; }
.marketplace-purchase-dialog select { width: 100%; min-height: 44px; padding: 8px; color: var(--th-text); background: var(--th-input-bg); border: 1px solid var(--th-border); border-radius: 6px; }
.marketplace-purchase-dialog .marketplace-purchase-amount { font-size: 28px; font-weight: 600; font-variant-numeric: tabular-nums; }
.marketplace-purchase-dialog .marketplace-usage-prices { font-size: 14px; font-weight: 400; white-space: pre-line; }
.marketplace-purchase-dialog footer { display: flex; justify-content: flex-end; gap: 12px; border-top: 1px solid var(--th-border); padding-top: 18px; }
.marketplace-purchase-dialog :is(select, button):focus-visible { outline: 2px solid var(--th-accent); outline-offset: 3px; }
.marketplace-points-history { padding: 16px 0; border-bottom: 1px solid var(--th-border); }
.marketplace-points-history summary { cursor: pointer; color: var(--th-text); font-size: 14px; }
.marketplace-points-table-wrap { overflow-x: auto; margin-top: 16px; }
.marketplace-points-table-wrap table { width: 100%; font-size: 13px; font-variant-numeric: tabular-nums; }
.marketplace-points-table-wrap :is(th, td) { padding: 10px 12px; text-align: left; white-space: nowrap; border-bottom: 1px solid var(--th-border); }
.marketplace-points-table-wrap th { font-weight: 500; color: var(--th-text-secondary); }
.exchange-seller-list { border-top: 1px solid var(--th-border); }
.exchange-seller-row { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--th-border); }
.exchange-seller-row h3 { font-size: 15px; font-weight: 600; overflow-wrap: anywhere; }
.exchange-seller-row p { font-size: 13px; color: var(--th-text-secondary); margin-top: 8px; }
.exchange-seller-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.exchange-empty { padding: 48px 20px; display: grid; justify-items: center; gap: 16px; color: var(--th-text-secondary); text-align: center; }
.exchange-empty > svg { width: 32px; height: 32px; color: var(--th-text-muted); }
.exchange-empty h3 { color: var(--th-text); font-size: 16px; font-weight: 600; }

.exchange-editor-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; flex-wrap: wrap; }
.exchange-editor-heading h2 { font-size: 20px; font-weight: 600; }
.exchange-editor-heading > span { margin-left: auto; font-size: 13px; color: var(--th-text-secondary); }
.exchange-editor-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; align-items: start; gap: 36px; }
#market-publish-fields { min-width: 0; border: 0; display: grid; gap: 32px; }
.exchange-form-section { padding: 0 0 24px; border-bottom: 1px solid var(--th-border); }
.exchange-form-section h3, .exchange-publish-summary h3 { font-size: 16px; font-weight: 600; margin-bottom: 20px; }
.exchange-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.exchange-field-wide { grid-column: 1 / -1; }
#market-publish-form label { display: grid; gap: 8px; color: var(--th-text-secondary); font-size: 13px; min-width: 0; }
#market-publish-form input, #market-publish-form select, #market-publish-form textarea {
  width: 100%; min-width: 0; min-height: 44px; border: 1px solid var(--th-border); border-radius: 6px;
  padding: 10px 12px; background: var(--th-input-bg); color: var(--th-text); font: inherit; font-size: 14px;
}
#market-publish-form textarea { resize: vertical; }
#market-publish-form input::placeholder, #market-publish-form textarea::placeholder { color: var(--th-text-muted); }
.exchange-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.exchange-section-heading h3 { margin-bottom: 0; }
.exchange-field-note { margin: 12px 0 20px; font-size: 13px; color: var(--th-text-secondary); }
.exchange-model-price-row { display: grid; grid-template-columns: minmax(0, 1fr) 120px 120px 40px; align-items: end; gap: 12px; margin-top: 16px; }
.exchange-publish-summary { padding-left: 24px; border-left: 1px solid var(--th-border); }
.exchange-publish-summary dl { display: grid; gap: 24px; }
.exchange-publish-summary dt { font-size: 13px; color: var(--th-text-secondary); margin-bottom: 8px; }
.exchange-publish-summary dd { font-size: 14px; overflow-wrap: anywhere; }
.exchange-publish-summary button { margin-top: 20px; }
.exchange-editor-footer { display: flex; justify-content: flex-end; gap: 12px; padding: 20px 0; margin-top: 16px; border-top: 1px solid var(--th-border); }
.exchange-message:not(:empty) { margin-bottom: 20px; padding: 12px 16px; background: var(--th-surface-subtle); border: 1px solid var(--th-border); border-radius: 6px; font-size: 14px; color: var(--th-text-secondary); }
.exchange-message[data-state="error"] { color: var(--th-danger); }

@media (max-width: 1200px) {
  .exchange-editor-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .exchange-publish-summary { padding: 0; border-left: 0; }
  .exchange-publish-summary dl { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .exchange-market-layout { grid-template-columns: minmax(0, 1fr); }
  .exchange-market-results { grid-row: 2; }
  .exchange-market-filters { grid-column: 1; grid-row: 1; padding: 0; border-left: 0; border-bottom: 1px solid var(--th-border); }
  .exchange-market-filters > summary { display: flex; align-items: center; gap: 8px; min-height: 44px; color: var(--th-text-secondary); font-size: 14px; cursor: pointer; }
  .exchange-market-filters > summary svg { width: 16px; height: 16px; }
  .exchange-market-filters > summary svg:last-child { margin-left: auto; }
  .exchange-filter-content { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding: 16px 0 24px; }
}
@media (max-width: 600px) {
  .exchange-workspace-tabs > button { padding: 12px; }
  .exchange-workspace-tabs > button > svg { display: none; }
  .exchange-form-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .exchange-model-price-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 40px; gap: 12px; border-bottom: 1px solid var(--th-border); padding-bottom: 16px; }
  .exchange-model-field { grid-column: 1 / -1; }
  .exchange-publish-summary dl { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .exchange-seller-metrics { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .exchange-icon-button, .exchange-command { min-height: 44px; }
  #page-quantum-exchange .mkt-grid { grid-template-columns: minmax(0, 1fr); }
  #page-quantum-exchange .mkt-card { padding: 16px; }
  #page-quantum-exchange .mkt-search { flex-basis: 100%; }
  #market-publish-form input, #market-publish-form select, #market-publish-form textarea { font-size: 16px; }
}

/* ============================================================================
   商城店面组件层 (storefront)
   ----------------------------------------------------------------------------
   此前只有 34 条 `#page-quantum-exchange .mkt-*` 的部分覆盖, 而**基础组件类
   (.mkt-head/.mkt-icon/.mkt-titlebox/.mkt-stats/.mkt-chips/.mkt-foot/.mkt-price …)
   根本没有定义** —— 卡片因此在页面上退化成堆叠的裸文本, 这是"交易所很丑"的真正
   根因, 不是配色问题。这里补齐完整的商城卡片 / 工具栏 / 筛选栏 / 分类条 组件。
   全部走主题语义 token, 因此跟随明暗与主题定制自动适配。
   ============================================================================ */

/* ---- 工具栏: 搜索 + 排序 + 计数 ---- */
#page-quantum-exchange .mkt-toolbar {
  display: flex; align-items: center; flex-wrap: wrap; gap: 10px;
  padding: 12px 14px; border: 1px solid var(--th-border); border-radius: 12px;
  background: var(--th-surface-subtle);
}
#page-quantum-exchange .mkt-search {
  display: flex; align-items: center; gap: 8px; flex: 1 1 240px;
  padding: 0 12px; border: 1px solid var(--th-border); border-radius: 10px; background: var(--th-input-bg, var(--th-bg-2));
}
#page-quantum-exchange .mkt-search input { flex: 1; min-width: 0; border: 0; background: transparent; color: var(--th-text); outline: none; padding: 10px 0; }
#page-quantum-exchange .mkt-sort {
  height: 42px; padding: 0 10px; border: 1px solid var(--th-border); border-radius: 10px;
  background: var(--th-input-bg, var(--th-bg-2)); color: var(--th-text);
}
#page-quantum-exchange .mkt-count-label { margin-left: auto; color: var(--th-text-secondary); font-size: 12px; white-space: nowrap; }

/* ---- 分类条 + 已选筛选 chips ---- */
#page-quantum-exchange .mkt-filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
#page-quantum-exchange .mkt-filter-chip {
  display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 4px 10px;
  border: 1px solid var(--th-border); border-radius: 999px; background: var(--th-surface-subtle);
  color: var(--th-text-secondary); font-size: 12px;
}
#page-quantum-exchange .mkt-filter-chip button { color: var(--th-text-muted); }
#page-quantum-exchange .mkt-filter-chip button:hover { color: var(--th-danger, #fb7185); }

/* ---- 商品卡片 ---- */
#page-quantum-exchange .mkt-card {
  position: relative; display: flex; flex-direction: column; gap: 14px;
  padding: 18px; border: 1px solid var(--th-border); border-radius: 14px;
  background: var(--th-card); color: var(--th-text);
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
#page-quantum-exchange .mkt-card:hover {
  transform: translateY(-2px); border-color: color-mix(in srgb, var(--th-accent) 45%, var(--th-border));
  box-shadow: 0 14px 34px rgba(0, 0, 0, .28);
}

/* 卡头: 图标块 + 标题 + 平台标签 */
#page-quantum-exchange .mkt-head { display: flex; align-items: flex-start; gap: 12px; }
#page-quantum-exchange .mkt-icon {
  position: relative; display: grid; place-items: center; flex-shrink: 0;
  width: 46px; height: 46px; border-radius: 12px;
  color: var(--th-accent); background: color-mix(in srgb, var(--th-accent) 14%, transparent);
}
#page-quantum-exchange .mkt-icon svg { width: 22px; height: 22px; }
#page-quantum-exchange .mkt-icon .mkt-count {
  position: absolute; right: -5px; bottom: -5px; min-width: 18px; padding: 0 4px;
  border-radius: 999px; background: var(--th-accent); color: var(--th-bg);
  font-size: 10px; font-weight: 800; line-height: 18px; text-align: center;
}
#page-quantum-exchange .mkt-titlebox { flex: 1; min-width: 0; display: grid; gap: 4px; }
#page-quantum-exchange .mkt-name { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.4;
  /* 长商品名必须换行而不是被裁切 (320px 窄屏尤其明显; 浏览器测试会检出 scrollWidth > clientWidth)。 */
  white-space: normal; overflow-wrap: anywhere; }
#page-quantum-exchange .mkt-sub { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; font-size: 12px; color: var(--th-text-secondary); }
#page-quantum-exchange .mkt-dot { opacity: .5; }
#page-quantum-exchange .mkt-type {
  flex-shrink: 0; padding: 3px 9px; border: 1px solid var(--th-border); border-radius: 999px;
  background: var(--th-surface-subtle); color: var(--th-text-secondary); font-size: 11px; white-space: nowrap;
}

#page-quantum-exchange .mkt-desc {
  margin: 0; color: var(--th-text-secondary); font-size: 13px; line-height: 1.6;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
#page-quantum-exchange .mkt-chips { display: flex; flex-wrap: wrap; gap: 6px; }
#page-quantum-exchange .mkt-chip {
  display: inline-block; max-width: 100%; padding: 3px 9px; border: 1px solid var(--th-border);
  border-radius: 6px; background: var(--th-surface-subtle); color: var(--th-text-secondary);
  font-size: 11px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
#page-quantum-exchange .mkt-chip-more { color: var(--th-accent); border-color: color-mix(in srgb, var(--th-accent) 40%, var(--th-border)); }

/* 规格统计: 等宽数字, 分隔线分栏 */
#page-quantum-exchange .mkt-meta {
  display: flex; flex-wrap: wrap; gap: 6px 18px; padding-top: 12px;
  border-top: 1px solid var(--th-border); color: var(--th-text-secondary); font-size: 12px;
}
#page-quantum-exchange .mkt-meta b { color: var(--th-text); font-weight: 700; }

/* 卡脚: 价格区 + 主行动按钮 (始终贴底, 卡片高度不一也不会错位) */
#page-quantum-exchange .mkt-foot {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 12px;
  margin-top: auto; padding-top: 14px; border-top: 1px solid var(--th-border);
}
#page-quantum-exchange .mkt-price { display: grid; gap: 3px; min-width: 0; }
#page-quantum-exchange .mkt-price-label,
#page-quantum-exchange .mkt-price-unit { color: var(--th-text-secondary); font-size: 11px; }
#page-quantum-exchange .mkt-price strong { color: var(--th-text); font-size: 20px; font-weight: 800; letter-spacing: -0.01em; }
#page-quantum-exchange .mkt-price-unit { color: var(--th-text-muted); }
#page-quantum-exchange .mkt-btn { flex-shrink: 0; min-height: 40px; padding: 0 16px; border-radius: 10px; background: var(--th-accent); color: var(--th-bg); font-size: 13px; font-weight: 700; }
#page-quantum-exchange .mkt-btn:hover { filter: brightness(1.06); }

/* 评分：星星对齐, 无评分时高度一致不塌陷 */
#page-quantum-exchange .mkt-rating { display: inline-flex; align-items: center; gap: 2px; min-height: 18px; color: var(--th-warning); }
#page-quantum-exchange .mkt-rating svg { width: 13px; height: 13px; }
#page-quantum-exchange .mkt-rating em { margin-left: 4px; font-style: normal; color: var(--th-text-secondary); font-size: 11px; }

/* 平台主题色: 图标块按平台区分, 让商品列表一眼可扫 */
#page-quantum-exchange .mkt-openai .mkt-icon { color: #2db789; background: rgba(45, 183, 137, .14); }
#page-quantum-exchange .mkt-anthropic .mkt-icon { color: #e08d68; background: rgba(224, 141, 104, .14); }
#page-quantum-exchange .mkt-gemini .mkt-icon { color: #5b9bf8; background: rgba(91, 155, 248, .14); }
#page-quantum-exchange .mkt-cursor .mkt-icon { color: #9aa7ff; background: rgba(154, 167, 255, .14); }
#page-quantum-exchange .mkt-codex .mkt-icon { color: #9aa7ff; background: rgba(154, 167, 255, .14); }

/* 空态 */
#page-quantum-exchange .mkt-empty {
  grid-column: 1 / -1; display: grid; place-items: center; gap: 8px;
  padding: 56px 20px; border: 1px dashed var(--th-border); border-radius: 14px;
  color: var(--th-text-secondary); text-align: center;
}
#page-quantum-exchange .mkt-empty svg { width: 30px; height: 30px; color: var(--th-text-muted); }

@media (max-width: 600px) {
  #page-quantum-exchange .mkt-toolbar { padding: 10px; }
  #page-quantum-exchange .mkt-foot { flex-direction: column; align-items: stretch; }
  #page-quantum-exchange .mkt-btn { width: 100%; }
}

/* 骨架屏: 与真实卡片同尺寸, 避免加载完成时布局跳动。 */
#page-quantum-exchange .mkt-skeleton-card {
  display: flex; flex-direction: column; gap: 12px; padding: 18px;
  border: 1px solid var(--th-border); border-radius: 14px; background: var(--th-card);
}
#page-quantum-exchange .mkt-skeleton-head { display: flex; align-items: center; gap: 12px; }
#page-quantum-exchange .mkt-skeleton-avatar { width: 46px; height: 46px; border-radius: 12px; background: var(--th-surface-muted); flex-shrink: 0; }
#page-quantum-exchange .mkt-skeleton-price { width: 42%; height: 26px; margin-top: 12px; }

/* 规格提示: 有货高亮, 无货淡出; 无评分占位保持行高一致。 */
#page-quantum-exchange .mkt-meta-ok b { color: #34d399; }
#page-quantum-exchange .mkt-rating-none { color: var(--th-text-muted); font-size: 12px; }

/* 标签徽章: 卡片里的 "API 服务 / 账号" 与平台标签共用同一外观 (两个类名都在用)。 */
#page-quantum-exchange .mkt-type,
#page-quantum-exchange .mkt-tier {
  flex-shrink: 0; padding: 3px 9px; border: 1px solid var(--th-border); border-radius: 999px;
  background: var(--th-surface-subtle); color: var(--th-text-secondary);
  font-size: 11px; letter-spacing: 0; white-space: nowrap;
}

/* 筛选栏: 平台项 (色点 + 名称) 与"清空全部"。 */
#page-quantum-exchange .mkt-platform-label { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
#page-quantum-exchange .mkt-platform-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
#page-quantum-exchange .mkt-rail-item { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; padding: 6px 10px; text-align: left; }
#page-quantum-exchange .mkt-filter-clear {
  min-height: 30px; padding: 4px 10px; border: 1px solid var(--th-border); border-radius: 999px;
  background: transparent; color: var(--th-text-muted); font-size: 12px;
}
#page-quantum-exchange .mkt-filter-clear:hover { color: var(--th-text); border-color: var(--th-text-muted); }
