.index-card{cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}
.index-card:hover{transform:translateY(-3px);border-color:#9dbbad;box-shadow:0 20px 42px rgba(25,61,48,.14)}
.sector-tools{text-align:right}.sector-tools input{width:250px;border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:#fff}.sector-tools p{margin-top:7px}
.table-card tbody tr[data-code]{cursor:pointer}.table-card tbody tr[data-code]:hover{background:#f1f6f2}.section-intro h2 small{font-size:12px;color:var(--muted);font-weight:400}
.chart-modal{position:fixed;inset:0;background:rgba(8,25,19,.68);z-index:30;display:none;place-items:center;padding:28px}.chart-modal.open{display:grid}
.chart-dialog{position:relative;width:min(980px,96vw);background:#fff;border-radius:20px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.25)}
.chart-close{position:absolute;right:20px;top:16px;border:0;background:#edf3ef;width:36px;height:36px;border-radius:50%;font-size:24px;color:var(--ink);cursor:pointer}
.chart-title h2{margin:0}.chart-title p{margin:6px 0 14px;color:var(--muted);font-size:12px}.chart-loading{height:390px;display:grid;place-items:center;color:var(--muted);background:#f7f9f6;border-radius:14px}.chart-loading.error{color:var(--red)}
#priceChart{width:100%;height:390px;display:none;background:linear-gradient(180deg,#fbfcfa,#f2f6f2);border-radius:14px}.chart-stats{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding-top:12px}
.chart-grid{stroke:#dce6de;stroke-width:1}.chart-line{fill:none;stroke:#1f6b50;stroke-width:3;vector-effect:non-scaling-stroke}.chart-area{fill:url(#chartFill)}.chart-label{font-size:12px;fill:#7c8b85}.source-live{color:var(--green)!important}
@media(max-width:760px){.sector-tools{text-align:left;margin-top:12px}.sector-tools input{width:100%}.chart-dialog{padding:18px}.chart-modal{padding:10px}}
