/* Agent QuantX — responsive terminal layout, with the vivid theme below. */
:root {
  color-scheme: dark;
  --bg:#040e18; --bg2:#061b22; --panel:#072129; --panel2:#092b36;
  --panel3:#0a3341; --line:#0d3f4f; --line2:#14627c;
  --text:#edf3f2; --text-dim:#9cddf3; --muted:#50c3e9;
  --pos:#72e5bc; --neg:#ff818d; --warn:#e8c47d;
  --info:#7ed3ef; --accent:#8ce8c3; --accent2:#75bdb5; --sidebar-w:224px;
}
html { scroll-behavior:smooth; }
body { font-family:Inter,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
::selection { background:#365f51; color:#fff; }
.aurora { display:none; }
aside.sidebar { background:#05181f; padding:28px 16px 20px; gap:6px; }
.brand { gap:10px; padding:0 4px; }
.brand-logo { width:34px; height:34px; border-radius:10px; background:var(--accent); animation:none; box-shadow:none; }
.brand-text { background:none; color:var(--text); font-size:18px; letter-spacing:-.6px; animation:none; }
.brand-tag { font-size:8px; letter-spacing:1.8px; padding:12px 4px 30px; margin:0; }
.nav-section { padding-top:28px; font-size:9px; }
.nav-item { min-height:44px; font-size:12px; border-radius:8px; gap:11px; }
.nav-item:hover { transform:none; background:#092a35; }
.nav-item.active { background:#1c302a; border-color:#30483e; color:#a6f4d3; box-shadow:none; }
.nav-item.active::before { background:var(--accent); box-shadow:none; top:28%; bottom:28%; width:2px; }
.nav-item:hover .nav-icon { transform:none; }
.nav-item.active .nav-count { background:#2c453b; color:var(--accent); }
.nav-icon { filter:grayscale(1); opacity:.8; }
.profile-card { background:transparent; padding:16px 8px 0; border:0; border-top:1px solid var(--line); border-radius:0; }
.contact-label { font-size:11px; color:var(--muted); }
header.topbar { background:rgba(11,14,17,.94); padding:20px 32px; gap:18px; }
.page-head-inline h1 { font-size:18px; font-weight:600; letter-spacing:-.4px; }
#page-subtitle { margin-top:4px; max-width:330px; line-height:1.5; }
.topbar .stats { gap:22px; }
.stat-mini .label { font-size:8px; letter-spacing:1.1px; }
.stat-mini .value { font-size:12px; }
.clock-pill,.conn { border-radius:6px; padding:8px 10px; font-size:10px; background:#07212a; }
.clock-pill > span:first-child { display:none; }
.dot { width:6px; height:6px; animation:none; }
.page { padding:32px 32px 64px; max-width:1640px; }
.workspace-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:30px; }
.eyebrow { color:var(--accent); font-size:9px; font-weight:600; letter-spacing:2px; }
.workspace-heading h2 { font-size:clamp(25px,3vw,38px); letter-spacing:-1.6px; font-weight:500; margin:10px 0; }
.workspace-heading p { color:var(--muted); font-size:12px; line-height:1.6; margin:0; }
.workspace-meta { display:flex; flex-direction:column; align-items:flex-end; gap:10px; color:var(--muted); font-size:10px; white-space:nowrap; }
.workspace-tag { color:var(--accent); border:1px solid #355347; background:#15251f; border-radius:5px; padding:8px 12px; }
.hero-grid { gap:14px; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell { background:var(--panel); border:1px solid var(--line); border-radius:12px; box-shadow:none; transform:none !important; will-change:auto; }
.hero-tile:hover,.info-card:hover,.card:hover,.market-tile:hover,.perf-cell:hover { border-color:var(--line2); box-shadow:0 8px 24px #0002; }
.hero-tile::after { display:none; }
.hero-tile { padding:20px; min-height:160px; }
.hero-tile:has(#hero-equity) { background:linear-gradient(125deg,#1d322a,#14201d); border-color:#385648; }
.hero-tile .tile-head { font-size:9px; letter-spacing:1px; gap:8px; }
.hero-tile .tile-icon,.info-card .info-icon { background:#23312e; color:var(--accent); border-radius:6px; width:25px; height:25px; font-size:12px; filter:grayscale(.7); }
.hero-tile .tile-value { font-size:clamp(23px,2.3vw,34px); font-weight:500; letter-spacing:-1px; line-height:1.25; overflow-wrap:anywhere; }
.hero-tile .tile-sub { font-size:10px; margin-top:9px; }
#hero-mood { font-size:24px; }
.sessions { grid-template-columns:repeat(2,1fr); margin-top:14px; }
.session-pill { display:flex; justify-content:space-between; align-items:center; gap:4px; padding:6px; font-size:10px; border-radius:4px; }
.session-pill.live { background:#1e322b; border-color:#365648; }
.row3 { gap:16px; margin-top:22px; }
.info-card { padding:20px; min-height:290px; }
.info-card .info-title { font-size:10px; letter-spacing:.6px; }
.info-card .info-pill { font-size:9px; background:#0b3847; border-radius:4px; white-space:nowrap; }
.info-cta { background:transparent; border-color:var(--line); border-radius:6px; padding:12px; font-size:11px; }
.info-cta:hover { transform:none; border-color:#476055; }
.empty-illus { padding:24px 8px; }
.empty-illus .empty-circle,.empty-illus.offline .empty-circle,.risk-ring { width:70px !important; height:70px !important; background:#253530 !important; box-shadow:none !important; border:1px solid #3c5049; }
.empty-illus .empty-circle::before,.risk-ring::before { background:var(--panel); border:0; inset:5px !important; }
.empty-illus .empty-circle .emoji { font-size:24px; filter:grayscale(1); opacity:.65; }
.empty-illus .empty-title { font-size:12px; font-weight:500; }
.empty-illus .empty-sub { font-size:11px; line-height:1.7; max-width:280px; }
section.block { margin-top:28px; scroll-margin-top:120px; }
section.block h2 { font-size:10px; letter-spacing:1.1px; }
section.block h2::before { background:var(--accent); height:10px; width:2px; }
.activity { background:var(--panel); border:1px solid var(--line); border-radius:12px; }
.activity-head { border-bottom:1px solid var(--line); padding:18px 20px; }
.activity-title .text { font-size:13px; font-weight:500; }
.activity-title .icon { filter:grayscale(1); }
.view-all { color:var(--accent); font-size:11px; }
.card,.market-tile,.perf-cell { padding:20px; }
.card .title { font-size:13px; }
.card .row { padding:7px 0; }
.trade-row,.news-item,.signal { background:var(--panel); border-color:var(--line); line-height:1.6; }
.trade-row:hover,.news-item:hover { background:var(--panel2); }
.strat-mini { background:#082833; border:1px solid #0d3f4f; }
.mood-bar { opacity:.65; height:3px; }
.risk-ring,.ap-circle { box-shadow:none; }
#confetti-canvas { display:none; }
button,a,[role=button] { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.info-card,[id=strategies] { scroll-margin-top:130px; }
@media(min-width:1500px) { .row3 { grid-template-columns:1fr 1.2fr 1fr; } }
@media(max-width:1200px) { .topbar .stats { display:none; } .row3 { grid-template-columns:1fr; } .info-card { min-height:220px; } }
@media(max-width:900px) { aside.sidebar { background:#061c23; } header.topbar { padding:16px 20px; } .page { padding:24px 20px 50px; } .workspace-heading { margin-bottom:24px; } }
@media(max-width:600px) {
  header.topbar { gap:10px; padding:14px 16px; } .topbar-left { gap:8px; } .page-head-inline h1 { font-size:16px; }
  #page-subtitle,.topbar .clock-pill { display:none; } .conn { font-size:9px; padding:7px; }
  .page { padding:24px 14px 40px; } .workspace-heading { align-items:flex-start; } .workspace-meta { display:none; }
  .workspace-heading h2 { letter-spacing:-1px; } .workspace-heading p { font-size:11px; }
  .hero-grid { grid-template-columns:1fr 1fr; gap:10px; } .hero-tile { padding:14px; min-height:155px; }
  .hero-tile .tile-head { font-size:8px; letter-spacing:.3px; } .hero-tile .tile-icon { display:none; }
  .hero-tile .tile-value { font-size:23px; } #hero-mood { font-size:20px; }
  .sessions { grid-template-columns:1fr; gap:3px; margin-top:9px; } .session-pill { padding:3px 5px; font-size:9px; }
  .info-card { padding:16px; } .grid,.market-grid,.perf-grid { grid-template-columns:1fr; }
  .trade-row,.news-item,.signal { display:flex; flex-wrap:wrap; gap:8px 12px; padding:14px; }
  .trade-row .pnl { margin-left:auto; } .news-item .nums,.signal .detail { width:100%; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

/* Unified midnight theme with one ocean-blue accent. */
:root {
  --bg:#061626; --bg2:#0a253f; --panel:#0c2d4d; --panel2:#103962;
  --panel3:#134577; --line:#154c82; --line2:#4396e8;
  --text:#f4f6ff; --text-dim:#d7e9fb; --muted:#98c5f2;
  --pos:#53efbc; --neg:#ff839e; --warn:#ffd17d;
  --accent:#a1d0ff; --accent2:#8dbff1; --info:#8dbff1;
}
body { background:var(--bg); }
aside.sidebar { background:linear-gradient(175deg,#0b2845,#081c2f 70%); border-color:#154a7e; }
.brand-logo { background:#84baf0; box-shadow:none; }
.brand-text { color:#f5f3ff; }
.brand-tag { color:#a4ccf4; }
.nav-icon { filter:none; opacity:1; }
.nav-item:hover { background:#134678; }
.nav-item.active { background:#134678; border-color:#368ee6; color:#fff; box-shadow:none; }
.nav-item.active::before { background:var(--accent); }
.nav-item.active .nav-count { background:#ffffff25; color:#fff; }
header.topbar { background:rgba(12,18,45,.94); border-color:#144678; }
.clock-pill,.conn { background:#0f355a; border-color:#145ba1; }
.workspace-heading { padding:16px 18px; border:1px solid #165089; border-radius:10px; background:#0d2e4e; box-shadow:none; }
.workspace-heading h2 { color:#fff; }
.eyebrow { color:var(--accent); }
.workspace-heading p { color:#c5dff8; }
.workspace-tag { color:#e7dcff; border-color:#4b9ae9; background:#1c7ddf35; }
.workspace-meta { color:#b9d8f6; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell { background:linear-gradient(145deg,#0f365c,#0b2743); border-color:#145ca4; box-shadow:0 8px 26px #00000022; }
.hero-tile:hover,.info-card:hover,.card:hover,.market-tile:hover,.perf-cell:hover { border-color:#7db6ef; box-shadow:0 10px 32px #1b7ad930; }
.hero-tile { border-top:1px solid var(--line); }
.hero-tile:has(#hero-equity) { background:var(--panel); border-color:var(--line); }
.hero-tile .tile-head { color:#d1e5fa; }
.hero-tile .tile-sub { color:#a9cff4; }
.hero-tile .tile-icon,.info-card .info-icon { background:#72b9ff29; color:#c9e4ff; filter:none; }
.session-pill { background:#091f354d; border-color:#185796; color:#abd0f5; }
.session-pill.live { background:#113e6a; border-color:#1f81e3; color:#cae4ff; }
.session-pill.live .name { color:#cae4ff; }
#risk-block,#strategies-block,#autopilot-block { border-top:1px solid var(--line); }
.info-card .info-pill { background:#165089; color:#d6ebff; }
.info-cta { background:#12427266; color:#daedff; border-color:#1560aa; }
.info-cta:hover { background:#195897; border-color:#79b3ee; }
.info-cta .arrow { color:#aad4ff; }
.empty-illus .empty-circle,.empty-illus.offline .empty-circle,.risk-ring { background:#1972cb !important; border-color:#2183e4; box-shadow:none !important; }
.empty-illus .empty-circle::before,.risk-ring::before { background:#0d2f50; }
.empty-illus .empty-circle .emoji { filter:none; opacity:1; }
.activity { background:linear-gradient(120deg,#0e3357,#0b2743); border-color:#145ca4; }
.activity-head { background:#12416f55; }
.activity-title .icon { filter:none; }
.strat-mini { background:#123f6c; border-color:#195999; }
.trade-row,.news-item,.signal { background:#0d2f51; }
.mood-bar { opacity:1; }
.contact-btn { background:#12406e; border-color:#1561ac; }
.contact-btn:hover { background:#145aa0; border-color:#90c1f1; }
::selection { background:#378fe6; color:white; }
@media(max-width:600px) { .workspace-heading { padding:20px 18px; border-radius:12px; } }

/* A viewport-sized navigation rail: the page scrolls, the menu stays put. */
aside.sidebar {
  position:fixed; inset:0 auto 0 0; width:var(--sidebar-w);
  height:100vh; height:100dvh; overflow:visible;
  padding:clamp(10px,2vh,22px) 14px; gap:clamp(2px,.55vh,5px); z-index:10;
}
main.col { grid-column:2; }
.sidebar > * { flex-shrink:0; }
.sidebar .brand-tag { padding:8px 4px clamp(8px,2vh,20px); }
.sidebar .nav-item { min-height:0; padding:clamp(6px,1.15vh,10px) 12px; line-height:20px; }
.sidebar .nav-section { padding:clamp(6px,1.3vh,12px) 12px 4px; }
.sidebar .sidebar-spacer { flex:1 1 0; min-height:0; }
.sidebar .profile-card { margin-top:6px; padding-top:12px; }
.nav-item { transition:background .2s,border-color .2s,transform .2s,box-shadow .2s; }
.nav-item:hover { transform:translateX(3px); }
.nav-item:active { transform:translateX(3px) scale(.97); }
.nav-item .nav-icon { transition:transform .2s; }
.nav-item:hover .nav-icon { transform:translateY(-2px) rotate(-6deg); }
.info-cta .arrow { transition:transform .2s; }
.info-cta:hover .arrow { transform:translateX(5px); }
.hero-tile,.info-card,.card,.market-tile,.perf-cell { transition:translate .22s,box-shadow .22s,border-color .22s; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  .hero-tile:hover,.info-card:hover,.card:hover,.market-tile:hover,.perf-cell:hover { translate:0 -4px; box-shadow:0 16px 35px #0005,0 0 20px #59a2ea20; }
}
.tab-pane.active { animation:panel-enter .32s ease-out both; }
@keyframes panel-enter { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
.jump-highlight { animation:jump-focus 1.4s ease-out; }
@keyframes jump-focus { 0%,35% { outline:2px solid #a6d3ff; outline-offset:5px; } 100% { outline:2px solid transparent; outline-offset:12px; } }
@media(max-height:700px) {
  .sidebar .nav-item { padding-top:5px; padding-bottom:5px; }
  .sidebar .brand-tag { padding-bottom:6px; }
  .sidebar .profile-card { display:block; padding:8px 4px 0; }
  .sidebar .profile-info { display:flex; align-items:center; gap:12px; }
  .sidebar .contact-buttons { margin:0; gap:6px; }
  .sidebar .contact-btn { width:28px; height:28px; border-radius:7px; }
}
@media(max-width:900px) {
  main.col { grid-column:1; }
  aside.sidebar { width:260px; left:-280px; z-index:30; }
  aside.sidebar.open { left:0; }
}
/* Short landscape screens use two columns so every destination remains visible. */
@media(max-height:540px) {
  aside.sidebar { display:grid; grid-template-columns:1fr 1fr; align-content:start; gap:4px; padding:10px; }
  .sidebar .brand,.sidebar .profile-card,.sidebar .nav-section { grid-column:1 / -1; }
  .sidebar .brand-tag,.sidebar .sidebar-spacer { display:none; }
  .sidebar .brand { margin-bottom:4px; }
  .sidebar .nav-item { padding:5px; gap:5px; font-size:10px; }
  .sidebar .nav-icon { font-size:12px; }
  .sidebar .nav-count { padding:1px 4px; font-size:8px; }
  .sidebar .nav-section { padding:4px; }
  .sidebar .profile-card { margin-top:4px; }
}
/* Compact spacing shared by all tabs. */
.page { padding:18px 22px 36px; }
.workspace-heading { margin-bottom:12px; }
.workspace-heading h2 { font-size:28px; margin:6px 0; letter-spacing:-.8px; }
.hero-grid,.row3,.grid,.market-grid,.perf-grid { gap:10px; }
.row3 { margin-top:12px; }
section.block { margin-top:14px; }
section.block h2 { margin-bottom:8px; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell,.activity { background:var(--panel); border-color:var(--line); border-radius:10px; box-shadow:none; }
.hero-tile { padding:14px; min-height:128px; }
.hero-tile .tile-value { margin-top:8px; font-size:28px; }
.hero-tile .tile-sub { margin-top:5px; }
.info-card { padding:14px; min-height:220px; }
.info-body { padding-top:8px; }
.info-cta { margin-top:8px; padding:9px 10px; min-height:36px; }
.empty-illus { padding:14px 6px; }
.empty-illus .empty-circle,.empty-illus.offline .empty-circle,.risk-ring { width:52px !important; height:52px !important; margin-bottom:10px; }
.empty-illus .empty-circle .emoji { font-size:21px; }
.activity-head { padding:12px 14px; }
.card,.market-tile,.perf-cell { padding:14px; }
.card .row { padding:5px 0; }
.perf-grid { margin-top:10px; }
.nav-icon,.tile-icon,.info-icon,.activity-title .icon,.empty-illus .emoji,.card .icon { filter:none !important; }
.mood-bar { background:linear-gradient(90deg,#134475,#66a9ec); }
.linkedin::before,.instagram::before,.gmail::before { color:var(--accent); }
@media(min-width:1201px) { .row3 { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:900px) { .page { padding:14px 14px 32px; } }
@media(max-width:600px) {
  .page { padding:12px 10px 28px; }
  .workspace-heading { padding:14px; margin-bottom:10px; }
  .workspace-heading h2 { font-size:24px; }
  .hero-grid,.row3,.grid,.market-grid,.perf-grid { gap:8px; }
  .hero-tile { padding:12px; min-height:128px; }
  .hero-tile .tile-value { font-size:23px; }
  .info-card { padding:12px; min-height:190px; }
  .row3,section.block { margin-top:10px; }
}

/* A restrained blue-ocean-blue finish, keeping the compact layout. */
:root {
  --bg:#071a2d; --panel:#0e3256; --panel2:#123f6c;
  --line:#185694; --line2:#68aaec; --accent:#a2d1ff; --accent2:#94caff;
  --muted:#a1caf3;
}
body { background:radial-gradient(ellipse at 80% 0%,#145aa126,transparent 55%),var(--bg); }
aside.sidebar { background:linear-gradient(170deg,#0d3053,#09223a 75%); }
.brand-logo { background:linear-gradient(135deg,#96cbff,#76bbff); box-shadow:0 3px 14px #70afed25; }
.nav-item.active { background:linear-gradient(110deg,#1b7cdd,#186dc2); border-color:#75b2ee; box-shadow:0 4px 14px #2886e425; }
.nav-item:hover:not(.active) { background:#14477a; }
.workspace-heading { background:linear-gradient(115deg,#113b65,#103a64); border-color:#186ec3; }
.workspace-tag { background:#1b79d72b; border-color:#3e93e7; color:#e8deff; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell,.activity {
  background:linear-gradient(140deg,#113b65,#0c2c4c); border-color:#145ca3;
  box-shadow:inset 0 1px 0 #c5e2ff06,0 3px 12px #00000012;
}
.hero-tile:has(#hero-equity) { background:linear-gradient(135deg,#12406e,#0e3459); border-color:#1972ca; }
#risk-block,#strategies-block,#autopilot-block { border-top-color:#2f8ae5; }
.hero-tile .tile-icon,.info-card .info-icon { background:#67aaec26; color:#bbddff; }
.empty-illus .empty-circle,.empty-illus.offline .empty-circle,.risk-ring {
  background:linear-gradient(145deg,#79b3ee,#519de9) !important;
  border-color:#5ba3eb; box-shadow:0 3px 15px #5fa5eb19 !important;
}
.empty-illus .empty-circle::before,.risk-ring::before { background:#0f3459; }
.info-cta { background:#1b7bdb1c; border-color:#1767b7; color:#e2dcff; }
.info-cta:hover { background:#1a76d242; border-color:#7bb5ef; }
.info-card .info-pill { background:#2484e428; color:#cee4fa; }
.activity-head { background:#2484e412; }
.strat-mini { background:#123f6c; }
.session-pill.live { background:#186dc238; border-color:#4798e8; color:#cfe7ff; }
.contact-btn { background:#1c7edf22; border-color:#186dc2; }

/* Economic calendar ticker in the overview header. */
.workspace-heading > :first-child { flex:0 1 330px; min-width:0; }
.headline-panel { flex:1 1 250px; min-width:0; padding:12px 14px; border:1px solid #285989; background:#071e3866; border-radius:8px; }
.headline-label,.headline-hint { display:flex; align-items:center; gap:7px; font-size:9px; color:#99c9f5; }
.headline-label { letter-spacing:1px; font-weight:700; }
.headline-label > span:last-child,.headline-hint > span { margin-left:auto; letter-spacing:0; font-weight:400; }
.headline-dot { width:5px; height:5px; background:#65caff; border-radius:50%; }
.headline-ticker { display:block; width:100%; overflow:hidden; text-align:left; margin:9px 0; padding:4px 0; border:0; background:none; color:#eef7ff; font:inherit; font-size:12px; cursor:pointer; border-radius:3px; }
.headline-track { display:flex; width:max-content; max-width:100%; }
.headline-track.is-moving { max-width:none; animation:headline-scroll var(--ticker-duration,30s) linear infinite; }
.headline-group { display:flex; align-items:center; flex-shrink:0; gap:24px; }
.is-moving .headline-group { padding-right:24px; }
.headline-item { display:inline-flex; align-items:center; gap:9px; white-space:nowrap; }
.headline-item strong { color:#8ad5ff; font-size:10px; background:#1b5280; padding:3px 5px; border-radius:4px; }
.headline-time { color:#a6c9e9; font-size:10px; }
.headline-ticker:hover .headline-track,.headline-ticker:focus .headline-track { animation-play-state:paused; }
@keyframes headline-scroll { to { transform:translateX(-50%); } }
@media(max-width:1100px) { .workspace-heading { flex-wrap:wrap; gap:12px; } .headline-panel { flex-basis:100%; order:3; } .workspace-meta { margin-left:auto; } }
@media(max-width:600px) { .headline-panel { padding:10px; } }
@media(prefers-reduced-motion:reduce) { .headline-ticker { overflow-x:auto; } .headline-track.is-moving { animation:none; } .headline-group[aria-hidden] { display:none; } }
