.market-emotion-page { margin:0; min-height:100vh; background:var(--ui-canvas); color:var(--ui-text); font:13px/1.55 "Inter","PingFang SC","Microsoft YaHei UI",sans-serif; font-variant-numeric:tabular-nums; }
.market-emotion-page * { box-sizing:border-box; }
.market-emotion-page [hidden] { display:none !important; }
.market-emotion-page .container { width:100%; max-width:none; min-width:0; margin:0; padding:20px 24px 28px; background:var(--ui-canvas); color:var(--ui-text); }
.market-emotion-page .page-header-row { display:grid !important; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; margin:0 0 18px; padding:0; border:0; background:none; }
.market-emotion-page .ui-page-heading { display:flex; align-items:center; gap:14px; min-width:0; }
.market-emotion-page .page-header-row .page-title { font-size:23px; font-weight:750; letter-spacing:-.6px; color:var(--ui-text-strong); white-space:nowrap; }
.market-emotion-page .ui-page-purpose { color:var(--ui-text-muted); font-size:12px; white-space:nowrap; }
.market-emotion-page .ui-page-title-divider { width:1px; height:18px; background:var(--ui-border-strong); flex-shrink:0; }
.market-emotion-page .me-header-actions { justify-self:end; }
.market-emotion-page button,.market-emotion-page input,.market-emotion-page select { font:inherit; }
.market-emotion-page button { cursor:pointer; }
.market-emotion-page button:disabled { cursor:default; opacity:.5; }
.market-emotion-page :is(button,a,input,select,summary):focus-visible { outline:3px solid var(--ui-focus); outline-offset:3px; }
.market-emotion-page :is(input,select,textarea,.select-box,.form-control) { color:var(--ui-text); background:var(--ui-input); border:1px solid var(--ui-border); border-radius:7px; min-height:34px; padding:6px 10px; box-shadow:none; }
.market-emotion-page :is(input,textarea)::placeholder { color:var(--ui-text-muted); }
.market-emotion-page .me-history-tools input[type="date"] { color:var(--ui-text); background:var(--ui-input); border-color:var(--ui-border); }
.market-emotion-page :is(input,select,textarea):focus { border-color:var(--ui-accent-border); }
.market-emotion-page select option { color:var(--ui-text); background:var(--ui-input); }
.market-emotion-page .me-button,.market-emotion-page .btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:6px 12px; border:1px solid var(--ui-border-strong); border-radius:7px; color:var(--ui-text); background:var(--ui-surface); font-size:12px; font-weight:550; box-shadow:none; text-decoration:none; transition:background-color 160ms ease,border-color 160ms ease; }
.market-emotion-page .me-button:hover,.market-emotion-page .btn:hover { background:var(--ui-surface-muted); border-color:var(--ui-accent-border); color:var(--ui-accent-strong); transform:none; box-shadow:none; }
.market-emotion-page .me-text-button { padding:0; background:none; border:0; color:var(--ui-accent); font-size:12px; white-space:nowrap; text-decoration:none; }
.market-emotion-page .me-text-button:hover { color:var(--ui-accent-strong); text-decoration:underline; text-underline-offset:4px; }
.market-emotion-page .me-square { width:30px; padding:0; min-height:30px; font-size:20px; }
.market-emotion-page .me-datebar,.market-emotion-page .me-date-controls { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.market-emotion-page .me-datebar { justify-content:space-between; margin-bottom:14px; }
.market-emotion-page .me-date-controls label { color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page #emotionDate { width:145px; }
.market-emotion-page .me-caption { color:var(--ui-text-muted); font-size:11.5px; font-weight:400; }
.market-emotion-page .me-status { padding:24px; border:1px solid var(--ui-border); background:var(--ui-surface); border-radius:10px; margin-bottom:14px; }
.market-emotion-page .me-status.is-error { color:var(--ui-warning); border-color:var(--ui-warning); }
.market-emotion-page .me-status.is-note { padding:9px 14px; color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page .me-overview { display:grid; grid-template-columns:minmax(210px,.9fr) minmax(270px,1.35fr) minmax(200px,.9fr); gap:28px; padding:24px; border:1px solid var(--ui-border); border-radius:12px; background:var(--ui-surface); }
.market-emotion-page .me-eyebrow { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--ui-text-muted); font-size:11px; font-weight:550; }
.market-emotion-page .me-eyebrow > span { font-size:10px; font-weight:400; }
.market-emotion-page .me-score-line { display:flex; align-items:center; gap:20px; margin:10px 0 14px; }
.market-emotion-page .me-score-line > strong { font-size:58px; font-weight:650; letter-spacing:-3px; line-height:1; color:var(--ui-text-strong); }
.market-emotion-page .me-score-line h2 { font-size:19px; color:var(--ui-text-strong); font-weight:650; margin:0 0 4px; }
.market-emotion-page .me-temperature-track { position:relative; height:6px; border-radius:3px; background:linear-gradient(to right,var(--ui-down) 0%,var(--ui-border-strong) 50%,var(--ui-up) 100%); }
.market-emotion-page .me-temperature-track i { position:absolute; top:-4px; width:5px; height:14px; border-radius:2px; background:var(--ui-text-strong); box-shadow:0 0 0 2px var(--ui-surface); transform:translateX(-50%); }
.market-emotion-page .me-temperature-labels { display:flex; justify-content:space-between; color:var(--ui-text-muted); font-size:10px; margin-top:7px; }
.market-emotion-page .me-reading { padding-left:28px; border-left:1px solid var(--ui-border); }
.market-emotion-page .me-reading h2 { font-size:20px; font-weight:650; line-height:1.5; color:var(--ui-text-strong); margin:9px 0 6px; }
.market-emotion-page .me-reading p { margin:0; color:var(--ui-text-muted); font-size:12px; line-height:1.8; }
.market-emotion-page .me-signals { display:flex; flex-wrap:wrap; gap:8px; margin-top:13px; }
.market-emotion-page .me-tag { display:inline-flex; align-items:center; padding:3px 7px; border-radius:4px; font-size:11px; color:var(--ui-text-muted); background:var(--ui-surface-muted); white-space:nowrap; }
.market-emotion-page .me-tag.is-warning { color:var(--ui-warning); background:var(--ui-warning-soft); }
.market-emotion-page .me-tag.is-up { background:var(--ui-up-soft); }
.market-emotion-page .me-tag.is-down { background:var(--ui-down-soft); }
.market-emotion-page .me-sparkline { height:98px; margin-top:10px; }
.market-emotion-page .me-sparkline svg { display:block; width:100%; height:100%; overflow:visible; }
.market-emotion-page .me-sparkline .trend-line { fill:none; stroke:var(--ui-text-muted); stroke-width:2; vector-effect:non-scaling-stroke; }
.market-emotion-page .me-sparkline .trend-axis { stroke:var(--ui-border); stroke-dasharray:3 4; }
.market-emotion-page .me-sparkline .trend-dot { fill:var(--ui-text-strong); stroke:var(--ui-surface); stroke-width:2; }
.market-emotion-page .me-index-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:14px 0; border:1px solid var(--ui-border); border-radius:10px; background:var(--ui-surface); }
.market-emotion-page .me-index-item { padding:12px 20px; border-right:1px solid var(--ui-border); }
.market-emotion-page .me-index-item:last-child { border:0; }
.market-emotion-page .me-index-item > span { display:block; font-size:11px; color:var(--ui-text-muted); margin-bottom:4px; }
.market-emotion-page .me-index-item strong { font-size:20px; font-weight:650; color:var(--ui-text-strong); }
.market-emotion-page .me-index-item small { margin-left:9px; font-size:12px; }
.market-emotion-page .me-grid { display:grid; gap:14px; margin-bottom:14px; }
.market-emotion-page .me-primary-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.market-emotion-page .me-secondary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.market-emotion-page .me-panel { min-width:0; border:1px solid var(--ui-border); border-radius:10px; background:var(--ui-surface); overflow:hidden; }
.market-emotion-page .me-panel-header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:17px 20px 12px; }
.market-emotion-page .me-panel-header h2 { color:var(--ui-text-strong); font-size:15px; font-weight:650; margin:0 0 3px; }
.market-emotion-page .me-header-number { font-size:13px; color:var(--ui-text-strong); white-space:nowrap; }
.market-emotion-page .me-panel-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 20px; margin-top:10px; border-top:1px solid var(--ui-border); color:var(--ui-text-muted); font-size:10.5px; }
.market-emotion-page .me-breadth-summary { display:flex; gap:20px; padding:0 20px 8px; flex-wrap:wrap; color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page .me-breadth-summary strong { margin-left:7px; font-size:19px; font-weight:600; }
.market-emotion-page .me-distribution { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:5px; height:160px; padding:0 20px; }
.market-emotion-page .me-distribution button { display:flex; flex-direction:column; align-items:center; justify-content:flex-end; padding:0 2px; min-width:0; border:0; background:none; color:var(--ui-text-muted); font-size:10px; }
.market-emotion-page .me-distribution button:hover { background:var(--ui-surface-muted); border-radius:4px; }
.market-emotion-page .me-bar-value { margin-bottom:4px; font-size:11px; color:var(--ui-text); }
.market-emotion-page .me-bar { width:72%; min-height:0; border-radius:3px 3px 0 0; background:var(--ui-border-strong); }
.market-emotion-page .me-bar.up { background:var(--ui-chart-up-start); }
.market-emotion-page .me-bar.down { background:var(--ui-chart-down-start); }
.market-emotion-page .me-bar-label { min-height:28px; padding-top:6px; white-space:nowrap; }
.market-emotion-page .me-balance { display:flex; gap:3px; height:4px; margin:7px 20px 2px; overflow:hidden; border-radius:3px; }
.market-emotion-page .me-balance span { background:var(--ui-border-strong); }
.market-emotion-page .me-balance .up { background:var(--ui-up); }
.market-emotion-page .me-balance .down { background:var(--ui-down); }
.market-emotion-page .me-volume-numbers { display:flex; align-items:start; gap:32px; padding:0 20px; }
.market-emotion-page .me-volume-numbers .me-caption { display:block; }
.market-emotion-page .me-volume-numbers strong { display:inline-block; font-size:27px; font-weight:600; letter-spacing:-.7px; color:var(--ui-text-strong); }
.market-emotion-page .me-volume-numbers > div+div strong { font-size:19px; line-height:42px; }
.market-emotion-page .me-volume-numbers small { margin-left:8px; font-size:11px; }
.market-emotion-page .me-volume-chart { height:161px; padding:10px 20px 0; display:flex; align-items:end; gap:6px; }
.market-emotion-page .me-volume-column { display:flex; flex:1; min-width:0; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; border:0; padding:0 2px; background:none; color:var(--ui-text-muted); }
.market-emotion-page .me-volume-column:hover { background:var(--ui-surface-muted); }
.market-emotion-page .me-volume-column i { width:100%; border-radius:3px 3px 0 0; background:var(--ui-chart-flat); }
.market-emotion-page .me-volume-column i.is-up { background:var(--ui-chart-up-start); }
.market-emotion-page .me-volume-column i.is-down { background:var(--ui-chart-down-start); }
.market-emotion-page .me-volume-column.current small { color:var(--ui-text-strong); font-weight:600; }
.market-emotion-page .me-volume-column small { font-size:9px; padding-top:6px; white-space:nowrap; }
.market-emotion-page .me-limits-summary { display:flex; gap:28px; padding:0 20px 14px; }
.market-emotion-page .me-limits-summary button { border:0; background:none; padding:0; color:var(--ui-text-muted); text-align:left; font-size:11px; }
.market-emotion-page .me-limits-summary strong { margin-left:8px; font-size:22px; font-weight:600; }
.market-emotion-page .me-ladder { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 20px; border:1px solid var(--ui-border); border-radius:8px; overflow:hidden; }
.market-emotion-page .me-ladder > div { padding:13px 6px 10px; text-align:center; border-right:1px solid var(--ui-border); }
.market-emotion-page .me-ladder > div:last-child { border:0; }
.market-emotion-page .me-ladder span { color:var(--ui-text-muted); font-size:11px; display:block; }
.market-emotion-page .me-ladder strong { display:block; color:var(--ui-text-strong); font-size:25px; font-weight:550; margin:4px 0; }
.market-emotion-page .me-ladder small { display:block; border-top:1px solid var(--ui-border); margin-top:9px; padding-top:9px; font-size:10px; color:var(--ui-text-muted); }
.market-emotion-page .me-payoffs { padding:0 20px; }
.market-emotion-page .me-payoff-row,.market-emotion-page .me-broken-row { display:flex; justify-content:space-between; align-items:center; padding:10px 0; gap:12px; border-bottom:1px solid var(--ui-border); }
.market-emotion-page .me-payoff-row span { font-size:12px; }
.market-emotion-page .me-payoff-row small { color:var(--ui-text-muted); font-size:10px; margin-left:10px; }
.market-emotion-page .me-payoff-row strong,.market-emotion-page .me-broken-row strong { font-size:18px; font-weight:600; }
.market-emotion-page .me-broken-row { margin:0 20px; padding-bottom:0; border:0; }
.market-emotion-page .me-broken-row small { display:block; }
.market-emotion-page .me-risk-lead { display:flex; align-items:baseline; gap:10px; padding:0 20px 14px; color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page .me-risk-lead strong { font-size:27px; color:var(--ui-text-strong); font-weight:600; }
.market-emotion-page .me-risk-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:0 20px; }
.market-emotion-page .me-risk-card { text-align:left; padding:11px; border:1px solid var(--ui-border); border-radius:7px; background:var(--ui-surface); }
.market-emotion-page .me-risk-card:hover { border-color:var(--ui-border-strong); background:var(--ui-surface-muted); }
.market-emotion-page .me-risk-card > * { display:block; }
.market-emotion-page .me-risk-card b { font-weight:600; font-size:13px; overflow-wrap:anywhere; }
.market-emotion-page .me-risk-card strong { font-size:19px; margin:6px 0 2px; font-weight:600; }
.market-emotion-page .me-risk-card small { font-size:10px; color:var(--ui-text-muted); }
.market-emotion-page .me-sector-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; padding:0 20px 20px; }
.market-emotion-page .me-sector-tile { padding:12px 10px; border-radius:5px; text-align:left; border:0; min-width:0; }
.market-emotion-page .me-sector-tile b { display:block; font-size:12px; font-weight:600; overflow-wrap:anywhere; }
.market-emotion-page .me-sector-tile strong { display:block; font-size:20px; margin:3px 0; font-weight:600; }
.market-emotion-page .me-sector-tile small { display:block; font-size:10px; overflow-wrap:anywhere; }
.market-emotion-page .me-focus-layout { display:grid; grid-template-columns:1fr 1.5fr; gap:24px; padding:0 20px 20px; }
.market-emotion-page .me-focus-concepts { display:flex; gap:10px; }
.market-emotion-page .me-focus-concept { flex:1; min-width:0; padding:10px; border-radius:6px; background:var(--ui-surface-muted); }
.market-emotion-page .me-focus-concept b { display:block; font-size:12px; color:var(--ui-text-strong); }
.market-emotion-page .me-focus-concept span { display:block; font-size:11px; margin-top:5px; }
.market-emotion-page .me-hot-stocks { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px 16px; }
.market-emotion-page .me-hot-stock { min-width:0; }
.market-emotion-page .me-hot-stock b { display:block; font-size:12px; font-weight:600; overflow-wrap:anywhere; }
.market-emotion-page .me-hot-stock span { display:block; margin-top:2px; font-size:11px; }
.market-emotion-page .me-method { margin-top:14px; color:var(--ui-text-muted); font-size:11px; }
.market-emotion-page .me-method summary { cursor:pointer; width:fit-content; }
.market-emotion-page .me-method p { margin:10px 0 0; line-height:1.9; }
.market-emotion-page .me-empty { display:flex; align-items:center; justify-content:center; padding:24px 12px; min-height:90px; color:var(--ui-text-muted); font-size:12px; width:100%; grid-column:1/-1; }
.market-emotion-page .is-up,.market-emotion-page .text-up,.market-emotion-page .positive,.market-emotion-page .pct-positive { color:var(--ui-up) !important; }
.market-emotion-page .is-down,.market-emotion-page .text-down,.market-emotion-page .negative,.market-emotion-page .pct-negative { color:var(--ui-down) !important; }
.market-emotion-page .is-flat,.market-emotion-page .text-neutral { color:var(--ui-text-muted) !important; }
.market-emotion-page .is-warning { color:var(--ui-warning); }
.market-emotion-page .me-stock-dialog { position:fixed; inset:0; margin:auto; width:780px; height:fit-content; max-width:calc(100% - 24px); max-height:min(85dvh,calc(100dvh - 24px)); padding:0; overflow:hidden; border:1px solid var(--ui-border-strong); border-radius:12px; color:var(--ui-text); background:var(--ui-surface); box-shadow:var(--ui-shadow-float); }
.market-emotion-page .me-stock-dialog::backdrop { background:color-mix(in srgb,var(--ui-canvas-deep) 68%,transparent); }
.market-emotion-page .me-stock-dialog[open] { display:flex; flex-direction:column; }
.market-emotion-page .me-stock-dialog > :is(.me-dialog-head,.me-dialog-tools,.me-dialog-footer) { flex-shrink:0; }
.market-emotion-page .me-dialog-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:20px; border-bottom:1px solid var(--ui-border); }
.market-emotion-page .me-dialog-head h2 { color:var(--ui-text-strong); font-size:18px; font-weight:650; margin:0 0 5px; }
.market-emotion-page .me-dialog-head p { margin:0; }
.market-emotion-page .me-dialog-tools { display:flex; align-items:center; gap:8px; padding:12px 20px; flex-wrap:wrap; font-size:12px; }
.market-emotion-page .me-dialog-tools input { flex:1; width:160px; min-width:100px; }
.market-emotion-page .me-dialog-table { flex:1 1 auto; overflow:auto; overscroll-behavior:contain; min-height:0; padding:0 20px; }
.market-emotion-page .me-dialog-table table { width:100%; border-collapse:collapse; background:transparent; color:var(--ui-text); }
.market-emotion-page .me-dialog-table thead { background:var(--ui-surface-muted); }
.market-emotion-page .me-dialog-table th { position:sticky; top:0; background:var(--ui-surface-muted); color:var(--ui-text-muted); font-weight:500; font-size:11px; padding:9px; white-space:nowrap; }
.market-emotion-page .me-dialog-table td { padding:10px 9px; border-bottom:1px solid var(--ui-border); color:var(--ui-text); }
.market-emotion-page .me-dialog-table tbody tr,.market-emotion-page .me-dialog-table tbody tr:nth-child(even) { background:transparent; }
.market-emotion-page .me-dialog-table tbody tr:hover { background:var(--ui-surface-active); }
.market-emotion-page .me-dialog-table :is(td,th):not(:first-child) { text-align:right; }
.market-emotion-page .me-dialog-table td small { display:block; color:var(--ui-text-muted); font-size:10px; }
.market-emotion-page .me-dialog-footer { display:flex; justify-content:space-between; padding:12px 20px; gap:12px; border-top:1px solid var(--ui-border); }

/* Neutral history surfaces keep color focused on actual market changes. */
.market-emotion-page {
    --me-history-line:color-mix(in srgb,var(--ui-text-strong) 12%,var(--ui-surface));
    --me-history-divider:color-mix(in srgb,var(--ui-text-strong) 18%,var(--ui-surface));
    --me-history-heading:color-mix(in srgb,var(--ui-text-strong) 3%,var(--ui-surface));
    --me-history-hover:color-mix(in srgb,var(--ui-text-strong) 2%,var(--ui-surface));
    --me-history-secondary:color-mix(in srgb,var(--ui-text-strong) 65%,var(--ui-surface));
}
.market-emotion-page .me-history-tools { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:10px 0 16px; }
.market-emotion-page .me-history-tabs { margin-left:auto; }
.market-emotion-page .me-history-tools .filter-group { min-width:0; }
.market-emotion-page .filter-label { color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page .me-history-status { margin-bottom:8px; color:var(--ui-text-muted); font-size:12px; }
.market-emotion-page .ui-stock-name { color:var(--ui-text-strong); font-weight:600; }
.market-emotion-page #historyPanel[aria-busy="true"] .table-container { opacity:.5; pointer-events:none; }
.market-emotion-page .emotion-hover-popup:empty { display:none; }
.market-emotion-page .section-card,.market-emotion-page .section-card:hover { background:var(--ui-surface); border:1px solid var(--ui-border); border-radius:10px; box-shadow:none; transform:none; margin:0; }
.market-emotion-page .me-history-card,.market-emotion-page .me-history-card:hover { min-width:0; overflow:visible; border-color:var(--me-history-line); }
.market-emotion-page .me-history-table-wrap { width:100%; max-height:none; overflow:visible; border:0; }
.market-emotion-page .me-history-table { width:100%; min-width:0; table-layout:fixed; border-collapse:separate; border-spacing:0; border-radius:10px; background:var(--ui-surface); color:var(--ui-text); font-size:13px; }
.market-emotion-page .me-history-table thead { position:sticky; top:0; z-index:5; }
.market-emotion-page .me-history-table thead th { position:static; width:auto; min-width:0; padding:9px 10px; border:0; border-bottom:1px solid var(--me-history-line); background:var(--me-history-heading); color:var(--me-history-secondary); font-size:11px; font-weight:500; text-align:center; white-space:normal; overflow-wrap:anywhere; letter-spacing:0; }
.market-emotion-page .me-history-table .me-history-groups .me-group-title { padding:12px 16px 10px; text-align:left; background:var(--ui-surface); color:var(--ui-text-strong); font-size:13px; font-weight:600; }
.market-emotion-page .me-history-table .me-history-groups .me-history-date-heading { border-top-left-radius:10px; border-right:1px solid var(--me-history-line); background:var(--ui-surface); }
.market-emotion-page .me-history-table .me-history-groups th:last-child { border-top-right-radius:10px; }
.market-emotion-page .me-history-table tbody tr td,.market-emotion-page .me-history-table tbody tr:nth-child(even) td { position:static; padding:14px 12px; min-width:0; height:auto; border:0; border-bottom:1px solid var(--me-history-line); background:var(--ui-surface); color:var(--ui-text); font-size:13px; font-weight:400; text-align:center; vertical-align:middle; white-space:normal; overflow-wrap:anywhere; }
.market-emotion-page .me-history-table tbody tr:hover td { background:var(--me-history-hover); }
.market-emotion-page .me-history-table tbody tr:last-child td { border-bottom:0; }
.market-emotion-page .me-history-table tbody tr:last-child td:first-child { border-bottom-left-radius:10px; }
.market-emotion-page .me-history-table tbody tr:last-child td:last-child { border-bottom-right-radius:10px; }
.market-emotion-page .me-history-table tbody tr td.me-history-date { border-right:1px solid var(--me-history-line); padding-left:8px; padding-right:8px; }
.market-emotion-page .me-history-table thead th.me-group-start,.market-emotion-page .me-history-table tbody tr td.me-group-start { border-left:1px solid var(--me-history-divider); }
.market-emotion-page .me-history-table .emotion-row { animation:none; }
.market-emotion-page .me-cell-content { width:100%; max-width:150px; margin-inline:auto; min-width:0; }
.market-emotion-page .me-cell-label { display:none; }
.market-emotion-page .me-history-value { display:block; color:var(--ui-text-strong); font-size:15px; font-weight:550; line-height:1.6; }
.market-emotion-page .me-history-value small { color:var(--me-history-secondary); font-size:11px; font-weight:400; }
.market-emotion-page .me-history-pair { display:flex; align-items:baseline; justify-content:space-between; gap:6px; line-height:1.85; }
.market-emotion-page .me-history-pair > span { color:var(--me-history-secondary); font-size:11px; flex-shrink:0; }
.market-emotion-page .me-history-pair strong { color:var(--ui-text-strong); font-weight:550; }
.market-emotion-page .me-history-note { display:flex; align-items:baseline; justify-content:space-between; gap:6px; color:var(--ui-text); font-size:11px; line-height:1.8; }
.market-emotion-page .me-history-note > span:first-child { color:var(--me-history-secondary); flex-shrink:0; font-size:10px; }
.market-emotion-page .me-history-table thead th[data-group="overview"],.market-emotion-page .me-history-table tbody tr td[data-group="overview"] { text-align:left; padding-left:16px; padding-right:16px; }
.market-emotion-page .me-history-table td[data-group="overview"] .me-cell-content { max-width:none; }
.market-emotion-page .me-history-names { display:flex; flex-direction:column; gap:7px; text-align:left; }
.market-emotion-page .me-overview-item { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:7px; min-width:0; }
.market-emotion-page .me-overview-name { min-width:0; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.market-emotion-page .me-history-names .ui-stock-name { color:var(--ui-text-strong); font-weight:600; }
.market-emotion-page .me-concept-name { color:var(--ui-text); font-weight:400; }
.market-emotion-page .me-overview-metric { color:var(--me-history-secondary); font-size:11px; font-weight:400; white-space:nowrap; }
.market-emotion-page .me-overview-metric small { margin-left:3px; font-size:10px; }
.market-emotion-page .me-highest-name { display:block; margin-top:7px; font-size:12px; font-weight:600; line-height:1.6; overflow-wrap:anywhere; }
.market-emotion-page .me-history-table td[data-group="overview"] .me-history-value { font-size:18px; font-weight:600; }
.market-emotion-page .me-history-cell:focus-visible { outline:2px solid var(--ui-focus); outline-offset:-3px; }
.market-emotion-page .me-date-link { border:0; background:none; padding:4px 0; text-align:center; color:var(--ui-text-strong); font-size:13px; font-weight:600; white-space:nowrap; }
.market-emotion-page .me-date-link:hover { color:var(--ui-accent-strong); text-decoration:underline; text-underline-offset:3px; }
.market-emotion-page .me-date-link small { display:block; color:var(--me-history-secondary); font-size:10px; font-weight:400; margin-top:2px; }
.market-emotion-page .me-history-remark { display:block; margin-inline:auto; padding:3px 0 0; border:0; background:none; color:var(--ui-text-muted); font-size:10px; }
.market-emotion-page .me-visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.market-emotion-page :is(.emotion-hover-popup,.tooltip-inner,.remark-modal,.custom-modal .modal-dialog) { color:var(--ui-text); background:var(--ui-surface-raised); border-color:var(--ui-border); box-shadow:var(--ui-shadow-float); }
.market-emotion-page .tooltip-table { background:var(--ui-surface-raised); color:var(--ui-text); }
.market-emotion-page .tooltip-table thead,.market-emotion-page .tooltip-table th { background:var(--ui-surface-muted); color:var(--ui-text-muted); border-color:var(--ui-border); }
.market-emotion-page .tooltip-table td,.market-emotion-page .tooltip-table tbody tr:nth-child(even) { background:var(--ui-surface-raised); color:var(--ui-text); border-color:var(--ui-border); }
.market-emotion-page .tooltip-table tbody tr:hover,.market-emotion-page .tooltip-table tbody tr:nth-child(even):hover { background:var(--ui-surface-muted); }
.market-emotion-page .tooltip-table td:first-child { color:var(--ui-text-strong); }
.market-emotion-page .tooltip-table .limit-count { color:var(--ui-up); }
.market-emotion-page .emotion-hover-popup { border-color:var(--me-history-line); border-radius:8px; background:var(--ui-surface-raised); box-shadow:var(--ui-shadow-card); }
.market-emotion-page .emotion-hover-popup .tooltip-table { margin:0; font-size:12px; }
.market-emotion-page .emotion-hover-popup .tooltip-table thead,.market-emotion-page .emotion-hover-popup .tooltip-table th { padding:9px 12px; background:var(--me-history-heading); color:var(--me-history-secondary); border-color:var(--me-history-line); font-size:11px; font-weight:500; }
.market-emotion-page .emotion-hover-popup .tooltip-table td { padding:9px 12px; border-color:var(--me-history-line); font-size:12px; font-weight:400; }
.market-emotion-page .emotion-hover-popup .tooltip-table td:first-child { color:var(--ui-text-strong); font-weight:550; }
.market-emotion-page .remark-modal-header,.market-emotion-page .remark-modal-footer { background:var(--ui-surface-muted); border-color:var(--ui-border); }
.market-emotion-page .remark-modal-header h5 { color:var(--ui-text-strong); }
.market-emotion-page .remark-modal-body textarea { color:var(--ui-text); background:var(--ui-input); border-color:var(--ui-border); }
.market-emotion-page .remark-view-content { color:var(--ui-text); background:var(--ui-surface); border-color:var(--ui-border); }
.market-emotion-page .remark-modal-close,.market-emotion-page .remark-modal-body .char-count,.market-emotion-page .remark-view-empty { color:var(--ui-text-muted); }
.market-emotion-page .remark-modal-close:hover,.market-emotion-page .remark-modal-footer .btn-cancel { background:var(--ui-surface); color:var(--ui-text); }
.market-emotion-page .remark-modal-footer .btn-cancel:hover { background:var(--ui-surface-muted); }
.market-emotion-page .remark-modal-footer .btn-save { background:var(--ui-action-fill); color:var(--ui-on-accent); border-color:var(--ui-action-fill); }
.market-emotion-page .remark-modal-footer .btn-save:hover { background:var(--ui-action-fill-hover); }
.market-emotion-page .remark-modal-overlay { background:color-mix(in srgb,var(--ui-canvas-deep) 68%,transparent); }
.market-emotion-page #remarkModalTitle i { color:var(--ui-accent) !important; }
.market-emotion-page .table-container::-webkit-scrollbar-track { background:var(--ui-surface-muted); }
.market-emotion-page .table-container::-webkit-scrollbar-thumb { background:var(--ui-scrollbar); }
.market-emotion-page :is(.me-dialog-table,.tooltip-table-container,.remark-view-content) { scrollbar-width:thin; scrollbar-color:var(--ui-scrollbar) transparent; }
.market-emotion-page :is(.me-dialog-table,.tooltip-table-container,.remark-view-content)::-webkit-scrollbar { width:6px; height:6px; }
.market-emotion-page :is(.me-dialog-table,.tooltip-table-container,.remark-view-content)::-webkit-scrollbar-track { background:transparent; }
.market-emotion-page :is(.me-dialog-table,.tooltip-table-container,.remark-view-content)::-webkit-scrollbar-thumb { background:var(--ui-scrollbar); border-radius:3px; }
.market-emotion-page :is(.me-dialog-table,.tooltip-table-container,.remark-view-content)::-webkit-scrollbar-thumb:hover { background:var(--ui-scrollbar-hover); }

/* Night surfaces use the shared palette without changing the light layout. */
[data-theme="night-knight"] .market-emotion-page .me-overview { background:var(--ui-surface-raised); border-color:var(--ui-border-strong); }
[data-theme="night-knight"] .market-emotion-page .me-temperature-track i { box-shadow:0 0 0 2px var(--ui-surface-raised); }
[data-theme="night-knight"] .market-emotion-page .me-panel-footer { background:var(--ui-surface-muted); }
[data-theme="night-knight"] .market-emotion-page :is(.me-ladder,.me-focus-concept,.me-risk-card) { background:var(--ui-surface-raised); }
[data-theme="night-knight"] .market-emotion-page .me-risk-card:hover { background:var(--ui-surface-active); border-color:var(--ui-accent-border); }
[data-theme="night-knight"] .market-emotion-page .me-sparkline .trend-line { stroke:var(--ui-text); }
[data-theme="night-knight"] .market-emotion-page :is(.me-button,.btn):disabled { opacity:1; color:var(--ui-text-muted); background:var(--ui-surface-muted); border-color:var(--ui-border); }
[data-theme="night-knight"] .market-emotion-page .me-stock-dialog { background:var(--ui-surface-raised); }
[data-theme="night-knight"] .market-emotion-page :is(.me-dialog-head,.me-dialog-footer) { background:var(--ui-surface-muted); }
[data-theme="night-knight"] .market-emotion-page .me-stock-dialog::backdrop { background:color-mix(in srgb,var(--ui-canvas-deep) 78%,transparent); }
[data-theme="night-knight"] .market-emotion-page .me-history-table tbody tr:hover td { background:var(--ui-surface-active); }
[data-theme="night-knight"] .market-emotion-page .emotion-hover-popup { border-color:var(--ui-border-strong); box-shadow:var(--ui-shadow-float); }
[data-theme="night-knight"] .market-emotion-page .emotion-hover-popup :is(thead,th) { background:var(--ui-surface-muted); }
[data-theme="night-knight"] .market-emotion-page .emotion-hover-popup tbody tr:hover td { background:var(--ui-surface-active); }

@media (min-width:1600px) {
    .market-emotion-page .me-overview { grid-template-columns:1fr 1.6fr 1fr; }
    .market-emotion-page .me-distribution { height:180px; }
    .market-emotion-page .me-volume-chart { height:181px; }
}
@media (max-width:1200px) {
    .market-emotion-page .ui-page-purpose,.market-emotion-page .ui-page-title-divider { display:none; }
    .market-emotion-page .me-overview { grid-template-columns:minmax(180px,.9fr) minmax(230px,1.3fr) minmax(150px,.8fr); gap:18px; padding:20px; }
    .market-emotion-page .me-reading { padding-left:18px; }
    .market-emotion-page .me-reading h2 { font-size:18px; }
    .market-emotion-page .me-focus-layout { grid-template-columns:1fr; gap:16px; }
    .market-emotion-page .me-history-card,.market-emotion-page .me-history-card:hover { background:none; border:0; }
    .market-emotion-page .me-history-table { display:block; background:none; }
    .market-emotion-page .me-history-table thead,.market-emotion-page .me-history-table colgroup { display:none; }
    .market-emotion-page .me-history-table tbody { display:grid; gap:12px; }
    .market-emotion-page .me-history-table tbody tr { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); padding:0 8px 8px; border:1px solid var(--me-history-line); border-radius:10px; background:var(--ui-surface); }
    .market-emotion-page .me-history-table tbody tr td,.market-emotion-page .me-history-table tbody tr:nth-child(even) td { display:block; padding:12px; border:0; border-radius:0; background:none; }
    .market-emotion-page .me-history-table tbody tr:hover td { background:none; }
    .market-emotion-page .me-history-table tbody tr td.me-history-date { display:flex; align-items:center; justify-content:space-between; grid-column:1/-1; padding:9px 12px; border:0; border-bottom:1px solid var(--me-history-line); }
    .market-emotion-page .me-history-date .me-cell-content { max-width:none; margin:0; width:auto; }
    .market-emotion-page .me-history-date .me-history-remark { margin:0; }
    .market-emotion-page .me-date-link small { display:inline; margin-left:8px; }
    .market-emotion-page .me-cell-label { display:block; color:var(--me-history-secondary); font-size:11px; margin-bottom:7px; text-align:left; }
    .market-emotion-page .me-history-table tbody tr td.me-group-start { border-left:0; grid-column:1; }
    .market-emotion-page .me-history-table tbody tr td:is([data-group="short"],[data-group="overview"]) { border-top:1px solid var(--me-history-line); }
    .market-emotion-page .me-history-table[data-view="short"] tbody td:last-child { grid-column:span 2; }
    .market-emotion-page .me-cell-content { max-width:none; text-align:left; }
    .market-emotion-page .me-history-pair,.market-emotion-page .me-history-note { justify-content:flex-start; flex-wrap:wrap; }
}
@media (max-width:900px) {
    .market-emotion-page .me-overview { grid-template-columns:1fr 1.4fr; }
    .market-emotion-page .me-cycle-preview { grid-column:1/-1; border-top:1px solid var(--ui-border); padding-top:12px; }
    .market-emotion-page .me-sparkline { height:70px; }
    .market-emotion-page .me-grid { grid-template-columns:1fr; }
    .market-emotion-page .me-index-item { padding:12px; }
    .market-emotion-page .me-index-item strong { font-size:18px; }
    .market-emotion-page .me-index-item small { display:block; margin:0; }
}
@media (max-width:600px) {
    .market-emotion-page .container { padding:16px 12px 24px; }
    .market-emotion-page .page-header-row { grid-template-columns:1fr auto; gap:12px; }
    .market-emotion-page .page-header-row > .ui-content-tabs { grid-row:2; grid-column:1/-1; justify-self:start; }
    .market-emotion-page .me-history-tabs { margin-left:0; }
    .market-emotion-page .me-history-table tbody tr { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .market-emotion-page .me-history-table tbody tr td { padding:10px; }
    .market-emotion-page .me-history-table tbody td[data-group="market"]:nth-child(6) { grid-column:1/-1; }
    .market-emotion-page .me-history-table[data-view="short"] tbody td:last-child { grid-column:auto; }
    .market-emotion-page .me-history-table tbody tr td:is([data-group="short"],[data-group="overview"]) { border-top:0; }
    .market-emotion-page .me-history-table tbody tr td:is([data-group="short"],[data-group="overview"]):is(:nth-child(7),:nth-child(8)) { border-top:1px solid var(--me-history-line); }
    .market-emotion-page .me-header-actions { grid-row:1; grid-column:2; }
    .market-emotion-page .me-date-controls { gap:7px; }
    .market-emotion-page .me-date-controls label { display:none; }
    .market-emotion-page .me-overview { grid-template-columns:1fr; padding:18px; }
    .market-emotion-page .me-temperature { padding-bottom:2px; }
    .market-emotion-page .me-reading { padding:14px 0 0; border:0; border-top:1px solid var(--ui-border); }
    .market-emotion-page .me-index-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .market-emotion-page .me-index-item:nth-child(2) { border-right:0; }
    .market-emotion-page .me-index-item:nth-child(-n+2) { border-bottom:1px solid var(--ui-border); }
    .market-emotion-page .me-panel-header { padding:15px 14px 12px; }
    .market-emotion-page .me-panel-footer { padding:10px 14px; flex-wrap:wrap; }
    .market-emotion-page .me-distribution { padding:0 10px; gap:1px; }
    .market-emotion-page .me-bar-label { font-size:9px; }
    .market-emotion-page .me-volume-numbers { gap:20px; padding:0 14px; }
    .market-emotion-page .me-volume-numbers strong { font-size:25px; }
    .market-emotion-page .me-volume-numbers > div+div strong { font-size:17px; }
    .market-emotion-page .me-risk-cards { gap:6px; padding:0 14px; }
    .market-emotion-page .me-risk-card { padding:9px 7px; }
    .market-emotion-page .me-sector-grid { padding:0 14px 14px; }
    .market-emotion-page .me-focus-layout { padding:0 14px 14px; }
    .market-emotion-page .me-hot-stocks { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .market-emotion-page .me-focus-concepts { gap:6px; }
    .market-emotion-page .data-table :is(th,td):first-child { position:static; }
    .market-emotion-page .me-dialog-tools,.market-emotion-page .me-dialog-head { padding:14px; }
    .market-emotion-page .me-dialog-table { padding:0 10px; }
    .market-emotion-page .me-dialog-table td { font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
    .market-emotion-page * { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
