        .stock-insight-section { display: none; }
        .stock-insight-section.open { display: block; }
        .stock-insight-loading { padding: 24px; color: #64748b; font-size: var(--font-base); font-weight: 850; text-align: center; }
        .stock-insight-content { display: grid; gap: 14px; }
        .stock-insight-card { min-width: 0; padding: 22px; overflow: hidden; }
        .stock-insight-market-card { padding: 0; }
        .stock-insight-market-grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 3fr); }
        .stock-insight-market-grid.single { grid-template-columns: minmax(0, 1fr); }
        .stock-insight-market-panel { min-width: 0; padding: 22px; }
        .stock-insight-market-panel + .stock-insight-market-panel { border-left: 1px solid #e5eaf1; }
        .stock-insight-title { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
        .stock-insight-title h3 { margin: 0; color: var(--text); font-size: var(--font-title); font-weight: 950; }
        .stock-insight-title > span { color: #8995a5; font-size: var(--font-small); font-weight: 880; }
        .stock-insight-table-scroll,
        .stock-insight-chart-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
        .stock-insight-table-scroll::-webkit-scrollbar,
        .stock-insight-chart-scroll::-webkit-scrollbar { display: none; }
        .stock-insight-table { width: 100%; min-width: 660px; margin-top: 14px; border-collapse: collapse; table-layout: fixed; }
        .stock-insight-table th,
        .stock-insight-table td { padding: 14px 12px; border-bottom: 1px solid #e5eaf1; text-align: right; }
        .stock-insight-table th { background: #f8fafc; color: #687385; font-size: var(--font-small); font-weight: 920; }
        .stock-insight-table th:first-child,
        .stock-insight-table td:first-child { width: 28%; text-align: left; }
        .stock-insight-table td:first-child strong { display: block; color: var(--text); font-size: var(--font-base); font-weight: 930; }
        .stock-insight-table td:first-child small { display: block; margin-top: 4px; color: #8b96a5; font-size: var(--font-small); font-weight: 780; }
        .stock-insight-return { color: #64748b; font-size: var(--font-large); font-weight: 950; }
        .stock-insight-return.positive { color: #dc2626; }
        .stock-insight-return.negative { color: #2563eb; }
        .stock-insight-svg { display: block; width: 100%; min-width: 720px; height: 320px; margin-top: 10px; }
        .stock-insight-svg-wide { min-width: 100%; max-width: none; }
        .stock-insight-svg-compact { width: 100% !important; min-width: 0; height: 280px; margin-top: 2px; }
        .stock-insight-range { display: inline-flex; gap: 4px; padding: 5px; border-radius: 13px; background: #f1f3f6; }
        .stock-insight-range button { min-width: 50px; padding: 7px 10px; border: 0; border-radius: 10px; background: transparent; color: #687385; font-size: 12px; font-weight: 930; }
        .stock-insight-range button.active { background: #fff; color: #2f80ed; box-shadow: 0 2px 7px rgba(30, 64, 175, .08); }
        .stock-insight-yield { color: #10b981; font-size: 26px; font-weight: 970; letter-spacing: -.6px; white-space: nowrap; }
        .stock-insight-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
        .stock-insight-summary-grid > div { padding: 16px; border: 1px solid #e1e7ef; border-radius: 13px; background: #f8fafc; text-align: center; }
        .stock-insight-summary-grid span { display: block; color: #8b96a5; font-size: 12px; font-weight: 850; }
        .stock-insight-summary-grid strong { display: block; margin-top: 7px; color: #2f80ed; font-size: 23px; font-weight: 960; }
        .stock-insight-summary-grid strong.red { color: #dc2626; }
        .stock-insight-summary-grid strong.green { color: #059669; }
        .stock-insight-dividend-charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
        .stock-insight-dividend-chart { min-width: 0; padding: 17px; border: 1px solid #e1e7ef; border-radius: 15px; background: #fbfcfe; }
        .stock-insight-dividend-chart .stock-insight-title h3 { font-size: var(--font-large); }
        .stock-insight-scroll-wrap { display: grid; gap: 10px; }
        .stock-insight-scroll-wrap.no-overflow .stock-insight-scrollbar { display: none; }
        .stock-insight-scrollbar { appearance: none; width: 100%; height: 22px; margin: 0; background: transparent; cursor: pointer; }
        .stock-insight-scrollbar::-webkit-slider-runnable-track { height: 8px; border-radius: 999px; background: #eef1f6; }
        .stock-insight-scrollbar::-webkit-slider-thumb { appearance: none; width: 64px; height: 8px; border-radius: 999px; background: #2f80ed; box-shadow: 0 0 0 4px rgba(47, 128, 237, .12); }
        .stock-insight-scrollbar::-moz-range-track { height: 8px; border-radius: 999px; background: #eef1f6; }
        .stock-insight-scrollbar::-moz-range-thumb { width: 64px; height: 8px; border: 0; border-radius: 999px; background: #2f80ed; }
        .stock-insight-dna-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
        .stock-insight-dna-grid > div { padding: 20px; border: 1px solid; border-radius: 16px; text-align: center; }
        .stock-insight-dna-grid .up { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
        .stock-insight-dna-grid .down { border-color: #bfdbfe; background: #eff6ff; color: #1e3a8a; }
        .stock-insight-dna-grid span,
        .stock-insight-dna-grid small { display: block; font-size: 12px; font-weight: 850; }
        .stock-insight-dna-grid strong { display: block; margin: 9px 0; font-size: 36px; font-weight: 970; }
        .stock-insight-pattern-panel .stock-insight-title h3 { font-size: var(--font-title); }
        .stock-insight-pattern-panel .stock-insight-dna-grid { grid-template-columns: minmax(0, 1fr); gap: 9px; }
        .stock-insight-pattern-panel .stock-insight-dna-grid > div { padding: 15px 10px; border-radius: 13px; }
        .stock-insight-pattern-panel .stock-insight-dna-grid strong { margin: 6px 0; font-size: 30px; }
        .stock-insight-pattern-panel .stock-insight-patterns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .stock-insight-pattern-panel .stock-insight-patterns > span { padding: 10px; }
        .stock-insight-pattern-title { width: max-content; margin: 16px auto 10px; padding: 6px 10px; border-radius: 9px; background: #f1f3f6; color: #8b96a5; font-size: var(--font-small); font-weight: 900; }
        .stock-insight-patterns { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
        .stock-insight-patterns > span { padding: 12px; border: 1px solid #e1e7ef; border-radius: 12px; background: #f8fafc; }
        .stock-insight-patterns small { display: block; color: #8b96a5; font-size: var(--font-small); font-weight: 820; }
        .stock-insight-patterns strong { display: block; margin-top: 6px; color: var(--text); font-size: var(--font-large); font-weight: 950; }


@media (max-width: 700px) {
.stock-insight-market-grid { grid-template-columns: 1fr; }
.stock-insight-market-panel + .stock-insight-market-panel { border-top: 1px solid #e5eaf1; border-left: 0; }
.stock-insight-title { align-items: flex-start; flex-direction: column; }
.stock-insight-summary-grid, .stock-insight-dna-grid, .stock-insight-dividend-charts { grid-template-columns: 1fr; }
.stock-insight-patterns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
