:root{color-scheme:light;--ht-navy: #0e2336;--ht-navy-deep: #08131f;--ht-paper: #f6fbff;--ht-paper-soft: #edf5fb;--ht-surface: rgba(255, 255, 255, .9);--ht-surface-strong: rgba(255, 255, 255, .98);--ht-surface-muted: rgba(16, 39, 61, .04);--ht-line: rgba(16, 39, 61, .1);--ht-line-strong: rgba(212, 175, 55, .26);--ht-text: #10273d;--ht-text-muted: #5b748d;--ht-text-soft: #7d90a3;--ht-gold: #d4af37;--ht-gold-light: #ffd66b;--ht-cyan: #37c9ff;--ht-success: #16a34a;--ht-success-soft: rgba(22, 163, 74, .12);--ht-warning: #b7791f;--ht-warning-soft: rgba(183, 121, 31, .12);--ht-critical: #dc2626;--ht-critical-soft: rgba(220, 38, 38, .12);--ht-info: #1d4ed8;--ht-info-soft: rgba(29, 78, 216, .1);--ht-shadow-soft: 0 18px 42px rgba(9, 19, 32, .12);--ht-shadow-strong: 0 28px 72px rgba(9, 19, 32, .16);--ht-shadow-gold: 0 18px 44px rgba(212, 175, 55, .18);--ht-radius-sm: 14px;--ht-radius-md: 20px;--ht-radius-lg: 28px;--sidebar-width: 300px;font-family:Inter,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ht-text);background:radial-gradient(circle at top left,rgba(55,201,255,.12),transparent 24%),radial-gradient(circle at top right,rgba(212,175,55,.12),transparent 24%),linear-gradient(180deg,#ffffff 0%,var(--ht-paper) 44%,var(--ht-paper-soft) 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}.dashboard-shell{display:grid;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh}.dashboard-shell__main{min-width:0;display:flex;flex-direction:column;background:radial-gradient(circle at 100% 0%,rgba(55,201,255,.08),transparent 22%),radial-gradient(circle at 0% 100%,rgba(212,175,55,.08),transparent 20%)}.dashboard-shell__content{padding:28px 30px 36px}.sidebar-nav{position:sticky;top:0;min-height:100vh;padding:28px 22px;background:radial-gradient(circle at top right,rgba(55,201,255,.12),transparent 24%),linear-gradient(180deg,var(--ht-navy-deep) 0%,var(--ht-navy) 52%,#132a42 100%);color:#e8f2ff;display:flex;flex-direction:column;gap:22px;border-right:1px solid rgba(255,255,255,.08);box-shadow:inset -1px 0 #ffffff08}.sidebar-nav__brand,.sidebar-nav__footer{padding:6px 8px}.sidebar-nav__logo{display:block;width:164px;max-width:100%;height:auto;margin-bottom:18px}.sidebar-nav__eyebrow,.top-bar__eyebrow,.page-header__eyebrow,.card__eyebrow,.sidebar-nav__hint,.overview-banner__eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}.sidebar-nav__brand .sidebar-nav__eyebrow,.sidebar-nav__hint{color:#e8f2ffa8}.sidebar-nav__title,.top-bar__title,.page-header__title,.card__title,.overview-banner__title{margin:0;line-height:1.06;font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.03em}.sidebar-nav__title{margin-top:10px;font-size:2rem}.sidebar-nav__subtitle,.sidebar-nav__footer p,.top-bar__subtitle,.page-header__description,.placeholder-page__description,.empty-state,.inline-warning,.overview-banner__description{color:var(--ht-text-muted);line-height:1.65}.sidebar-nav__subtitle,.sidebar-nav__footer p,.sidebar-nav__status-card p{color:#e8f2ffbd}.sidebar-nav__status-card{padding:18px;border-radius:var(--ht-radius-md);border:1px solid rgba(212,175,55,.18);background:radial-gradient(circle at top right,rgba(212,175,55,.16),transparent 40%),#ffffff0f;box-shadow:inset 0 1px #ffffff0a}.sidebar-nav__status-card strong{display:block;margin-top:8px;font-family:Space Grotesk,Inter,sans-serif;font-size:1.06rem;color:#fff}.sidebar-nav__menu{display:flex;flex-direction:column;gap:8px}.sidebar-nav__link{display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;color:#e8f2ffcc;transition:background .18s ease,color .18s ease,transform .18s ease,border-color .18s ease;border:1px solid transparent}.sidebar-nav__link:hover{background:#ffffff0f;color:#fff;transform:translate(2px);border-color:#ffffff0f}.sidebar-nav__link--active{background:linear-gradient(135deg,#ffffff14,#37c9ff1f),#ffffff0a;border-color:#d4af3738;color:#fff;box-shadow:inset 0 1px #ffffff0d}.sidebar-nav__link-marker{width:9px;height:9px;border-radius:999px;background:currentColor;opacity:.8;box-shadow:0 0 0 6px #ffffff0d}.top-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px 30px 20px;border-bottom:1px solid var(--ht-line);background:#ffffff9e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.top-bar__content{max-width:720px}.top-bar__eyebrow{color:var(--ht-gold)}.top-bar__title{font-size:clamp(1.7rem,2.2vw,2.25rem);color:var(--ht-text)}.top-bar__subtitle{margin:10px 0 0;max-width:60ch}.top-bar__badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.top-bar__badge,.status-pill,.meta-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;font-size:.82rem;font-weight:700}.top-bar__badge{background:var(--ht-surface);border:1px solid var(--ht-line);color:var(--ht-text)}.top-bar__badge--brand{color:var(--ht-navy);border-color:#d4af374d;background:linear-gradient(135deg,#d4af3729,#ffd66b33)}.top-bar__badge--success{color:var(--ht-success);border-color:#16a34a2e;background:var(--ht-success-soft)}.page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;margin-bottom:22px}.page-header__title{font-size:clamp(1.45rem,1.8vw,1.9rem);color:var(--ht-text)}.page-header__description{margin:10px 0 0;max-width:62ch}.page-header__actions{display:flex;align-items:center;justify-content:flex-end}.page-header__meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.meta-chip{color:var(--ht-text-muted);background:#ffffffb8;border:1px solid rgba(16,39,61,.08)}.button-secondary{border:1px solid rgba(16,39,61,.12);background:linear-gradient(180deg,#fff,#f7fbff);color:var(--ht-text);border-radius:999px;padding:12px 18px;cursor:pointer;box-shadow:var(--ht-shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.button-secondary:hover:not(:disabled){transform:translateY(-1px);border-color:#d4af373d;box-shadow:var(--ht-shadow-gold)}.button-secondary:focus-visible{outline:3px solid rgba(55,201,255,.2);outline-offset:2px}.button-secondary:disabled{cursor:wait;opacity:.72}.button-primary{border:1px solid rgba(212,175,55,.32);background:linear-gradient(135deg,var(--ht-gold),var(--ht-gold-light));color:#08131f;border-radius:999px;padding:12px 18px;cursor:pointer;font-weight:700;box-shadow:var(--ht-shadow-gold);transition:transform .18s ease,box-shadow .18s ease}.button-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 22px 48px #d4af3738}.button-primary:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.overview-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;margin-bottom:20px;padding:24px 26px;border-radius:var(--ht-radius-lg);border:1px solid var(--ht-line);box-shadow:var(--ht-shadow-soft);background:radial-gradient(circle at top right,rgba(212,175,55,.14),transparent 36%),linear-gradient(180deg,#fffffff5,#ffffffe0)}.overview-banner--ok{border-color:#16a34a2e}.overview-banner--warning{border-color:#b7791f3d}.overview-banner--critical{border-color:#dc262638}.overview-banner__eyebrow{color:var(--ht-gold)}.overview-banner__title{margin-top:8px;font-size:clamp(1.4rem,1.8vw,1.85rem)}.overview-banner__description{margin:10px 0 0;max-width:72ch}.overview-banner__stats{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:12px;min-width:min(100%,360px)}.overview-banner__stat{padding:14px 16px;border-radius:var(--ht-radius-sm);background:#10273d0a;border:1px solid rgba(16,39,61,.08)}.overview-banner__stat span{display:block;color:var(--ht-text-soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.overview-banner__stat strong{display:block;margin-top:8px;font-family:Space Grotesk,Inter,sans-serif;font-size:1rem;color:var(--ht-text);word-break:break-word}.kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.kpi-card,.card{background:linear-gradient(180deg,var(--ht-surface-strong) 0%,var(--ht-surface) 100%);border:1px solid var(--ht-line);border-radius:var(--ht-radius-lg);box-shadow:var(--ht-shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.kpi-card{position:relative;overflow:hidden;padding:18px 18px 20px}.kpi-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--ht-cyan),var(--ht-gold-light))}.kpi-card__label{color:var(--ht-text-muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.kpi-card__value{margin-top:12px;font-family:Space Grotesk,Inter,sans-serif;font-size:clamp(1.45rem,1.8vw,1.8rem);font-weight:700;color:var(--ht-text)}.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.overview-main,.placeholder-page{display:grid;gap:18px}.card{padding:22px}.card--rail{padding:18px}.card--error{border-color:#dc262633}.card__header{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:18px}.card__eyebrow{color:var(--ht-gold)}.card__title{font-size:1.2rem;color:var(--ht-text)}.status-pill--ok{background:var(--ht-success-soft);color:var(--ht-success)}.status-pill--warning{background:var(--ht-warning-soft);color:var(--ht-warning)}.status-pill--critical{background:var(--ht-critical-soft);color:var(--ht-critical)}.inline-callout{margin-bottom:18px;padding:14px 16px;border-radius:var(--ht-radius-sm);border:1px solid transparent;font-size:.95rem;line-height:1.55}.inline-callout--ok{background:var(--ht-success-soft);border-color:#16a34a29;color:#166534}.inline-callout--warning{background:var(--ht-warning-soft);border-color:#b7791f2e;color:#8a5a14}.inline-callout--critical{background:var(--ht-critical-soft);border-color:#dc26262e;color:#991b1b}.data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0}.data-list--compact{grid-template-columns:1fr;gap:10px}.data-list div{padding:12px 14px;border-radius:var(--ht-radius-sm);background:var(--ht-surface-muted);border:1px solid rgba(16,39,61,.06)}.data-list dt{margin:0 0 8px;color:var(--ht-text-soft);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.data-list dd{margin:0;font-weight:700;word-break:break-word;color:var(--ht-text)}.state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.state-column{padding:16px;border-radius:var(--ht-radius-md);background:radial-gradient(circle at top right,rgba(55,201,255,.08),transparent 32%),#10273d08;border:1px solid rgba(16,39,61,.08)}.state-column__title,.subsection-title{margin:0 0 12px;font-size:.96rem;font-weight:700;color:var(--ht-text)}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.list-stack{display:grid;gap:10px}.list-row,.event-row,.alert-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:var(--ht-radius-sm);background:var(--ht-surface-muted);border:1px solid rgba(16,39,61,.06)}.list-row--stack{align-items:flex-start}.list-row__title{font-weight:700;color:var(--ht-text)}.list-row__meta{margin-top:3px;color:var(--ht-text-muted);font-size:.88rem}.list-row__value{font-weight:700;text-align:right;color:var(--ht-text)}.inline-actions{display:flex;flex-wrap:wrap;gap:10px}.event-row{justify-content:flex-start}.event-dot{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.event-dot--info{background:var(--ht-info)}.event-dot--warning{background:var(--ht-warning)}.event-dot--critical{background:var(--ht-critical)}.alert-row{align-items:flex-start}.alert-row--info{border-color:#1d4ed824;background:var(--ht-info-soft)}.alert-row--warning{border-color:#b7791f2e;background:var(--ht-warning-soft)}.alert-row--critical{border-color:#dc26262e;background:var(--ht-critical-soft)}.alert-row__code{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;min-width:150px;color:var(--ht-text-soft)}.alert-row__message{line-height:1.45;color:var(--ht-text)}.context-rail{display:grid;gap:18px}.settings-layout{display:grid;grid-template-columns:minmax(0,1.25fr) 360px;gap:18px;align-items:start}.settings-rail,.live-grid,.activity-page__rail,.journal-rail{display:grid;gap:18px}.settings-card{display:grid;gap:22px}.settings-section{display:grid;gap:14px}.settings-section__title{margin:0;font-size:.96rem;font-weight:700;color:var(--ht-text)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:8px}.field--full{grid-column:1 / -1}.field--checkbox{align-content:center}.field__label{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ht-text-soft)}.field__hint{color:var(--ht-text-muted);font-size:.82rem;line-height:1.5}.field input,.field textarea,.field select{width:100%;padding:12px 14px;border-radius:var(--ht-radius-sm);border:1px solid rgba(16,39,61,.1);background:#ffffffe0;color:var(--ht-text);box-shadow:inset 0 1px #ffffff80}.field textarea{resize:vertical}.field input[type=checkbox]{width:20px;height:20px;margin-top:4px}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:3px solid rgba(55,201,255,.2);outline-offset:2px;border-color:#37c9ff4d}.form-actions,.command-row{display:flex;flex-wrap:wrap;gap:12px}.diff-list{display:grid;gap:10px}.diff-row{padding:14px 16px;border-radius:var(--ht-radius-sm);border:1px solid rgba(16,39,61,.08);background:#10273d08}.warning-list{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--ht-text)}.live-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-page__layout,.journal-layout,.backtests-layout{display:grid;grid-template-columns:minmax(0,1.35fr) 340px;gap:18px;align-items:start}.activity-page__main,.journal-main,.backtests-main,.backtests-rail{display:grid;gap:18px}.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.backtest-card-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.backtest-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric-tile,.comparison-card,.log-panel{padding:16px;border-radius:var(--ht-radius-md);border:1px solid rgba(16,39,61,.08);background:radial-gradient(circle at top right,rgba(55,201,255,.08),transparent 36%),#10273d08}.metric-tile span,.comparison-card__label{display:block;color:var(--ht-text-soft);font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}.metric-tile strong,.comparison-card__title,.comparison-card__value{display:block;margin-top:10px;color:var(--ht-text)}.metric-tile strong,.comparison-card__title{font-family:Space Grotesk,Inter,sans-serif;font-size:1rem}.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.comparison-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-inline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.comparison-card__value{word-break:break-word;line-height:1.55;font-size:.92rem}.log-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.log-panel pre{margin:10px 0 0;max-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-word;color:var(--ht-text);font-size:.86rem;line-height:1.55}.data-table-wrap{overflow-x:auto;border-radius:var(--ht-radius-md);border:1px solid rgba(16,39,61,.08);background:#ffffffa6}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(16,39,61,.08);white-space:nowrap}.data-table th{font-size:.76rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ht-text-soft);background:#10273d0a}.data-table td{color:var(--ht-text);font-size:.94rem}.data-table tbody tr:hover{background:#37c9ff0d}.data-table tbody tr{cursor:pointer}.data-table__row--selected{background:#d4af371a}.data-table tbody tr:last-child td{border-bottom:0}.table-primary{font-weight:700;color:var(--ht-text)}.table-secondary{margin-top:4px;color:var(--ht-text-soft);font-size:.8rem}.timeline-list{display:grid;gap:12px}.timeline-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;border-radius:var(--ht-radius-sm);background:#10273d08;border:1px solid rgba(16,39,61,.07)}.timeline-row__body{display:grid;gap:6px}.timeline-row__title{font-weight:700;color:var(--ht-text)}.timeline-row__meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--ht-text-soft);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.timeline-row__subtitle{margin:0;color:var(--ht-text-muted);line-height:1.55}.bullet-list{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--ht-text-muted)}.inline-warning{margin-bottom:16px;padding:13px 15px;border-radius:var(--ht-radius-sm);background:var(--ht-warning-soft);border:1px solid rgba(183,121,31,.18)}.loading-shell{display:grid;gap:12px}.loading-pulse{height:14px;border-radius:999px;background:linear-gradient(90deg,#10273d0f,#10273d1f,#10273d0f);background-size:200% 100%;animation:loadingPulse 1.4s ease-in-out infinite}.loading-pulse--title{width:42%;height:18px}.empty-state{padding:12px 14px;border-radius:var(--ht-radius-sm);background:#10273d08;border:1px dashed rgba(16,39,61,.1)}@keyframes loadingPulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1280px){.overview-banner{grid-template-columns:1fr}}@media (max-width: 1200px){.overview-layout,.settings-layout,.activity-page__layout,.journal-layout,.backtests-layout{grid-template-columns:1fr}.context-rail{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 980px){.dashboard-shell{grid-template-columns:1fr}.sidebar-nav{position:static;min-height:auto}.top-bar{flex-direction:column;align-items:stretch}.top-bar__badges{justify-content:flex-start}.kpi-strip,.state-grid,.activity-grid,.journal-grid,.backtest-metrics-grid,.comparison-grid,.comparison-grid--2,.log-grid,.comparison-inline-row,.context-rail,.form-grid,.live-grid,.data-list,.overview-banner__stats{grid-template-columns:1fr}}@media (max-width: 720px){.top-bar,.dashboard-shell__content{padding-left:18px;padding-right:18px}.page-header{grid-template-columns:1fr}.page-header__actions{justify-content:flex-start}.card,.kpi-card,.overview-banner{padding:18px}.data-table th,.data-table td{padding:12px 14px}.alert-row{flex-direction:column}}
