:root body.user-service .home-market-index { margin:0 0 24px; padding:20px 24px 12px; border:1px solid var(--ui-line); border-radius:var(--ui-radius); background:var(--ui-surface); }
:root body.user-service .home-market-index .home-section-head { margin:0 0 12px; gap:12px; }
:root body.user-service .home-market-index h2 { display:flex; align-items:center; gap:8px; margin:0; font-size:16px; font-weight:700; }
:root body.user-service .home-market-index .home-text-link { color:var(--ui-muted); font-size:12px; text-decoration:none; white-space:nowrap; }
.hmi-tag { font-size:9px; font-weight:600; letter-spacing:.6px; padding:2px 4px; color:var(--ui-muted); border:1px solid var(--ui-line); border-radius:3px; }
.hmi-content { display:grid; grid-template-columns:1fr 1.15fr 1fr; align-items:center; gap:32px; min-height:110px; }
.hmi-value { display:flex; align-items:baseline; gap:10px; font-size:32px; font-weight:700; line-height:1.3; font-variant-numeric:tabular-nums; letter-spacing:-1px; }
.hmi-value>span { color:var(--ui-muted); font-size:11px; font-weight:400; letter-spacing:0; }
.hmi-change { margin:4px 0; font-size:12px; }
.hmi-change strong { margin-left:5px; font-size:14px; font-variant-numeric:tabular-nums; }
.hmi-caption,.hmi-chart-labels { color:var(--ui-muted); font-size:11px; line-height:1.6; }
.hmi-up { color:#bc4147; }.hmi-down { color:#3466c0; }.hmi-flat { color:var(--ui-muted); }
.hmi-chart { min-width:0; }
.hmi-chart svg { display:block; width:100%; height:82px; overflow:visible; }
.hmi-baseline { stroke:var(--ui-line); stroke-dasharray:3 4; }
.hmi-trend { fill:none; stroke:#498878; stroke-width:2.5; stroke-linejoin:round; stroke-linecap:round; }
.hmi-dot { fill:#498878; }
.hmi-chart-labels { display:flex; justify-content:space-between; }
.hmi-counts { display:flex; justify-content:space-between; gap:10px; margin:8px 0; font-size:12px; }
.hmi-counts strong { margin-left:3px; font-variant-numeric:tabular-nums; }
.hmi-bar { display:flex; gap:2px; height:5px; margin-bottom:9px; overflow:hidden; border-radius:2px; }
.hmi-bar i { min-width:0; }.hmi-bar-up { background:#bc4147; }.hmi-bar-flat { background:#a6a9af; }.hmi-bar-down { background:#3466c0; }
.hmi-method { margin-top:10px; color:var(--ui-muted); font-size:11px; }
.hmi-method summary { cursor:pointer; width:fit-content; min-height:28px; display:list-item; align-content:center; }
.hmi-method p { max-width:850px; margin:4px 0 8px; line-height:1.8; }
.hmi-empty { grid-column:1/-1; display:flex; flex-direction:column; align-items:flex-start; gap:8px; font-size:12px; color:var(--ui-muted); }
.hmi-empty button { min-height:44px; }
.hmi-skeleton { grid-column:1/-1; height:82px; border-radius:4px; background:linear-gradient(90deg,var(--ui-surface-subtle) 25%,var(--ui-line) 50%,var(--ui-surface-subtle) 75%); background-size:200% 100%; animation:hmi-shimmer 1.2s ease-in-out infinite; }
.home-market-index[aria-busy='false'] .hmi-content { animation:hmi-reveal 320ms cubic-bezier(.2,.8,.2,1); }
:root[data-theme='dark'] .hmi-up { color:#f28b90; }:root[data-theme='dark'] .hmi-down { color:#8bb5fa; }
@keyframes hmi-shimmer { to { background-position:-200% 0; } }
@keyframes hmi-reveal { from { opacity:.3; } to { opacity:1; } }
@media(max-width:767px) {
  :root body.user-service .home-market-index { padding:16px 14px 8px; margin-bottom:20px; }
  :root body.user-service .home-market-index h2 { font-size:15px; gap:5px; }
  :root body.user-service .home-market-index .home-text-link { font-size:11px; }
  .hmi-content { grid-template-columns:1fr 1fr; gap:12px; min-height:190px; }
  .hmi-value { font-size:27px; gap:6px; }
  .hmi-value>span { display:none; }
  .hmi-breadth { grid-column:1/-1; border-top:1px solid var(--ui-line); padding-top:10px; }
  .hmi-breadth .hmi-caption:first-child { display:none; }
  .hmi-counts { margin-top:0; }
  .hmi-chart svg { height:65px; }
  .hmi-chart-labels span:nth-child(2) { display:none; }
  .hmi-method summary { min-height:36px; }
}
@media(prefers-reduced-motion:reduce) { .hmi-skeleton,.home-market-index[aria-busy='false'] .hmi-content { animation:none; } }
:root body.user-service .home-market-summary { display:flex; align-items:center; gap:20px; padding:16px 0; margin:0 0 20px; border-top:1px solid var(--ui-line); border-bottom:1px solid var(--ui-line); color:var(--ui-ink); text-decoration:none; }
.hms-label { font-weight:700; font-size:15px; }.hms-label small { margin-left:12px; color:var(--ui-muted); font-size:12px; font-weight:400; }.hms-value { font-size:23px; font-weight:700; font-variant-numeric:tabular-nums; }.hms-change { font-size:12px; }.hms-link { margin-left:auto; font-size:12px; white-space:nowrap; color:var(--ui-muted); }
#marketIndexDetail { color:var(--ui-ink); padding-top:0; }
.s500-heading { margin-bottom:24px; }.s500-heading h1 { font-size:30px; margin:0; }.s500-heading p { margin:0; font-size:13px; color:var(--ui-muted); }.s500-heading p:first-child { font-size:10px; letter-spacing:2px; }
:root body.user-service .s500-overview { margin-bottom:12px; padding:24px; }.s500-overview .hmi-content { grid-template-columns:1fr 2fr; min-height:240px; }.s500-overview .hmi-value { font-size:44px; margin:12px 0; }.s500-overview .hmi-chart svg { height:175px; }.s500-overview .hmi-breadth { grid-column:1/-1; }.s500-chart-title { display:flex; justify-content:space-between; font-size:12px; }.s500-chart-title span { color:var(--ui-muted); }
.s500-source { font-size:12px; color:var(--ui-muted); line-height:1.7; margin-bottom:32px; }.s500-members header { display:flex; align-items:center; justify-content:space-between; }.s500-members h2 { font-size:18px; margin:0; }.s500-total { font-size:12px; color:var(--ui-muted); }.s500-controls { display:flex; gap:16px; margin:16px 0 20px; }.s500-controls label { display:flex; flex-direction:column; gap:6px; font-size:12px; }.s500-controls input,.s500-controls select { min-height:44px; padding:8px 12px; background:var(--ui-surface); border:1px solid var(--ui-line); color:var(--ui-ink); font-size:16px; max-width:100%; }.s500-controls label:first-child { flex:1; }
.s500-table { width:100%; border-collapse:collapse; font-size:13px; }.s500-table th,.s500-table td { padding:12px 8px; border-bottom:1px solid var(--ui-line); text-align:right; }.s500-table th { color:var(--ui-muted); font-size:11px; font-weight:500; }.s500-table th:nth-child(2),.s500-table td:nth-child(2) { text-align:left; }.s500-player { display:flex; align-items:center; flex-wrap:wrap; gap:6px; background:none; border:0; color:inherit; cursor:pointer; padding:0; min-height:32px; text-align:left; }.s500-player img { width:28px; height:22px; object-fit:contain; }.s500-player strong { font-size:14px; }.s500-method { margin:24px 0; padding-top:16px; border-top:1px solid var(--ui-line); }.s500-method summary { min-height:44px; }.s500-method p { font-size:12px; }
@media(max-width:767px) {
  :root body.user-service .home-market-summary { gap:8px 12px; display:grid; grid-template-columns:auto 1fr auto; padding:12px 0; }
  .hms-label small { display:none; }.hms-label { font-size:13px; }.hms-value { font-size:20px; }.hms-change { grid-column:2; font-size:11px; }.hms-link { grid-column:3; grid-row:1/3; font-size:11px; }
  .s500-heading h1 { font-size:25px; }:root body.user-service .s500-overview { padding:16px; }.s500-overview .hmi-content { grid-template-columns:1fr; gap:20px; }.s500-overview .hmi-value { font-size:36px; }.s500-overview .hmi-breadth { grid-column:auto; }.s500-overview .hmi-chart svg { height:140px; }.s500-controls { gap:8px; }.s500-controls label { min-width:0; }.s500-controls label:last-child { width:135px; flex-shrink:0; }.s500-table th,.s500-table td { padding:10px 4px; font-size:11px; }.s500-table th:nth-child(3),.s500-table td:nth-child(3),.s500-table th:nth-child(4),.s500-table td:nth-child(4) { display:none; }.s500-player strong { font-size:13px; }.s500-player img { width:23px; }.s500-table td:nth-child(5) { white-space:nowrap; }.s500-source { font-size:11px; }
}

.s500-mobile-usage { display:none; }
@media(max-width:767px) { .s500-mobile-usage { display:block; width:100%; color:var(--ui-muted); font-size:10px; font-weight:400; }.s500-player { max-width:170px; } }

/* Price state: compact peers between the index and its constituents. */
.s500-market-state { margin:0 0 32px; }
.s500-market-state h2 { margin:0 0 16px; font-size:18px; }
.s500-indicators { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:stretch; min-height:148px; }
.s500-indicator { display:flex; flex-direction:column; min-height:148px; box-sizing:border-box; min-width:0; padding:20px; border:1px solid var(--ui-line); border-radius:var(--ui-radius); background:var(--ui-surface); }
.s500-indicator h3 { margin:0 0 12px; font-size:13px; font-weight:600; }
.s500-indicator-value { display:block; min-height:36px; font-size:25px; font-weight:700; font-variant-numeric:tabular-nums; }
.s500-indicator-value small { font-size:12px; font-weight:400; color:var(--ui-muted); }
.s500-indicator p { margin:8px 0 0; color:var(--ui-muted); font-size:12px; line-height:1.7; }
.s500-indicator details { margin-top:auto; font-size:11px; color:var(--ui-muted); }
.s500-indicator summary { cursor:pointer; min-height:44px; align-content:center; }
.s500-reading { margin:12px 0 0; color:var(--ui-muted); font-size:12px; line-height:1.7; }
.s500-position-track { position:relative; height:4px; background:var(--ui-line); margin:10px 4px 0; }
.s500-position-track i { position:absolute; width:8px; height:8px; top:-2px; border-radius:50%; background:var(--ui-ink); transform:translateX(-50%); }
.s500-overview .hmi-counts small { font-size:11px; font-weight:400; }
@media(max-width:767px) {
  .s500-indicators { grid-template-columns:1fr; gap:12px; min-height:0; }
  .s500-market-state h2 { font-size:16px; }
  .s500-indicator { display:grid; grid-template-columns:minmax(0,1fr) auto; align-content:start; gap:8px 12px; padding:16px; min-height:112px; }
  .s500-indicator h3 { margin:0; align-self:center; }
  .s500-indicator-value { min-height:32px; }
  .s500-indicator p,.s500-indicator details,.s500-position-track { grid-column:1/-1; margin-top:0; }
  .s500-position-track { margin-bottom:0; }
  .s500-indicator-value { font-size:23px; }
  .s500-overview .hmi-counts small { display:block; margin-top:3px; }
  .s500-reading { font-size:11px; }
}

@media(max-width:767px) {
  :root body.user-service .home-search-entry:has(+ .home-market-summary) { margin-bottom:8px; }
  :root body.user-service .home-market-summary { display:flex; gap:8px; min-height:44px; box-sizing:border-box; padding:6px 0; margin:0; border-bottom:0; }
  .home-market-summary .hms-label { font-size:12px; white-space:nowrap; }
  .home-market-summary .hms-value { font-size:17px; min-width:0; }
  .home-market-summary .hms-change { font-size:11px; white-space:nowrap; }
  .home-market-summary .hms-date { display:none; }
  .home-market-summary .hms-link { font-size:0; }
  .home-market-summary .hms-link::after { content:'↗'; font-size:14px; }
}
@media(max-width:767px) {
  .s500-heading { margin-bottom:16px; }
  :root body.user-service .s500-overview { padding:12px; }
  .s500-overview .hmi-content { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:12px; min-height:0; }
  .s500-overview .hmi-value { font-size:28px; margin:6px 0; }
  .s500-overview .hmi-quote>.hmi-caption:first-child { font-size:10px; }
  .s500-overview .hmi-change { font-size:10px; }
  .s500-overview .hmi-change strong { font-size:12px; margin-left:2px; }
  .s500-overview .hmi-quote>.hmi-caption:last-child { font-size:10px; }
  .s500-overview .hmi-chart svg { height:82px; }
  .s500-overview .s500-chart-title { font-size:10px; }
  .s500-overview .s500-chart-title span { display:none; }
  .s500-overview .hmi-chart-labels { font-size:9px; }
  .s500-overview .hmi-breadth { grid-column:1/-1; padding-top:8px; }
  .s500-overview .hmi-counts { margin:0 0 6px; gap:4px; font-size:11px; }
  .s500-overview .hmi-counts small { display:inline; font-size:9px; margin:0 0 0 2px; }
  .s500-overview .hmi-counts strong { margin-left:1px; }
  .s500-overview .hmi-bar { margin-bottom:0; height:4px; }
}
@media(max-width:767px) {
  .s500-overview .hmi-chart-labels span:nth-child(2) { display:inline; }
  .s500-overview .s500-chart-title::after { content:'기준 100'; color:var(--ui-muted); font-size:9px; }
}
@media(max-width:767px) {
  .s500-controls input,.s500-controls select { font-size:13px; min-height:44px; padding:8px 10px; }
  .s500-controls input::placeholder { font-size:13px; }
  .s500-controls label:last-child { width:128px; }
  .s500-table th:first-child,.s500-table td:first-child { white-space:nowrap; }
}

.s500-controls select[hidden] { display:none; }
.s500-controls .s500-sort { width:100%; }
.s500-sort .market-select-trigger { display:flex; align-items:center; gap:8px; width:100%; min-height:44px; padding:8px 10px; border:1px solid var(--ui-line); background:var(--ui-surface); color:var(--ui-ink); font-size:13px; font-weight:400; text-align:left; }
body.user-service .s500-sort .market-select-menu { left:auto; right:0; width:180px; }
.s500-sort .market-select-menu[hidden] { display:none; }
.s500-sort .market-select-options button { display:block; width:100%; min-height:44px; padding:8px; border:0; background:transparent; color:var(--ui-ink); font-size:13px; text-align:left; }
body.user-service .s500-sort .s500-open-up { top:auto; bottom:calc(100% + 4px); }

.s500-chart-stage { position:relative; min-width:0; outline-offset:4px; border-radius:4px; }
.s500-chart-stage:focus-visible { outline:2px solid var(--ui-muted); }
.s500-chart-stage svg { touch-action:pan-y; }
.s500-chart-tooltip { position:absolute; z-index:2; pointer-events:none; display:grid; gap:2px; min-width:92px; box-sizing:border-box; padding:7px 10px; border:1px solid var(--ui-line); border-radius:6px; background:var(--ui-surface); color:var(--ui-ink); box-shadow:0 3px 12px rgb(0 0 0 / .12); opacity:0; transform:translateY(4px); transition:opacity 160ms ease,transform 160ms ease,left 160ms ease,top 160ms ease; font-variant-numeric:tabular-nums; }
.s500-chart-tooltip time { font-size:10px; line-height:1.4; color:var(--ui-muted); }
.s500-chart-tooltip strong { font-size:14px; line-height:1.4; }
.s500-chart-guide { stroke:var(--ui-muted); stroke-width:1; stroke-dasharray:3 4; }
.s500-chart-active { fill:var(--ui-surface); stroke:#4e9285; stroke-width:3; }
.s500-chart-guide,.s500-chart-active { pointer-events:none; opacity:0; transition:transform 160ms ease,opacity 160ms ease; }
.is-inspecting .s500-chart-tooltip { opacity:1; transform:translateY(0); }
.is-inspecting .s500-chart-guide { opacity:.45; }
.is-inspecting .s500-chart-active { opacity:1; }
@media(prefers-reduced-motion:reduce) {
  .s500-chart-tooltip,.s500-chart-guide,.s500-chart-active { transition:none; }
}

.s500-table .s500-column-sort { display:inline-flex; align-items:center; justify-content:flex-end; gap:4px; min-height:36px; padding:0; border:0; border-radius:3px; background:transparent; color:inherit; font:inherit; cursor:pointer; white-space:nowrap; }
.s500-column-sort span { display:inline-block; width:10px; opacity:.5; }
.s500-table th[aria-sort]:not([aria-sort='none']) { color:var(--ui-ink); }
.s500-table th[aria-sort]:not([aria-sort='none']) span { opacity:1; }
.s500-column-sort:hover { color:var(--ui-ink); }
.s500-column-sort:focus-visible { outline:2px solid var(--ui-muted); outline-offset:3px; }
@media(max-width:640px) { .s500-table .s500-column-sort { min-height:44px; gap:2px; } }

/* Home discovery: search and market context share one desktop row. */
:root body.user-service .home-discovery-row { display:grid; grid-template-columns:minmax(0,2fr) minmax(320px,1fr); align-items:start; gap:24px; margin-bottom:16px; }
:root body.user-service .home-discovery-row .home-search-entry { min-width:0; max-width:none; margin:0; }
:root body.user-service .home-discovery-row .home-market-summary { display:grid; grid-template-columns:auto 1fr auto; align-content:center; gap:2px 12px; min-height:58px; margin:0; padding:0 16px; border:0; border-left:1px solid var(--ui-line); box-sizing:border-box; transition:background-color 160ms ease; }
.home-discovery-row .hms-label { font-size:13px; }
.home-discovery-row .hms-value { font-size:23px; line-height:1.2; }
.home-discovery-row .hms-change { grid-column:1/3; font-size:11px; }
.home-discovery-row .hms-link { grid-column:3; grid-row:1/3; font-size:0; }
.home-discovery-row .hms-link::after { content:'↗'; font-size:16px; }
:root body.user-service .home-discovery-row .home-market-summary:hover { background:var(--ui-surface-subtle); }
.home-discovery-row .home-market-summary:focus-visible { outline:2px solid var(--ui-focus); outline-offset:3px; }
:root body.user-service .home-discovery-row + .home-quick-grid { border-top:0; padding-bottom:12px; margin-bottom:24px; }
:root body.user-service .home-discovery-row + .home-quick-grid .home-quick-card { border:0; }
@media(max-width:767px) {
 :root body.user-service .home-discovery-row { grid-template-columns:minmax(0,1fr); gap:4px; margin:12px 0 4px; }
 :root body.user-service .home-discovery-row .home-market-summary { display:flex; min-height:40px; padding:4px 0; gap:8px; border:0; }
 .home-discovery-row .home-market-summary .hms-label { font-size:12px; }
 .home-discovery-row .home-market-summary .hms-value { font-size:17px; }
 .home-discovery-row .hms-date { display:none; }
 :root body.user-service .home-discovery-row + .home-quick-grid { padding-bottom:8px; margin-bottom:20px; }
 :root body.user-service .home-discovery-row + .home-quick-grid .home-quick-card { padding:8px; }
}
@media(prefers-reduced-motion:reduce) { :root body.user-service .home-discovery-row .home-market-summary { transition:none; } }
.s500-membership { display:flex; align-items:center; flex-wrap:wrap; gap:8px 16px; margin:12px 0; color:var(--ui-muted); font-size:12px; }
.s500-membership details { position:relative; }
.s500-membership summary { cursor:pointer; min-height:32px; display:flex; align-items:center; color:var(--ui-ink); }
.s500-membership summary::before { content:'▸'; margin-right:5px; }
.s500-membership details[open] summary::before { content:'▾'; }
.s500-change-list { display:grid; gap:10px; max-height:220px; overflow:auto; padding:12px; border:1px solid var(--ui-line); border-radius:4px; background:var(--ui-surface); }
.s500-change-list small { color:var(--ui-muted); white-space:nowrap; }
.s500-rank-change { white-space:nowrap; font-variant-numeric:tabular-nums; }
.s500-in { color:var(--ui-ink); font-size:10px; font-weight:700; border:1px solid var(--ui-line); border-radius:3px; padding:2px 4px; }
.s500-streak { display:inline-flex; align-items:center; gap:2px; margin-left:5px; color:#b47710; }
.s500-streak svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.s500-streak small { font-size:10px; }
@media(max-width:640px){ .s500-streak { display:flex; justify-content:flex-end; margin:3px 0 0; }.s500-rank-change { width:42px; }.s500-membership { font-size:11px; gap:6px 12px; } }
.s500-table th:last-child { white-space:nowrap; }
@media(max-width:640px){ .s500-table th:last-child { font-size:10px; } }

.s500-membership[hidden] { display:none; }

/* Membership controls share the section title; disclosures overlay the list. */
.s500-members-title { display:flex; align-items:center; min-width:0; gap:12px; }
.s500-members-title h2 { white-space:nowrap; }
.s500-members-title .s500-membership { position:relative; flex-wrap:nowrap; gap:10px; margin:0; }
.s500-members-divider { color:var(--ui-line); }
.s500-members-title .s500-membership details { position:static; }
.s500-members-title .s500-membership summary { white-space:nowrap; min-height:36px; }
.s500-members-title .s500-change-list { position:absolute; z-index:20; top:100%; left:0; width:320px; max-width:calc(100vw - 40px); box-sizing:border-box; box-shadow:0 8px 24px #0002; }
@media(max-width:640px) {
 .s500-members-title { gap:8px; }
 .s500-members-title .s500-membership { gap:8px; }
 .s500-members-title .s500-change-list { left:-80px; width:300px; }
 .s500-members header { gap:8px; }
 .s500-total { font-size:10px; white-space:nowrap; }
}

.s500-change-player { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
.s500-change-player .s500-player { cursor:default; min-width:0; }
.s500-change-player .s500-player strong { font-size:13px; }
.s500-change-player .s500-player img { width:24px; height:20px; }
.s500-change-player > small { flex-shrink:0; }

/* Full-width search with a dedicated market overview beside purchase recommendations. */
:root body.user-service .home-discovery-row { grid-template-columns:minmax(0,1fr); }
:root body.user-service #homeModeView .home-product-context .home-market-summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; align-items:center; margin:0; padding:0; border:0; min-width:0; }
.home-product-context .hms-label { grid-column:1; grid-row:1; font-size:14px; white-space:nowrap; }
.home-product-context .hms-value { grid-column:1; grid-row:2; font-size:36px; line-height:1.3; }
.home-product-context .hms-change { grid-column:2; grid-row:2; font-size:12px; line-height:1.5; text-align:right; white-space:nowrap; }
.home-product-context .hms-date { display:inline; }
.home-product-context .hms-link { grid-column:2; grid-row:1; font-size:0; }
.home-product-context .hms-link::after { content:'↗'; font-size:16px; }
.home-product-context .home-market-summary:focus-visible { outline:2px solid var(--ui-focus); outline-offset:3px; }
@media(max-width:767px) {
 :root body.user-service .home-discovery-row { margin-bottom:16px; }
 .home-product-context .hms-value { font-size:30px; }
}

.home-product-context .hms-details { grid-column:1 / -1; display:grid; gap:12px; margin-top:6px; min-width:0; }
.home-product-context .hms-details[hidden] { display:none; }
.hms-period { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:11px; color:var(--ui-muted); }
.hms-period b { font-size:12px; font-variant-numeric:tabular-nums; }
.hms-trend { display:grid; gap:4px; }
.hms-trend svg { display:block; width:100%; height:128px; color:var(--ui-muted); }
.hms-trend-dates { display:flex; justify-content:space-between; color:var(--ui-muted); font-size:10px; font-variant-numeric:tabular-nums; }
.hms-breadth { display:grid; gap:6px; padding-top:8px; border-top:1px solid var(--ui-line); }
.hms-breadth-title { font-size:10px; color:var(--ui-muted); }
.hms-breadth-counts { display:flex; justify-content:space-between; gap:8px; font-size:11px; color:var(--ui-muted); }
.hms-breadth-counts b { font-variant-numeric:tabular-nums; font-weight:700; }
.hms-breadth-bar { display:flex; width:100%; height:4px; overflow:hidden; }
.hms-breadth-bar i { display:block; }

.home-product-context .hms-asof { grid-column:1 / -1; font-size:10px; line-height:1.5; color:var(--ui-muted); }
.home-product-context .home-market-summary.is-unavailable .hms-value { grid-column:1 / -1; font-size:12px; white-space:normal; }
.home-product-context .home-market-summary.is-unavailable .hms-link { display:none; }

@media(max-width:767px) { .home-product-context .hms-trend svg { height:100px; } }

.home-product-context .hms-trend svg { height:72px; }

/* Index constituents reuse the season/strength treatment of the member table. */
.hms-movers { margin-top:18px; padding-top:14px; border-top:1px solid var(--ui-line); }
.hms-movers[hidden] { display:none; }
.hms-movers header { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
.hms-movers h3 { margin:0; font-size:13px; font-weight:700; }
.hms-movers header small { font-size:10px; color:var(--ui-muted); }
.hms-mover { display:grid; grid-template-columns:62px minmax(0,1fr) auto; align-items:center; gap:8px; width:100%; min-height:44px; padding:6px 0; border:0; background:transparent; text-align:left; cursor:pointer; color:inherit; }
.hms-mover > small { font-size:11px; color:var(--ui-muted); }
.hms-mover .s500-player { min-width:0; gap:6px; }
.hms-mover .s500-player strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.hms-mover .s500-player img { width:24px; height:20px; object-fit:contain; flex-shrink:0; }
.hms-mover > b { font-size:12px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.hms-mover:hover { background:var(--ui-surface-soft,#f5f6f8); }
.hms-mover:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
.hms-mover-empty { display:flex; justify-content:space-between; min-height:44px; align-items:center; font-size:11px; color:var(--ui-muted); }
@media(max-width:767px) { .hms-mover .s500-player strong { font-size:15px; } }
