.market-csv{vertical-align:middle;color:#3155b7;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;margin-left:7px;padding:4px 7px;font-size:9px;font-weight:800}.csv-modal-bg{z-index:80;background:#0f172a94;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.csv-modal{background:#fff;border-radius:14px;width:min(620px,100%);max-height:85vh;padding:28px;position:relative;overflow:auto;box-shadow:0 24px 70px #0f172a4d}.csv-modal>small{color:#3155b7;font-size:10px;font-weight:900}.csv-modal>div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.csv-modal label{border:1px solid #e0e5ed;border-radius:8px;grid-template-columns:auto 8px 1fr auto;align-items:center;gap:8px;padding:10px;font-size:12px;font-weight:700;display:grid}.csv-modal label i{border-radius:4px;width:7px;height:24px}.csv-modal label span{color:#7a8699;font-size:10px}.csv-modal footer{justify-content:space-between;gap:10px;margin-top:18px;display:flex}.csv-modal footer button{background:#fff;border:1px solid #ccd5e2;border-radius:7px;padding:9px 12px;font-weight:800}.csv-modal footer .download{color:#fff;background:#203e74}.csv-close{background:0 0;border:0;font-size:24px;position:absolute;top:14px;right:16px}@media (max-width:600px){.csv-modal>div{grid-template-columns:1fr}}
.stocks-page{color:#172033;background:#f4f6f9;min-height:100vh}.stocks-hero{justify-content:space-between;align-items:flex-end;max-width:1180px;margin:auto;padding:38px 24px 28px;display:flex}.stocks-hero small,.section-title small,.market-pulse small{letter-spacing:1.4px;color:#3155b7;font-size:10px;font-weight:800}.stocks-hero h1{margin:7px 0;font-size:38px}.stocks-hero p{color:#69758a;margin:0}.stocks-hero aside{text-align:right}.stocks-hero aside span,.stocks-hero aside small{color:#7a8699;font-size:11px;display:block}.stocks-hero aside b{margin:5px 0;font-size:18px;display:block}.pulse-grid,.stocks-section,.stocks-note{max-width:1180px;margin-left:auto;margin-right:auto}.pulse-grid{grid-template-columns:1fr 1fr;gap:14px;padding:0 24px;display:grid}.market-pulse{background:#fff;border:1px solid #e0e5ed;border-radius:14px;justify-content:space-between;align-items:center;padding:19px 21px;display:flex;position:relative;overflow:hidden}.market-pulse:before{content:"";background:#edb4b8;width:6px;position:absolute;inset:0 auto 0 0}.market-pulse.cool:before{background:#adc8eb}.market-pulse h3{margin:5px 0 0;font-size:18px}.market-pulse dl{margin:0;display:flex}.market-pulse dl div{border-left:1px solid #e6eaf0;min-width:104px;padding:0 16px}.market-pulse dt{color:#7a8699;font-size:10px}.market-pulse dd{margin:7px 0 0;font-weight:800}.stocks-section{padding:16px 24px}.section-title{justify-content:space-between;align-items:flex-end;margin:18px 0 11px;display:flex}.section-title h2{margin:4px 0 0;font-size:22px}.section-title>span{color:#7a8699;font-size:11px}.stocks-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.stocks-card{background:#fff;border:1px solid #e0e5ed;border-radius:14px;min-width:0;padding:20px}.stocks-card>header{justify-content:space-between;align-items:flex-start;display:flex}.company{align-items:center;gap:10px;display:flex}.company i{border-radius:6px;width:7px;height:37px}.company small,.quote small{color:#7c8798;font-size:10px;display:block}.company h2{margin:3px 0 0;font-size:18px}.quote{text-align:right}.quote b{margin:3px 0;font:800 19px ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.quote em{border-radius:6px;padding:3px 7px;font-size:11px;font-style:normal;font-weight:800;display:inline-block}.quote em.rise{color:#b52b39;background:#fbe7e8}.quote em.fall{color:#245d9c;background:#e7f0fb}.range{justify-content:flex-end;gap:4px;margin:14px 0 3px;display:flex}.range button{color:#687487;background:#fff;border:1px solid #d7dde6;border-radius:6px;padding:4px 9px;font-size:10px;font-weight:700}.range button.active{color:#fff;background:#203e74;border-color:#203e74}.stocks-chart{width:100%;height:auto;display:block}.stocks-chart line{stroke:#e6eaf0}.stocks-chart line.axis{stroke:#aab4c2}.stocks-chart text{fill:#788497;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.stocks-card>footer{border-top:1px solid #e5e9ef;grid-template-columns:1fr .8fr 1.35fr;gap:10px;padding-top:13px;display:grid}.stocks-card>footer span{color:#788497;font-size:10px}.stocks-card>footer b{color:#29364a;margin-top:5px;font-size:12px;display:block}.rise-text{color:#b52b39!important}.fall-text{color:#245d9c!important}.stocks-note{color:#7b8798;border-top:1px solid #dde2ea;margin-top:16px;padding:24px;font-size:10px}.stocks-empty{color:#8792a2;place-items:center;height:210px;display:grid}.ds-site-tabs a.on{color:#1428a0;border-bottom-color:#1428a0}.stocks-chart .price-data-label,.stocks-chart .consensus-value-label,.stocks-chart .consensus-upside-label{fill:#27364e;paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round;font-size:11px;font-weight:800}.stocks-chart .consensus-value-label,.stocks-chart .consensus-upside-label{font-size:9px}.stocks-chart .rise-label{fill:#b52b39}.stocks-chart .fall-label{fill:#245d9c}.quote>div{justify-content:flex-end;align-items:center;gap:7px;display:flex}.quote>div>span{font-size:10px;font-weight:800}.consensus-point{fill:#f59e0b;stroke:#fff;stroke-width:2px;cursor:pointer}.consensus-point:hover{stroke:#9a5b00;stroke-width:3px}.consensus-point.average{fill:#fff;stroke:#e24b3b;stroke-width:3px}.chart-legend{color:#707d90;flex-wrap:wrap;gap:13px;margin:0 0 12px;font-size:10px;display:flex}.chart-legend span{align-items:center;gap:5px;display:flex}.chart-legend i{width:13px;height:3px;display:inline-block}.chart-legend .consensus-dot,.chart-legend .average-dot{background:#f59e0b;border-radius:50%;width:9px;height:9px}.chart-legend .average-dot{background:#fff;border:2px solid #e24b3b}@media (max-width:800px){.stocks-hero,.pulse-grid,.stocks-section{padding-left:16px;padding-right:16px}.stocks-hero{padding-top:26px}.stocks-hero aside{display:none}.stocks-hero h1{font-size:30px}.pulse-grid,.stocks-grid{grid-template-columns:1fr}.market-pulse{display:block}.market-pulse dl{margin-top:16px}.market-pulse dl div{flex:1;min-width:0;padding:0 12px}.market-pulse dl div:first-child{border-left:0;padding-left:0}.stocks-card{padding:15px}.stocks-card>footer{grid-template-columns:1fr 1fr}.stocks-card>footer span:last-child{grid-column:1/-1}.stocks-note{margin-left:16px;margin-right:16px;padding-left:0;padding-right:0}}
