/* Market structure: compact comparisons in the existing report palette. */
.market-widget { display:flex; flex-direction:column; min-width:0; color:var(--ink,#352e2b); font-family:var(--workbench-ui,"Microsoft YaHei",sans-serif); }
.market-widget .mw-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 17px; min-height:57px; flex-shrink:0; }
.market-widget .mw-heading h2 { min-width:0; font-size:20px; line-height:1.4; }
.market-widget .mw-status { flex-shrink:0; padding:3px 7px; border:1px solid #e2d9d3; border-radius:4px; color:#78675d; background:#f7f4f1; font-size:11px; white-space:nowrap; }
.market-widget .mw-status.is-ready { color:#526a4c; border-color:#dce5d7; background:#f1f5ef; }
.market-widget .mw-status.is-partial { color:#88642e; border-color:#ecd9b8; background:#fff7e9; }
.market-widget .mw-toolbar { display:flex; align-items:center; gap:12px; padding:10px 17px; flex-shrink:0; }
.market-widget .mw-toolbar select { flex:1; min-width:0; width:100%; height:32px; border:1px solid var(--line,#e6dcd5); border-radius:5px; background:#fff; color:var(--ink,#352e2b); padding:4px 8px; font-size:12px; }
.market-widget .mw-toolbar button { font-size:12px; flex-shrink:0; }
.market-widget .mw-toolbar :disabled { opacity:.6; cursor:default; }
.market-widget .mw-content { flex:1; min-height:120px; min-width:0; padding:0 17px 13px; overflow:auto; scrollbar-width:thin; scrollbar-color:#cdbbb3 transparent; }
.market-widget .mw-metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(95px,1fr)); gap:8px; padding:10px 0 12px; border-bottom:1px solid #ece4de; }
.market-widget .mw-metric { min-width:0; display:flex; flex-direction:column; gap:5px; }
.market-widget .mw-metric>span { color:#7f6d63; font-size:11px; line-height:1.5; }
.market-widget .mw-metric strong { font-size:23px; line-height:1.35; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.market-widget .mw-metric strong small { font-size:11px; font-weight:400; margin-left:3px; color:#7d6b61; }
.market-widget .mw-metric>small { font-size:10px; color:#8c7b70; }
.market-widget .is-up { color:#963b34; }
.market-widget .is-down { color:#47776f; }
.market-widget .is-neutral { color:#4d4440; }
.market-widget .mw-caption { margin:9px 0; color:#796c64; font-size:11px; line-height:1.65; }
.market-widget .mw-histogram { display:grid; gap:7px; padding:8px 0; }
.market-widget .mw-hist-row { display:grid; grid-template-columns:minmax(74px,1fr) minmax(65px,3fr) 48px; align-items:center; gap:9px; min-height:19px; font-size:11px; }
.market-widget .mw-hist-row>span { color:#74665d; overflow-wrap:anywhere; }
.market-widget .mw-hist-row>i { display:block; height:13px; background:#f1ece7; border-radius:2px; overflow:hidden; }
.market-widget .mw-hist-row b { display:block; height:100%; min-width:0; border-radius:2px; background:#a58b75; }
.market-widget .mw-hist-row b.is-up { background:#a45a51; }
.market-widget .mw-hist-row b.is-down { background:#64897f; }
.market-widget .mw-hist-row>strong { text-align:right; font-size:12px; font-weight:500; font-variant-numeric:tabular-nums; }
.market-widget .mw-chart { display:block; width:100%; height:auto; overflow:visible; max-height:230px; }
.market-widget .mw-chart-unit { font-size:10px; color:#867469; margin:10px 0 0; }
.market-widget .mw-gridline { stroke:#e7dfd8; stroke-dasharray:3 4; }
.market-widget .mw-axis { font-size:12px; fill:#807268; font-variant-numeric:tabular-nums; }
.market-widget .mw-band { fill:#963b3418; }
.market-widget .mw-point { stroke:#fff; stroke-width:1; cursor:crosshair; }
.market-widget .mw-point:hover,.market-widget .mw-point:focus { r:5; stroke:#503b2f; stroke-width:1.5; outline:none; }
.market-widget .mw-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 18px; margin:5px 0; font-size:11px; color:#74655d; }
.market-widget .mw-legend span { display:flex; align-items:center; gap:5px; }
.market-widget .mw-legend i { width:16px; height:3px; display:inline-block; }
.market-widget .mw-legend i.mw-band-key { height:9px; background:#963b3428; }
.market-widget .mw-data { border-top:1px solid #ece4dd; padding-top:8px; margin-top:10px; font-size:11px; color:#816b5d; }
.market-widget summary { cursor:pointer; width:fit-content; }
.market-widget .mw-table-scroll { max-height:240px; overflow:auto; border:1px solid #e8ded6; margin-top:8px; border-radius:4px; scrollbar-width:thin; }
.market-widget table { width:100%; border-collapse:collapse; white-space:nowrap; font-size:11px; }
.market-widget th,.market-widget td { padding:7px 9px; text-align:right; border-bottom:1px solid #eee7df; font-variant-numeric:tabular-nums; }
.market-widget th { position:sticky; top:0; background:#f7f0ea; font-weight:500; color:#755a48; }
.market-widget td:first-child,.market-widget th:first-child { text-align:left; }
.market-widget .mw-style-grid { display:grid; grid-template-columns:64px repeat(3,minmax(0,1fr)); gap:5px; margin:13px 0 8px; }
.market-widget .mw-style-head,.market-widget .mw-style-row,.market-widget .mw-grid-corner { display:flex; align-items:center; justify-content:center; color:#79685d; font-size:11px; text-align:center; min-height:23px; }
.market-widget .mw-grid-corner { font-size:9px; }
.market-widget .mw-style-cell { min-height:64px; display:flex; flex-direction:column; gap:5px; justify-content:center; align-items:center; border:1px solid #ece3dc; border-radius:4px; font-variant-numeric:tabular-nums; }
.market-widget .mw-style-cell strong { font-size:21px; font-weight:600; }
.market-widget .mw-style-cell strong small { font-size:11px; margin-left:2px; font-weight:400; }
.market-widget .mw-style-cell>span { font-size:10px; color:#7a6c63; }
.market-widget .mw-style-cell.is-empty { background:repeating-linear-gradient(135deg,#faf8f5,#faf8f5 5px,#f3eee9 5px,#f3eee9 6px)!important; }
.market-widget .mw-style-cell:focus { outline:2px solid #ad8a74; outline-offset:1px; }
.market-widget .mw-leaders>div { display:grid; grid-template-columns:22px minmax(80px,1fr) 85px 55px 58px; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid #eee7e1; font-size:11px; text-align:right; }
.market-widget .mw-rank { color:#96785e; text-align:left; }
.market-widget .mw-security { text-align:left; min-width:0; overflow-wrap:anywhere; }
.market-widget .mw-security small { display:block; color:#9b8c80; font-size:10px; margin-top:3px; }
.market-widget .mw-leaders strong { font-weight:500; font-variant-numeric:tabular-nums; }
.market-widget .mw-leaders strong small { font-size:10px; color:#9a8578; margin-left:2px; }
.market-widget .mw-footer { flex-shrink:0; padding:10px 17px; border-top:1px solid #e9e0d9; background:#fcfaf8; color:#7f6e63; font-size:11px; line-height:1.6; max-height:30%; overflow:auto; scrollbar-width:thin; }
.market-widget .mw-source { display:flex; flex-wrap:wrap; gap:2px 14px; }
.market-widget .mw-footer details { margin-top:4px; }
.market-widget .mw-footer ul { padding-left:16px; margin:7px 0 0; }
.market-widget .mw-footer li+li { margin-top:4px; }
.market-widget .mw-empty { display:flex; min-height:180px; height:100%; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:10px; color:#8b776b; }
.market-widget .mw-empty>span { font-size:28px; color:#b49b8b; }
.market-widget .mw-empty strong { font-size:13px; font-weight:500; }
.market-widget .mw-empty p { font-size:11px; line-height:1.8; max-width:350px; }
.market-widget .mw-warning { padding:7px 9px; font-size:11px; color:#8b692f; background:#fff7e9; border-left:2px solid #caa05f; margin:6px 0; }
@container (max-width:460px) {
  .market-widget .mw-heading { padding:12px; gap:7px; }
  .market-widget .mw-heading h2 { font-size:18px; }
  .market-widget .mw-status { font-size:10px; }
  .market-widget .mw-toolbar,.market-widget .mw-content,.market-widget .mw-footer { padding-inline:12px; }
  .market-widget .mw-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .market-widget .mw-metric strong { font-size:21px; }
  .market-widget .mw-style-grid { grid-template-columns:48px repeat(3,minmax(0,1fr)); gap:4px; }
  .market-widget .mw-style-cell strong { font-size:18px; }
  .market-widget .mw-style-cell { min-height:66px; }
  .market-widget .mw-leaders>div { grid-template-columns:17px minmax(60px,1fr) 60px 41px 49px; gap:4px; font-size:10px; }
}
@media (max-width:760px) {
  .flex-dashboard>.market-widget { min-height:510px; max-height:none; }
  .market-widget .mw-content { min-height:280px; max-height:600px; }
  .market-widget .mw-footer { max-height:150px; }
}
