:root{--bg-primary:#131722;--bg-secondary:#1e222d;--bg-tertiary:#2a2e39;--text-primary:#d1d4dc;--text-secondary:#787b86;--accent:#2962ff;--green:#26a69a;--red:#ef5350;--border:#363a45}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100dvh;overflow:hidden}html:has(.landing){height:auto;overflow:visible}html:has(.landing) body{height:auto;overflow:visible}html:has(.landing) #root{height:auto;overflow:visible}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.app-error-boundary{background:var(--bg-primary);place-items:center;width:100%;height:100%;padding:24px;display:grid}.app-error-panel{border:1px solid var(--border);background:var(--bg-secondary);border-radius:8px;width:min(100%,420px);padding:20px}.app-error-panel h1{margin-bottom:10px;font-size:1.15rem}.app-error-panel p{color:var(--text-secondary);margin-bottom:16px;font-size:.9rem;line-height:1.45}.app-error-panel button{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:6px;padding:10px 14px;font-weight:700}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}@media (width<=1024px){.top-bar{flex-wrap:wrap;gap:6px;min-height:40px;padding:4px 8px}.order-panel{gap:8px;width:220px;padding:8px}.ctrl-btn{width:40px;height:40px;font-size:1rem}.play-btn{width:48px;height:48px;font-size:1.2rem}.indicator-btn,.drawing-btn{min-width:32px;min-height:32px;padding:6px 10px;font-size:.85rem}.submit-btn{padding:14px;font-size:1rem}.side-btn{padding:10px;font-size:.9rem}}@media (width<=768px){.chart-and-panel{position:relative}.chart-wrapper{z-index:0;flex:1;height:100%}.order-panel-container{z-index:8000;width:70%;height:100%;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(-100%);display:block!important}.order-panel-container.mobile-open{transform:translate(0)}.order-panel-container .order-panel{border-top:none;border-left:none;border-right:1px solid var(--border);gap:6px;width:100%;height:100%;max-height:none;padding:8px;overflow-y:auto}.order-panel-container .order-type-tabs{gap:2px}.order-panel-container .order-type-tab{padding:4px 6px;font-size:.7rem}.mobile-panel-backdrop{z-index:7000;opacity:0;pointer-events:none;background:#0006;width:100%;height:100%;transition:opacity .3s;position:fixed;top:0;left:0;display:block!important}.mobile-panel-backdrop.open{opacity:1;pointer-events:auto}.mobile-panel-toggle{background:var(--accent);color:#fff;z-index:9000;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;transition:left .3s;position:fixed;bottom:32px;left:4px;box-shadow:0 2px 8px #0000004d;display:flex!important}.mobile-panel-toggle.open{left:calc(70% - 22px)}.top-bar-right{display:none}.bottom-panel.expanded{height:160px}}.tv-powered{color:var(--text-secondary);opacity:.85;align-items:center;gap:8px;text-decoration:none;transition:opacity .15s;display:inline-flex}.tv-powered:hover{opacity:1}.tv-powered-label{letter-spacing:.02em;white-space:nowrap;font-size:.85rem}.tv-powered-logo{width:auto;height:22px;display:block}.tv-powered-sm .tv-powered-label{font-size:.72rem}.tv-powered-sm .tv-powered-logo{height:16px}.tv-powered-xs{gap:6px}.tv-powered-xs .tv-powered-label{font-size:.64rem}.tv-powered-xs .tv-powered-logo{height:13px}.cookie-consent{z-index:10000;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.cookie-consent-inner{pointer-events:auto;background:var(--bg-secondary);border:1px solid var(--border);width:100%;max-width:720px;color:var(--text-primary);border-radius:10px;flex-direction:column;gap:12px;padding:16px 18px;font-size:13px;line-height:1.5;display:flex;box-shadow:0 12px 40px #00000080}.cookie-consent-text a{color:var(--accent);text-decoration:underline}.cookie-consent-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.cookie-btn{font:inherit;border:1px solid var(--border);cursor:pointer;background:var(--bg-tertiary);color:var(--text-primary);border-radius:6px;padding:8px 14px}.cookie-btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.cookie-btn-secondary:hover{background:var(--bg-primary)}.cookie-btn-equal{background:var(--bg-tertiary);border-color:var(--border);color:var(--text-primary);min-width:160px;font-weight:600}.cookie-btn-equal:hover{background:var(--bg-primary)}.cookie-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 0;display:flex}.cookie-row-title{font-weight:600}.cookie-row-desc{color:var(--text-secondary);font-size:12px}.cookie-toggle{cursor:pointer;color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:inline-flex}.cookie-toggle-disabled{opacity:.7;cursor:not-allowed}@media (width<=560px){.cookie-consent{bottom:8px;left:8px;right:8px}.cookie-consent-actions{justify-content:stretch}.cookie-btn{flex:1}}.site-footer{border-top:1px solid var(--border);text-align:center;background:var(--bg-primary);padding:32px 24px}.site-footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1100px;margin:0 auto;display:flex}.site-footer-brand{align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.site-footer-logo{width:24px;height:24px}.site-footer-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.site-footer-links a{color:var(--text-secondary);font-size:.85rem;text-decoration:none}.site-footer-links a:hover{color:var(--text-primary)}.site-footer-copy{color:var(--text-secondary);text-align:center;width:100%;margin:4px 0 0;font-size:.85rem}.site-footer-attribution{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;max-width:1100px;margin:24px auto 0;padding-top:20px;display:flex}.site-footer-attribution-sep{background:var(--border);width:1px;height:16px;display:inline-block}@media (width<=640px){.site-footer-content,.site-footer-links{justify-content:center}.site-footer-attribution{flex-direction:column;gap:14px}.site-footer-attribution-sep{display:none}}.app{background:var(--bg-primary);height:100dvh;color:var(--text-primary);flex-direction:column;display:flex}.top-bar{background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:6px 12px;display:flex}.top-bar-left{align-items:center;gap:8px;display:flex}.top-bar-center{flex:1;justify-content:center;align-items:center;display:flex}.top-bar-right{align-items:center;gap:8px;display:flex}.header-logo{width:22px;height:22px}.home-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:2px 8px;font-size:1.2rem;line-height:1}.home-btn:hover{color:var(--text-primary);border-color:var(--accent)}.session-name-display{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:.85rem;font-weight:500;overflow:hidden}.session-version-topbar-badge{color:#8ec5ff;white-space:nowrap;background:#4a9eff1f;border:1px solid #4a9eff73;border-radius:4px;flex-shrink:0;padding:3px 7px;font-size:.66rem;font-weight:700;line-height:1}.simulator-status{border:1px solid var(--border);min-height:22px;color:var(--text-secondary);text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.simulator-status-live{color:var(--green);background:#26a69a1f;border-color:#26a69a73}.simulator-status-connecting,.simulator-status-reconnecting,.simulator-status-catching-up{color:#f7b267;background:#f7b2671a;border-color:#f7b26773}.simulator-status-stale{color:var(--red);background:#ef53501a;border-color:#ef535073}.loading-spinner{color:var(--accent);font-size:1rem;animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.main-area{flex:1;position:relative;overflow:hidden}.session-layout{flex-direction:column;height:100%;display:flex}.chart-and-panel{flex:1;min-height:0;display:flex}.chart-wrapper{flex:1;min-width:0;position:relative}.chart-container{width:100%;height:100%}.chart-surface{width:100%;height:100%;position:relative}.chart-trade-helper-layer{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:hidden}.chart-trade-helper{gap:6px;display:flex;position:absolute;transform:translateY(-50%)}.chart-trade-helper.align-left{transform:translate(calc(-100% - 16px),-50%)}.chart-trade-helper-badge{border:1px solid var(--border);color:var(--text-primary);text-transform:lowercase;white-space:nowrap;background:#131722eb;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:700;line-height:1;box-shadow:0 6px 18px #00000047}.chart-trade-helper-badge.long{color:var(--green);border-color:#26a69ab3}.chart-trade-helper-badge.short{color:var(--red);border-color:#ef5350b3}.chart-trade-helper-badge.stop{background:#131722fa}.setup-screen{flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100%;display:flex}.app-logo{width:80px;height:80px}.app-title{color:var(--text-primary);margin:0;font-size:2.5rem;font-weight:700}.app-subtitle{color:var(--text-secondary);margin:0 0 24px;font-size:1.1rem}.setup-form{flex-direction:column;align-items:stretch;gap:16px;width:300px;max-width:90vw;display:flex}.mode-selector{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.mode-selector-btn{min-height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:6px 10px;font-size:.82rem;font-weight:700}.mode-selector-btn:hover:not(:disabled){color:var(--text-primary)}.mode-selector-btn.active{color:var(--accent);border-color:var(--accent);background:#2962ff1f}.mode-selector-btn:disabled{opacity:.6;cursor:not-allowed}.start-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:12px 24px;font-size:1rem;font-weight:600;transition:opacity .2s}.start-btn:hover:not(:disabled){opacity:.9}.start-btn:disabled{opacity:.5;cursor:not-allowed}.home-action-separator{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;font-size:.8rem;font-weight:700;display:flex}.home-action-separator:before,.home-action-separator:after{content:"";background:var(--border);flex:1;height:1px}.continue-session-btn{background:var(--accent);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:6px;flex-direction:column;align-items:center;gap:2px;width:100%;padding:12px 24px;font-size:1rem;font-weight:600;transition:opacity .2s;display:flex}.continue-session-btn:hover:not(:disabled){opacity:.9}.continue-session-btn:disabled{opacity:.5;cursor:not-allowed}.continue-session-title{color:inherit}.continue-session-meta{color:#ffffffdb;font-size:.8rem;font-weight:500;line-height:1.35}.continue-session-date{color:#fffc;font-size:.78rem;font-weight:500;line-height:1.35}.error-msg{color:var(--red);font-size:.85rem}.loading-overlay{color:var(--text-primary);z-index:100;background:#131722cc;justify-content:center;align-items:center;font-size:1.2rem;display:flex;position:absolute;inset:0}.coin-selector{width:100%}.selector-inline-row{align-items:stretch;gap:8px;width:100%;display:flex}.selector-inline-action{background:var(--bg-tertiary);border:1px solid var(--border);width:38px;min-width:38px;color:var(--text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,background-color .2s,opacity .2s;display:inline-flex}.selector-inline-action:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--bg-secondary)}.selector-inline-action:disabled{opacity:.5;cursor:not-allowed}.coin-selector-main{flex:1;min-width:0;position:relative}.coin-selector-btn{box-sizing:border-box;background:var(--bg-tertiary);border:1px solid var(--border);width:100%;color:var(--text-primary);cursor:pointer;border-radius:4px;align-items:center;gap:6px;min-width:120px;min-height:38px;padding:6px 12px;font-size:.9rem;font-weight:600;display:flex}.coin-selector-value{align-items:center;gap:8px;min-width:0;display:inline-flex}.coin-selector-btn:disabled{opacity:.7;cursor:default}.chevron{margin-left:auto;font-size:.7rem}.coin-selector-dropdown{background:var(--bg-secondary);border:1px solid var(--border);z-index:1000;border-radius:6px;width:200px;margin-top:4px;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #0006}.coin-search{background:var(--bg-tertiary);border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:6px 6px 0 0;outline:none;padding:8px 12px;font-size:.85rem}.coin-list{max-height:240px;overflow-y:auto}.coin-section+.coin-section{border-top:1px solid var(--border)}.coin-section-label{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;padding:8px 12px 6px;font-size:.72rem;font-weight:700}.coin-option{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;padding:8px 12px;font-size:.85rem;display:block}.coin-option:hover{background:var(--bg-tertiary)}.coin-option.active{color:var(--accent)}.coin-empty-state{color:var(--text-secondary);padding:12px;font-size:.85rem}.coin-quality-badge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:54px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.coin-quality-top{color:#7ef2b8;background:#309b682e;border-color:#309b6866}.coin-quality-high{color:#8fc6ff;background:#3574d12e;border-color:#3574d161}.coin-quality-middle{color:#ffd37a;background:#b57b1a2e;border-color:#b57b1a66}.coin-quality-low{color:#c7c9d3;background:#747c902e;border-color:#747c9061}.date-picker{flex-direction:column;gap:4px;width:100%;display:flex}.date-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.date-input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);box-sizing:border-box;border-radius:4px;flex:1;width:100%;min-height:38px;padding:8px 12px;font-size:.9rem}.date-input::-webkit-calendar-picker-indicator{filter:invert(.7)}.playback-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.transport-controls{align-items:center;gap:8px;display:flex}.seek-control{position:relative}.ctrl-btn{background:var(--bg-tertiary);border:1px solid var(--border);width:32px;height:32px;color:var(--text-primary);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;font-size:.85rem;transition:background .15s;display:flex}.ctrl-btn:hover:not(:disabled){background:var(--bg-primary)}.ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.seek-popover{background:var(--bg-secondary);border:1px solid var(--border);z-index:40;border-radius:8px;flex-direction:column;gap:10px;width:min(320px,80vw);padding:14px;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 16px 48px #00000073}.seek-popover-header,.seek-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.seek-popover-header{color:var(--text-primary);font-size:.78rem;font-weight:600}.seek-preset-list{flex-direction:column;gap:6px;display:flex}.seek-preset-btn,.seek-cancel-btn,.seek-apply-btn{cursor:pointer;border-radius:6px;font-size:.78rem}.seek-preset-btn{text-align:left;background:var(--bg-tertiary);border:1px solid var(--border);width:100%;color:var(--text-primary);padding:8px 10px}.seek-preset-btn:hover{border-color:var(--accent)}.seek-field{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:.74rem;display:flex}.seek-field input{background:var(--bg-tertiary);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:6px;padding:8px 10px}.seek-toggle{color:var(--text-primary);align-items:center;gap:8px;font-size:.74rem;display:flex}.seek-warning{color:#f7b267;font-size:.68rem;line-height:1.35}.seek-actions{margin-top:2px}.seek-cancel-btn,.seek-apply-btn{border:1px solid var(--border);padding:8px 12px}.seek-cancel-btn{background:var(--bg-tertiary);color:var(--text-secondary)}.seek-apply-btn{background:var(--accent);border-color:var(--accent);color:#fff}.seek-apply-btn:disabled{opacity:.5;cursor:not-allowed}.play-btn{border-radius:50%;width:40px;height:40px;font-size:1rem}.speed-control{flex-direction:column;gap:4px;min-width:180px;margin-left:8px;display:flex}.speed-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.speed-label{color:var(--text-secondary);min-width:40px;font-size:.75rem}.speed-boosts{gap:4px;display:flex}.speed-boost-btn{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:600;transition:color .15s,border-color .15s,background .15s}.speed-boost-btn:hover{color:var(--text-primary);border-color:var(--accent)}.speed-boost-btn.active{color:var(--accent);border-color:var(--accent);background:#2962ff1f}.speed-slider{width:100%;height:4px;accent-color:var(--accent)}.speed-slider-shell{width:100%;height:20px;position:relative}.speed-slider-rail,.speed-slider-fill{pointer-events:none;border-radius:999px;height:4px;position:absolute;top:50%;transform:translateY(-50%)}.speed-slider-rail{background:var(--border)}.speed-slider-fill{background:var(--accent)}.speed-slider-thumb{background:var(--accent);border:2px solid var(--bg-secondary);pointer-events:none;border-radius:50%;width:14px;height:14px;transition:left .12s;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000059}.speed-slider-input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.speed-slider-input:focus{outline:none}.speed-control:has(.speed-slider-input:focus-visible) .speed-slider-thumb{box-shadow:0 0 0 4px #2962ff2e,0 1px 4px #00000059}.speed-stops{color:var(--text-secondary);justify-content:space-between;gap:4px;font-size:.55rem;line-height:1;display:flex}.speed-stops span{transition:color .15s}.speed-stops span.active{color:var(--accent)}.playback-time{color:var(--text-secondary);margin-left:12px;font-family:monospace;font-size:.75rem}.indicator-controls,.indicator-item{align-items:center;gap:4px;display:flex}.indicator-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:3px;padding:4px 8px;font-size:.7rem;font-weight:600;transition:all .15s}.indicator-btn:hover{color:var(--text-primary)}.indicator-btn.active{color:var(--accent);border-color:var(--accent);background:#2962ff1a}.indicator-input{background:var(--bg-tertiary);border:1px solid var(--border);width:40px;color:var(--text-primary);text-align:center;border-radius:3px;padding:3px 4px;font-size:.75rem}.order-panel{background:var(--bg-secondary);border-left:1px solid var(--border);z-index:2;flex-direction:column;flex-shrink:0;gap:10px;width:260px;padding:12px;display:flex;position:relative;overflow:hidden}.order-panel-body{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow-y:auto}.order-panel-attribution{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;gap:6px;padding-top:8px;display:flex}.order-panel-attribution .tv-powered{opacity:.72}.order-panel-attribution .tv-powered:hover{opacity:1}.panel-balance{background:var(--bg-tertiary);border-radius:4px;justify-content:space-between;align-items:center;padding:8px;display:flex}.balance-label{color:var(--text-secondary);text-transform:uppercase;font-size:.75rem}.balance-value{font-size:.9rem;font-weight:700}.balance-value.profit{color:var(--green)}.balance-value.loss{color:var(--red)}.order-type-tabs{gap:2px;display:flex}.order-type-tab{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:3px;flex:1;padding:5px 2px;font-size:.7rem;transition:all .15s}.order-type-tab:hover{color:var(--text-primary)}.order-type-tab.active{color:var(--accent);border-color:var(--accent);background:#2962ff1a}.side-toggle{gap:4px;display:flex}.side-btn{border:1px solid var(--border);cursor:pointer;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:4px;flex:1;padding:8px;font-size:.85rem;font-weight:600;transition:all .15s}.side-btn.long.active{border-color:var(--green);color:var(--green);background:#26a69a26}.side-btn.short.active{border-color:var(--red);color:var(--red);background:#ef535026}.size-presets{gap:4px;display:flex}.size-preset{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:3px;flex:1;padding:4px;font-size:.7rem}.size-preset.active{border-color:var(--accent);color:var(--accent)}.field{flex-direction:column;gap:3px;display:flex}.field label,.field>span{color:var(--text-secondary);text-transform:uppercase;font-size:.7rem}.field-label-row{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:4px;min-width:0;display:flex}.field-label-row.stacked{flex-direction:column;align-items:flex-start;gap:4px}.field-label-row.stacked .target-presets{flex-wrap:wrap;justify-content:flex-start;margin-left:0}.target-presets{flex-wrap:nowrap;flex-shrink:0;justify-content:flex-end;gap:3px;margin-left:auto;display:flex}.target-preset-btn{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:999px;padding:1px 5px;font-size:.58rem;line-height:1.2;transition:all .15s}.target-preset-btn:hover{color:var(--text-primary);border-color:var(--accent)}.target-preset-btn.active{border-color:var(--accent);color:var(--accent);background:#2962ff1a}.field input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);box-sizing:border-box;border-radius:3px;width:100%;padding:6px 8px;font-size:.85rem}.field-row{gap:8px;display:flex}.trailing-stop-box{border:1px solid var(--border);background:#ffffff05;border-radius:4px;flex-direction:column;gap:6px;padding:8px;display:flex}.field.half{flex:1;min-width:0}.trailing-stop-fields{flex-direction:column;gap:8px;display:flex}.submit-btn{flex:var(--submit-btn-flex,1) 1 0;cursor:pointer;color:#fff;border:none;border-radius:4px;min-width:0;padding:10px;font-size:.9rem;font-weight:700;transition:flex .15s,opacity .15s}.submit-btn.long{background:var(--green)}.submit-btn.short{background:var(--red)}.submit-btn:hover{opacity:.9}.submit-btn:disabled{opacity:.4;cursor:not-allowed}.submit-row{--submit-btn-flex:1;--chart-trade-btn-flex:1;gap:8px;display:flex}.submit-row.has-chart-trade{--submit-btn-flex:1.18;--chart-trade-btn-flex:.82}.submit-row.chart-trade-active{--submit-btn-flex:.56;--chart-trade-btn-flex:1.44}.trade-toggle-row{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.chart-trade-btn{flex:var(--chart-trade-btn-flex,1) 1 0;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-width:0;padding:10px 12px;font-size:.8rem;font-weight:700;transition:flex .15s,color .15s,border-color .15s,background .15s;display:flex}.chart-trade-btn:hover{color:var(--text-primary);border-color:var(--accent)}.chart-trade-btn.active{color:var(--accent);border-color:var(--accent);background:#2962ff1f}.open-position{background:var(--bg-tertiary);border-radius:4px;flex-direction:column;gap:6px;padding:10px;display:flex}.position-header{justify-content:space-between;align-items:center;display:flex}.position-side{font-size:.8rem;font-weight:700}.position-side.long{color:var(--green)}.position-side.short{color:var(--red)}.position-size{color:var(--text-primary);font-size:.85rem}.position-detail{color:var(--text-secondary);font-size:.75rem}.position-pnl{font-size:.85rem;font-weight:700}.position-pnl.profit{color:var(--green)}.position-pnl.loss{color:var(--red)}.position-tpsl{gap:6px;display:flex}.position-actions{gap:4px;display:flex}.close-half-btn,.close-btn{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:3px;flex:1;padding:5px;font-size:.7rem}.close-half-btn:hover,.close-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.section-title{text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px;font-size:.7rem}.pending-orders{flex-direction:column;gap:8px;display:flex}.pending-order-card{border:1px solid var(--border);background:var(--bg-tertiary);border-radius:4px;flex-direction:column;gap:8px;padding:10px;display:flex}.pending-order-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.pending-order-title{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pending-order-type,.pending-order-size,.pending-order-summary,.pending-order-hint{font-size:.75rem}.pending-order-type,.pending-order-size,.pending-order-summary{color:var(--text-secondary)}.pending-order-hint{color:var(--text-muted,#7f8795)}.pending-order-targets{gap:6px}.order-side{font-size:.7rem;font-weight:700}.order-side.long{color:var(--green)}.order-side.short{color:var(--red)}.cancel-btn,.delete-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:.7rem}.cancel-btn:hover,.delete-btn:hover{color:var(--red)}.panel-tabs{gap:2px;display:flex}.panel-tab{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:3px;flex:1;padding:5px 2px;font-size:.7rem;transition:all .15s}.panel-tab:hover{color:var(--text-primary)}.panel-tab.active{color:var(--accent);border-color:var(--accent);background:#2962ff1a}.panel-history{flex:1;min-height:0;overflow:hidden auto}.trade-list-compact{flex-direction:column;gap:6px;display:flex}.trade-item-compact{background:var(--bg-tertiary);border-radius:4px;min-width:0;padding:7px 8px;font-size:.75rem}.trade-item-row{grid-template-columns:18px minmax(0,1fr) minmax(72px,auto) 20px;align-items:center;gap:5px;min-width:0;display:grid}.trade-expand-btn{width:18px;height:18px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:0 0 18px;justify-content:center;align-items:center;padding:0;display:inline-flex}.trade-expand-btn:hover{color:var(--text-primary)}.trade-item-size{color:var(--text-secondary)}.trade-item-count{color:var(--text-secondary);white-space:nowrap;font-size:.65rem}.trade-item-main{min-width:0}.trade-item-title{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.trade-item-pnl{white-space:nowrap;flex-direction:column;align-items:flex-end;min-width:0;font-weight:700;line-height:1.15;display:flex}.trade-item-pnl span{font-size:.62rem;font-weight:600}.trade-item-pnl.profit{color:var(--green)}.trade-item-pnl.loss{color:var(--red)}.trade-item-meta{color:var(--text-secondary);overflow-wrap:anywhere;margin-top:2px;font-size:.65rem}.trade-item-reason{color:var(--accent);margin-top:2px;font-size:.65rem;font-style:italic}.panel-equity{flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;gap:8px;min-height:0;padding:8px 0;display:flex}.session-summary-open-btn{width:100%;color:var(--text-primary);cursor:pointer;background:#2962ff1f;border:1px solid #2962ff6b;border-radius:4px;padding:7px 8px;font-size:.72rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}.session-summary-open-btn:hover:not(:disabled){border-color:var(--accent);background:#2962ff2e}.session-summary-open-btn:disabled{cursor:not-allowed;opacity:.55}.panel-equity-chart{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.panel-equity-svg{width:100%;height:100%;min-height:0}.bottom-panel{background:var(--bg-secondary);border-top:1px solid var(--border);flex-shrink:0}.bottom-panel.collapsed{cursor:pointer;color:var(--text-secondary);justify-content:space-between;align-items:center;padding:6px 16px;font-size:.8rem;display:flex}.bottom-panel.collapsed:hover{background:var(--bg-tertiary)}.expand-hint{align-items:center;gap:4px;display:flex}.mini-pnl.profit{color:var(--green)}.mini-pnl.loss{color:var(--red)}.bottom-panel.expanded{flex-direction:column;height:220px;display:flex}.bottom-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:4px 12px;display:flex}.bottom-tabs{gap:4px;display:flex}.bottom-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:4px 12px;font-size:.8rem}.bottom-tab.active{color:var(--accent);background:#2962ff1a}.collapse-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.7rem}.bottom-panel-body{flex:1;padding:8px;overflow:auto}.empty-state{height:100%;color:var(--text-secondary);justify-content:center;align-items:center;font-size:.85rem;display:flex}.trade-table{border-collapse:collapse;width:100%;font-size:.75rem}.trade-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid var(--border);padding:4px 8px;font-size:.65rem;font-weight:500}.trade-table td{color:var(--text-primary);border-bottom:1px solid var(--border);padding:5px 8px}.trade-table td.long{color:var(--green)}.trade-table td.short{color:var(--red)}.trade-table td.profit{color:var(--green)}.trade-table td.loss{color:var(--red)}.trade-reason-input{color:var(--text-primary);background:0 0;border:1px solid #0000;outline:none;width:120px;padding:2px 4px;font-size:.75rem}.trade-reason-input::placeholder{color:var(--text-secondary);opacity:.6}.trade-reason-input:hover,.trade-reason-input:focus{border-color:var(--border);border-radius:3px}.trade-reason-input.compact{width:100%;margin-top:2px;padding:1px 4px;font-size:.7rem}.delete-trade-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;font-size:.7rem;display:inline-flex}.delete-trade-btn:hover{color:var(--red)}.delete-trade-btn:disabled{cursor:not-allowed;opacity:.45;color:var(--text-muted)}.delete-trade-btn:disabled:hover{color:var(--text-muted)}.trade-item-actions{flex-direction:column;justify-content:center;align-items:center;gap:2px;width:20px;display:flex}.trade-item-actions .delete-trade-btn,.trade-item-actions .trade-journal-sync-btn{width:18px;height:18px;padding:0}.trade-journal-sync-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;font-size:.7rem;display:inline-flex}.trade-journal-sync-btn:hover:not(:disabled),.trade-journal-sync-btn.synced{color:var(--accent)}.trade-journal-sync-btn:disabled{cursor:wait;opacity:.55}.delete-trade-btn.child{padding:0}.trade-group-details{border-top:1px solid var(--border);flex-direction:column;gap:8px;min-width:0;margin-top:8px;padding-top:7px;display:flex}.trade-leg-section{flex-direction:column;gap:5px;min-width:0;display:flex}.trade-leg-heading{color:var(--text-secondary);text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:700;display:flex}.trade-leg-row{gap:4px;min-width:0;display:grid}.trade-leg-meta{min-width:0;color:var(--text-secondary);flex-wrap:wrap;gap:4px 6px;font-size:.65rem;line-height:1.25;display:flex}.trade-leg-meta .profit{color:var(--green)}.trade-leg-meta .loss{color:var(--red)}.trade-leg-index{color:var(--text-primary);font-weight:700}.trade-exit-note-row{align-items:center;gap:4px;min-width:0;display:flex}.trade-note-input{background:var(--bg-secondary);width:100%;min-width:0;color:var(--text-primary);border:1px solid #0000;border-radius:3px;outline:none;padding:3px 5px;font-size:.68rem}.auto-grow-textarea{resize:none;font-family:inherit;line-height:1.35;overflow:hidden}.trade-form-reason-input{background:var(--bg-secondary);border:1px solid var(--border);width:100%;min-height:30px;color:var(--text-primary);border-radius:4px;outline:none;padding:7px 9px;font-size:.8rem}.trade-note-input::placeholder{color:var(--text-secondary);opacity:.65}.trade-note-input:hover,.trade-note-input:focus{border-color:var(--border)}.trade-exit-note-row .delete-trade-btn{flex:0 0 18px}.position-entry-reasons,.pending-order-reason{flex-direction:column;gap:6px;margin-top:8px;display:flex}.position-entry-reasons .field{margin:0}.position-entry-reasons .field span,.pending-order-reason span{color:var(--text-secondary);font-size:.68rem}.trade-entry-pill{color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:3px;padding:1px 4px}.equity-curve{justify-content:center;align-items:center;height:100%;display:flex}.top-bar-actions{align-items:center;gap:4px;margin-left:8px;display:flex}.language-selector{position:relative}.language-selector-btn{background:var(--bg-tertiary);border:1px solid var(--border);min-width:48px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:5px;padding:4px 8px;font-size:.7rem;font-weight:700;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.language-selector-btn:hover:not(:disabled),.language-selector-btn.open{color:var(--text-primary);border-color:var(--accent)}.language-selector-btn:disabled{opacity:.55;cursor:default}.language-selector-flag{font-size:.85rem;line-height:1}.language-selector-chevron{color:var(--text-muted);font-size:.6rem;line-height:1}.language-selector-menu{background:var(--bg-secondary);border:1px solid var(--border);z-index:1000;border-radius:4px;min-width:150px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000059}.language-selector-menu button{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:3px;align-items:center;gap:8px;padding:7px 8px;font-size:.75rem;display:flex}.language-selector-menu button:hover,.language-selector-menu button.active{background:var(--bg-tertiary)}.language-selector-menu button.active{color:var(--accent)}.language-selector-code{color:var(--text-muted);margin-left:auto;font-size:.65rem;font-weight:700}.language-setting-field{display:block}.language-setting-field select{background:var(--bg-tertiary);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:4px;min-height:36px;padding:7px 10px;font-size:.85rem}.action-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;transition:all .15s;display:inline-flex}.action-btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.action-btn:disabled{opacity:.5;cursor:default}.icon-action-btn{justify-content:center;align-items:center;width:30px;height:28px;padding:0;display:inline-flex}.save-btn-topbar.dirty{color:var(--accent);border-color:var(--accent)}.save-btn-topbar.historical-version{color:#f5b942;border-color:#f5b942b3}.save-btn-topbar.historical-version:hover:not(:disabled){color:#ffd36d;border-color:#f5b942}.user-menu{margin-left:4px;position:relative}.user-menu-avatar{border:1px solid var(--border);background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:border-color .15s;display:flex;overflow:hidden}.user-menu-avatar:hover{border-color:var(--accent)}.user-menu-avatar img{object-fit:cover;width:100%;height:100%;display:block}.user-menu-initials{letter-spacing:.3px;font-size:.7rem;font-weight:600}.user-menu-dropdown{background:var(--bg-secondary);border:1px solid var(--border);z-index:1000;border-radius:4px;min-width:170px;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden;box-shadow:0 4px 12px #0000004d}.user-menu-dropdown button{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:.75rem;display:flex}.user-menu-dropdown button:hover{background:var(--bg-tertiary)}.user-menu-dropdown svg{color:var(--text-secondary);flex:none}.user-menu-dropdown button:hover svg{color:var(--accent)}.user-menu-dropdown span:not(.user-menu-version){flex:1}.user-menu-version{color:var(--text-muted);font-size:.65rem}.session-overlay{z-index:2000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.session-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;flex-direction:column;width:500px;max-height:80vh;display:flex;box-shadow:0 16px 48px #00000080}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:1rem}.modal-close:hover{color:var(--text-primary)}.session-summary-modal{width:min(1320px,100vw - 20px);max-height:calc(100vh - 20px)}.session-summary-body{grid-template-columns:minmax(0,3fr) minmax(230px,1fr);gap:16px;min-height:min(720px,100vh - 112px);padding:16px 20px 20px;display:grid;overflow:hidden}.session-summary-main{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.session-summary-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.session-summary-stat{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:9px 10px;display:flex}.session-summary-stat span{color:var(--text-secondary);text-transform:uppercase;font-size:.64rem}.session-summary-stat strong{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.session-summary-stat.profit strong{color:var(--green)}.session-summary-stat.loss strong{color:var(--red)}.session-summary-table-wrap{border:1px solid var(--border);background:#13172247;border-radius:6px;flex:1;min-height:0;overflow:auto}.session-summary-table{border-collapse:collapse;width:100%;min-width:1020px;font-size:.72rem}.session-summary-table th{z-index:1;background:var(--bg-secondary);border-bottom:1px solid var(--border);color:var(--text-secondary);text-align:left;text-transform:uppercase;white-space:nowrap;padding:7px 8px;font-size:.62rem;font-weight:600;position:sticky;top:0}.session-summary-table td{border-bottom:1px solid var(--border);color:var(--text-primary);white-space:nowrap;padding:7px 8px}.session-summary-table tr:last-child td{border-bottom:0}.session-summary-table td.long,.session-summary-table td.profit{color:var(--green);font-weight:600}.session-summary-table td.short,.session-summary-table td.loss{color:var(--red);font-weight:600}.session-summary-chart-panel{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;justify-content:center;align-items:stretch;min-width:0;min-height:0;padding:10px 8px;display:flex}.session-summary-equity-svg{width:100%;height:100%;min-height:420px}.save-section{border-bottom:1px solid var(--border);gap:8px;padding:12px 20px;display:flex}.session-name-input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;flex:1;padding:6px 10px;font-size:.85rem}.save-btn{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:6px 16px;font-size:.85rem}.save-btn:hover{opacity:.9}.compact-toolbar-btn{border-radius:3px;padding:4px 8px;font-size:.7rem}.import-section{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;display:flex}.import-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:6px 16px;font-size:.85rem}.import-btn:hover{color:var(--text-primary);border-color:var(--accent)}.hidden-file-input{display:none}.session-list{flex:1;padding:8px 0;overflow-y:auto}.session-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 20px;display:flex}.session-item:last-child{border-bottom:none}.session-item.current{background:#d4af3714;border:1px solid #d4af3766;border-radius:4px}.session-info{flex-direction:column;gap:2px;min-width:0;display:flex}.session-name-display{color:var(--text-primary);font-size:.85rem;font-weight:500}.session-meta{color:var(--text-secondary);font-size:.75rem}.session-date{color:var(--text-secondary);font-size:.65rem}.session-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.session-action-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:3px;padding:4px 8px;font-size:.7rem}.session-action-btn:hover{color:var(--text-primary)}.session-action-btn.favorite-toggle,.session-action-btn.cloud-toggle{justify-content:center;align-items:center;padding:4px 6px;display:inline-flex}.session-action-btn:disabled,.import-btn:disabled{opacity:.5;cursor:not-allowed}.session-action-btn.favorite-toggle.active{color:#f5c542;background:#f5c5421f;border-color:#f5c5428c}.session-action-btn.delete:hover{color:var(--red);border-color:var(--red)}.session-action-btn.danger-btn{color:var(--red);background:#ef53501a;border-color:#ef53508c}.session-action-btn.danger-btn:hover{color:#fff;border-color:var(--red);background:#ef5350b8}.session-action-btn.guarded{opacity:.55;cursor:help}.session-action-btn.guarded:hover{color:var(--text-secondary);border-color:var(--border)}.session-action-btn.cloud-toggle.active{color:#4a9eff;background:#4a9eff1a;border-color:#4a9eff80}.session-pagination{border-top:1px solid var(--border);justify-content:center;gap:6px;padding:12px 20px 4px;display:flex}.session-page-btn{background:var(--bg-tertiary);border:1px solid var(--border);min-width:28px;color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:4px 8px;font-size:.75rem}.session-page-btn:hover{color:var(--text-primary);border-color:var(--accent)}.session-page-btn.active{color:var(--text-primary);border-color:var(--accent);background:#4a9eff1f}.cloud-status{margin-top:2px;font-size:.65rem}.cloud-status-idle{color:#4ade80}.cloud-status-pending{color:var(--text-secondary)}.cloud-status-uploading{color:#4a9eff}.cloud-status-limited{color:#f59e0b}.cloud-status-error{color:var(--red)}.cloud-stale-banner{color:var(--text-secondary);background:#4a9eff14;border-bottom:1px solid #4a9eff40;justify-content:space-between;align-items:center;gap:8px;padding:8px 20px;font-size:.75rem;display:flex}.confirmation-overlay{z-index:2001}.confirmation-modal{width:320px;max-height:none}.confirmation-body{border-bottom:1px solid var(--border);padding:20px}.confirmation-body p{color:var(--text-primary);margin:0;font-size:.85rem}.confirmation-note{color:var(--text-secondary)!important;margin-top:10px!important}.confirmation-actions{justify-content:flex-end;gap:8px;padding:12px 20px 20px;display:flex}.settings-modal{flex-direction:column;width:min(760px,100vw - 32px);max-height:80vh;display:flex}.settings-tabs{border-bottom:1px solid var(--border);gap:6px;padding:12px 20px 0;display:flex}.settings-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;border-radius:6px 6px 0 0;padding:8px 12px;font-size:.8rem}.settings-tab.active{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border)}.settings-body{flex-direction:column;gap:16px;padding:16px 20px;display:flex;overflow-y:auto}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-section h3{color:var(--text-secondary);text-transform:uppercase;margin:0 0 8px;font-size:.8rem;font-weight:500}.settings-section .field{margin-bottom:8px}.settings-section .settings-subfield{margin-top:8px}.settings-section.disabled{opacity:.55}.settings-empty{color:var(--text-secondary);border:1px solid var(--border);background:var(--bg-tertiary);border-radius:6px;padding:10px 12px;font-size:.85rem}.settings-segmented{border:1px solid var(--border);background:var(--bg-primary);border-radius:6px;gap:4px;padding:3px;display:inline-flex}.settings-segmented button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:.75rem}.settings-segmented button.active{background:var(--accent);color:#fff}.settings-segmented button:disabled{cursor:not-allowed}.clear-cache-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:6px 16px;font-size:.85rem}.clear-cache-btn:hover{color:var(--red);border-color:var(--red)}.settings-actions{border-top:1px solid var(--border);padding-top:8px}.save-settings-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;padding:8px;font-size:.85rem;font-weight:600}.save-settings-btn:hover{opacity:.9}.indicator-toggles{flex-direction:column;gap:8px;display:flex}.indicator-toggle{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.indicator-toggle.compact{font-size:.78rem}.indicator-toggle input[type=checkbox]{accent-color:var(--accent)}.indicator-period{background:var(--bg-tertiary);border:1px solid var(--border);width:60px;color:var(--text-primary);border-radius:4px;margin-left:auto;padding:2px 6px;font-size:.8rem}.capture-modal{width:420px}.capture-modal-body,.capture-edit-fields{flex-direction:column;gap:12px;display:flex}.capture-modal-body{padding:16px 20px}.capture-range-summary{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;flex-direction:column;gap:4px;padding:10px;font-size:.75rem;display:flex}.capture-modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 20px 16px;display:flex}.field select,.capture-filter-field select{background:var(--bg-tertiary);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:4px;padding:7px 10px;font-size:.85rem}.capture-catalog-modal{width:min(1180px,100vw - 32px);max-height:min(920px,100vh - 32px)}.captures-page{background:var(--bg-primary);flex-direction:column;height:100%;display:flex;overflow:hidden}.captures-page-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 24px 14px;display:flex}.captures-page-header h1{color:var(--text-primary);margin:0;font-size:1.15rem}.captures-page-header p{color:var(--text-secondary);margin:4px 0 0;font-size:.78rem}.capture-catalog-toolbar{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.capture-catalog-toolbar.page-toolbar{background:var(--bg-secondary);padding:12px 24px}.capture-filter-group{flex-direction:column;gap:6px;display:flex}.capture-filter-group.inline{flex:1;min-width:0}.capture-filter-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.capture-filter-label,.capture-filter-field span{color:var(--text-secondary);text-transform:uppercase;font-size:.68rem}.capture-filter-field{flex-direction:column;gap:4px;min-width:150px;display:flex}.capture-multiselect{flex-direction:column;gap:4px;width:min(240px,100%);display:flex;position:relative}.capture-multiselect-button{background:var(--bg-tertiary);border:1px solid var(--border);min-height:34px;color:var(--text-primary);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:.82rem;display:flex}.capture-multiselect-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.capture-multiselect-button.open,.capture-multiselect-button:hover{border-color:var(--accent)}.capture-multiselect-menu{z-index:20;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;width:280px;max-width:calc(100vw - 48px);position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 12px 32px #00000073}.capture-multiselect-search{border-bottom:1px solid var(--border);color:var(--text-secondary);align-items:center;gap:6px;padding:8px;display:flex}.capture-multiselect-search input{min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;flex:1;font-size:.82rem}.capture-multiselect-options{max-height:260px;padding:4px;overflow-y:auto}.capture-multiselect-option{color:var(--text-primary);cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:7px 8px;font-size:.8rem;display:flex}.capture-multiselect-option:hover{background:var(--bg-tertiary)}.capture-multiselect-option input{accent-color:var(--accent)}.capture-multiselect-empty{color:var(--text-secondary);padding:12px 8px;font-size:.78rem}.capture-multiselect-clear{border:0;border-top:1px solid var(--border);width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;padding:8px;font-size:.78rem;display:flex}.capture-multiselect-clear:hover{color:var(--text-primary)}.capture-switch-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.capture-switch{border:1px solid var(--border);min-height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;font-size:.78rem;display:inline-flex}.capture-switch:hover,.capture-switch.active{color:var(--text-primary);border-color:var(--accent)}.capture-switch-track{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;width:32px;height:18px;padding:2px;transition:background .12s,border-color .12s}.capture-switch-track span{background:var(--text-secondary);border-radius:999px;width:12px;height:12px;transition:transform .12s,background .12s;display:block}.capture-switch.active .capture-switch-track{border-color:var(--accent);background:#4a9eff2e}.capture-switch.active .capture-switch-track span{background:var(--accent);transform:translate(14px)}.capture-favorites-filter{min-height:34px;padding-bottom:2px}.capture-filter-options{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.capture-filter-options.compact{max-height:70px;overflow-y:auto}.capture-filter-chip{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:4px 8px;font-size:.72rem}.capture-filter-chip.active,.capture-filter-chip:hover{color:var(--text-primary);border-color:var(--accent);background:#4a9eff1f}.capture-bulk-actions{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;font-size:.75rem;display:flex}.capture-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 16px;display:grid;overflow-y:auto}.capture-card-grid.page-grid{flex:1;align-content:start;min-height:0;padding:16px 24px}.capture-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.capture-card.selected{border-color:var(--accent);background:#4a9eff14}.capture-card-header,.capture-card-actions{align-items:center;gap:6px;display:flex}.capture-card-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);flex:1;font-size:.82rem;font-weight:600;overflow:hidden}.capture-select input{accent-color:var(--accent)}.capture-preview,.capture-card-tv{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;width:100%;height:350px;min-height:350px;overflow:hidden}.capture-tv-chart{width:100%;height:100%}.capture-preview-empty{color:var(--text-secondary);justify-content:center;align-items:center;font-size:.75rem;display:flex}.capture-preview svg{width:100%;height:100%;display:block}.capture-preview-bg{fill:var(--bg-tertiary)}.capture-preview line{stroke-width:1.2px}.capture-preview .capture-preview-grid{stroke:#94a3b81c;stroke-width:1px}.capture-preview rect{stroke-width:0}.capture-preview .up line,.capture-preview .up rect{stroke:#26a69a;fill:#26a69a}.capture-preview .down line,.capture-preview .down rect{stroke:#ef5350;fill:#ef5350}.capture-card-meta{color:var(--text-secondary);flex-direction:column;gap:2px;font-size:.68rem;display:flex}.capture-card-actions{justify-content:flex-end}.capture-empty{grid-column:1/-1;padding:32px}.capture-page-pagination{background:var(--bg-secondary);padding-bottom:14px}.capture-edit-modal{width:min(1120px,100vw - 32px);max-height:min(880px,100vh - 32px)}.capture-edit-body{grid-template-columns:260px minmax(0,1fr);gap:12px;min-height:560px;padding:12px;display:grid;overflow:hidden}.capture-edit-chart{border:1px solid var(--border);border-radius:6px;min-height:560px;overflow:hidden}.capture-finished-modal{width:min(680px,100vw - 32px)}.capture-finished-body{border-bottom:1px solid var(--border);flex-direction:column;gap:14px;padding:16px 20px;display:flex}.capture-finished-current{flex-direction:column;gap:3px;display:flex}.capture-finished-current strong{color:var(--text-primary);font-size:.9rem}.capture-finished-current span{color:var(--text-secondary);font-size:.72rem}.capture-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.capture-stats-grid.compact{grid-template-columns:repeat(6,minmax(0,1fr))}.capture-stat-cell{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:3px;padding:8px;display:flex}.capture-stat-cell span{color:var(--text-secondary);text-transform:uppercase;font-size:.65rem}.capture-stat-cell strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.capture-bulk-results{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:4px;display:flex}.capture-bulk-results-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.capture-bulk-results-title strong{color:var(--text-primary);font-size:.82rem}.capture-bulk-results-title span{color:var(--text-secondary);font-size:.72rem}.capture-bulk-rows{border:1px solid var(--border);border-radius:6px;flex-direction:column;max-height:140px;display:flex;overflow-y:auto}.capture-bulk-row{border-bottom:1px solid var(--border);color:var(--text-secondary);grid-template-columns:minmax(0,1.5fr) 92px 70px 64px;align-items:center;gap:8px;padding:7px 8px;font-size:.68rem;display:grid}.capture-bulk-row:last-child{border-bottom:0}.capture-bulk-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=960px){.session-summary-body{grid-template-columns:1fr;overflow-y:auto}.session-summary-chart-panel{min-height:360px}.session-summary-equity-svg{min-height:340px}.capture-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-edit-body{grid-template-columns:1fr;overflow-y:auto}.capture-edit-chart{min-height:420px}}@media (width<=680px){.session-summary-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.session-summary-body{min-height:auto;padding:12px}.session-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.session-summary-chart-panel{min-height:320px}.captures-page-header{flex-direction:column;align-items:flex-start}.capture-switch-group{justify-content:flex-start}.capture-catalog-toolbar.page-toolbar,.capture-card-grid.page-grid{padding-left:12px;padding-right:12px}.capture-filter-row{align-items:stretch}.capture-multiselect,.capture-filter-field{width:100%;min-width:0}.capture-card-grid{grid-template-columns:1fr}.capture-stats-grid,.capture-stats-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-bulk-row{grid-template-columns:1fr;gap:3px}.capture-edit-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.capture-edit-body{min-height:auto}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:60px;right:16px}.toast{color:#fff;pointer-events:auto;cursor:pointer;border-radius:6px;max-width:360px;padding:10px 16px;font-size:.85rem;animation:.3s toast-in}.toast-error{background:var(--red)}.toast-info{background:var(--accent)}.toast-success{background:var(--green)}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.help-btn{align-items:center;gap:4px;display:flex}.version-label{color:var(--text-muted);font-size:.65rem}.home-tv-powered{flex-direction:column;align-items:center;gap:8px;margin-top:28px;display:flex}.home-wrapper{flex-direction:column;height:100%;display:flex;overflow-y:auto}.home-wrapper .setup-screen{flex:1;height:auto;min-height:0;padding:24px}.help-modal{width:700px;max-width:95vw}.help-body{max-height:calc(80vh - 60px);padding:16px 20px;overflow-y:auto}.help-section{margin-bottom:20px}.help-section:last-child{margin-bottom:0}.help-section h3{color:var(--text-primary);border-bottom:1px solid var(--border);margin:0 0 10px;padding-bottom:6px;font-size:.85rem;font-weight:600}.help-section p{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.5}.shortcuts-grid{grid-template-columns:1fr 1fr;gap:6px 24px;display:grid}.shortcut-row{align-items:center;gap:12px;display:flex}.shortcut-row kbd{min-width:100px;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border);text-align:center;border-radius:3px;padding:3px 8px;font-family:inherit;font-size:.75rem;display:inline-block}.shortcut-row span{color:var(--text-secondary);font-size:.8rem}.changelog-list{flex-direction:column;gap:8px;display:flex}.changelog-entry{align-items:baseline;gap:10px;font-size:.78rem;display:flex}.changelog-entry.current .changelog-version{background:var(--accent);color:#fff}.changelog-version{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:.7rem;font-weight:600}.changelog-date{color:var(--text-muted);flex-shrink:0;min-width:72px;font-size:.7rem}.changelog-desc{color:var(--text-secondary)}.help-section a{color:var(--accent);text-decoration:none}.help-section a:hover{text-decoration:underline}.mobile-panel-backdrop,.mobile-panel-toggle{display:none}.order-panel-container{flex-shrink:0;align-self:stretch;display:flex}.sessions-page .captures-page-header{border-bottom:1px solid var(--border)}.session-page-cloud-banner{padding-left:24px;padding-right:24px}.sessions-toolbar{gap:14px}.session-stats-bar{grid-template-columns:repeat(7,minmax(92px,1fr))}.session-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.session-card{gap:10px;min-height:264px;padding-bottom:12px}.session-card.current{background:#d4af3714;border-color:#d4af378c}.session-card-header{min-height:30px}.session-card-title{font-size:.86rem}.session-card-cloud-status{background:var(--bg-secondary);text-overflow:ellipsis;white-space:nowrap;border:1px solid;border-radius:4px;flex-shrink:1;min-width:0;max-width:138px;margin-top:0;padding:3px 6px;overflow:hidden}.session-current-badge{color:#f5c542;text-transform:uppercase;background:#d4af371a;border:1px solid #d4af3780;border-radius:4px;flex-shrink:0;padding:3px 7px;font-size:.66rem}.session-card-meta{color:var(--text-secondary);grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px;font-size:.7rem;line-height:1.35;display:grid}.session-card-meta-item{min-width:0}.session-card-meta-text{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.session-invalid-stats{color:#f59e0b;grid-column:1/-1}.session-card-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.session-card-stat{border:1px solid var(--border);background:var(--bg-secondary);border-radius:4px;min-width:0;padding:7px 8px}.session-card-stat span{color:var(--text-muted);text-transform:uppercase;font-size:.62rem;display:block}.session-card-stat strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.76rem;display:block;overflow:hidden}.session-card-actions{margin-top:auto}.session-card-actions .save-btn{min-width:78px}.session-rename-modal{width:min(420px,100vw - 32px)}.session-versions-modal{width:min(560px,100vw - 32px)}.session-versions-body{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:14px;display:flex;overflow-y:auto}.session-versions-empty{color:var(--text-secondary);text-align:center;padding:20px 8px;font-size:.8rem}.session-version-row{border:1px solid var(--border);background:var(--bg-tertiary);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.session-version-row-main{min-width:0;color:var(--text-secondary);align-items:center;gap:8px;font-size:.76rem;display:flex}.session-version-row-main strong{color:var(--text-primary);white-space:nowrap}.session-version-row-main span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-version-latest{color:#8ec5ff;text-transform:uppercase;background:#4a9eff1f;border:1px solid #4a9eff73;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.62rem;font-weight:700}.session-rename-body .field{flex-direction:column;gap:6px;display:flex}.session-rename-body .field span{color:var(--text-secondary);text-transform:uppercase;font-size:.72rem}.session-rename-body input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-tertiary);width:100%;color:var(--text-primary);border-radius:6px;outline:0;padding:9px 10px;font-size:.86rem}.session-rename-body input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2962ff29}.journal-toolbar{gap:14px}.journal-search-field{min-width:280px}.journal-search-input{border:1px solid var(--border);background:var(--bg-tertiary);min-height:36px;color:var(--text-secondary);box-sizing:border-box;border-radius:6px;align-items:center;gap:8px;padding:0 11px;transition:border-color .15s,box-shadow .15s;display:flex}.journal-search-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #2962ff29}.journal-search-input input{width:100%;min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;font-size:.86rem}.journal-search-input input::placeholder{color:var(--text-muted)}.journal-stats-bar{grid-template-columns:repeat(8,minmax(92px,1fr));gap:8px;width:100%;display:grid}.journal-stat{border:1px solid var(--border);background:var(--bg-secondary);border-radius:4px;min-width:0;padding:8px 10px}.journal-stat span{color:var(--text-muted);text-transform:uppercase;letter-spacing:0;font-size:.68rem;display:block}.journal-stat strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.82rem;display:block;overflow:hidden}.journal-card-tv{height:350px;min-height:350px}.journal-card-meta .profit,.journal-view-summary .profit,.journal-leg-row .profit{color:var(--green)}.journal-card-meta .loss,.journal-view-summary .loss,.journal-leg-row .loss{color:var(--red)}.journal-card-entry-reason{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.journal-card-entry-reason strong{color:var(--text-primary);font-weight:600}.journal-card-actions .save-btn{min-width:112px}.journal-view-modal,.journal-edit-modal{width:min(1180px,100vw - 32px);max-height:calc(100vh - 32px)}.journal-view-body,.journal-edit-body{gap:14px;padding:16px 20px 18px;display:grid}.journal-view-body{grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);padding-top:0;overflow:auto}.journal-modal-chart{grid-area:1/2/span 3;min-height:520px}.journal-view-summary,.journal-notes-display{grid-column:1}.journal-view-summary{grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.journal-notes-display{grid-row:2}.journal-detail-grid{grid-row:4}.journal-view-summary div,.journal-notes-display div,.journal-detail-section{border:1px solid var(--border);background:var(--bg-secondary);border-radius:4px;padding:10px}.journal-view-summary span,.journal-notes-display span{color:var(--text-muted);text-transform:uppercase;letter-spacing:0;font-size:.68rem;display:block}.journal-view-summary strong,.journal-notes-display p{color:var(--text-primary);margin:4px 0 0;font-size:.84rem}.journal-notes-display{gap:8px;display:grid}.journal-detail-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.journal-detail-section h3,.journal-edit-leg-list h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:0;margin:0 0 8px;font-size:.78rem}.journal-leg-row{border-top:1px solid var(--border);color:var(--text-secondary);grid-template-columns:auto 1.1fr 1fr .8fr 1fr .8fr 1.2fr;align-items:center;gap:8px;padding:6px 0;font-size:.74rem;display:grid}.journal-leg-row:first-of-type{border-top:0}.journal-edit-body{grid-template-columns:minmax(300px,380px) minmax(0,1fr);overflow:auto}.journal-edit-fields{flex-direction:column;gap:12px;min-width:0;display:flex}.journal-edit-fields .field{gap:6px}.journal-edit-fields .field>span{line-height:1.35}.journal-edit-fields input,.journal-edit-fields textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-tertiary);width:100%;color:var(--text-primary);border-radius:6px;outline:0;padding:9px 10px;font-size:.86rem;line-height:1.35;transition:border-color .15s,box-shadow .15s}.journal-edit-fields input:focus,.journal-edit-fields textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2962ff29}.journal-edit-fields textarea{font-family:inherit}.journal-notes-field textarea{resize:vertical;min-height:128px}.journal-edit-leg-list{flex-direction:column;gap:8px;display:flex}.journal-edit-chart{min-height:620px}@media (width<=980px){.session-stats-bar,.journal-stats-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-view-body,.journal-edit-body,.journal-detail-grid{grid-template-columns:1fr}.journal-modal-chart,.journal-edit-chart{grid-area:auto;min-height:420px}.journal-view-summary,.journal-notes-display{grid-column:auto}.journal-leg-row{grid-template-columns:1fr;gap:4px}}@media (width<=680px){.session-page-cloud-banner{flex-direction:column;align-items:flex-start;padding-left:12px;padding-right:12px}.session-card-cloud-status{max-width:42vw}.session-card-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.session-card-actions{justify-content:flex-start}.session-version-row{flex-direction:column;align-items:stretch}.session-version-row .session-action-btn{align-self:flex-start}}@media (width<=480px){.session-card-meta{grid-template-columns:1fr}}.analytics-page{gap:16px;width:100%;height:100%;min-height:0;padding:16px;display:grid;overflow:hidden}.analytics-page.has-watchlist{grid-template-columns:minmax(0,1fr) 360px}.analytics-page.no-watchlist{grid-template-columns:minmax(0,1fr)}.analytics-main,.analytics-watchlist{min-width:0;min-height:0;overflow:auto}.analytics-page-header,.analytics-toolbar,.analytics-watchlist-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.analytics-page-header{margin-bottom:12px}.analytics-page-header h1,.analytics-watchlist-header h2{margin:0;font-size:1.15rem;font-weight:700}.analytics-page-header p,.analytics-watchlist-header span{color:var(--text-secondary);margin-top:3px;font-size:.78rem}.analytics-toolbar{border:1px solid var(--border);background:#1e222dc7;border-radius:6px;flex-wrap:wrap;justify-content:space-between;margin-bottom:14px;padding:10px}.analytics-toolbar-left,.analytics-toolbar-right{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.analytics-toolbar-left{min-width:0}.analytics-toolbar-right{margin-left:auto}.analytics-toggle,.analytics-select{color:var(--text-secondary);align-items:center;gap:8px;font-size:.76rem;display:inline-flex}.analytics-select select{border:1px solid var(--border);background:var(--bg-tertiary);min-width:128px;color:var(--text-primary);border-radius:4px;padding:6px 8px}.analytics-card-grid{gap:12px;display:grid}.analytics-page.has-watchlist .analytics-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-page.no-watchlist .analytics-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-card{border:1px solid var(--border);background:var(--bg-secondary);border-radius:6px;min-width:0;padding:10px}.analytics-card.watchlisted{border-color:#2962ff8c}.analytics-card-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.analytics-card-header h2{margin:0;font-size:.9rem;font-weight:700}.analytics-card-header span{color:var(--text-secondary);margin-top:2px;font-size:.72rem;display:block}.analytics-card-actions,.analytics-tv-actions{align-items:center;gap:5px;display:flex}.analytics-card-actions button,.modal-icon-btn{border:1px solid var(--border);background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:4px;place-items:center;display:inline-grid}.analytics-card-actions button:hover:not(:disabled),.modal-icon-btn:hover{color:var(--text-primary);border-color:var(--accent)}.analytics-card-actions button.active{color:#ffd166;border-color:#ffd16673}.analytics-card-actions button:disabled{opacity:.55;cursor:not-allowed}.spin{animation:1s linear infinite analytics-spin}@keyframes analytics-spin{to{transform:rotate(360deg)}}.analytics-mini-chart{aspect-ratio:21/24;border-radius:6px;width:100%;min-height:420px;margin-bottom:10px;overflow:hidden}.analytics-mini-chart svg{width:100%;height:100%;display:block}.analytics-mini-chart-empty{border:1px solid var(--border);color:var(--text-secondary);background:#13172261;place-items:center;font-size:.78rem;display:grid}.analytics-chart-bg{fill:#131722b8}.analytics-chart-grid{stroke:#787b862e;stroke-width:1px}.analytics-mini-chart .up line,.analytics-mini-chart .up rect{stroke:var(--green);fill:var(--green)}.analytics-mini-chart .down line,.analytics-mini-chart .down rect{stroke:var(--red);fill:var(--red)}.analytics-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.analytics-metrics-grid div{border:1px solid var(--border);background:#2a2e39b8;border-radius:5px;min-width:0;padding:7px}.analytics-metrics-grid span,.analytics-metrics-grid em{color:var(--text-secondary);text-transform:uppercase;font-size:.62rem;font-style:normal;display:block}.analytics-metrics-grid strong{min-width:0;color:var(--text-primary);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:.76rem;font-weight:700;display:block;overflow:hidden}.analytics-positive{color:var(--green)!important}.analytics-negative{color:var(--red)!important}.analytics-card-updated{color:#c8ccd67a;text-align:right;margin-top:8px;font-size:.68rem}.rsi-value.hot{color:#ff8a80!important}.rsi-value.cold{color:#80cbc4!important}.analytics-card-error{color:var(--red);background:#ef535014;border:1px solid #ef535073;border-radius:5px;padding:10px;font-size:.78rem}.analytics-watchlist{border-left:1px solid var(--border);padding-left:16px}.analytics-watchlist-list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.analytics-watchlist .analytics-card{padding:9px}.analytics-watchlist .analytics-card-header{align-items:center}.analytics-watchlist .analytics-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-watchlist-empty,.analytics-empty-state,.analytics-empty-inline{border:1px solid var(--border);min-height:180px;color:var(--text-secondary);text-align:center;background:#1e222db3;border-radius:6px;place-items:center;padding:18px;display:grid}.analytics-page.no-watchlist .analytics-watchlist{display:none}.analytics-global-refresh{align-items:center;gap:6px;display:inline-flex}.analytics-empty-state h2{color:var(--text-primary);margin:0 0 8px;font-size:1rem}.analytics-empty-state p{max-width:420px;margin:0 0 14px;font-size:.85rem}.analytics-modal-overlay{padding:14px}.analytics-add-modal{width:min(680px,100vw - 28px);max-height:min(760px,100vh - 28px)}.analytics-search-field{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);border-radius:5px;align-items:center;gap:8px;margin:14px 16px 10px;padding:8px 10px;display:flex}.analytics-search-field input{min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;flex:1}.analytics-coin-filter{width:210px;margin:0;padding:6px 8px}.analytics-add-list{min-height:0;padding:0 16px 14px;overflow:auto}.analytics-add-option{border-bottom:1px solid var(--border);color:var(--text-primary);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 4px;font-size:.84rem;display:grid}.analytics-add-option em{color:var(--text-secondary);text-transform:uppercase;font-size:.68rem;font-style:normal}.analytics-tv-modal{width:min(1420px,100vw - 28px);height:min(94vh,100vh - 20px);max-height:calc(100vh - 20px)}.analytics-tv-chart{flex:1;min-height:0}@media (width<=1180px){.analytics-page{grid-template-columns:minmax(0,1fr);overflow:auto}.analytics-main,.analytics-watchlist{overflow:visible}.analytics-watchlist{border-left:0;border-top:1px solid var(--border);padding-top:16px;padding-left:0}.analytics-page.has-watchlist .analytics-card-grid,.analytics-page.no-watchlist .analytics-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.analytics-page{padding:10px}.analytics-page.has-watchlist .analytics-card-grid,.analytics-page.no-watchlist .analytics-card-grid{grid-template-columns:1fr}.analytics-page-header,.analytics-card-header{flex-direction:column;align-items:stretch}.analytics-card-actions,.analytics-toolbar,.analytics-toolbar-left,.analytics-toolbar-right{flex-wrap:wrap}.analytics-toolbar-right{margin-left:0}.analytics-metrics-grid,.analytics-watchlist .analytics-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-tv-actions{flex-wrap:wrap;justify-content:flex-end}}.landing{background:var(--bg-primary);min-height:100dvh;color:var(--text-primary);scroll-behavior:smooth;overflow:hidden auto}.landing-animated{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.landing-animated.visible{opacity:1;transform:translateY(0)}.landing-hero{text-align:center;justify-content:center;align-items:center;min-height:90vh;padding:80px 24px 60px;display:flex;position:relative;overflow:hidden}.landing-hero-bg{pointer-events:none;background:radial-gradient(80% 50% at 50% -20%,#2962ff26,#0000),radial-gradient(60% 40% at 80% 80%,#26a69a14,#0000),radial-gradient(60% 40% at 20% 80%,#ef53500f,#0000);position:absolute;inset:0}.landing-hero-content{max-width:900px;margin:0 auto;animation:1s cubic-bezier(.16,1,.3,1) heroFadeIn;position:relative}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.landing-hero-badge{color:var(--accent);letter-spacing:.05em;text-transform:uppercase;background:#2962ff14;border:1px solid #2962ff66;border-radius:20px;margin-bottom:24px;padding:6px 16px;font-size:.8rem;display:inline-block}.landing-hero-title{letter-spacing:-.03em;margin-bottom:20px;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1}.landing-gradient-text{background:linear-gradient(135deg, var(--accent), #26a69a);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-hero-subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto 36px;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6}.landing-hero-cta{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:60px;display:flex}.landing-btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:14px 32px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s}.landing-btn-primary:hover{background:#1e50d4;transform:translateY(-2px);box-shadow:0 8px 30px #2962ff4d}.landing-btn-large{padding:18px 48px;font-size:1.15rem}.landing-btn-secondary{color:var(--text-primary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:14px 32px;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s}.landing-btn-secondary:hover{border-color:var(--text-secondary);background:#ffffff08}.landing-preview-window{border:1px solid var(--border);background:var(--bg-secondary);border-radius:12px;max-width:800px;margin:0 auto;animation:6s ease-in-out infinite previewFloat;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0d}@keyframes previewFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.landing-preview-bar{background:var(--bg-tertiary);border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:10px 14px;display:flex}.landing-dot{border-radius:50%;width:10px;height:10px}.landing-dot.red{background:#ef5350}.landing-dot.yellow{background:#ffca28}.landing-dot.green{background:#26a69a}.landing-preview-title{color:var(--text-secondary);margin-left:8px;font-size:.8rem}.landing-preview-body{height:280px;padding:0}.landing-preview-chart{width:100%;height:100%}.landing-canvas{width:100%;height:100%;display:block}.landing-stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-wrap:wrap;justify-content:center;gap:48px;padding:48px 24px;display:flex}.landing-stat{text-align:center}.landing-stat-value{color:var(--accent);font-size:2rem;font-weight:800;display:block}.landing-stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.landing-section{max-width:1100px;margin:0 auto;padding:80px 24px}.landing-section-title{text-align:center;letter-spacing:-.02em;margin-bottom:12px;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700}.landing-section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:48px;font-size:1.05rem}.landing-audience-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.landing-audience-card{background:var(--bg-secondary);border:1px solid var(--border);text-align:center;border-radius:12px;padding:32px 24px;transition:transform .3s,border-color .3s}.landing-audience-card:hover{border-color:var(--accent);transform:translateY(-4px)}.landing-audience-icon{margin-bottom:16px;font-size:2.5rem}.landing-audience-card h3{margin-bottom:12px;font-size:1.2rem}.landing-audience-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.landing-features{background:var(--bg-secondary);border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:none}.landing-features-grid{grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto;display:grid}.landing-feature-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:12px;padding:28px 24px;transition:transform .3s,border-color .3s}.landing-feature-card:hover{border-color:var(--accent);transform:translateY(-4px)}.landing-feature-icon{margin-bottom:14px;font-size:2rem}.landing-feature-card h3{margin-bottom:10px;font-size:1.1rem;font-weight:600}.landing-feature-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.landing-steps{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:24px;display:flex}.landing-step{text-align:center;flex:1;min-width:220px;max-width:280px}.landing-step-number{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:1.5rem;font-weight:800;display:flex}.landing-step h3{margin-bottom:10px;font-size:1.1rem}.landing-step p{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.landing-step-arrow{color:var(--text-secondary);flex-shrink:0;margin-top:16px;font-size:1.5rem}.landing-reviews-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.landing-review-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:28px;transition:transform .3s}.landing-review-card:hover{transform:translateY(-2px)}.landing-review-stars{color:#ffca28;letter-spacing:2px;margin-bottom:12px;font-size:1.1rem}.landing-review-text{color:var(--text-primary);margin-bottom:20px;font-size:.95rem;font-style:italic;line-height:1.6}.landing-review-author{align-items:center;gap:12px;display:flex}.landing-review-avatar{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.8rem;font-weight:700;display:flex}.landing-review-name{font-size:.9rem;font-weight:600}.landing-review-role{color:var(--text-secondary);font-size:.8rem}.landing-cta-section{text-align:center}.landing-cta-box{background:linear-gradient(135deg,#2962ff1f,#26a69a14);border:1px solid #2962ff4d;border-radius:20px;padding:64px 32px}.landing-cta-box h2{margin-bottom:12px;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700}.landing-cta-box p{color:var(--text-secondary);margin-bottom:32px;font-size:1.05rem}.landing-hero-preview{flex-direction:column;align-items:center;display:flex}.landing-tv-powered{flex-direction:column;align-items:center;gap:10px;margin-top:48px;display:flex}.landing-tv-powered .tv-powered{gap:12px}.landing-reviews-hidden{display:none!important}.landing-tv-powered .tv-powered-label{font-size:.95rem}.landing-tv-powered .tv-powered-logo{height:28px}@media (width<=900px){.landing-audience-grid,.landing-features-grid{grid-template-columns:repeat(2,1fr)}.landing-reviews-grid{grid-template-columns:1fr}.landing-step-arrow{display:none}.landing-tv-powered .tv-powered-logo{height:22px}.landing-tv-powered .tv-powered-label{font-size:.85rem}}@media (width<=600px){.landing-hero{min-height:auto;padding:60px 16px 40px}.landing-audience-grid,.landing-features-grid{grid-template-columns:1fr}.landing-stats{gap:24px}.landing-stat-value{font-size:1.5rem}.landing-section{padding:48px 16px}.landing-preview-body{height:200px}.landing-hero-cta{flex-direction:column;align-items:center}.landing-cta-box{padding:40px 20px}.landing-footer-content{flex-direction:column}}html:has(.static-page){height:auto;overflow:visible}html:has(.static-page) body{height:auto;overflow:visible}html:has(.static-page) #root{height:auto;overflow:visible}.static-page{background:var(--bg-primary);min-height:100dvh;color:var(--text-primary);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;display:flex}.static-page-header{border-bottom:1px solid var(--border);background:var(--bg-secondary);justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.static-page-brand{color:var(--text-primary);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.static-page-brand img{width:28px;height:28px}.static-page-nav{gap:18px;display:flex}.static-page-nav a{color:var(--text-secondary);font-size:14px;text-decoration:none}.static-page-nav a:hover{color:var(--text-primary)}.static-page-main{flex:1;justify-content:center;padding:48px 24px 80px;display:flex}.static-page-article{width:100%;max-width:760px}.static-page-article h1{margin-bottom:24px;font-size:32px}.static-page-article h2{margin-top:36px;margin-bottom:12px;font-size:22px}.static-page-article h3{margin-top:24px;margin-bottom:8px;font-size:17px}.static-page-article p,.static-page-article li{color:var(--text-primary);font-size:15px}.static-page-article p{margin-bottom:14px}.static-page-article ul,.static-page-article ol{margin:8px 0 16px 22px}.static-page-article li{margin-bottom:6px}.static-page-article a{color:var(--accent);text-decoration:underline}.static-page-article strong{color:var(--text-primary)}.static-page-article .muted{color:var(--text-secondary);font-size:13px}.static-page-article table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14px}.static-page-article th,.static-page-article td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 12px}.static-page-article th{background:var(--bg-secondary);font-weight:600}.blog-list{margin:24px 0 0;padding:0;list-style:none}.blog-list li{border-bottom:1px solid var(--border);padding:20px 0}.blog-list h2{margin:0 0 6px;font-size:20px}.blog-list h2 a{color:var(--text-primary);text-decoration:none}.blog-list h2 a:hover{color:var(--accent)}.blog-list .blog-meta{color:var(--text-secondary);margin-bottom:6px;font-size:13px}.blog-list .blog-excerpt{color:var(--text-primary);margin:0;font-size:14px}@media (width<=640px){.static-page-header{padding:14px 16px}.static-page-article h1{font-size:26px}}
