.cmh-wrap{--bg:#0c1220; --fg:#e6edf3; --muted:#9aa4b2; --panel:#0f172a; background:var(--bg); color:var(--fg); border:1px solid rgba(148,163,184,.2); border-radius:16px; overflow:hidden; font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}
.cmh-wrap[data-theme="light"]{--bg:#ffffff; --fg:#0b1220; --muted:#475569; --panel:#ffffff;}
@media (prefers-color-scheme: light){
  .cmh-wrap[data-theme="auto"]{--bg:#ffffff; --fg:#0b1220; --muted:#475569; --panel:#ffffff;}
}
@media (prefers-color-scheme: dark){
  .cmh-wrap[data-theme="auto"]{--bg:#0c1220; --fg:#e6edf3; --muted:#9aa4b2; --panel:#0f172a;}
}
.cmh-toolbar{display:flex; align-items:center; justify-content:space-between; padding:10px 12px; border-bottom:1px solid rgba(148,163,184,.2); background:#0a0f1c}
.cmh-toggle{display:inline-flex; gap:6px; background:#0d1323; padding:4px; border-radius:10px; border:1px solid rgba(148,163,184,.25); overflow:auto; -webkit-overflow-scrolling:touch}
.cmh-toggle button{font-size:12px; color:#cbd5e1; background:transparent; border:0; padding:6px 10px; border-radius:8px; cursor:pointer; min-width:44px}
.cmh-toggle button:focus{outline:2px solid rgba(148,163,184,.6); outline-offset:2px}
.cmh-toggle button.active{background:#101827; color:#fff}
.cmh-body{display:grid; grid-template-columns: 3fr 1fr; gap:12px; padding:12px}
.cmh-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.cmh-section{border:1px solid rgba(148,163,184,.2); background:var(--panel); border-radius:14px; overflow:hidden; min-height:220px}
.cmh-section-title{font-size:12px; color:var(--muted); padding:6px 8px; border-bottom:1px solid rgba(148,163,184,.15); line-height:1.2}
.cmh-treemap{position:relative; height:clamp(220px, 42vw, 360px)}
.cmh-node{position:absolute; overflow:hidden; border:1px solid rgba(0,0,0,.12); display:flex; align-items:center; justify-content:center; text-align:center}
.cmh-node-inner{display:flex; flex-direction:column; gap:2px; color:#fff; line-height:1.05; text-align:center; padding:2px}
.cmh-node .sym{font-weight:900; letter-spacing:.5px; white-space:nowrap}
.cmh-node .price,.cmh-node .chg{font-size:12px; opacity:.85; white-space:nowrap}
/* Bubbles */
.cmh-node.circle{ border-radius:9999px; }
.cmh-node.circle .cmh-node-inner{ align-items:center; text-align:center; }
.cmh-news{border:1px solid rgba(148,163,184,.2); background:var(--panel); border-radius:12px; padding:8px; height:100%; overflow:auto}
.cmh-news-title{font-weight:700; margin-bottom:8px}
.cmh-news-item{border-top:1px solid rgba(148,163,184,.15); padding:8px 0}
.cmh-news-item:first-child{border-top:0}
.cmh-news-item a{color:#d1d5db; text-decoration:none}
.cmh-news-item a:hover{color:#fff}
.cmh-attr{font-size:12px; color:var(--muted)}
@media (max-width: 1024px){
  .cmh-body{grid-template-columns:1fr}
  .cmh-news{order:-1; max-height:240px}
}
@media (max-width: 640px){
  .cmh-toolbar{flex-wrap:wrap; gap:8px}
  .cmh-grid{grid-template-columns:1fr}
  .cmh-treemap{height:clamp(200px, 55vw, 320px)}
}
