.cgb-trading-hub {
  height: calc(100dvh - var(--header));
  min-width: 0;
  overflow: hidden;
  padding: 14px;
  background: radial-gradient(circle at 48% 0%, rgba(0, 180, 255, .09), transparent 40%), #010814;
}
.cgb-hub-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; height: 100%; min-width: 0; }
.cgb-hub-layout.is-open { grid-template-columns: minmax(250px, 30%) minmax(0, 1fr); }
.cgb-hub-home { min-width: 0; overflow-y: auto; scrollbar-color: #1176a7 #020c19; padding: 3px; }
.cgb-hub-heading { padding: 4px 4px 15px; }
.cgb-hub-eyebrow, .cgb-hub-panel-kicker { color: #10daf4; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.cgb-hub-heading h1 { margin: 7px 0 4px; color: #f2fbff; font-size: clamp(27px, 2.2vw, 38px); letter-spacing: -.025em; }
.cgb-hub-heading p { margin: 0; color: #a6bdd3; font-size: 13px; line-height: 1.5; }
.cgb-hub-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.cgb-hub-card {
  position: relative; display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center;
  gap: 11px; min-width: 0; min-height: 86px; padding: 13px 42px 13px 13px; text-align: left;
  border: 1px solid #087ac7; border-radius: 10px; color: #f6fbff;
  background: linear-gradient(145deg, #092442, #06152b 60%, #030d1f);
  box-shadow: inset 0 1px rgba(118, 214, 255, .11), 0 0 18px rgba(0, 138, 255, .13);
  transition: border-color .16s, box-shadow .16s, transform .16s;
}
.cgb-hub-card:hover, .cgb-hub-card.is-active { border-color: #2bddfa; box-shadow: inset 0 1px rgba(118, 214, 255, .24), 0 0 22px rgba(0, 181, 255, .28); }
.cgb-hub-card:hover { transform: translateY(-2px); }
.cgb-hub-card:focus-visible, .cgb-hub-panel-actions button:focus-visible { outline: 2px solid #8bedff; outline-offset: 3px; }
.cgb-hub-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 8px; font-size: 22px; font-weight: 800; background: #0874ec; box-shadow: 0 0 15px #0874ec66; }
.cgb-hub-icon.green { background: #00bd9b; box-shadow: 0 0 15px #00bd9b66; }
.cgb-hub-icon.violet { background: #813af0; box-shadow: 0 0 15px #813af066; }
.cgb-hub-icon.cyan { background: #00aee3; box-shadow: 0 0 15px #00aee366; }
.cgb-hub-card-copy { display: block; min-width: 0; }
.cgb-hub-card-copy strong { font-size: 15px; line-height: 1.25; }
.cgb-hub-card-arrow { position: absolute; right: 12px; top: 50%; display: grid; width: 25px; height: 25px; place-items: center; border: 1px solid #0a92e7; border-radius: 50%; color: #ddfaff; font-size: 15px; transform: translateY(-50%); }
.cgb-hub-layout.is-open .cgb-hub-cards { grid-template-columns: 1fr; }
.cgb-hub-layout.is-open .cgb-hub-card { min-height: 76px; grid-template-columns: 38px minmax(0, 1fr); }
.cgb-hub-panel { position: relative; display: flex; flex-direction: column; min-width: 0; min-height: 0; overflow: hidden; border: 1px solid #0ba9ee; border-radius: 13px; background: #031021; box-shadow: 0 0 28px #008de64d, inset 0 1px #75d5ff2b; }
.cgb-hub-panel::before { position: absolute; z-index: 2; top: 0; right: 18%; left: 18%; height: 1px; content: ""; background: linear-gradient(90deg, transparent, #6ceaff, transparent); opacity: .75; }
.cgb-hub-panel[hidden] { display: none; }
.cgb-hub-panel-head { position: relative; display: flex; flex: none; align-items: center; justify-content: space-between; gap: 16px; min-height: 76px; padding: 11px 14px 11px 16px; border-bottom: 1px solid #167dac57; background: radial-gradient(circle at 16% 0%, #0a477066, transparent 42%), linear-gradient(115deg, #062441, #04182d 62%, #031323); }
.cgb-hub-panel-heading { min-width: 0; }
.cgb-hub-panel-head h2 { margin: 3px 0 0; color: #f4fbff; font-size: 19px; line-height: 1.15; letter-spacing: -.01em; }
.cgb-hub-panel-head p { margin: 4px 0 0; color: #91b7cf; font-size: 10px; line-height: 1.3; }
.cgb-hub-panel-actions { display: flex; flex: none; gap: 6px; }
.cgb-hub-panel-actions button { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #23658e; border-radius: 8px; color: #eefaff; background: linear-gradient(145deg, #092642, #051426); box-shadow: inset 0 1px #8cdcff17; font-size: 18px; }
.cgb-hub-panel-actions button:hover { border-color: #42dafa; background: #0a3454; box-shadow: 0 0 16px #11bfe33b; }
.cgb-hub-panel-content.main { flex: 1; height: auto; min-height: 0; min-width: 0; overflow: auto; padding: 14px 14px 22px; background: #020c19; scrollbar-color: #1188b9 #020c19; }
.cgb-hub-panel-content .info-page { max-width: none; }
.cgb-hub-panel-content .btc-chart-panel, .cgb-hub-panel-content .ct-chart-panel { min-width: 0; }
.cgb-hub-loading, .cgb-hub-failure { display: grid; min-height: 170px; place-items: center; border: 1px dashed #1a6c99; border-radius: 8px; color: #a9d8eb; font-size: 12px; text-align: center; }
.cgb-hub-failure { border-color: #bd6673; color: #ffd3d9; }
.cgb-hub-panel.is-terminal { border-color: #17bde7; background: #020b17; box-shadow: 0 0 38px #008de64a, 0 18px 48px #0009, inset 0 1px #84eaff2e; }
.cgb-hub-panel.is-terminal .cgb-hub-panel-content.main { overflow: hidden; padding: 11px; background: radial-gradient(circle at 50% -20%, #0a3152 0, #031426 36%, #010811 76%); }
.cgb-hub-terminal { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 9px; height: 100%; min-height: 420px; padding: 9px; border: 1px solid #12577b8c; border-radius: 11px; background: linear-gradient(150deg, #061a2d, #020a15 62%); box-shadow: inset 0 1px #8be6ff16, 0 14px 34px #0007; }
.cgb-hub-terminal-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 32px; padding: 0 3px 0 5px; color: #c8e7f5; }
.cgb-hub-terminal-dashboard { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .025em; }
.cgb-hub-terminal-dashboard i { width: 7px; height: 7px; border-radius: 50%; background: #15e8bb; box-shadow: 0 0 10px #15e8bb; }
.cgb-hub-terminal-badge { padding: 4px 8px; border: 1px solid #177798; border-radius: 999px; color: #8eeeff; background: #07314a80; font-size: 8px; font-weight: 800; letter-spacing: .13em; }
.cgb-hub-terminal-frame { min-width: 0; min-height: 0; overflow: hidden; border: 1px solid #137ba59c; border-radius: 9px; background: #010713; box-shadow: 0 0 0 1px #00111e, inset 0 0 35px #0073a617; }
.cgb-hub-terminal iframe { display: block; width: 100%; height: 100%; min-height: 0; border: 0; background: #020914; color-scheme: dark; }
.cgb-hub-layout.is-expanded .cgb-hub-panel, .cgb-hub-panel:fullscreen { position: fixed; inset: 0; z-index: 150; width: 100vw; height: 100dvh; border-radius: 0; }
.cgb-hub-layout.is-expanded .cgb-hub-panel-content.main, .cgb-hub-panel:fullscreen .cgb-hub-panel-content.main { padding: clamp(12px, 2vw, 26px); }
@media (max-width: 1300px) { .cgb-hub-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 1100px) { .cgb-hub-layout.is-open { grid-template-columns: minmax(210px, 30%) minmax(0, 1fr); } .cgb-hub-card-copy strong { font-size: 14px; } }
@media (max-width: 900px) { .cgb-hub-layout.is-open { grid-template-columns: minmax(0, 1fr); } .cgb-hub-layout.is-open .cgb-hub-panel { position: fixed; inset: 0; z-index: 90; border-radius: 0; } .cgb-hub-layout.is-open .cgb-hub-home { overflow: hidden; } }
@media (max-width: 768px) { .cgb-trading-hub { height: calc(100dvh - 60px); padding: 11px; } .cgb-hub-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cgb-hub-panel-content.main { height: auto; min-height: 0; overflow: auto; } }
@media (max-width: 560px) { .cgb-hub-cards { grid-template-columns: minmax(0, 1fr); } .cgb-hub-card { min-height: 76px; } .cgb-hub-heading h1 { font-size: 29px; } .cgb-hub-panel-head { min-height: 68px; } .cgb-hub-panel-content.main { padding: 10px; } .cgb-hub-panel.is-terminal .cgb-hub-panel-content.main { padding: 7px; } .cgb-hub-terminal { min-height: 360px; padding: 6px; } }
@media (prefers-reduced-motion: reduce) { .cgb-hub-card { transition: none; } .cgb-hub-card:hover { transform: none; } }
