.combined-table{background:var(--bg-secondary);border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.table-header{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--bg-card);font-size:.875rem;font-weight:600;text-transform:uppercase;color:var(--text-primary);letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.table-body{max-height:70vh;overflow-y:auto}.table-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:1rem;padding:.875rem 1rem;border-bottom:1px solid var(--border-color);align-items:center;color:var(--text-primary)}.table-row:last-child{border-bottom:none}.table-row.row-gainer{background:var(--row-green)}.table-row.row-pullback{background:var(--row-red)}.table-row.row-acv{background:var(--row-grey)}.col-symbol{font-weight:700}.ticker-link{color:var(--text-primary);text-decoration:none}.ticker-link:hover{text-decoration:underline}.col-change{font-weight:600}.col-change.green{color:var(--accent-green)}.col-change.red{color:var(--accent-red)}.col-price,.col-volume,.col-acv{color:var(--text-primary)}.empty-state{text-align:center;padding:4rem 1rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.empty-state p{color:var(--text-primary);margin-bottom:.5rem;font-size:1.125rem}.empty-hint{font-size:.875rem;color:var(--text-secondary)}@media (max-width: 640px){.table-header,.table-row{grid-template-columns:1fr 1fr 1fr 1fr;font-size:.8rem;padding:.75rem .5rem;gap:.5rem}.col-acv{display:none}}.settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;justify-content:center;align-items:flex-start;padding-top:5rem;z-index:200}.settings-panel{background:var(--bg-secondary);border-radius:12px;width:100%;max-width:400px;margin:0 1rem;box-shadow:0 20px 40px #0006;border:1px solid var(--border-color)}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.settings-header h2{font-size:1.125rem;font-weight:600}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;line-height:1;padding:.25rem}.settings-body{padding:1.25rem}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.form-group input[type=tel],.form-group input[type=number]{width:100%;padding:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:1rem}.form-group input:focus{outline:none;border-color:var(--accent-blue)}.hint{display:block;font-size:.75rem;color:var(--text-secondary);margin-top:.375rem}.checkbox-label{display:flex!important;align-items:center;gap:.75rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-blue)}.checkbox-label span{font-size:1rem;color:var(--text-primary)}.message{padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-top:1rem}.message.success{background:#00d26a26;color:var(--accent-green);border:1px solid var(--accent-green)}.message.error{background:#ff475726;color:var(--accent-red);border:1px solid var(--accent-red)}.settings-footer{padding:1rem 1.25rem;border-top:1px solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end}.test-btn,.save-btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s}.test-btn{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.test-btn:hover:not(:disabled){background:var(--border-color)}.save-btn{background:var(--accent-blue);color:#fff;border:none}.save-btn:hover:not(:disabled){background:#5ba0e9}.test-btn:disabled,.save-btn:disabled{opacity:.5;cursor:not-allowed}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000;padding:1rem;position:relative;overflow:hidden}.grid-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(0,212,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.015) 1px,transparent 1px);background-size:50px 50px}.particles{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.particle{position:absolute;width:2px;height:2px;background:#00d4ff;border-radius:50%;bottom:-10px;opacity:0;animation:particleFloat linear infinite;box-shadow:0 0 6px #00d4ff,0 0 12px #00d4ff}@keyframes particleFloat{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh);opacity:0}}.scanline{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,rgba(0,212,255,.4),transparent);animation:scanMove 3s ease-in-out infinite;pointer-events:none}@keyframes scanMove{0%,to{top:0;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.corner{position:absolute;width:100px;height:100px;border:2px solid rgba(0,212,255,.3);pointer-events:none}.corner-tl{top:20px;left:20px;border-right:none;border-bottom:none}.corner-tr{top:20px;right:20px;border-left:none;border-bottom:none}.corner-bl{bottom:20px;left:20px;border-right:none;border-top:none}.corner-br{bottom:20px;right:20px;border-left:none;border-top:none}.login-box{background:#000000f2;border:1px solid rgba(0,212,255,.5);border-radius:4px;padding:3rem 2.5rem;width:100%;max-width:400px;position:relative;z-index:10;box-shadow:0 0 8px #00d4ff66}.login-box:before{content:"";position:absolute;top:-1px;left:20%;right:20%;height:2px;background:linear-gradient(90deg,transparent,#00d4ff,transparent)}.arc-reactor{width:70px;height:70px;margin:0 auto 2.5rem;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#00141ee6,#000000f2 70%);box-shadow:0 0 20px #00d4ff4d,0 0 40px #00d4ff33,inset 0 0 15px #00d4ff1a;animation:reactorGlow 2s ease-in-out infinite}.reactor-outer-ring{position:absolute;width:62px;height:62px;border-radius:50%;border:2px solid rgba(0,212,255,.6);box-shadow:0 0 8px #00d4ff66}.reactor-inner-ring{position:absolute;width:42px;height:42px;border-radius:50%;border:2px solid rgba(0,212,255,.5);box-shadow:0 0 6px #00d4ff4d}.reactor-segments{position:absolute;width:52px;height:52px}.reactor-segments .segment{position:absolute;width:5px;height:14px;background:linear-gradient(to bottom,#00d4ffcc,#00d4ff4d);left:50%;top:50%;transform-origin:center center;border-radius:2px;box-shadow:0 0 4px #00d4ff99}.reactor-segments .segment:nth-child(1){transform:translate(-50%,-50%) rotate(0) translateY(-15px)}.reactor-segments .segment:nth-child(2){transform:translate(-50%,-50%) rotate(36deg) translateY(-15px)}.reactor-segments .segment:nth-child(3){transform:translate(-50%,-50%) rotate(72deg) translateY(-15px)}.reactor-segments .segment:nth-child(4){transform:translate(-50%,-50%) rotate(108deg) translateY(-15px)}.reactor-segments .segment:nth-child(5){transform:translate(-50%,-50%) rotate(144deg) translateY(-15px)}.reactor-segments .segment:nth-child(6){transform:translate(-50%,-50%) rotate(180deg) translateY(-15px)}.reactor-segments .segment:nth-child(7){transform:translate(-50%,-50%) rotate(216deg) translateY(-15px)}.reactor-segments .segment:nth-child(8){transform:translate(-50%,-50%) rotate(252deg) translateY(-15px)}.reactor-segments .segment:nth-child(9){transform:translate(-50%,-50%) rotate(288deg) translateY(-15px)}.reactor-segments .segment:nth-child(10){transform:translate(-50%,-50%) rotate(324deg) translateY(-15px)}.reactor-core{width:20px;height:20px;border-radius:50%;background:radial-gradient(circle,#00d4ff,#09c 40%,#069 70%);display:flex;align-items:center;justify-content:center;box-shadow:0 0 15px #00d4ff,0 0 30px #00d4ffcc,0 0 45px #00d4ff80;animation:corePulse 1.5s ease-in-out infinite;z-index:2}.core-inner{width:8px;height:8px;border-radius:50%;background:radial-gradient(circle,#ffffff 0%,#00d4ff 50%,transparent 100%);box-shadow:0 0 8px #fff,0 0 15px #00d4ff}@keyframes reactorGlow{0%,to{box-shadow:0 0 30px #00d4ff4d,0 0 60px #00d4ff33,inset 0 0 20px #00d4ff1a}50%{box-shadow:0 0 40px #00d4ff80,0 0 80px #00d4ff4d,inset 0 0 30px #00d4ff26}}@keyframes corePulse{0%,to{transform:scale(1);box-shadow:0 0 20px #00d4ff,0 0 40px #00d4ffcc,0 0 60px #00d4ff80}50%{transform:scale(1.05);box-shadow:0 0 25px #00d4ff,0 0 50px #00d4ffe6,0 0 80px #00d4ff99}}.login-title{text-align:center;margin-bottom:2rem}.title-text{display:block;font-size:2.5rem;font-weight:300;color:#00d4ff;letter-spacing:4px;text-shadow:0 0 20px rgba(0,212,255,.5);font-family:Courier New,monospace}.title-sub{display:block;font-size:.7rem;color:#00d4ff99;letter-spacing:6px;margin-top:8px;font-weight:400}.login-form{display:flex;flex-direction:column;gap:1.25rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;color:#00d4ff80;font-size:10px}.form-group input{width:100%;padding:1rem 1rem 1rem 2.5rem;background:#000c;border:1px solid rgba(0,212,255,.15);border-radius:2px;color:#00d4ff;font-size:.9rem;font-family:Courier New,monospace;letter-spacing:2px;outline:none;transition:all .3s ease}.form-group input:focus{border-color:#00d4ff;background:#000a14e6;box-shadow:0 0 20px #00d4ff26,inset 0 0 20px #00d4ff08}.form-group input::placeholder{color:#00d4ff4d;letter-spacing:3px}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus,.form-group input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px rgba(0,0,0,.95) inset!important;-webkit-text-fill-color:#00d4ff!important;border:1px solid rgba(0,212,255,.15)!important;caret-color:#00d4ff}.input-line{position:absolute;bottom:0;left:0;width:0;height:2px;background:#00d4ff;transition:width .3s ease}.form-group input:focus+.input-line{width:100%}.login-error{display:flex;align-items:center;gap:10px;color:#ff4757;font-size:.8rem;padding:.75rem 1rem;background:#ff47571a;border:1px solid rgba(255,71,87,.3);border-radius:2px;font-family:Courier New,monospace;letter-spacing:1px}.error-icon{width:20px;height:20px;border-radius:50%;border:1px solid #ff4757;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.login-btn{position:relative;padding:1rem 2rem;background:transparent;border:1px solid rgba(0,212,255,.5);border-radius:2px;color:#00d4ff;font-size:.9rem;font-weight:600;font-family:Courier New,monospace;letter-spacing:4px;cursor:pointer;overflow:hidden;transition:all .3s ease;margin-top:.5rem}.btn-bg{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,212,255,.2),transparent);transition:left .5s ease}.login-btn:hover .btn-bg{left:100%}.login-btn:hover:not(:disabled){background:#00d4ff1a;box-shadow:0 0 30px #00d4ff4d;border-color:#00d4ff}.login-btn:disabled{opacity:.5;cursor:not-allowed}.btn-text{position:relative;z-index:1}.login-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(0,212,255,.1);font-size:.65rem;color:#00d4ff66;letter-spacing:2px;font-family:Courier New,monospace}.status-dot{width:6px;height:6px;background:#0f8;border-radius:50%;animation:statusPulse 2s ease-in-out infinite;box-shadow:0 0 10px #0f8}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.4}}@media (max-width: 480px){.login-box{padding:2rem 1.5rem}.title-text{font-size:2rem;letter-spacing:3px}.corner{width:50px;height:50px}}.morning-report{padding:20px;max-width:1400px;margin:0 auto;overflow-x:hidden;overflow-y:auto;width:100%;height:100%;box-sizing:border-box}.moving-ticker{background:linear-gradient(180deg,#000000f2,#050a14fa,#000000f2);border-bottom:1px solid rgba(0,210,255,.15);border-top:1px solid rgba(0,210,255,.1);overflow:hidden;margin:-20px -20px 20px;padding:10px 0;position:relative;box-shadow:0 4px 20px #00d2ff0d,inset 0 1px #ffffff05}.moving-ticker:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,210,255,.3),transparent)}.moving-ticker:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,210,255,.2),transparent)}.ticker-track{display:flex;gap:50px;animation:ticker-scroll 90s linear infinite;width:max-content}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-item{display:flex;align-items:center;gap:10px;white-space:nowrap;padding:4px 12px;border-radius:4px;background:#ffffff05;border:1px solid rgba(255,255,255,.03);transition:all .3s ease}.ticker-item:hover{background:#00d2ff0d;border-color:#00d2ff33}.ticker-symbol{font-weight:700;font-size:13px;letter-spacing:.5px;color:#00d2ff;text-shadow:0 0 10px rgba(0,210,255,.4);font-family:SF Mono,Fira Code,monospace}.ticker-price{color:#ffffffd9;font-size:13px;font-weight:500;font-family:SF Mono,Fira Code,monospace}.ticker-change{font-size:12px;font-weight:600;padding:2px 6px;border-radius:3px;font-family:SF Mono,Fira Code,monospace}.ticker-change.up{color:#0f8;background:#00ff881a;text-shadow:0 0 8px rgba(0,255,136,.5);border:1px solid rgba(0,255,136,.2)}.ticker-change.down{color:#ff4757;background:#ff47571a;text-shadow:0 0 8px rgba(255,71,87,.5);border:1px solid rgba(255,71,87,.2)}.loading,.error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;color:var(--text-secondary)}.error button{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.report-header h2{margin:0;font-size:28px;color:var(--text-primary);font-weight:700}.report-date{color:var(--text-secondary);font-size:16px}.market-signal{display:flex;align-items:center;gap:16px;padding:20px 24px;border-radius:16px;border-left:5px solid;margin-bottom:32px}.market-signal.green{background:linear-gradient(135deg,#00ff881a,#00ff880d);border-color:#0f8}.market-signal.yellow{background:linear-gradient(135deg,#ffcc001a,#ffcc000d);border-color:#fc0}.market-signal.red{background:linear-gradient(135deg,#ff44441a,#ff44440d);border-color:#f44}.signal-emoji{font-size:32px}.signal-text{color:var(--text-primary);font-size:18px;font-weight:500}.section{margin-bottom:40px;padding:24px;border-radius:16px;min-width:0;overflow:hidden}.section h3{font-size:20px;color:var(--text-primary);margin:0 0 20px;display:flex;align-items:center;gap:10px;font-weight:700}.section-icon{font-size:24px}.section.market-overview{background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.section.market-overview h3{color:var(--text-primary)}.section.gappers{background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.section.gappers h3{color:var(--text-primary)}.section.risk-appetite{background:#ffffff08;border:1px solid rgba(255,255,255,.08);flex:1;min-width:0}.section.risk-appetite h3{color:var(--text-primary)}.risk-appetite-content{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:24px;align-items:center}@media (max-width: 900px){.risk-appetite-content{grid-template-columns:1fr}}.risk-score-display{display:flex;flex-direction:column;gap:16px}.risk-score-value{display:flex;align-items:baseline;gap:8px}.score-number{font-size:48px;font-weight:700;color:#0f8;line-height:1}.score-max{font-size:24px;color:var(--text-secondary)}.risk-score-bar{position:relative;height:12px;background:#ffffff1a;border-radius:6px;overflow:visible}.risk-score-fill{height:100%;background:linear-gradient(90deg,#f44,#fc0,#0f8);border-radius:6px;transition:width .5s ease}.risk-score-markers{position:absolute;top:100%;left:0;right:0;margin-top:4px}.risk-score-markers .marker{position:absolute;transform:translate(-50%);font-size:10px;color:var(--text-secondary)}.risk-components{display:flex;flex-wrap:wrap;gap:8px}.component-badge{padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600}.component-badge.above{background:#00ff8826;color:#0f8}.component-badge.below{background:#ff444426;color:#f44}.component-badge.middle{background:#ffa50026;color:orange}.risk-options-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1000px){.risk-options-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.risk-options-grid{grid-template-columns:1fr}}.gauge-label{text-align:center;font-size:12px;color:var(--text-secondary);margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.risk-appetite-display{display:flex;align-items:center;justify-content:center;gap:40px;padding:16px}.gauge-container{flex-shrink:0}.gauge-svg{width:180px;height:auto}.sparkline-container{display:flex;flex-direction:column;gap:8px}.sparkline-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.sparkline-svg{width:100%;max-width:350px;height:180px}@media (max-width: 500px){.risk-appetite-display{flex-direction:column;gap:16px}}.risk-gauge{background:#0000004d;border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center}.risk-bars{background:#0000004d;border-radius:12px;padding:16px}.bars-container{display:flex;align-items:flex-end;justify-content:space-between;height:100px;gap:4px}.bar-wrapper{flex:1;height:100%;display:flex;align-items:flex-end}.bar{width:100%;border-radius:2px 2px 0 0;transition:height .3s ease}.risk-score-only{background:#0000004d;border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px}.risk-score-only .big-score{font-size:64px;font-weight:700;line-height:1}.risk-score-only .score-label{font-size:24px;color:var(--text-secondary);margin-top:4px}.risk-dots{background:#0000004d;border-radius:12px;padding:16px}.dots-container{position:relative;height:100px}.dots-grid{position:absolute;top:0;left:30px;right:0;bottom:0}.dot-row{position:absolute;left:0;right:0;display:flex;align-items:center}.dot-row:nth-child(1){top:0%}.dot-row:nth-child(2){top:30%}.dot-row:nth-child(3){top:50%}.dot-row:nth-child(4){top:70%}.dot-row:nth-child(5){top:100%}.dot-label{font-size:10px;color:var(--text-secondary);width:20px;margin-left:-30px}.dot-line{flex:1;height:1px;background:#ffffff1a}.dots-points{position:absolute;top:0;left:30px;right:0;bottom:0}.dot-point{position:absolute;width:8px;height:8px;border-radius:50%;transform:translate(-50%,50%);z-index:2}.dots-line-svg{position:absolute;top:0;left:0;width:100%;height:100%}.section.watchlist{background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.section.watchlist h3{color:var(--text-primary)}.watchlist-count{font-size:14px;color:var(--text-secondary);font-weight:400}.charts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}}.chart-card-compact{background:#000;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.1);min-width:0;display:flex;flex-direction:column}.chart-header-compact{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#0006}.chart-symbol-compact{font-size:15px;font-weight:700}.chart-symbol-compact.above-both{color:#0f8}.chart-symbol-compact.above-20{color:#f5a623}.chart-symbol-compact.below-both{color:#f44}.chart-price-compact{font-size:14px;font-weight:600;color:var(--text-primary)}.chart-change-compact{font-size:14px;font-weight:600;margin-left:auto}.chart-change-compact.positive{color:#0f8}.chart-change-compact.negative{color:#f44}.chart-container-compact{width:100%;height:280px;background:#000}.chart-card{background:#0000004d;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1);min-width:0}.chart-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#0003}.chart-symbol{font-size:24px;font-weight:700;color:var(--text-primary)}.chart-change{font-size:18px;font-weight:600}.chart-change.positive{color:#0f8}.chart-change.negative{color:#f44}.chart-body{padding:16px 20px}.chart-price{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.ma-status{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.ma-badge{padding:8px 14px;border-radius:6px;font-size:14px;font-weight:600;font-family:monospace}.ma-badge.above{background:#00ff8826;color:#0f8;border:1px solid rgba(0,255,136,.3)}.ma-badge.below{background:#ff444426;color:#f44;border:1px solid rgba(255,68,68,.3)}.chart-image-container{width:100%;height:300px;background:#131722;overflow:hidden;position:relative}.chart-image{width:100%;height:100%;object-fit:cover}.chart-iframe{width:100%;height:300px;border:none}.chart-widget-container{width:100%;height:300px}.chart-widget-container>div{width:100%!important;height:100%!important}.chart-loading{display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:14px;background:#000}.chart-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:14px}.gappers-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 768px){.gappers-grid{grid-template-columns:1fr}}.gapper-column{display:flex;flex-direction:column;gap:12px;min-width:0}.gapper-title{font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:8px}.gapper-title.up{background:linear-gradient(135deg,#0f83,#00ff880d);color:#0f8}.gapper-title.down{background:linear-gradient(135deg,#f443,#ff44440d);color:#f44}.gapper-card{background:#0000004d;border-radius:12px;padding:16px;border-left:4px solid;transition:transform .2s,box-shadow .2s}.gapper-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.gapper-card.up{border-color:#0f8}.gapper-card.down{border-color:#f44}.gapper-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.gapper-stats{display:flex;align-items:center;gap:12px}.gapper-ticker{font-size:20px;font-weight:700;color:var(--text-primary)}.gapper-change{font-size:18px;font-weight:700}.gapper-card.up .gapper-change{color:#0f8}.gapper-card.down .gapper-change{color:#f44}.gapper-details{display:flex;justify-content:space-between;font-size:14px;color:var(--text-secondary);margin-bottom:12px}.gapper-price{font-size:16px;color:var(--text-primary)}.gapper-volume{color:var(--text-secondary)}.gapper-news{padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.news-source{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.news-headline{margin:8px 0 0;font-size:14px;color:var(--text-primary);line-height:1.5}.news-link{display:block;text-decoration:none;color:var(--text-primary);transition:color .2s}.news-link:hover{color:#00d4ff}.no-alerts{padding:48px 24px;text-align:center;color:var(--text-secondary);background:#0003;border-radius:12px;font-size:16px}.watchlist-alerts{display:flex;flex-direction:column;gap:12px}.alert-card{background:#0000004d;border-radius:12px;padding:18px;border-left:4px solid;position:relative;transition:transform .2s,box-shadow .2s}.alert-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.alert-card.up{border-color:#0f8}.alert-card.down{border-color:#f44}.alert-header{display:flex;align-items:center;gap:16px;margin-bottom:8px;flex-wrap:wrap}.alert-ticker{font-size:20px;font-weight:700;color:var(--text-primary)}.alert-change{font-size:18px;font-weight:700}.alert-change.positive{color:#0f8}.alert-change.negative{color:#f44}.alert-price{font-size:16px;color:#fff;font-weight:600}.alert-acv{font-size:14px;color:var(--text-secondary)}.alert-news{padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.new-badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.section.earnings{background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.section.earnings h3{color:var(--text-primary)}.earnings-subtitle{font-size:14px;color:var(--text-secondary);font-weight:400;margin-left:8px}.earnings-alerts{display:flex;flex-direction:column;gap:12px}.earnings-card{background:#0000004d;border-radius:12px;padding:18px;border-left:4px solid;transition:transform .2s,box-shadow .2s}.earnings-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.earnings-card.up{border-color:#0f8}.earnings-card.down{border-color:#f44}.earnings-header{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.earnings-ticker{font-size:20px;font-weight:700;color:var(--text-primary)}.earnings-price{font-size:16px;color:#fff;font-weight:600}.earnings-change{font-size:18px;font-weight:700}.earnings-change.positive{color:#0f8}.earnings-change.negative{color:#f44}.earnings-acv{font-size:14px;color:var(--text-secondary)}.earnings-time-badge{font-size:12px;padding:4px 10px;border-radius:4px;background:#6366f133;color:#a5a7f3;font-weight:500}.earnings-news{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.earnings-news .news-headline{margin:0;font-size:14px;color:var(--text-primary);line-height:1.5}.refresh-btn{display:block;width:100%;max-width:300px;margin:40px auto 0;padding:16px 32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.section-settings-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#ffffff80;padding:4px 8px;border-radius:4px;font-size:14px;cursor:pointer;margin-left:12px;transition:all .2s}.section-settings-btn:hover{background:#ffffff1a;color:#00d4ff;border-color:#00d4ff}.settings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-modal{background:#1a1a2e;border:1px solid rgba(0,212,255,.3);border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080,0 0 40px #00d4ff1a}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1)}.settings-modal-header h3{margin:0;font-size:18px;color:#00d4ff}.settings-close-btn{background:transparent;border:none;color:#ffffff80;font-size:24px;cursor:pointer;padding:0;line-height:1;transition:color .2s}.settings-close-btn:hover{color:#ff4757}.settings-modal-content{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.settings-group{display:flex;flex-direction:column;gap:8px}.settings-group label{font-size:13px;color:#ffffffb3;font-weight:500}.settings-input{background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:10px 12px;color:#fff;font-size:14px;transition:border-color .2s}.settings-input:focus{outline:none;border-color:#00d4ff}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#ffffffe6}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#00d4ff;cursor:pointer}.stock-list-editor{display:flex;flex-direction:column;gap:12px}.stock-add-row{display:flex;gap:8px}.stock-input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;color:#fff;font-size:14px;text-transform:uppercase}.stock-input:focus{outline:none;border-color:#00d4ff}.stock-add-btn{background:#00d4ff;color:#000;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.stock-add-btn:hover{background:#00b8e6}.stock-tags{display:flex;flex-wrap:wrap;gap:8px;max-height:200px;overflow-y:auto;padding:4px}.stock-tag{display:inline-flex;align-items:center;gap:6px;background:#00d4ff26;border:1px solid rgba(0,212,255,.3);color:#00d4ff;padding:4px 8px 4px 10px;border-radius:4px;font-size:12px;font-weight:600;font-family:SF Mono,monospace}.stock-remove-btn{background:transparent;border:none;color:#ffffff80;font-size:14px;cursor:pointer;padding:0;line-height:1;transition:color .2s}.stock-remove-btn:hover{color:#ff4757}.stock-count{font-size:12px;color:#ffffff80;text-align:right}@media (max-width: 640px){.morning-report{padding:16px}.moving-ticker{margin:-16px -16px 16px}.section{padding:16px;margin-bottom:24px}.report-header{flex-direction:column;gap:8px;text-align:center}.market-signal{flex-direction:column;text-align:center;padding:16px}.watchlist-alerts{grid-template-columns:1fr}.risk-appetite-display{flex-direction:column;gap:24px}.gauge-svg{width:140px}}.market-closed{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;color:#888}.market-closed-icon{font-size:64px;margin-bottom:20px}.market-closed h2{font-size:28px;color:#fff;margin:0 0 12px}.market-closed p{font-size:16px;color:#666;margin:0}.top-row{display:flex;gap:20px;width:100%;margin-bottom:20px;align-items:stretch}.top-row>.section{margin-bottom:0}.recent-runners{flex:0 0 auto;width:500px;display:flex;flex-direction:column}.recent-runners h3{margin-bottom:16px}.runners-list{display:flex;flex-direction:column;gap:8px}.runner-row{display:flex;gap:20px;align-items:center;padding:10px 14px;background:#ffffff08;border-radius:8px;font-size:15px;font-family:SF Mono,Monaco,Consolas,monospace}.runner-date{color:#999;min-width:70px;flex-shrink:0}.runner-ticker{color:#fff;font-weight:700;min-width:60px;flex-shrink:0}.runner-gain{color:#00d26a;font-weight:700;min-width:85px;flex-shrink:0}.runner-float{color:#999;min-width:80px;flex-shrink:0}.runner-volume{color:#777;flex-shrink:0;min-width:70px}.recent-runners .no-data{color:#666;font-size:13px;padding:12px}@media (max-width: 1100px){.top-row{flex-direction:column}.recent-runners,.section.risk-appetite{width:100%}}.tape{padding:20px;max-width:1400px;margin:0 auto;overflow-x:hidden;overflow-y:auto;width:100%;height:100%;box-sizing:border-box}.tape .loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.tape-header{display:flex;align-items:center;gap:24px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.tape-header h2{margin:0;font-size:28px;color:var(--text-primary);font-weight:700}.tape-search{flex:1;max-width:400px;position:relative}.search-input{width:100%;padding:12px 40px 12px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:15px;outline:none;transition:border-color .2s,background .2s}.search-input:focus{border-color:#ffffff4d;background:#ffffff14}.search-input::placeholder{color:var(--text-secondary)}.clear-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:4px 8px}.clear-search:hover{color:var(--text-primary)}.video-count{color:var(--text-secondary);font-size:14px}.tape-filters{display:flex;align-items:center;gap:16px;flex:1;flex-wrap:wrap}.category-filter{display:flex;gap:8px;flex-wrap:wrap}.category-btn{padding:8px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.category-btn:hover{background:#ffffff1a;color:var(--text-primary)}.category-btn.active{background:#6366f133;border-color:#6366f180;color:#a5b4fc}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.no-videos{padding:60px 20px;text-align:center;color:var(--text-secondary);font-size:16px}.video-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.video-card:hover{transform:translateY(-4px);border-color:#fff3;box-shadow:0 8px 32px #0000004d}.video-thumbnail{position:relative;aspect-ratio:16 / 9;background:#000;overflow:hidden}.video-thumbnail img{width:100%;height:100%;object-fit:cover}.video-thumbnail-canvas{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s}.video-thumbnail-canvas.loaded{opacity:1}.thumbnail-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#0d0d1a)}.thumbnail-spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.1);border-top-color:#fff6;border-radius:50%;animation:spin 1s linear infinite}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#000;color:#00d4ff;font-size:18px;font-weight:600;text-align:center;padding:20px;text-transform:uppercase;letter-spacing:3px;font-family:Courier New,monospace;text-shadow:0 0 10px rgba(0,212,255,.5);border:1px solid rgba(0,212,255,.2);transition:all .3s ease}.video-card:hover .thumbnail-placeholder{text-shadow:0 0 15px rgba(0,212,255,.8),0 0 25px rgba(0,212,255,.4);border-color:#00d4ff80;box-shadow:inset 0 0 30px #00d4ff1a}.play-icon{font-size:48px;color:#ffffff4d;transition:color .2s,transform .2s}.video-card:hover .play-icon{color:#fff9;transform:scale(1.1)}.video-duration{position:absolute;bottom:8px;right:8px;background:#000c;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.video-size{position:absolute;bottom:8px;right:8px;background:#000c;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.video-info{padding:16px}.video-category{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#a5b4fc;margin-bottom:6px}.video-title{margin:0 0 8px;font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.video-date{font-size:13px;color:var(--text-secondary)}.video-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.delete-video-btn{background:transparent;border:none;cursor:pointer;font-size:14px;opacity:0;transition:opacity .2s,transform .2s;padding:4px}.video-card:hover .delete-video-btn{opacity:.6}.delete-video-btn:hover{opacity:1!important;transform:scale(1.1)}.video-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{width:100%;max-width:1000px;background:#1a1a2e;border-radius:12px;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.modal-title-group{display:flex;flex-direction:column;gap:4px}.modal-category{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#a5b4fc}.modal-header h3{margin:0;font-size:18px;color:var(--text-primary);font-weight:600}.close-modal{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:4px 12px;border-radius:4px;transition:background .2s,color .2s}.close-modal:hover{background:#ffffff1a;color:var(--text-primary)}.video-player{aspect-ratio:16 / 9;background:#000}.video-player video{width:100%;height:100%}.player-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);text-align:center;padding:40px}.player-placeholder p{margin:0 0 12px;font-size:16px}.placeholder-note{font-size:14px!important;opacity:.7}.player-loading{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);gap:16px}.player-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#a5b4fc;border-radius:50%;animation:spin 1s linear infinite}.player-loading p{margin:0;font-size:14px}.player-error{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);gap:16px}.player-error p{margin:0;font-size:16px}.player-error button{padding:10px 24px;background:#6366f133;border:1px solid rgba(99,102,241,.5);border-radius:8px;color:#a5b4fc;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.player-error button:hover{background:#6366f14d}@media (max-width: 640px){.tape{padding:16px}.tape-header{flex-direction:column;align-items:flex-start;gap:16px}.tape-search{width:100%;max-width:none}.video-grid{grid-template-columns:1fr}}.screens{display:flex;position:absolute;top:0;left:0;right:0;bottom:0;background:var(--bg-primary);overflow:hidden}.screens-main{flex:1;height:100%;min-width:0;display:flex;flex-direction:column;overflow:hidden}.screens-chart{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;overflow:visible}.timeframe-bar{display:flex;gap:4px;padding:8px 12px;background:#1e222d;border-bottom:1px solid var(--border-color)}.timeframe-btn{padding:6px 14px;font-size:13px;font-weight:600;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.timeframe-btn:hover{background:#ffffff0d;color:var(--text-primary)}.timeframe-btn.active{background:#6366f133;color:#6366f1;border-color:#6366f1}.chart-container{width:100%;flex:1;background:#000;overflow:hidden;position:relative;max-height:calc(100vh - 140px)}.chart-settings-btn{position:absolute;top:10px;right:10px;z-index:100;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#1e222de6;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.chart-settings-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent-color)}.chart-settings-panel{position:absolute;top:10px;right:56px;z-index:100;width:280px;max-height:calc(100% - 20px);overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 20px #0006}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--border-color)}.settings-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1}.close-btn:hover{color:var(--text-primary)}.settings-section{padding:12px 14px;border-bottom:1px solid var(--border-color)}.settings-section:last-child{border-bottom:none}.settings-section h4{margin:0 0 10px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-header h4{margin:0}.add-btn{padding:4px 10px;font-size:12px;font-weight:500;background:var(--accent-color);border:none;border-radius:4px;color:#fff;cursor:pointer}.add-btn:hover{opacity:.9}.color-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.color-row label{font-size:13px;color:var(--text-primary)}.color-row input[type=color]{width:32px;height:24px;padding:0;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;background:transparent}.indicator-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.indicator-row select{flex:0 0 70px;padding:6px 8px;font-size:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary)}.indicator-row input[type=number]{flex:0 0 60px;padding:6px 8px;font-size:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);text-align:center}.indicator-row input[type=color]{width:28px;height:28px;padding:0;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;background:transparent}.remove-btn{background:none;border:none;font-size:18px;color:var(--text-secondary);cursor:pointer;padding:0 4px;line-height:1}.remove-btn:hover{color:#ef4444}.layouts-list{margin-bottom:10px}.layout-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;margin-bottom:4px;background:var(--bg-tertiary);border-radius:4px;cursor:pointer;transition:background .15s}.layout-item:hover{background:var(--bg-primary)}.layout-item span{font-size:13px;color:var(--text-primary)}.save-layout-row{display:flex;gap:8px}.save-layout-row input{flex:1;padding:8px 10px;font-size:13px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary)}.save-layout-row input::placeholder{color:var(--text-secondary)}.save-layout-row button{padding:8px 14px;font-size:13px;font-weight:500;background:var(--accent-color);border:none;border-radius:4px;color:#fff;cursor:pointer}.save-layout-row button:hover{opacity:.9}.tradingview-iframe{width:100%;height:100%;border:none;background:#131722}.chart-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary)}.company-info-panel{padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;max-height:85px;overflow:hidden}.company-info-panel.loading{color:var(--text-secondary);font-size:13px;text-align:center;padding:8px 16px}.company-info-header{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.company-ticker{font-size:16px;font-weight:700;color:var(--text-primary)}.company-name{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-info-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:16px}.info-item{display:flex;flex-direction:column;gap:2px}.info-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.period-performance{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);flex-shrink:0}.period-item{display:flex;align-items:center;gap:12px;padding:4px 0}.period-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.period-value{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.period-value.positive{color:#22c55e}.period-value.negative{color:#ef4444}.screens-watchlist{width:240px;height:100%;min-height:0;background:var(--bg-secondary);border-left:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.watchlist-header{padding:12px;border-bottom:1px solid var(--border-color)}.screen-select-row{display:flex;gap:8px;align-items:center}.screen-select-row .screen-select{flex:1}.merge-settings-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.merge-settings-btn:hover{background:var(--bg-primary);color:var(--text-primary);border-color:var(--accent-color)}.merge-dropdown{margin-top:10px;padding:10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px}.merge-option{display:flex;align-items:center;gap:8px;padding:8px 4px;font-size:13px;color:var(--text-primary);cursor:pointer;border-radius:4px;transition:background .15s}.merge-option:hover{background:var(--bg-secondary)}.merge-option input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-color)}.merge-option span{-webkit-user-select:none;user-select:none}.screen-select{width:100%;padding:10px 12px;font-size:14px;font-weight:600;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer}.screen-select:hover{border-color:var(--accent-color)}.screen-select:focus{outline:none;border-color:var(--accent-color)}.watchlist-header-row{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.header-ticker{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.header-data{display:flex;align-items:center;gap:8px}.sort-btn{padding:4px 8px;font-size:11px;font-weight:600;background:transparent;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s;text-transform:uppercase;letter-spacing:.5px;min-width:55px;text-align:center}.sort-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent-color)}.sort-btn.active{background:#6366f133;color:#6366f1;border-color:#6366f1}.header-price{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;min-width:55px;text-align:right}.watchlist-items{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.watchlist-loading{padding:20px;text-align:center;color:var(--text-secondary)}.watchlist-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.watchlist-count{font-size:12px;color:var(--text-secondary)}.copy-tickers-btn{padding:4px 10px;font-size:11px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.copy-tickers-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.watchlist-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s}.watchlist-item:hover{background:var(--bg-tertiary)}.watchlist-item.selected{background:#6366f126;border-left:3px solid var(--accent-color)}.watchlist-rank{width:20px;font-size:11px;color:var(--text-secondary);font-weight:500}.watchlist-info{flex:1;min-width:0}.watchlist-ticker{font-weight:700;font-size:13px;color:var(--text-primary)}.watchlist-company{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watchlist-data{display:flex;align-items:center;gap:8px;flex-shrink:0}.watchlist-price{font-size:13px;font-weight:600;color:var(--text-primary);min-width:55px;text-align:right}.watchlist-change{font-size:12px;font-weight:600;min-width:55px;text-align:right}.watchlist-change.positive{color:#22c55e}.watchlist-change.negative{color:#ef4444}.tradingview-widget-container__widget{height:100%!important;width:100%!important}@media (max-width: 1200px){.company-info-grid{grid-template-columns:repeat(4,1fr);gap:12px}}@media (max-width: 768px){.screens{flex-direction:column-reverse}.screens-main{height:auto;flex:1}.screens-watchlist{width:100%;height:200px;border-left:none;border-top:1px solid var(--border-color)}.screens-chart{height:calc(100vh - 350px)}.company-info-grid{grid-template-columns:repeat(2,1fr);gap:10px}.company-info-panel{padding:10px 12px}.watchlist-items{display:flex;overflow-x:auto;overflow-y:hidden}.watchlist-item{flex-shrink:0;width:140px;flex-direction:column;align-items:flex-start;border-bottom:none;border-right:1px solid var(--border-color)}.watchlist-rank{display:none}.watchlist-data{text-align:left;margin-top:4px}}.chart-search{display:flex;flex-direction:column;height:100vh;margin:-1.5rem;background:#000;color:#d1d4dc;position:relative}.tv-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#1e222d;border-bottom:1px solid #2a2e39;gap:12px}.tv-toolbar-left{display:flex;align-items:center;gap:8px}.tv-search-box{display:flex;align-items:center;background:#2a2e39;border:1px solid #363a45;border-radius:20px;padding:0 12px;gap:6px}.tv-search-icon{font-size:12px;opacity:.6}.tv-ticker-input{width:80px;padding:6px 0;background:transparent;border:none;color:#d1d4dc;font-size:13px;font-weight:600;text-transform:uppercase;outline:none}.tv-ticker-input::placeholder{color:#787b86;font-weight:400;text-transform:none}.tv-date-input{padding:6px 12px;background:#2a2e39;border:1px solid #363a45;border-radius:20px;color:#d1d4dc;font-size:12px;outline:none}.tv-date-input::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}.tv-load-btn{padding:6px 14px;background:#2962ff;border:none;border-radius:20px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:background .2s}.tv-load-btn:hover:not(:disabled){background:#1e53e4}.tv-load-btn:disabled{opacity:.6;cursor:not-allowed}.tv-toolbar-center{display:flex;align-items:center}.tv-timeframe-group{display:flex;align-items:center;gap:2px}.tv-tf-btn{padding:5px 10px;background:transparent;border:none;color:#787b86;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;border-radius:4px}.tv-tf-btn:hover{color:#d1d4dc;background:#ffffff0d}.tv-tf-btn.active{color:#d1d4dc;background:#363a45}.tv-toolbar-right{display:flex;align-items:center;gap:8px}.tv-icon-btn{padding:6px 10px;background:transparent;border:1px solid #363a45;border-radius:4px;color:#787b86;font-size:14px;cursor:pointer;transition:all .2s}.tv-icon-btn:hover{background:#2a2e39;color:#d1d4dc}.tv-icon-btn:disabled{opacity:.5;cursor:not-allowed}.copy-chart-btn.copied{color:#26a69a;border-color:#26a69a}.copy-chart-btn.error{color:#ef5350;border-color:#ef5350}.tv-ohlc-bar{display:flex;align-items:center;padding:4px 12px;background:#000;font-size:12px;font-family:-apple-system,BlinkMacSystemFont,Trebuchet MS,Roboto,Ubuntu,sans-serif;border-bottom:1px solid #1e222d;overflow-x:auto;white-space:nowrap;min-height:28px}.tv-ohlc-left{display:flex;align-items:center;gap:6px;flex-shrink:0}.tv-symbol-name{font-size:13px;font-weight:700;color:#d1d4dc}.tv-symbol-info{color:#787b86;font-size:12px}.tv-ohlc-dot{font-size:8px;margin:0 4px}.tv-ohlc-dot.green{color:#388e3c}.tv-ohlc-dot.red{color:#ff0014}.tv-ohlc-item{display:flex;align-items:center;gap:1px}.tv-ohlc-label{color:#787b86}.tv-ohlc-value{color:#d1d4dc}.tv-ohlc-change{font-weight:500;margin-left:4px}.tv-ohlc-change.green{color:#388e3c}.tv-ohlc-change.red{color:#ff0014}.search-error{padding:8px 12px;background:#ef53501a;border-bottom:1px solid rgba(239,83,80,.3);color:#ff0014;font-size:13px}.chart-area{flex:1;min-height:500px;position:relative;background:#000}.chart-placeholder{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#787b86}.placeholder-text{font-size:14px}.loading-spinner{width:28px;height:28px;border:2px solid #2a2e39;border-top-color:#2962ff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-more-indicator{position:absolute;top:50px;left:12px;padding:6px 12px;background:#2962ffe6;border-radius:4px;color:#fff;font-size:12px;font-weight:500;z-index:100;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.volume-legend{position:absolute;bottom:24px;right:70px;display:flex;gap:12px;font-size:11px;font-family:-apple-system,BlinkMacSystemFont,Trebuchet MS,Roboto,Ubuntu,sans-serif;z-index:10}.volume-ma,.volume-current{display:flex;align-items:center;gap:4px}.volume-ma-label,.volume-ma-value{color:#f5a623}.volume-label{color:#787b86}.volume-value{color:#d1d4dc}@media (max-width: 900px){.tv-toolbar{flex-wrap:wrap;gap:8px;padding:6px 8px}.tv-toolbar-center{order:3;width:100%;justify-content:center}.tv-timeframe-group{flex-wrap:wrap;justify-content:center}}@media (max-width: 768px){.tv-toolbar-left{width:100%}.tv-search-box{flex:1}.tv-ticker-input{width:100%}.tv-ohlc-bar{padding:4px 8px;font-size:11px}.tv-ohlc-item{gap:0}.volume-legend{right:8px;bottom:20px;font-size:10px}}.trades{padding:20px;max-width:1400px;margin:0 auto}.stats-bar{display:flex;gap:10px;margin-bottom:24px}.stat-card{flex:1;background:#0f0f0f;border:1px solid #1a1a1a;border-radius:10px;padding:14px 16px;min-width:0;height:92px;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.stat-header{display:flex;align-items:center;gap:5px;margin-bottom:6px}.stat-label{font-size:12px;color:#666;font-weight:400;white-space:nowrap}.stat-info-icon{width:13px;height:13px;border:1px solid #3a3a3a;border-radius:50%;font-size:9px;color:#4a4a4a;display:inline-flex;align-items:center;justify-content:center;cursor:help;flex-shrink:0}.stat-value{font-size:26px;font-weight:400;color:#fff;line-height:1;letter-spacing:-.5px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.stat-value.large{font-size:30px;font-weight:500;text-align:center;width:100%;margin-top:8px}.stat-value.medium{font-size:28px;font-weight:500;flex:1;text-align:center}.stat-content{display:flex;align-items:center;justify-content:space-between;flex:1}.stat-content.avg-wl{flex-direction:row;align-items:center;gap:16px}.stat-content.avg-wl .stat-value{margin-bottom:0;flex-shrink:0;font-size:28px;font-weight:600}.avg-wl-right{display:flex;flex-direction:column;gap:4px;flex:1;min-width:80px}.gauge{width:44px;height:44px;position:relative;flex-shrink:0}.gauge-svg{width:100%;height:100%}.win-loss-gauge{width:68px;position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.win-loss-gauge .gauge-svg{width:65px;height:32px}.gauge-labels{display:flex;justify-content:space-between;width:100%;font-size:8px;padding:0;margin-top:2px;gap:2px}.loss-count{color:#fff;background:#2d4a5e;padding:1px 4px;border-radius:2px;font-weight:500;font-size:8px}.zero-count{color:#555;background:#1a1a1a;padding:1px 4px;border-radius:2px;font-size:8px}.win-count{color:#fff;background:#2d5e4a;padding:1px 4px;border-radius:2px;font-weight:500;font-size:8px}.avg-bar{display:flex;width:100%;height:8px;border-radius:4px;overflow:hidden;background:transparent}.avg-win{background:#00d26a;min-width:3px;border-radius:4px 0 0 4px}.avg-loss{background:#ff4757;min-width:3px;border-radius:0 4px 4px 0}.avg-labels{display:flex;justify-content:space-between;width:100%;font-size:11px;margin-top:4px}.win-label{color:#00d26a;font-weight:500}.loss-label{color:#ff4757;font-weight:500}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #1a1a1a}.calendar-nav{display:flex;align-items:center;gap:8px}.calendar-nav h2{font-size:18px;font-weight:600;color:#fff;margin:0;min-width:160px}.nav-btn{background:transparent;border:none;color:#666;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:16px;transition:all .2s;display:flex;align-items:center;justify-content:center}.nav-btn:hover{background:#222;color:#fff}.today-btn{background:#1a1a1a;border:1px solid #333;color:#fff;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;margin-left:8px}.today-btn:hover{background:#222;border-color:#444}.monthly-stats{display:flex;align-items:center;gap:10px}.monthly-label{color:#666;font-size:13px}.monthly-pnl{padding:5px 10px;border-radius:4px;font-weight:600;font-size:13px}.monthly-pnl.profit{background:#00d26a;color:#000}.monthly-pnl.loss{background:#ff4757;color:#fff}.monthly-days{background:#333;padding:5px 10px;border-radius:4px;font-size:12px;color:#fff;font-weight:500}.calendar-header-left{display:flex;align-items:center;gap:16px}.add-trade-btn{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff;font-size:24px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 8px #0000004d}.add-trade-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #3b82f699,0 0 40px #3b82f666,0 6px 16px #3b82f666}.calendar-container{display:flex;gap:16px;overflow:visible}.calendar-grid{flex:1;min-width:0;overflow:hidden}.calendar-header-row{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #222}.calendar-day-header{padding:12px 8px;text-align:center;font-size:13px;color:#666;font-weight:500;background:#0d0d0d;border-right:1px solid #1a1a1a}.calendar-day-header:last-child{border-right:none}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:4px}.calendar-day{background:#0d0d0d;border:1px solid #1a1a1a;border-radius:8px;min-height:110px;padding:8px;position:relative;transition:all .2s}.calendar-day.empty,.calendar-day.weekend{background:#080808}.calendar-day.today{box-shadow:inset 0 0 0 2px #fff}.calendar-day.profit{background:#00502899;box-shadow:inset 0 0 20px #00d26a26,0 0 10px #00d26a1a}.calendar-day.loss{background:#501919b3;box-shadow:inset 0 0 20px #ff475726,0 0 10px #ff47571a}.calendar-day.today.profit{box-shadow:inset 0 0 0 2px #fff,inset 0 0 20px #00d26a26,0 0 10px #00d26a1a}.calendar-day.today.loss{box-shadow:inset 0 0 0 2px #fff,inset 0 0 20px #ff475726,0 0 10px #ff47571a}.calendar-day:hover:not(.empty){border-color:#333}.calendar-day.clickable{cursor:pointer}.calendar-day.clickable.profit:hover{background:#006432b3;box-shadow:inset 0 0 25px #00d26a40,0 0 15px #00d26a26}.calendar-day.clickable.loss:hover{background:#641e1ecc;box-shadow:inset 0 0 25px #ff475740,0 0 15px #ff475726}.day-number{position:absolute;top:8px;right:10px;font-size:13px;color:#555;font-weight:500}.calendar-day.profit .day-number,.calendar-day.loss .day-number{color:#888}.day-stats{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding-top:8px}.day-pnl{font-size:17px;font-weight:700}.calendar-day.profit .day-pnl,.calendar-day.loss .day-pnl{color:#fff}.day-trades{font-size:11px;color:#999;margin-top:4px}.day-winrate{font-size:11px;color:#777;margin-top:2px}.weekly-totals{width:140px;min-width:140px;flex-shrink:0;display:flex;flex-direction:column;gap:4px;padding:4px;margin-top:38px}.week-total{background:#0a0a0a;border:1px solid #1a1a1a;border-radius:8px;padding:14px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:110px;box-sizing:border-box}.week-label{font-size:12px;color:#666;font-weight:500}.week-pnl{font-size:16px;font-weight:700;white-space:nowrap}.week-pnl.profit{color:#00d26a}.week-pnl.loss{color:#ff6b7a}.week-pnl.zero{color:#888}.week-days{font-size:10px;background:#1a1a1a;padding:3px 8px;border-radius:4px;color:#888;display:inline-block;width:fit-content;font-weight:500}@media (max-width: 1400px){.stat-value{font-size:24px}.stat-value.large{font-size:30px}.stat-label{font-size:11px}.gauge{width:40px;height:40px}.win-loss-gauge{width:62px}.win-loss-gauge .gauge-svg{width:58px;height:30px}}@media (max-width: 1200px){.stats-bar{flex-wrap:wrap}.stat-card{flex:1 1 calc(33% - 8px);min-width:160px}}@media (max-width: 900px){.calendar-container{flex-direction:column}.weekly-totals{width:100%;flex-direction:row;flex-wrap:wrap;margin-top:16px;gap:8px;padding:0}.week-total{flex:1;min-width:100px;min-height:auto;padding:12px;align-items:center}}@media (max-width: 640px){.trades{padding:16px}.stat-card{flex:1 1 100%}.calendar-header{flex-direction:column;gap:16px;align-items:flex-start}.calendar-day{min-height:70px;padding:4px}.day-pnl{font-size:13px}.day-trades,.day-winrate{display:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.day-detail-modal{background:#111;border:1px solid #222;border-radius:16px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #222}.modal-date h2{font-size:24px;font-weight:600;color:#fff;margin:0 0 8px}.modal-pnl{font-size:18px;font-weight:600}.modal-pnl.profit{color:#00d26a}.modal-pnl.loss{color:#ff4757}.modal-actions{display:flex;gap:8px}.modal-action-btn{background:#1a1a1a;border:1px solid #333;color:#888;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.modal-action-btn:hover{background:#222;color:#fff;border-color:#444}.modal-chart-section{padding:20px 24px;border-bottom:1px solid #222}.modal-chart-section h3{font-size:14px;color:#666;font-weight:500;margin:0 0 12px}.cumulative-chart{width:100%;height:120px}.cumulative-chart svg{width:100%;height:100%}.modal-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#222;border-bottom:1px solid #222}.modal-stat{background:#111;padding:16px 20px;display:flex;flex-direction:column;gap:4px}.modal-stat-label{font-size:12px;color:#666;font-weight:400}.modal-stat-value{font-size:18px;font-weight:600;color:#fff}.modal-stat-value.profit{color:#00d26a}.modal-stat-value.loss{color:#ff4757}.modal-trades-table{padding:0;overflow-x:auto}.modal-trades-table table{width:100%;border-collapse:collapse}.modal-trades-table th{text-align:left;padding:14px 16px;font-size:12px;font-weight:500;color:#666;background:#0d0d0d;border-bottom:1px solid #222;white-space:nowrap}.modal-trades-table td{padding:14px 16px;font-size:13px;color:#ccc;border-bottom:1px solid #1a1a1a;white-space:nowrap}.modal-trades-table tr:hover td{background:#0d0d0d}.modal-trades-table td.profit{color:#00d26a}.modal-trades-table td.loss{color:#ff4757}.modal-trades-table td.long{color:#00d26a;font-weight:500}.modal-trades-table td.short{color:#ff4757;font-weight:500}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #222}.modal-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.modal-btn.cancel{background:transparent;border:1px solid #333;color:#888}.modal-btn.cancel:hover{background:#1a1a1a;color:#fff}.modal-btn.primary{background:#3b82f6;border:none;color:#000}.modal-btn.primary:hover{background:#2563eb}.add-trade-modal{background:#1a1a1a;border:1px solid #333;border-radius:12px;width:100%;max-width:1100px;box-shadow:0 20px 60px #00000080;max-height:90vh;overflow-y:auto}.trade-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 28px;border-bottom:1px solid #333}.trade-modal-header h2{font-size:22px;font-weight:600;color:#fff;margin:0 0 4px}.timezone-hint{font-size:13px;color:#666}.csv-upload-wrapper{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.upload-csv-btn{background:transparent;border:1px solid #444;color:#888;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:8px;transition:all .2s}.upload-csv-btn:hover{background:#222;color:#fff;border-color:#555}.csv-result{font-size:12px;padding:4px 8px;border-radius:4px}.csv-result.success{color:#00d26a;background:#00d26a1a}.csv-result.has-errors{color:orange;background:#ffa5001a}.add-trade-form{padding:24px 28px}.form-section{margin-bottom:24px}.section-label{display:block;font-size:13px;color:#888;margin-bottom:10px}.instrument-tabs{display:flex;gap:0;background:#222;border-radius:8px;padding:4px;width:fit-content}.instrument-tab{background:transparent;border:none;color:#888;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.instrument-tab:hover{color:#fff}.instrument-tab.active{background:#3b82f6;color:#000}.symbol-input{background:#111;border:1px solid #333;border-radius:8px;padding:12px 16px;font-size:15px;color:#fff;width:300px;outline:none;transition:border-color .2s}.symbol-input:focus{border-color:#3b82f6}.symbol-input::placeholder{color:#555}.executions-section{background:#111;border:1px solid #333;border-radius:12px;padding:20px;margin-bottom:24px;overflow-x:auto}.executions-table{min-width:fit-content}.executions-header{display:grid;grid-template-columns:230px 80px 80px 80px 70px 70px 36px;gap:8px;padding-bottom:12px;border-bottom:1px solid #333;margin-bottom:12px}.executions-header.options-mode{grid-template-columns:230px 120px 80px 70px 80px 80px 80px 70px 70px 36px}.executions-header.futures-mode{grid-template-columns:230px 120px 90px 90px 80px 80px 70px 70px 36px}.executions-header span{font-size:11px;color:#666;font-weight:500;white-space:nowrap}.execution-row{display:grid;grid-template-columns:230px 80px 80px 80px 70px 70px 36px;gap:8px;margin-bottom:12px}.execution-row.options-mode{grid-template-columns:230px 120px 80px 70px 80px 80px 80px 70px 70px 36px}.execution-row.futures-mode{grid-template-columns:230px 120px 90px 90px 80px 80px 70px 70px 36px}.execution-row input,.execution-row select{background:#1a1a1a;border:1px solid #333;border-radius:6px;padding:10px 12px;font-size:13px;color:#fff;outline:none;transition:border-color .2s}.execution-row input:focus,.execution-row select:focus{border-color:#3b82f6}.execution-row input::placeholder{color:#555}.execution-row select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}.execution-row select.buy{color:#00d26a}.execution-row select.sell{color:#ff6b7a}.execution-row select option{background:#1a1a1a;color:#fff}.remove-execution-btn{background:transparent;border:none;color:#666;cursor:pointer;font-size:16px;padding:8px;border-radius:4px;transition:all .2s}.remove-execution-btn:hover{background:#222;color:#ff6b7a}.add-execution-btn{background:transparent;border:none;color:#3b82f6;cursor:pointer;font-size:13px;padding:8px 0;transition:color .2s}.add-execution-btn:hover{color:#60a5fa}.add-trade-form .modal-footer{padding:8px 0 0;border-top:none}.add-trade-form .modal-btn.primary{background:#3b82f6;color:#000}.add-trade-form .modal-btn.primary:hover{background:#2563eb}.modal-trade-chart-section{padding:16px 24px;border-bottom:1px solid #222}.trade-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.trade-chart-header h3{margin:0;font-size:16px;color:#fff;font-weight:500}.close-chart-btn{background:transparent;border:none;color:#666;font-size:24px;cursor:pointer;padding:0 8px;line-height:1}.close-chart-btn:hover{color:#fff}.modal-trades-table tr.trade-row.clickable{cursor:pointer;transition:background .15s}.modal-trades-table tr.trade-row.clickable:hover td{background:#1a1a1a}.modal-trades-table tr.trade-row.selected td{background:#00d4ff1a;border-color:#00d4ff33}@media (max-width: 768px){.modal-stats-grid{grid-template-columns:repeat(2,1fr)}.modal-header{flex-direction:column;gap:16px}.modal-actions{width:100%}.modal-action-btn{flex:1}.day-detail-modal{max-height:85vh}}.trade-chart-container{width:100%;height:400px;position:relative;background:#000;border-radius:8px;overflow:hidden}.trade-chart{width:100%;height:100%}.trade-chart-loading,.trade-chart-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-secondary);font-size:14px}.trade-chart-error{color:#ff4757}.trade-view{padding:20px;max-width:1600px;margin:0 auto}.tv-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.tv-stat-card{background:#111;border:1px solid #1a1a1a;border-radius:12px;padding:20px;min-height:140px;display:flex;flex-direction:column}.tv-stat-card.pnl-card{justify-content:space-between}.tv-stat-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.tv-stat-label{font-size:13px;color:#666}.tv-stat-count{font-size:11px;color:#888;background:#222;padding:2px 6px;border-radius:4px}.tv-info-icon{width:16px;height:16px;border:1px solid #444;border-radius:50%;font-size:10px;display:flex;align-items:center;justify-content:center;color:#666;cursor:help}.tv-stat-value-large{margin-bottom:8px}.tv-stat-value-large span{font-size:32px;font-weight:600;color:#fff}.tv-stat-value-large .profit{color:#fff}.tv-stat-value-large .loss{color:#ff4757}.tv-stat-value{font-size:32px;font-weight:600;color:#fff}.tv-stat-content{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1}.tv-stat-content-horizontal{display:flex;align-items:center;gap:20px;flex:1}.cumulative-area-chart{display:block;margin-top:auto}.pf-gauge{width:80px;height:45px}.pf-gauge .gauge-svg{width:100%;height:100%}.wl-gauge{display:flex;flex-direction:column;align-items:center;width:90px}.wl-gauge-svg{width:90px;height:50px}.wl-gauge-labels{display:flex;justify-content:space-between;width:100%;margin-top:-5px;padding:0 5px}.wl-gauge-labels .wl-wins{color:#00d26a;font-weight:600;font-size:12px}.wl-gauge-labels .wl-zero{color:#666;font-size:12px;background:#222;padding:1px 6px;border-radius:3px}.wl-gauge-labels .wl-losses{color:#ff4757;font-weight:600;font-size:12px}.avg-wl-section{flex:1;display:flex;flex-direction:column;gap:6px}.avg-wl-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:#222}.avg-wl-win{background:linear-gradient(90deg,#00a854,#00d26a);min-width:4px}.avg-wl-loss{background:linear-gradient(90deg,#ff4757,#d64545);min-width:4px}.avg-wl-labels{display:flex;justify-content:space-between;font-size:12px}.win-amt{color:#00d26a}.loss-amt{color:#ff4757}.tv-actions-bar{display:flex;justify-content:flex-end;gap:12px;margin-bottom:16px}.tv-settings-btn{background:transparent;border:1px solid #333;color:#888;width:40px;height:40px;border-radius:8px;cursor:pointer;font-size:18px;transition:all .2s}.tv-settings-btn:hover{background:#1a1a1a;color:#fff}.tv-bulk-btn{background:#1a1a1a;border:1px solid #333;color:#888;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:8px;transition:all .2s}.tv-bulk-btn:hover{background:#222;color:#fff}.tv-table-container{background:#111;border:1px solid #1a1a1a;border-radius:12px;overflow:hidden}.tv-table{width:100%;border-collapse:collapse}.tv-table th{text-align:left;padding:14px 16px;font-size:12px;font-weight:500;color:#666;background:#0d0d0d;border-bottom:1px solid #1a1a1a}.tv-table td{padding:14px 16px;font-size:13px;color:#ccc;border-bottom:1px solid #1a1a1a}.tv-table tr:hover td{background:#0d0d0d}.tv-table tr.clickable-row{cursor:pointer;transition:background .15s}.tv-table tr.clickable-row:hover td{background:#151515}.tv-table tr.clickable-row:active td{background:#1a1a1a}.tv-table .col-checkbox{width:40px;text-align:center}.tv-table input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.col-symbol{font-weight:600;color:#fff}.status-badge{padding:4px 12px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.win{background:#00d26a33;color:#00d26a}.status-badge.loss{background:#ff475733;color:#ff4757}.tv-table td.profit{color:#00d26a}.tv-table td.loss{color:#ff4757}.col-scale{width:100px}.scale-bar{width:100%}.scale-bar-track{height:8px;background:#222;border-radius:4px;overflow:hidden}.scale-bar-fill{height:100%;border-radius:4px;transition:width .3s}.scale-bar-fill.win{background:linear-gradient(90deg,#00a854,#00d26a)}.scale-bar-fill.loss{background:linear-gradient(90deg,#ff4757,#d64545)}.tv-pagination{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#0d0d0d;border-top:1px solid #1a1a1a}.tv-page-size{display:flex;align-items:center;gap:8px;font-size:13px;color:#888}.tv-page-size select{background:#1a1a1a;border:1px solid #333;color:#fff;padding:6px 10px;border-radius:6px;cursor:pointer}.tv-page-info{font-size:13px;color:#888}.tv-page-nav{display:flex;align-items:center;gap:12px;font-size:13px;color:#888}.tv-page-nav button{background:#1a1a1a;border:1px solid #333;color:#888;width:32px;height:32px;border-radius:6px;cursor:pointer;transition:all .2s}.tv-page-nav button:hover:not(:disabled){background:#222;color:#fff}.tv-page-nav button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.tv-stats-bar{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.tv-stats-bar{grid-template-columns:1fr}.tv-table-container{overflow-x:auto}.tv-table{min-width:900px}}.trade-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;z-index:1000;display:flex;align-items:center;justify-content:center}.trade-detail{background:#0a0a0a;width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.td-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#111;border-bottom:1px solid #222}.td-header-left{display:flex;align-items:center;gap:12px}.td-menu-btn,.td-nav-btn{background:#1a1a1a;border:1px solid #333;color:#888;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s}.td-menu-btn:hover,.td-nav-btn:hover{background:#222;color:#fff}.td-symbol{font-size:22px;font-weight:600;color:#fff;margin:0}.td-date{color:#666;font-size:14px}.td-header-right{display:flex;align-items:center;gap:12px}.td-reviewed{display:flex;align-items:center;gap:8px;color:#888;font-size:14px;cursor:pointer}.td-reviewed input{display:none}.td-reviewed .checkmark{width:20px;height:20px;border:2px solid #333;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:transparent;transition:all .2s}.td-reviewed input:checked+.checkmark{background:#00d26a;border-color:#00d26a;color:#000}.td-replay-btn{background:#ff4757;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .2s}.td-replay-btn:hover{background:#ff6b7a}.replay-icon{font-size:10px}.td-share-btn{background:transparent;border:1px solid #333;color:#888;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:6px;transition:all .2s}.td-share-btn:hover{background:#1a1a1a;color:#fff}.td-close-btn{background:transparent;border:none;color:#666;font-size:24px;cursor:pointer;padding:4px 8px;transition:color .2s}.td-close-btn:hover{color:#fff}.td-content{display:flex;flex:1;overflow:hidden}.td-left-panel{width:380px;min-width:380px;background:#0d0d0d;border-right:1px solid #1a1a1a;display:flex;flex-direction:column;overflow-y:auto}.td-tabs{display:flex;border-bottom:1px solid #1a1a1a;padding:0}.td-tab{flex:1;background:transparent;border:none;color:#666;padding:14px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.td-tab:hover{color:#888}.td-tab.active{color:#fff;border-bottom-color:#6366f1}.td-stats{padding:20px;display:flex;flex-direction:column;gap:16px}.td-stat-hero{display:flex;flex-direction:column;gap:8px;padding-bottom:16px;border-bottom:1px solid #1a1a1a}.td-stat-pnl{font-size:36px;font-weight:700}.td-stat-pnl.profit{color:#00d26a}.td-stat-pnl.loss{color:#ff4757}.td-stats-grid{display:flex;flex-direction:column;gap:12px}.td-stat-row{display:flex;justify-content:space-between;align-items:center}.td-stat-label{color:#666;font-size:13px}.td-stat-value{color:#fff;font-size:14px;font-weight:500}.td-stat-value.long{color:#00d26a}.td-stat-value.short{color:#ff4757}.td-stat-value.profit{color:#00d26a}.td-stat-value.loss{color:#ff4757}.td-stat-value.strategy-select{color:#6366f1;cursor:pointer}.td-scale-section{display:flex;flex-direction:column;gap:8px}.td-scale-bar{height:8px;background:#1a1a1a;border-radius:4px;overflow:hidden}.td-scale-fill{height:100%;border-radius:4px;transition:width .3s}.td-scale-fill.profit{background:linear-gradient(90deg,#00d26a,#ff4757)}.td-scale-fill.loss{background:linear-gradient(90deg,#ff4757,#ff4757)}.td-mae-mfe{display:flex;align-items:center;gap:8px}.td-mae-mfe .loss{color:#ff4757;font-weight:500}.td-mae-mfe .profit{color:#00d26a;font-weight:500}.td-mae-mfe .divider{color:#444}.td-running-pnl{display:flex;flex-direction:column;gap:8px}.td-mini-chart{height:40px;background:linear-gradient(90deg,#00d26a1a,#ff47571a);border-radius:4px;overflow:hidden}.td-mini-chart svg{width:100%;height:100%}.td-rating{display:flex;gap:4px}.td-rating .star{color:#444;font-size:18px;cursor:pointer;transition:color .2s}.td-rating .star:hover,.td-rating .star.active{color:#fbbf24}.td-input{background:#111;border:1px solid #333;border-radius:6px;padding:8px 12px;color:#fff;font-size:14px;width:120px;text-align:right}.td-input:focus{outline:none;border-color:#6366f1}.td-right-panel{flex:1;display:flex;flex-direction:column;background:#0a0a0a;overflow:hidden}.td-chart-tabs{display:flex;gap:0;padding:0 20px;border-bottom:1px solid #1a1a1a}.td-chart-tab{background:transparent;border:none;color:#666;padding:14px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;margin-bottom:-1px}.td-chart-tab:hover{color:#888}.td-chart-tab.active{color:#fff;background:#111;border-bottom-color:transparent;border-radius:8px 8px 0 0}.td-chart-wrapper{flex:1;display:flex;flex-direction:column;background:#000;min-height:500px;height:100%;position:relative}.td-chart-container{flex:1;min-height:500px;width:100%;height:100%;position:absolute;top:0;left:0;right:0;bottom:0}.td-chart-container canvas{width:100%!important;height:100%!important}.td-chart-loading,.td-chart-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#888;font-size:14px;z-index:10}.td-chart-error{color:#ff4757}.td-chart-legend{display:flex;gap:24px;padding:12px 20px;background:#111;border-top:1px solid #1a1a1a}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#888}.legend-item.entry .legend-arrow{color:#00d26a;font-size:16px}.legend-item.exit .legend-arrow{color:#ff4757;font-size:16px}.legend-time{color:#555;font-size:12px}.td-notes-panel{flex:1;padding:20px;display:flex;flex-direction:column;gap:16px}.td-notes-header h3{margin:0;color:#fff;font-size:14px}.td-notes-buttons{display:flex;gap:12px}.td-note-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:6px;border:none;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.td-note-btn.trade-note{background:#6366f1;color:#fff}.td-note-btn.trade-note:hover{background:#5558e8}.td-note-btn.daily-journal{background:#1a1a1a;color:#888;border:1px solid #333}.td-note-btn.daily-journal:hover{background:#222;color:#fff}.td-notes-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#555;font-size:14px}.td-running-pnl-panel{flex:1;padding:20px}.td-running-pnl-panel h3{margin:0 0 16px;color:#fff;font-size:14px}.td-running-chart{height:300px;background:#111;border-radius:8px;overflow:hidden}.td-running-chart svg{width:100%;height:100%}@media (max-width: 1200px){.td-left-panel{width:320px;min-width:320px}}@media (max-width: 900px){.td-content{flex-direction:column}.td-left-panel{width:100%;min-width:100%;max-height:40vh}.td-header{flex-direction:column;gap:12px;padding:16px}.td-header-left,.td-header-right{width:100%;justify-content:flex-start}}.reports{padding:20px;max-width:1600px;margin:0 auto}.reports-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.pnl-label{color:#666;font-size:12px;font-weight:500}.pnl-select{background:#1a1a1a;border:1px solid #333;color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;cursor:pointer}.pnl-select:focus{outline:none;border-color:#3b82f6}.your-stats-section{background:#111;border-radius:12px;padding:24px;margin-bottom:24px}.your-stats-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.your-stats-header h2{font-size:14px;font-weight:600;color:#fff;margin:0}.date-range{color:#666;font-size:12px}.month-summary{display:flex;align-items:flex-start;gap:48px}.month-stat{display:flex;flex-direction:column;gap:4px}.month-stat-label{color:#888;font-size:12px}.month-stat-value{color:#fff;font-size:20px;font-weight:600}.month-stat-sub{color:#555;font-size:11px}.more-btn{background:transparent;border:none;color:#666;font-size:20px;cursor:pointer;margin-left:auto;padding:4px 8px;border-radius:4px}.more-btn:hover{background:#222;color:#fff}.stats-table-container{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.stats-column{background:#111;border-radius:12px;padding:8px 0}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;border-bottom:1px solid #1a1a1a}.stat-row:last-child{border-bottom:none}.stat-value{color:#fff;font-size:13px;font-weight:500}.charts-section{display:grid;grid-template-columns:1fr 1fr;gap:24px}.chart-card{background:#111;border-radius:12px;padding:24px}.chart-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.chart-header h3{font-size:12px;font-weight:600;color:#666;margin:0;letter-spacing:.5px}.chart-date-range{color:#555;font-size:11px}.chart-container{width:100%;height:300px}.cumulative-line-chart,.daily-bar-chart{width:100%;height:100%}.chart-y-label{fill:#888;font-size:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.chart-x-label{fill:#888;font-size:11px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.chart-empty{display:flex;align-items:center;justify-content:center;height:250px;color:#555;font-size:14px}.chart-tooltip{position:absolute;background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:10px 14px;font-size:13px;color:#333;box-shadow:0 4px 12px #00000026;pointer-events:none;z-index:100;white-space:nowrap}.tooltip-date{font-weight:600;margin-bottom:6px;color:#111}@media (max-width: 1200px){.stats-table-container,.charts-section{grid-template-columns:1fr}}@media (max-width: 768px){.month-summary{flex-wrap:wrap;gap:24px}}.calendar-overview{padding:20px;max-width:1600px;margin:0 auto}.pnl-showing-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.pnl-showing-label{color:#666;font-size:12px;font-weight:500}.pnl-showing-select{background:#1a1a1a;border:1px solid #333;color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;cursor:pointer}.pnl-showing-select:focus{outline:none;border-color:#3b82f6}.section-title{font-size:12px;font-weight:600;color:#666;margin:0 0 16px;letter-spacing:.5px}.overview-section{background:#111;border-radius:12px;padding:24px;margin-bottom:24px}.year-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.year-header .section-title{margin:0;font-size:16px;min-width:50px;text-align:center}.year-nav-btn{background:#1a1a1a;border:1px solid #333;border-radius:6px;color:#888;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.year-nav-btn:hover:not(:disabled){background:#222;color:#fff;border-color:#444}.year-nav-btn:disabled{opacity:.3;cursor:not-allowed}.year-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.mini-month{background:#0a0a0a;border-radius:8px;padding:12px;transition:transform .2s,box-shadow .2s}.mini-month:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f133}.mini-month.selected{box-shadow:0 0 0 2px #6366f1}.mini-month-header{font-size:12px;font-weight:600;color:#fff;text-align:center;margin-bottom:8px}.mini-month-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:8px;color:#555;border-radius:2px}.mini-day.profit{background:#00d26a;color:#000}.mini-day.loss{background:#ff4757;color:#fff}.mini-day.empty{background:transparent}.overview-charts-section{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-bottom:24px}.overview-chart-card{background:#111;border-radius:12px;padding:24px;overflow:hidden}.daily-cumulative-chart{position:relative;width:100%;height:320px}.daily-cumulative-chart svg{width:100%;height:100%}.daily-cumulative-chart .chart-label{fill:#666;font-size:11px}.chart-tooltip{position:absolute;background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:10px 14px;font-size:13px;color:#fff;box-shadow:0 4px 12px #0006;pointer-events:none;z-index:100;white-space:nowrap;min-width:120px;text-align:center}.tooltip-date{font-size:12px;color:#888;margin-bottom:4px}.tooltip-value{font-size:18px;font-weight:600}.tooltip-value.profit{color:#00d26a}.tooltip-value.loss{color:#ff4757}.tooltip-row{display:flex;align-items:center;gap:8px}.tooltip-color{width:10px;height:10px;border-radius:2px;flex-shrink:0}.chart-empty{display:flex;align-items:center;justify-content:center;height:200px;color:#555;font-size:14px}.evaluation-donut{display:flex;flex-direction:column;align-items:center;position:relative}.donut-svg{width:180px;height:180px}.donut-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-70%);text-align:center}.donut-pct{display:block;font-size:32px;font-weight:700;color:#fff}.donut-label{display:block;font-size:12px;color:#666;margin-top:4px}.donut-legend{display:flex;gap:32px;margin-top:16px}.donut-legend-item{display:flex;align-items:center;gap:8px}.donut-dot{width:10px;height:10px;border-radius:2px}.donut-dot.winners{background:#00d26a}.donut-dot.losers{background:#ff4757}.donut-legend-value{font-size:16px;font-weight:600;color:#fff}.donut-legend-label{font-size:12px;color:#666}.overview-statistics-section{background:#111;border-radius:12px;padding:24px}.statistics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#222;border-radius:8px;overflow:hidden}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#111}.stat-label{color:#888;font-size:13px}.stat-value{color:#fff;font-size:14px;font-weight:600}.stat-value.profit{color:#00d26a}.stat-value.loss{color:#ff4757}@media (max-width: 1400px){.year-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 1200px){.overview-charts-section{grid-template-columns:1fr}.statistics-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.year-grid{grid-template-columns:repeat(3,1fr)}.statistics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.year-grid{grid-template-columns:repeat(2,1fr)}.statistics-grid{grid-template-columns:1fr}}.selected-month-section{margin-top:24px;background:#0a0a0a;border-radius:12px;padding:24px;border:1px solid #1a1a1a}.selected-month-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #1a1a1a}.selected-month-title{display:flex;align-items:center;gap:16px}.selected-month-title h3{margin:0;font-size:20px;font-weight:600;color:#fff}.close-calendar-btn{background:#222;border:none;color:#888;width:28px;height:28px;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-calendar-btn:hover{background:#333;color:#fff}.selected-month-stats{display:flex;align-items:center;gap:20px}.selected-month-stats .month-pnl{font-size:18px;font-weight:700}.selected-month-stats .month-pnl.profit{color:#00d26a}.selected-month-stats .month-pnl.loss{color:#ff4757}.selected-month-stats .month-days,.selected-month-stats .month-winrate{color:#666;font-size:14px}.selected-calendar-container{display:flex;gap:20px}.selected-calendar-grid{flex:1}.selected-calendar-header-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px}.selected-calendar-day-header{text-align:center;color:#666;font-size:12px;font-weight:600;padding:8px}.selected-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.selected-calendar-day{background:#111;border-radius:8px;padding:10px;min-height:90px;display:flex;flex-direction:column;transition:all .2s}.selected-calendar-day.empty{background:transparent}.selected-calendar-day.weekend{background:#0d0d0d}.selected-calendar-day.today{box-shadow:inset 0 0 0 2px #3b82f6}.selected-calendar-day.profit{background:#00d26a14;border:1px solid rgba(0,210,106,.2)}.selected-calendar-day.loss{background:#ff475714;border:1px solid rgba(255,71,87,.2)}.selected-calendar-day .day-number{font-size:14px;font-weight:600;color:#666;margin-bottom:6px}.selected-calendar-day.profit .day-number,.selected-calendar-day.loss .day-number{color:#fff}.selected-calendar-day .day-stats{display:flex;flex-direction:column;gap:2px;margin-top:auto}.selected-calendar-day .day-pnl{font-size:14px;font-weight:700;color:#fff}.selected-calendar-day .day-trades,.selected-calendar-day .day-winrate{font-size:11px;color:#666}.selected-weekly-totals{width:120px;display:flex;flex-direction:column;gap:8px;padding-top:40px}.selected-weekly-totals .week-total{background:#111;border:1px solid #1a1a1a;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:4px;min-height:90px;box-sizing:border-box;justify-content:center;align-items:center}.selected-weekly-totals .week-label{font-size:11px;color:#666;font-weight:500}.selected-weekly-totals .week-pnl{font-size:14px;font-weight:700}.selected-weekly-totals .week-pnl.profit{color:#00d26a}.selected-weekly-totals .week-pnl.loss{color:#ff4757}.selected-weekly-totals .week-pnl.zero{color:#888}.selected-weekly-totals .week-days{font-size:11px;color:#555}@media (max-width: 900px){.selected-calendar-container{flex-direction:column}.selected-weekly-totals{width:100%;flex-direction:row;flex-wrap:wrap}.selected-weekly-totals .week-total{flex:1;min-width:100px}.selected-calendar-day{min-height:70px;padding:6px}.selected-calendar-day .day-pnl{font-size:12px}}.daily-cumulative-chart{height:320px}@media (max-width: 768px){.zoomed-month-modal{padding:20px}.zoomed-month-stats{flex-wrap:wrap;gap:16px}.zoomed-day{min-height:60px;padding:4px}.zoomed-day-pnl .profit,.zoomed-day-pnl .loss{font-size:11px}}.day-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.day-modal{background:#1a1a1a;border-radius:12px;padding:24px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto}.day-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.day-modal-header h3{margin:0;font-size:18px;color:#fff}.day-modal-close{background:none;border:none;color:#888;font-size:24px;cursor:pointer;padding:0;line-height:1}.day-modal-close:hover{color:#fff}.day-modal-summary{display:flex;align-items:center;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #333}.day-modal-pnl{font-size:32px;font-weight:700}.day-modal-pnl.profit{color:#00d26a}.day-modal-pnl.loss{color:#ff4757}.day-modal-stats{display:flex;flex-direction:column;gap:4px;color:#888;font-size:14px}.day-modal-trades table{width:100%;border-collapse:collapse}.day-modal-trades th,.day-modal-trades td{text-align:left;padding:10px 12px;border-bottom:1px solid #333}.day-modal-trades th{color:#888;font-weight:500;font-size:12px;text-transform:uppercase}.day-modal-trades td{color:#fff;font-size:14px}.day-modal-trades td.symbol{font-weight:600;color:#6366f1}.day-modal-trades td.long{color:#00d26a}.day-modal-trades td.short{color:#ff4757}.day-modal-trades td.profit{color:#00d26a}.day-modal-trades td.loss{color:#ff4757}.day-modal-chart{margin-bottom:24px}.day-modal-chart h4,.day-modal-trades h4{color:#888;font-size:12px;text-transform:uppercase;margin:0 0 12px;font-weight:500}.intraday-chart{background:#111;border-radius:8px;padding:12px}.date-range-picker{position:relative}.drp-trigger{display:flex;align-items:center;gap:12px;background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:10px 16px;cursor:pointer;transition:all .2s}.drp-trigger:hover{background:#222;border-color:#444}.drp-date{color:#fff;font-size:14px;font-weight:500}.drp-separator{color:#666;font-size:14px}.drp-clear{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#6366f1;border-radius:50%;color:#fff;font-size:14px;font-weight:500;cursor:pointer;margin-left:4px;transition:all .2s}.drp-clear:hover{background:#4f46e5}.drp-icon{color:#666;font-size:10px;margin-left:8px}.drp-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#1a1a1a;border:1px solid #333;border-radius:12px;display:flex;z-index:1000;box-shadow:0 10px 40px #00000080}.drp-calendars{display:flex;padding:20px;gap:24px;border-right:1px solid #333}.drp-calendar{width:280px}.drp-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.drp-nav-btn{background:transparent;border:none;color:#888;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.drp-nav-btn:hover{background:#333;color:#fff}.drp-month-year{display:flex;gap:8px}.drp-month-year select{background:transparent;border:none;color:#fff;font-size:14px;font-weight:500;cursor:pointer;padding:4px}.drp-month-year select:focus{outline:none}.drp-month-year select option{background:#1a1a1a;color:#fff}.drp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.drp-weekdays span{text-align:center;font-size:12px;color:#666;padding:8px 0}.drp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.drp-day{text-align:center;padding:10px 0;font-size:13px;color:#888;border-radius:50%;cursor:pointer;transition:all .2s}.drp-day:not(.empty):hover{background:#333;color:#fff}.drp-day.empty{cursor:default}.drp-day.in-range{background:#3b82f633;border-radius:0;color:#fff}.drp-day.start{background:#3b82f6;color:#fff;border-radius:50% 0 0 50%}.drp-day.end{background:#3b82f6;color:#fff;border-radius:0 50% 50% 0}.drp-day.start.end{border-radius:50%}.drp-day.today{border:2px solid #fff}.drp-presets{display:flex;flex-direction:column;padding:20px;min-width:180px}.drp-presets button{background:transparent;border:none;color:#888;font-size:14px;text-align:left;padding:12px 16px;cursor:pointer;border-radius:6px;transition:all .2s}.drp-presets button:hover{background:#222;color:#fff}.drp-presets button.active{color:#fff;font-weight:600}.journal{padding:20px;max-width:1600px;margin:0 auto}.journal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #1a1a1a}.journal-tabs{display:flex;gap:4px;background:#111;padding:4px;border-radius:10px}.journal-tab{background:transparent;border:none;color:#888;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.journal-tab:hover{color:#fff}.journal-tab.active{background:#3b82f6;color:#fff}.journal-header-right{display:flex;align-items:center;gap:12px}.privacy-toggle{background:#1a1a1a;border:1px solid #333;color:#888;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s}.privacy-toggle:hover{background:#222;border-color:#444}.privacy-toggle.active{background:#2a2a2a;border-color:#3b82f6;color:#fff}.journal-content .trades,.journal-content .trade-view,.journal-content .reports,.journal-content .calendar-overview{padding:0;max-width:none}.account-dropdown{position:relative}.account-trigger{display:flex;align-items:center;gap:8px;background:#1a1a1a;border:1px solid #333;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.account-trigger:hover{background:#222;border-color:#444}.account-text{white-space:nowrap}.account-icon{color:#888;font-size:10px}.account-dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:8px 0;min-width:180px;z-index:100;box-shadow:0 4px 12px #00000080}.account-option{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;color:#fff;font-size:14px;transition:background .15s}.account-option:hover{background:#252525}.account-option input[type=checkbox]{display:none}.account-checkbox-custom{width:18px;height:18px;border:2px solid #444;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.account-option input[type=checkbox]:checked+.account-checkbox-custom{background:#3b82f6;border-color:#3b82f6}.account-option input[type=checkbox]:checked+.account-checkbox-custom:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.data-center{padding:20px;max-width:1400px;margin:0 auto;overflow-x:hidden;overflow-y:auto;width:100%;height:100%;box-sizing:border-box;display:flex;flex-direction:column}.data-center .loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.data-center-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.data-center-header h2{margin:0;font-size:28px;color:var(--text-primary);font-weight:700}.sheet-selector{display:flex;align-items:center;gap:12px}.sheet-selector label{color:var(--text-secondary);font-size:14px}.sheet-selector select{padding:8px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:14px;cursor:pointer;min-width:200px}.sheet-selector select:hover{border-color:#fff3}.sheet-selector select:focus{outline:none;border-color:var(--accent-color)}.data-center-content{display:flex;flex-direction:column;gap:24px;flex:1;min-height:0}.data-table-section{flex:0 0 auto;max-height:45vh;display:flex;flex-direction:column}.data-table-section h3{margin:0 0 12px;font-size:18px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.row-count{font-size:14px;color:var(--text-secondary);font-weight:400}.data-table-wrapper{overflow:auto;flex:1;border:1px solid var(--border-color);border-radius:8px;background:#0003}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th,.data-table td{padding:10px 14px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border-color)}.data-table th{background:#ffffff08;color:var(--accent-color);font-weight:600;position:sticky;top:0;z-index:1}.data-table tbody tr:hover{background:#ffffff08}.data-table td{color:var(--text-primary)}.no-data,.error-message{padding:40px 20px;text-align:center;color:var(--text-secondary);background:#0003;border-radius:8px;border:1px solid var(--border-color)}.error-message{color:#ff6b6b}.ai-chat-section{flex:1;display:flex;flex-direction:column;min-height:300px;background:#0003;border-radius:12px;padding:16px;border:1px solid var(--border-color)}.ai-chat-section h3{margin:0 0 12px;font-size:18px;color:var(--text-primary)}.example-questions{margin-bottom:16px}.example-questions p{margin:0 0 8px;color:var(--text-secondary);font-size:13px}.question-chips{display:flex;flex-wrap:wrap;gap:8px}.question-chip{padding:8px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .2s}.question-chip:hover{background:#ffffff1a;border-color:var(--accent-color);color:var(--text-primary)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding:8px 0}.chat-message{padding:12px 16px;border-radius:12px;max-width:85%}.chat-message.user{background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);align-self:flex-end}.chat-message.assistant{background:#ffffff08;border:1px solid rgba(255,255,255,.1);align-self:flex-start}.message-role{font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.chat-message.user .message-role{color:var(--accent-color)}.message-content{color:var(--text-primary);font-size:14px;line-height:1.5;white-space:pre-wrap}.message-content.typing{color:var(--text-secondary);font-style:italic}.chat-input-wrapper{display:flex;gap:12px;align-items:flex-end}.chat-input{flex:1;padding:12px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--text-primary);font-size:14px;resize:none;font-family:inherit}.chat-input::placeholder{color:var(--text-secondary)}.chat-input:focus{outline:none;border-color:var(--accent-color)}.send-btn{padding:12px 24px;background:var(--accent-color);border:none;border-radius:12px;color:#000;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.send-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.data-center-header{flex-direction:column;align-items:flex-start}.sheet-selector{width:100%}.sheet-selector select{flex:1}.data-table-section{max-height:35vh}.question-chips{flex-direction:column}.question-chip{width:100%;text-align:left}.chat-message{max-width:95%}}.app{height:100%;display:flex;overflow:hidden}.sidebar{width:180px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100;transition:width .2s ease}.sidebar-header{padding:1rem .75rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-header h1{font-size:1.1rem;font-weight:400;color:#00d4ff;letter-spacing:4px;margin:0;text-transform:uppercase;font-family:Courier New,monospace;text-shadow:0 0 10px rgba(0,212,255,.6),0 0 20px rgba(0,212,255,.3);flex-shrink:1;min-width:0}.sidebar-collapse-btn{background:#00d4ff26;border:1px solid rgba(0,212,255,.5);color:#00d4ff;width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.sidebar-collapse-btn svg{filter:drop-shadow(0 0 4px rgba(0,212,255,.6))}.sidebar-collapse-btn:hover{background:#00d4ff40;border-color:#00d4ff;box-shadow:0 0 15px #00d4ff66}.sidebar-collapse-btn:hover svg{filter:drop-shadow(0 0 8px rgba(0,212,255,.8))}.sidebar.collapsed{width:50px}.sidebar.collapsed .sidebar-header{padding:1.25rem 0;justify-content:center}.sidebar.collapsed .sidebar-collapse-btn{margin:0 auto}.sidebar.collapsed .sidebar-header h1{display:none}.sidebar.collapsed .sidebar-nav{padding:.5rem .25rem}.sidebar.collapsed .sidebar-tab{padding:10px 8px;font-size:0;text-align:center}.sidebar.collapsed .sidebar-tab:before{font-size:14px;display:block}.sidebar.collapsed .sidebar-tab:nth-child(1):before{content:"M"}.sidebar.collapsed .sidebar-tab:nth-child(2):before{content:"S"}.sidebar.collapsed .sidebar-tab:nth-child(3):before{content:"T"}.sidebar.collapsed .sidebar-tab:nth-child(4):before{content:"Sc"}.sidebar.collapsed .sidebar-tab:nth-child(5):before{content:"C"}.sidebar.collapsed .sidebar-tab:nth-child(6):before{content:"J"}.sidebar.collapsed .sidebar-tab:nth-child(7):before{content:"D"}.sidebar.collapsed .chart-search-stats,.sidebar.collapsed .sidebar-setups{display:none}.sidebar.collapsed .sidebar-footer{padding:.5rem .25rem}.sidebar.collapsed .sidebar-status{justify-content:center}.sidebar.collapsed .sidebar-status span:not(.status-dot){display:none}.sidebar.collapsed .settings-btn,.sidebar.collapsed .logout-btn{padding:.5rem;font-size:0}.sidebar.collapsed .settings-btn:before{content:"⚙";font-size:14px}.sidebar.collapsed .logout-btn:before{content:"⏻";font-size:14px}.main-content.sidebar-collapsed{margin-left:50px}.sidebar-nav{flex:1;display:flex;flex-direction:column;padding:.5rem;gap:2px;min-height:0;overflow:hidden}.sidebar-tab{padding:10px 12px;border:none;background:transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s;text-align:left}.sidebar-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.sidebar-tab.active{background:#00d4ff1a;color:#00d4ff;border:1px solid rgba(0,212,255,.5);text-shadow:0 0 10px rgba(0,212,255,.5);box-shadow:0 0 15px #00d4ff33}.sidebar-divider{height:1px;background:var(--border-color);margin:12px 8px}.chart-search-stats{margin-top:16px;padding:12px;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color)}.stats-header{display:flex;flex-direction:column;gap:2px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.stats-ticker{font-size:14px;font-weight:700;color:var(--text-primary)}.stats-date{font-size:11px;color:var(--text-secondary)}.stats-grid{display:flex;flex-direction:column;gap:10px}.stat-item{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:13px;font-weight:600;color:var(--text-primary)}.stat-value.positive{color:#22c55e}.stat-value.negative{color:#ef4444}.stat-subvalue{font-size:10px;color:var(--text-secondary);margin-left:4px}.sidebar-setups{margin-top:16px;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.setups-title-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px;background:transparent;border:none;cursor:pointer;text-align:left}.setups-title-btn:hover{background:var(--bg-tertiary)}.setups-title-arrow{font-size:8px;color:var(--text-secondary)}.setups-title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.sidebar-setups.collapsed{flex:0 0 auto}.setups-list{flex:1;overflow-y:auto;min-height:0}.setup-category{margin-bottom:2px}.setup-category-header{display:flex;align-items:center;width:100%;padding:6px 8px;background:transparent;border:none;color:var(--text-primary);font-size:12px;cursor:pointer;text-align:left;gap:6px;transition:background .15s}.setup-category-header:hover{background:var(--bg-tertiary)}.setup-category-header.expanded{background:#6366f11a}.setup-arrow{font-size:8px;color:var(--text-secondary);width:10px;flex-shrink:0}.setup-name{flex:1;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.setup-count{font-size:10px;color:var(--text-secondary);background:var(--bg-tertiary);padding:1px 5px;border-radius:8px;flex-shrink:0}.setup-entries{background:#0003;max-height:200px;overflow-y:auto}.setup-entry{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px 4px 24px;background:transparent;border:none;color:var(--text-secondary);font-size:11px;cursor:pointer;text-align:left;transition:background .15s}.setup-entry:hover,.setup-entry.focused{background:#6366f126;color:var(--text-primary)}.setup-entry.focused{outline:none;box-shadow:inset 2px 0 0 var(--accent-blue, #3b82f6)}.setups-list:focus{outline:none}.setup-entry.no-date{opacity:.7}.setup-entry.no-date .entry-date{color:var(--text-muted, #4a4a4a)}.entry-ticker{font-weight:600;color:var(--accent-blue, #3b82f6)}.entry-date{color:var(--text-secondary);font-size:10px}.sidebar-footer{padding:.75rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem}.sidebar-status{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary);padding:.25rem 0}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-red)}.status-dot.connected{background:var(--accent-green);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.settings-btn{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem .75rem;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s;width:100%}.settings-btn:hover{background:var(--border-color)}.logout-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);padding:.5rem .75rem;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s;width:100%}.logout-btn:hover{color:var(--accent-red);border-color:var(--accent-red)}.main-content{flex:1;margin-left:180px;height:100%;display:flex;flex-direction:column;background:var(--bg-primary);overflow:visible;transition:margin-left .2s ease}.app-main{flex:1;padding:1.5rem;width:100%;min-height:0;background:var(--bg-primary);overflow-y:auto;overflow-x:hidden;position:relative}.info-bar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:1.5rem;font-size:.875rem;color:var(--text-secondary);border:1px solid var(--border-color)}.alerts-badge{background:var(--accent-green);color:#000;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}@media (max-width: 768px){.sidebar,.sidebar.collapsed{width:100%;height:auto;position:fixed;top:auto;bottom:0;left:0;right:0;flex-direction:row;border-right:none;border-top:1px solid var(--border-color)}.sidebar-header{display:none}.sidebar-nav{flex-direction:row;padding:.5rem;gap:4px;flex:1;justify-content:center}.sidebar-tab,.sidebar.collapsed .sidebar-tab{padding:8px 12px;font-size:.75rem;text-align:center}.sidebar.collapsed .sidebar-tab:before{display:none}.sidebar-footer{display:none}.main-content,.main-content.sidebar-collapsed{margin-left:0;margin-bottom:60px}.app-main{padding:1rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #111111;--bg-card: #111111;--text-primary: #ffffff;--text-secondary: #888888;--accent-cyan: #00d4ff;--accent-green: #00d26a;--accent-red: #ff4757;--accent-grey: #3a3a3a;--border-color: #222222;--primary: #6366f1;--primary-hover: #4f46e5;--row-green: rgba(0, 210, 106, .15);--row-red: rgba(255, 71, 87, .15);--row-grey: rgba(100, 100, 100, .15)}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);height:100%;-webkit-font-smoothing:antialiased;overflow:hidden}#root{height:100%;overflow:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#444}
