.hub-actions { display:grid; gap:4px; padding:5px; }
.hub-link { min-height:27px; display:grid; place-items:center; padding:0 7px; border:1px solid rgba(54,247,234,.15); border-radius:8px; background:rgba(0,0,0,.25); color:#eafffd; text-decoration:none; font-size:7px; font-weight:900; text-transform:uppercase; cursor:pointer; }
.grid { flex:1; min-height:0; display:grid !important; grid-template-columns:minmax(220px,.82fr) minmax(430px,1.65fr) minmax(260px,.94fr) !important; grid-template-rows:minmax(135px,.70fr) minmax(155px,.82fr) minmax(155px,.78fr) !important; grid-template-areas:"sentiment map metrics" "risk map funding" "liquidations patterns patterns"; gap:clamp(7px,.62vw,11px); padding:0 clamp(10px,.95vw,18px) clamp(10px,.95vw,18px); overflow:hidden; }
.sentiment-panel,.risk-panel,.map-panel,.metrics-panel,.funding-panel,.liquidation-panel,.patterns-panel { grid-column:auto !important; grid-row:auto !important; width:auto !important; height:auto !important; max-height:none !important; margin:0 !important; min-width:0; min-height:0; }
.sentiment-panel { grid-area:sentiment; } .risk-panel { grid-area:risk; } .map-panel { grid-area:map; } .metrics-panel { grid-area:metrics; } .funding-panel { grid-area:funding; } .liquidation-panel { grid-area:liquidations; } .patterns-panel { grid-area:patterns; }
.panel { padding:clamp(8px,.62vw,12px); border-radius:13px; background:linear-gradient(155deg,rgba(7,20,39,.93),rgba(2,8,19,.96)); backdrop-filter:none !important; -webkit-backdrop-filter:none !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 28px rgba(0,0,0,.16); contain:layout paint; }
.panel::before { opacity:.72; }
.ph { margin-bottom:7px; } .pt { font-size:clamp(9px,.58vw,11px); } .ps { max-width:55%; font-size:7px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.orb-wrap { flex:1; min-height:68px; height:auto; margin:0; }
#moodOrb { width:min(128px,72%); height:min(128px,72%); min-width:88px; min-height:88px; }
.orb-value { font-size:clamp(30px,2.1vw,43px); } .orb-caption { top:21%; max-width:86%; font-size:7px; text-align:center; }
.mf { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:4px; padding-top:0; border:0; }
.mf span { min-width:0; padding:5px 6px; border:1px solid rgba(255,255,255,.05); border-radius:8px; background:rgba(0,0,0,.2); font-size:7px; }
.mf strong { margin-top:2px; font-size:9px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.map-panel { border-radius:13px; background:radial-gradient(circle at 50% 48%,#071426,#01050c 70%); box-shadow:inset 0 0 54px rgba(0,0,0,.75),0 14px 42px rgba(0,0,0,.23); contain:strict; }
