:root{--motion-ease:cubic-bezier(.32,.72,0,1);--motion-fast:160ms;--motion-surface:340ms}.side-nav .session-menu{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 0;padding:14px 0;border-top:1px solid var(--surface-line)}.side-nav .session-menu>.session-identity{display:flex!important;justify-content:start;gap:7px;min-width:0;margin:0}.session-identity svg{flex-shrink:0;color:var(--muted)}.side-nav .session-identity b{font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav .session-menu>.settings-trigger{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:40px;padding:8px!important;flex-shrink:0}.nav-compact .desktop-nav .session-menu{justify-content:center}.nav-compact .desktop-nav .session-menu>.session-identity,.nav-compact .desktop-nav .settings-trigger span{display:none!important}.account-popover{position:fixed;inset:auto;margin:0;width:224px;max-height:calc(100dvh - 24px);overflow:auto;padding:8px;border:1px solid var(--surface-line);border-radius:18px;background:var(--panel);color:var(--ink);box-shadow:0 16px 48px #392b2326;transform-origin:bottom left}.account-popover header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 10px;border-bottom:1px solid var(--surface-line);margin-bottom:5px}.account-popover header b{font-size:13px;overflow-wrap:anywhere}.account-popover header span{font-size:11px;color:var(--muted)}.account-popover a,.account-popover button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px;border:0;border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:13px;text-align:left}.account-popover a:hover,.account-popover button:hover{background:var(--soft-orange);color:var(--action-ink)}.account-menu-error{margin:8px;color:var(--danger);white-space:normal;font-size:12px;line-height:1.6}.safety{margin-top:auto;flex-shrink:0}.workspace-skeleton{display:grid;gap:22px;min-height:440px}.workspace-skeleton>span{color:var(--muted);font-size:12px}.workspace-skeleton>div{border:1px solid var(--surface-line);border-radius:22px;background:linear-gradient(110deg,var(--panel),var(--paper-2),var(--panel));min-height:170px}.snapshot-status{display:block;margin:12px 0;font-size:11px;color:var(--muted)}.view-surface{min-width:0}.backtest-report-hero,.research-head{background:var(--panel);border:1px solid var(--surface-line);border-radius:22px;padding:24px}.backtest-report-hero h2{font-family:inherit;font-weight:600;font-size:clamp(23px,2.5vw,30px);line-height:1.3;letter-spacing:-1px}.backtest-report-hero label>span,.backtest-report-hero>div>span{font-family:inherit;font-weight:500;font-size:11px;line-height:1.5;color:var(--muted)}.backtest-report-hero p{display:flex;align-items:center;font-size:13px;line-height:1.6}.backtest-report-hero select,.research-head select{min-height:42px;padding:10px;border-radius:12px;border:1px solid var(--surface-line);background:var(--paper);font-size:12px;max-width:100%}.backtest-identity-strip,.backtest-integrity-note,.backtest-metrics-grid{border-radius:20px;border:1px solid var(--surface-line);overflow:hidden;background:var(--panel)}.backtest-comparison-list article,.backtest-gate,.backtest-identity-strip>div,.backtest-method-grid>div,.backtest-metric{padding:20px;border-color:var(--surface-line)}.backtest-comparison-list article>div span,.backtest-comparison-list dt,.backtest-identity-strip span,.backtest-method-grid dt,.backtest-metric>small,.backtest-metric>span{font-family:inherit;font-weight:400;font-size:11px;line-height:1.6;color:var(--muted)}.backtest-comparison-list dd,.backtest-identity-strip b,.backtest-identity-strip code,.backtest-method-grid dd{font-family:inherit;font-weight:500;font-size:12px;line-height:1.6;font-variant-numeric:tabular-nums}.backtest-metric strong{font-family:inherit;font-weight:600;font-size:26px;line-height:1.4;font-variant-numeric:tabular-nums;letter-spacing:-.7px}.backtest-table td,.backtest-table th{font-family:inherit;font-weight:400;font-size:12px;line-height:1.6;font-variant-numeric:tabular-nums;padding:14px}.backtest-comparison-list article>div b,.backtest-gate header span{font-size:13px}.backtest-gate header b,.backtest-gate>small{font-family:inherit;font-weight:500;font-size:10px;line-height:1.5}.backtest-gate>strong{font-family:inherit;font-weight:600;font-size:22px;line-height:1.5;font-variant-numeric:tabular-nums}.backtest-two-column{gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.backtest-legend{gap:14px;flex-wrap:wrap}.backtest-legend button,.backtest-legend span{font-size:12px}.backtest-integrity-note{background:var(--paper)}.backtest-integrity-note code,.backtest-integrity-note ul{font-size:11px;line-height:1.7}.backtest-empty{background:var(--panel);min-height:160px;font-size:13px}.model-quality-panel .gate-item,.research-grid .panel{min-width:0}@media (prefers-reduced-motion:no-preference){a,button{transition:transform var(--motion-fast) var(--motion-ease),background-color var(--motion-fast),color var(--motion-fast)}.side-nav nav a:active{transform:scale(.975)}.side-nav nav a svg{transition:transform var(--motion-surface) var(--motion-ease)}.side-nav nav a.active svg{transform:scale(1.07)}.app-main,.side-nav{transition:width var(--motion-surface) var(--motion-ease),margin-left var(--motion-surface) var(--motion-ease)}.account-popover,.mobile-nav-dialog,.note-dialog,.panel-dialog{opacity:0;transform:translateY(8px) scale(.98);animation:none!important;transition:opacity var(--motion-surface) var(--motion-ease),transform var(--motion-surface) var(--motion-ease),display var(--motion-surface) allow-discrete,overlay var(--motion-surface) allow-discrete}.mobile-nav-dialog{transform:translateX(-100%)}.account-popover:popover-open,.mobile-nav-dialog[open],.note-dialog[open],.panel-dialog[open]{opacity:1;transform:none}@starting-style{.account-popover:popover-open,.note-dialog[open],.panel-dialog[open]{opacity:0;transform:translateY(8px) scale(.98)}.mobile-nav-dialog[open]{opacity:0;transform:translateX(-100%)}}dialog::backdrop{transition:background-color .24s ease,display var(--motion-surface) allow-discrete,overlay var(--motion-surface) allow-discrete}@starting-style{dialog[open]::backdrop{background-color:transparent}}}@media (prefers-reduced-transparency:reduce){.account-popover,.platform-bar,.topbar{backdrop-filter:none;background:var(--panel)}}@media (prefers-contrast:more){.account-popover,.panel,.side-nav{border-color:var(--ink)}}@media (max-width:900px){.backtest-two-column{grid-template-columns:1fr}}@media (max-width:540px){.backtest-report-hero,.research-head{padding:18px;border-radius:18px}.backtest-gate,.backtest-identity-strip>div,.backtest-method-grid>div,.backtest-metric{padding:16px}.backtest-metric strong{font-size:23px}.panel-head{flex-wrap:wrap}.panel-tools{margin-left:auto}}.backtest-report-hero{color:var(--ink);box-shadow:none}.backtest-report-hero label,.backtest-report-hero p,.backtest-report-hero>div:first-child>span{color:var(--muted)}.backtest-report-hero select{color:var(--ink)}.research-head{box-shadow:none}.backtest-metric>span{display:flex;align-items:center;gap:4px}.check-list small,.factor-list small,.shadow-card p,.shadow-card>small{font-size:12px;line-height:1.7}.check-list b,.factor-list b{font-size:13px}.research-head label,.research-head>div>small,.research-head>div>span{font-family:inherit;font-size:12px;line-height:1.6}.research-head>div{min-width:0}.research-head strong{overflow-wrap:anywhere}.index-chart-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.index-chart-strip article{min-width:0;gap:8px}.index-chart-strip article>.intraday-sparkline,.index-chart-strip article>.sparkline-empty{grid-column:1/-1;grid-row:auto;width:100%}.index-chart-strip .intraday-sparkline svg{height:88px}.index-chart-strip article>.index-chart-foot{display:flex;grid-column:1/-1;justify-content:space-between;align-items:center;gap:4px}.index-chart-strip .index-chart-foot>span{display:flex;align-items:center;color:var(--muted);font-size:10px}.index-chart-strip article>small:last-child{grid-column:1/-1}@media (max-width:1100px){.index-chart-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.index-chart-strip{grid-template-columns:1fr}}