/* Approved image direction: pale eucalyptus, white surfaces, deep emerald. */
:root {
  color-scheme:light; --sidebar-w:224px;
  --bg:#eaf4ef; --bg2:#e3efe9; --panel:#fff; --panel2:#f3f7f5;
  --panel3:#e9f3ed; --line:#dce7e1; --line2:#9bc4af;
  --text:#10241c; --text-dim:#3c554a; --muted:#64796e;
  --accent:#08653e; --accent2:#28a65d; --info:#247854;
  --pos:#078144; --neg:#c04432; --warn:#9d6c1d;
}
html,body { background:var(--bg); color:var(--text); }
body { font-family:"Segoe UI Variable Text","Segoe UI",Arial,sans-serif; }
::selection { background:#bee8cf; color:#134b30; }
aside.sidebar { background:linear-gradient(165deg,#e0efe7,#edf5f0); border-right:1px solid #cedfd5; }
.brand { gap:10px; }
.brand-logo { width:37px; height:37px; flex:none; background:none; border:0; box-shadow:none; border-radius:0; }
.brand-logo svg { width:36px; height:36px; fill:none; stroke:#15513b; stroke-width:4.5; stroke-linecap:round; }
.brand-text { color:#152a21; font-size:18px; font-weight:700; letter-spacing:-.6px; }
.brand-tag { visibility:hidden; padding:4px !important; height:12px; }
.nav-section { color:#698076; font-weight:500; letter-spacing:.5px; }
.nav-item { color:#294c3c; font-size:13px; font-weight:500; border-radius:8px; gap:13px; }
.nav-item:hover,.nav-item:hover:not(.active) { background:#dceee2; color:#0b5635; }
.nav-item.active { background:linear-gradient(110deg,#075b37,#087046); border:1px solid #0b6a41; color:#fff; box-shadow:0 4px 13px #17653c1a; }
.nav-item.active::before { display:none; }
.nav-item .nav-count { background:#d8e9de; color:#436751; }
.nav-item.active .nav-count { background:#ffffff26; color:white; }
.profile-card { border-color:#ccded2; }
.contact-label { color:#607a69; }
.contact-btn { background:transparent; border-color:#c9ded0; border-radius:6px; }
.contact-btn:hover { background:#d6eedd; border-color:#8ab89a; }
.linkedin::before,.instagram::before,.gmail::before { color:#587c65; }
header.topbar { min-height:62px; background:rgba(237,247,241,.96); border-color:#d3e3da; padding:14px 26px; }
.page-head-inline h1 { font-size:18px; font-weight:600; }
.topbar .stats,#page-subtitle { display:none; }
.clock-pill,.conn { border:0; background:none; color:#607b6a; padding:6px 4px; font-size:12px; }
.page { max-width:1700px; padding:24px 26px 40px; }
.workspace-heading { padding:0; border:0; background:none; box-shadow:none; gap:22px; margin-bottom:22px; }
.workspace-heading > :first-child { flex:1 1 390px; }
.eyebrow,.workspace-meta { display:none; }
.workspace-heading h2 { color:#101e18; font-size:clamp(28px,2.7vw,42px); font-weight:750; letter-spacing:-1.6px; margin:0 0 7px; line-height:1.12; }
.workspace-heading p { color:#627d6e; font-size:14px; font-weight:400; }
.headline-panel { flex:1 1 390px; padding:13px 16px; background:#fff; border:1px solid #dce9e1; border-radius:10px; box-shadow:0 3px 9px #17533309; }
.headline-label,.headline-hint,.headline-time { color:#637d6c; }
.headline-dot { background:#15884e; }
.headline-ticker { color:#163b28; font-weight:550; font-size:12px; }
.headline-item strong { background:#e2f3e8; color:#116a3a; border:0; }
.hero-grid { gap:14px; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell,.activity { background:#fff; border:1px solid #d9e7de; border-radius:10px; box-shadow:0 4px 12px #174e2f0b; }
.hero-tile { min-height:194px; padding:18px; }
.hero-tile.equity-tile,.hero-tile:has(#hero-equity) { background:#fff; border:1px solid #d9e7de; }
#risk-block,#strategies-block,#autopilot-block { border:1px solid #d9e7de; }
.hero-tile:hover,.info-card:hover,.card:hover,.market-tile:hover,.perf-cell:hover { border-color:#9dc9af; box-shadow:0 7px 18px #17533312; }
.hero-tile .tile-head { color:#182d22; text-transform:none; letter-spacing:-.2px; font-size:14px; font-weight:600; gap:11px; }
.hero-tile .tile-icon,.info-card .info-icon { width:25px; height:27px; background:none; border:0; border-radius:0; color:#145039; }
.hero-tile .tile-value { font-size:clamp(24px,2.4vw,36px); font-weight:750; letter-spacing:-1px; margin-top:22px; line-height:1.15; }
.hero-tile .tile-sub { color:#6b8072; font-size:11px; line-height:1.5; margin-top:10px; }
.equity-detail,.pnl-details { font-size:11px; margin-top:16px; color:#6b8072; }
.equity-detail { display:flex; justify-content:space-between; gap:8px; }
.equity-detail strong { color:#376a4e; font-weight:600; }
.pnl-details { display:grid; gap:9px; }
.pnl-details > div { display:flex; justify-content:space-between; gap:8px; }
#hero-mood { font-size:27px; text-align:center; }
.sessions { display:grid; grid-template-columns:1fr; gap:0; margin-top:12px; }
.session-pill { padding:6px 0; background:none; border:0; border-radius:0; display:flex; align-items:center; gap:8px; color:#647c6c; font-size:12px; }
.session-pill::before { content:""; width:8px; height:8px; border-radius:50%; background:#b6c5bc; }
.session-pill .name { color:#3b5847; font-weight:500; margin-right:auto; }
.session-pill .state { font-size:11px; opacity:1; }
.session-pill.live { background:none; border:0; color:#198444; }
.session-pill.live::before { background:#39b65d; }
.session-pill.live .name { color:#3b5847; }
.mood-bar { height:8px; border-radius:4px; background:linear-gradient(90deg,#61c975,#12834a); margin-top:16px !important; }
.mood-bar .needle { height:12px; top:-2px; width:3px; background:#0b4a2b; box-shadow:none; }
.topbar .mood-bar { height:3px; }
.row3 { gap:14px; margin-top:16px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.info-card { padding:17px; min-height:268px; }
.info-head { gap:11px !important; }
.info-card .info-title { color:#1d3427; font-size:14px; text-transform:none; letter-spacing:-.2px; font-weight:600; }
.info-card .info-pill { font-size:9px; font-weight:500; background:#edf6ef; color:#528260; padding:4px 6px; border:0; border-radius:4px; }
.info-body { padding-top:15px; }
.info-cta { margin-top:14px; padding:10px 12px; min-height:36px; border:0; background:#f0f4f2; color:#4f6659; font-size:11px; font-weight:500; border-radius:6px; box-shadow:none; }
.info-cta:hover { background:#e2f2e8; color:#11663b; border:0; }
.info-cta .arrow { color:#405f4c; }
.risk-layout { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:center; height:100%; }
.risk-gauge { position:relative; text-align:center; }
.risk-gauge svg { display:block; width:100%; height:auto; overflow:visible; }
.risk-gauge .gauge-track { fill:none; stroke:#e2eae5; stroke-width:13; stroke-linecap:round; }
.risk-gauge .gauge-fill { fill:none; stroke:var(--pos); stroke-width:13; stroke-linecap:round; }
.gauge-text { margin-top:-37px; position:relative; font-size:25px; font-weight:700; letter-spacing:-.7px; }
.gauge-caption { font-size:10px; color:#6f8376; margin-top:4px; }
.risk-details { display:grid; gap:10px; font-size:10px; }
.risk-details div { display:flex; justify-content:space-between; gap:6px; border-bottom:1px solid #eef3ef; padding-bottom:5px; }
.risk-details span { color:#6a8172; }
.risk-details strong { color:#354d3f; font-weight:500; }
.strat-mini-list { gap:0; }
.strat-mini { background:none; border:0; border-radius:0; border-bottom:1px solid #edf3ef; padding:10px 0; grid-template-columns:1fr auto; }
.strat-mini:last-child { border-bottom:0; }
.strat-mini .name { color:#1c3929; font-weight:550; font-size:12px; display:flex; align-items:center; gap:8px; }
.strat-mini .meta { color:#6c8576; font-size:10px; margin:3px 0 0 32px; }
.strat-mini .pnl { font-size:14px; align-self:center; }
.strategy-icon { width:24px; height:27px; flex-shrink:0; display:grid; place-items:center; border-radius:5px; background:#e6f5eb; color:#16824c; }
.autopilot-summary { display:flex; align-items:center; gap:16px; padding:8px 0; }
.autopilot-avatar { width:78px; height:90px; flex-shrink:0; display:grid; place-items:center; background:#eaf7ef; border-radius:10px; color:#16583a; }
.autopilot-avatar .ui-icon { width:47px; height:47px; stroke-width:1.5; }
.autopilot-copy small { color:#607a69; }
.autopilot-copy strong { display:block; font-size:24px; font-weight:650; color:#153622; margin:4px 0; }
.autopilot-copy p { font-size:10px; color:#67806f; line-height:1.6; margin:7px 0; }
.autopilot-state { font-size:10px; color:#35764d; }
.allocation-line { font-size:10px; color:#668070; padding-top:9px; }
.empty-illus { padding:20px 4px; }
.empty-illus .empty-circle,.empty-illus.offline .empty-circle,.risk-ring { background:#edf6ef !important; border:1px solid #d7e7dc; border-radius:12px; box-shadow:none !important; }
.empty-illus .empty-circle::before,.risk-ring::before { background:#edf6ef !important; border-radius:9px; }
.empty-illus .empty-circle .emoji { background:none !important; color:#4d8463; }
.empty-illus .empty-title { color:#466a54; font-weight:550; }
.empty-illus .empty-sub { color:#748d7c; }
.activity { padding:16px; }
.activity-head { padding:0 0 14px; background:none; border:0; }
.activity-title .text { font-size:15px; font-weight:600; text-transform:none; letter-spacing:0; color:#213a2b; }
.activity-title .icon { background:none; color:#19563b; }
.activity .view-all { background:#f0f5f1; border-radius:6px; color:#597260; font-weight:500; font-size:10px; }
.activity-table-wrap { overflow-x:auto; }
.activity-table { width:100%; border-collapse:collapse; text-align:left; font-size:12px; white-space:nowrap; }
.activity-table th { font-size:11px; font-weight:500; color:#768b7e; background:#f4f7f5; padding:9px 12px; }
.activity-table td { border-bottom:1px solid #eef3ef; padding:10px 12px; color:#3d5646; }
.activity-table tr:last-child td { border-bottom:0; }
.activity-table .pnl-pos { color:var(--pos); font-weight:650; }
.activity-table .pnl-neg { color:var(--neg); font-weight:650; }
.activity-message { padding:22px 12px; font-size:12px; color:#738d7c; text-align:center; }
.trade-chip { padding:4px 13px; border-radius:5px; background:#e7f5eb; color:#178144; font-size:10px; }
.trade-chip.sell { color:#b06625; background:#fff0df; }
.trade-chip.closed { color:#18723e; background:#e8f4eb; }
.card::before { background:#99d0ac; height:2px; }
.card.up::before { background:var(--pos); }.card.down::before { background:var(--neg); }
.trade-row,.news-item,.signal { background:#f8fcf9; border-color:#dce9e0; }
.trade-row:hover,.news-item:hover { background:#eaf6ee; }
.trade-row.win { border-left-color:var(--pos); }.trade-row.loss { border-left-color:var(--neg); }
.news-item.imminent { background:#fff7f0; border-left-color:var(--neg); }.news-item.soon { border-left-color:var(--warn); }
.perf-cell .psym { background:#e5f3ea; color:#397a50; }
.toast { background:#f5fff8; border-color:#bad6c3; color:#284e35; box-shadow:0 5px 18px #174e2f15; }
.streak-chip,.live-badge { background:#e5f4e9; color:#347b48; box-shadow:none; }
.ui-icon { width:23px; height:23px; display:block; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.ui-icon .icon-tone { fill:currentColor; fill-opacity:.045; stroke:none; }
.risk-dialog { width:min(560px,calc(100vw - 32px)); padding:24px; border:1px solid #bbd8c6; border-radius:14px; background:#fff; color:var(--text); box-shadow:0 20px 80px #102a2040; }
.risk-dialog::backdrop { background:#173c2d70; backdrop-filter:blur(3px); }
.risk-dialog-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.risk-dialog-head h2 { margin:0; font-size:20px; }
.risk-dialog-head button { background:#edf6f0; color:#416b51; border:0; border-radius:8px; width:36px; height:36px; font-size:24px; cursor:pointer; }
.risk-dialog .risk-layout { grid-template-columns:1fr 1fr; }
.risk-dialog p { margin:24px 0 0; font-size:12px; line-height:1.7; color:var(--muted); }
.nav-icon { color:inherit; width:24px; display:grid; place-items:center; }
.empty-circle .ui-icon { width:25px; height:25px; }
.hero-tile,.info-card,.card,.market-tile,.perf-cell,.activity,.hero-tile.equity-tile,.hero-tile:has(#hero-equity),#risk-block,#strategies-block,#autopilot-block { border-color:#abc8b8; box-shadow:0 3px 9px #174e2f10; }
.chart-row { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:14px; margin-top:16px; }
.chart-card { min-width:0; padding:18px; border:1px solid #abc8b8; border-radius:10px; background:#fff; box-shadow:0 3px 9px #174e2f10; }
.chart-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.chart-heading h2 { font-size:15px; font-weight:600; margin:0 0 6px; letter-spacing:-.2px; }
.chart-heading p { font-size:10px; color:var(--muted); margin:0; line-height:1.5; }
.chart-heading > strong { font-size:21px; white-space:nowrap; letter-spacing:-.5px; }
.chart-period { font-size:10px; padding:4px 8px; background:#edf6ef; color:#528260; border-radius:4px; }
.chart-body { margin-top:18px; min-height:196px; }
.pnl-svg { width:100%; height:auto; display:block; overflow:visible; }
.chart-gridline { stroke:#e8f0eb; stroke-width:1; }
.chart-zero { stroke:#b9cebf; stroke-width:1; stroke-dasharray:4 4; }
.chart-label { font-size:10px; fill:#6b8475; }
.chart-point { cursor:crosshair; transition:r .15s; }
.chart-point:hover,.chart-point:focus { r:7; outline:none; stroke-width:3; }
.chart-detail { display:block; min-height:30px; color:#627d6c; font-size:10px; line-height:1.6; margin-top:8px; }
.chart-empty { min-height:190px; display:grid; place-items:center; text-align:center; padding:20px; color:#748d7c; font-size:12px; }
.strategy-bars { display:grid; gap:12px; }
.strategy-bar-label { display:flex; justify-content:space-between; gap:8px; font-size:11px; margin-bottom:6px; }
.strategy-bar-label strong { font-weight:600; }
.strategy-bar-track { height:9px; background:#f0f5f2; border-radius:4px; position:relative; }
.strategy-bar-zero { position:absolute; left:50%; top:-2px; bottom:-2px; width:1px; background:#aec5b6; z-index:1; }
.strategy-bar-fill { position:absolute; top:0; bottom:0; border-radius:3px; background:linear-gradient(90deg,#52b777,#078144); }
.strategy-bar-fill.negative { background:#d87961; }
.strategy-bar-row small { display:block; font-size:9px; color:#7b9283; margin-top:4px; }
.strategy-bar-row:hover,.strategy-bar-row:focus { background:#f4faf6; }
.bar-axis { display:flex; justify-content:space-between; color:#7b9283; font-size:9px; margin-top:10px; }
@media(max-width:900px) { .chart-row { grid-template-columns:1fr; } }
@media(max-width:600px) { .chart-card { padding:14px; }.chart-heading > strong { font-size:17px; }.chart-heading h2 { font-size:14px; }.chart-body { min-height:150px; }.pnl-svg { min-height:150px; }.chart-row { gap:12px; } }
@keyframes jump-focus { 0%,35% { outline:2px solid #75b88d; outline-offset:5px; } 100% { outline:2px solid transparent; outline-offset:12px; } }
@media(max-width:1250px) and (min-width:901px) { .info-card { padding:13px; }.info-card .info-title { font-size:12px; }.info-card .info-pill { display:none; }.risk-layout { gap:8px; }.autopilot-avatar { width:60px; }.autopilot-copy strong { font-size:20px; } }
@media(max-width:1100px) { .workspace-heading { flex-wrap:wrap; gap:14px; }.headline-panel { flex-basis:100%; }.row3 { grid-template-columns:1fr; }.info-card { min-height:220px; }.risk-layout { grid-template-columns:180px 1fr; }.autopilot-summary { justify-content:center; }.risk-details { font-size:12px; } }
@media(max-width:900px) { .page { padding:20px 18px 36px; }.brand-tag { height:8px; } }
@media(max-width:600px) {
  .page { padding:20px 12px 30px; }.workspace-heading h2 { font-size:30px; }.workspace-heading p { font-size:12px; }
  .hero-grid { grid-template-columns:1fr 1fr; gap:10px; }.hero-tile { padding:13px; min-height:188px; }
  .hero-tile .tile-head { font-size:12px; gap:6px; }.hero-tile .tile-icon { display:grid; width:20px; }.hero-tile .tile-icon .ui-icon { width:19px; }
  .hero-tile .tile-value { font-size:24px; overflow-wrap:anywhere; }#hero-mood { font-size:23px; }
  .sessions { grid-template-columns:1fr; }.session-pill { font-size:11px; padding:6px 0; }.session-pill .state { font-size:10px; }
  .equity-detail,.pnl-details { font-size:10px; }.equity-detail { flex-wrap:wrap; }
  .row3 { gap:12px; margin-top:12px; }.info-card { padding:16px; }.risk-layout { grid-template-columns:140px 1fr; }
  .activity { padding:12px; }.activity-table { min-width:620px; }.activity-head { gap:8px; }.activity-title .text { font-size:14px; }
}
