.watchlist-page{max-width:100%;overflow-x:hidden;padding:1rem}.watchlist-table{font-size:.78rem;table-layout:fixed;width:100%}.watchlist-table td,.watchlist-table th{overflow:hidden;padding:.32rem .35rem;text-overflow:ellipsis;white-space:nowrap}.watchlist-table td.tech-cell{font-size:.72rem;line-height:1.35;white-space:normal}.watchlist-table .wl-btn{font-size:.58rem;margin-right:.2rem;padding:.12rem .3rem}.suggestions-dropdown{background:#1a1a2e;border:1px solid #333;border-radius:0 0 4px 4px;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.suggestion-item{border-bottom:1px solid #333;cursor:pointer;display:flex;justify-content:space-between;padding:.5rem;transition:background .2s}.suggestion-item:hover{background:#2a2a4a}.suggestion-symbol{color:#fff;font-weight:500}.suggestion-exchange{color:#888;font-size:.8rem}.watchlist-row{cursor:pointer;transition:background .2s}.watchlist-row:hover{background:#00d9ff0d}.ltp-cell{color:#00d9ff;font-weight:600}.ltp-large{color:#00d9ff;font-size:1.5rem;font-weight:700;margin:0}.watchlist-chart-container{background:#0a0a0f;border-radius:8px;box-sizing:border-box;height:auto;max-width:100%;min-height:300px;overflow-x:hidden;overflow-y:visible;padding:1rem;width:100%}.signal-badge{border-radius:4px;font-size:.7rem;padding:.15rem .4rem}.signal-sell{background:#f803;color:#f80}.positions-table th{background:#0a0a0f;color:#00d9ff;font-size:.75rem;padding:.5rem;text-align:left;text-transform:uppercase}.positions-table td{border-top:1px solid #222;color:#ccc;font-size:.85rem;padding:.5rem}.positions-table tr:hover{background:#00d9ff08}.message{border-radius:6px;font-size:.85rem;padding:.5rem 1rem}.message.success{background:#00ff8826}.message.error{background:#ff444426}.btn{border-radius:4px;font-size:.8rem;padding:.4rem .8rem}.btn-start{background:linear-gradient(135deg,#00d9ff,#0f8);color:#0a0a0f;font-weight:600}.btn-stop{background:#f44}.btn-paper{background:#2a2a4a;border:1px solid #4a4a6a;color:#ccc}.btn:disabled{cursor:not-allowed;opacity:.5}.admin-page{padding:1rem}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.admin-header h2{color:#00d9ff;margin:0}.admin-close-btn{background:#2a2a4a;border:1px solid #4a4a6a;border-radius:6px;color:#ccc;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.admin-close-btn:hover{background:#3a3a5a;color:#fff}.created-password-box{background:#00ff881a;border:1px solid #0f8;border-radius:10px;margin-bottom:1rem;padding:1rem}.created-password-box h4{color:#0f8;font-size:.9rem;margin:0 0 .5rem}.password-display{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.password-display code{background:#0a0a0f;border-radius:6px;color:#fff;flex:1 1;font-size:1.1rem;letter-spacing:1px;padding:.5rem 1rem}.password-note{color:#888;font-size:.8rem;margin:0}.admin-actions{margin-bottom:1.5rem}.admin-message{border-radius:8px;font-size:.9rem;margin-bottom:1rem;padding:.8rem 1rem}.admin-message.success{background:#00ff8826;border:1px solid #0f8;color:#0f8}.admin-message.error{background:#ff444426;border:1px solid #f44;color:#f44}.admin-btn{background:#2a2a4a;border:1px solid #4a4a6a;border-radius:6px;color:#ccc;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.admin-btn:hover{background:#3a3a5a;color:#fff}.admin-btn.primary{background:linear-gradient(135deg,#00d9ff,#0f8);border:none;color:#0a0a0f;font-weight:600}.admin-btn.primary:hover{box-shadow:0 4px 15px #00d9ff4d}.admin-btn.small{font-size:.75rem;padding:.3rem .6rem}.admin-btn.danger{border-color:#f44;color:#f44}.admin-btn.danger:hover{background:#ff444426}.admin-create-form{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.admin-create-form h3{color:#00d9ff;font-size:1.1rem;margin:0 0 1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-group{margin-bottom:.8rem}.form-group label{color:#888;display:block;font-size:.8rem;margin-bottom:.3rem}.form-group input,.form-group select{background:#0a0a0f;border:1px solid #2a2a4a;border-radius:6px;color:#fff;font-size:.9rem;outline:none;padding:.6rem .8rem;width:100%}.form-group input:focus{border-color:#00d9ff}.password-row{display:flex;gap:.5rem}.password-row input{flex:1 1}.admin-users-table{overflow-x:auto}.admin-users-table table{background:#1a1a2e;border-collapse:collapse;border-radius:12px;overflow:hidden;width:100%}.admin-users-table th{background:#0a0a0f;color:#00d9ff;font-size:.8rem;padding:.8rem;text-align:left;text-transform:uppercase}.admin-users-table td{border-top:1px solid #2a2a4a;color:#ccc;font-size:.85rem;padding:.7rem .8rem}.admin-users-table tr:hover td{background:#00d9ff0d}.user-id{color:#00d9ff;font-weight:600}.role-badge{border-radius:10px;font-size:.75rem;font-weight:600;padding:.2rem .6rem}.role-badge.admin{background:#f803;color:#f80}.role-badge.user{background:#00d9ff33;color:#00d9ff}.status-badge{border-radius:10px;font-size:.75rem;font-weight:600;padding:.2rem .6rem}.status-badge.active{background:#0f83;color:#0f8}.status-badge.inactive{background:#f443;color:#f44}.admin-tabs{border-bottom:1px solid #2a2a4a;display:flex;gap:.5rem;margin-bottom:1.2rem}.admin-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#888;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all .2s}.admin-tab:hover{color:#fff}.admin-tab.active{border-bottom-color:#00d9ff;color:#00d9ff}.trading-summary-bar{align-items:center;background:#1a1a2e;border:1px solid #2a2a4a;border-radius:10px;color:#ccc;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.8rem;margin-bottom:1rem;padding:.7rem 1rem}.engine-badge.on{color:#0f8;font-weight:600}.engine-badge.off{color:#f44;font-weight:600}.mode-chip{background:#00d9ff26;border-radius:10px;color:#00d9ff;font-size:.75rem;font-weight:600;padding:.15rem .6rem}.summary-pnl{color:#888}.pnl-pos{color:#0f8;font-weight:600}.pnl-neg{color:#f44;font-weight:600}.pnl-flat{color:#888}.client-name{color:#888;font-size:.8rem}.row-selected td{background:#00d9ff14!important}.empty-cell{color:#666!important;padding:1.2rem!important;text-align:center}.client-detail-panel{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:12px;margin-top:1.2rem;padding:1rem 1.2rem}.client-detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.8rem}.client-detail-header h3{color:#00d9ff;font-size:1rem;margin:0}.client-detail-panel h4{color:#888;font-size:.8rem;margin:1rem 0 .5rem;text-transform:uppercase}.side-badge{border-radius:8px;font-size:.7rem;font-weight:700;padding:.15rem .5rem}.side-badge.buy{background:#0f83;color:#0f8}.side-badge.sell{background:#f443;color:#f44}.reason-cell{color:#999!important;font-size:.75rem!important;max-width:220px}.tab-hint{color:#888;font-size:.82rem;margin:0 0 1rem}.rec-row{cursor:pointer}.rec-status{border-radius:10px;font-size:.72rem;font-weight:600;padding:.2rem .6rem;white-space:nowrap}.rec-status.recommended{background:#00d9ff26;color:#00d9ff}.rec-status.traded{background:#ffc8002e;color:#ffc800}.rec-status.closed{background:#00ff8826;color:#0f8}.rec-status.order_failed{background:#ff44442e;color:#f44}.rec-detail-row td{background:#12122a!important}.rec-detail{color:#ccc;font-size:.82rem;padding:.4rem .2rem}.rec-detail ul{color:#aaa;margin:.4rem 0 .6rem;padding-left:1.2rem}.rec-detail-meta{color:#777;font-size:.75rem}.rec-post-exit{background:#00d9ff14;border-radius:6px;color:#9ad;font-size:.78rem;margin-top:.4rem;padding:.35rem .6rem}.rec-post-exit.regret{background:#ffc8001f;color:#ffc800}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#0a0a0f;color:#e0e0e0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App{min-height:100vh}.app-header{background:linear-gradient(135deg,#1a1a2e,#16213e);border-bottom:1px solid #2a2a4a;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.app-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;background-clip:text;font-size:1.5rem}.connection-status{align-items:center;display:flex;font-size:.9rem;gap:.5rem}.status-dot{border-radius:50%;height:10px;width:10px}.status-dot.connected{background-color:#0f8;box-shadow:0 0 10px #0f8}.status-dot.disconnected{background-color:#f44;box-shadow:0 0 10px #f44}.app-main{margin:0 auto;max-width:1400px;padding:2rem}.dashboard{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.card{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a4a;border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:0 8px 25px #00d9ff1a;transform:translateY(-2px)}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.card-title{color:#888;font-size:1rem;letter-spacing:1px;text-transform:uppercase}.card-value{font-size:2rem;font-weight:700}.positive{color:#0f8}.negative{color:#f44}.neutral{color:#00d9ff}.full-width{grid-column:1/-1}.positions-table{border-collapse:collapse;margin-top:1rem;width:100%}.positions-table td,.positions-table th{border-bottom:1px solid #2a2a4a;padding:.75rem;text-align:left}.positions-table th{color:#888;font-weight:500}.positions-table tr:hover{background:#00d9ff0d}.controls{display:flex;gap:1rem;margin-top:1rem}.btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-start{background:linear-gradient(135deg,#0f8,#00cc6a);color:#000}.btn-start:hover{box-shadow:0 4px 15px #00ff884d}.btn-stop{background:linear-gradient(135deg,#f44,#c00);color:#fff}.btn-stop:hover{box-shadow:0 4px 15px #ff44444d}.btn-analyze{background:linear-gradient(135deg,#00d9ff,#09c);color:#000}.signal-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.signal-buy{background:#0f83;border:1px solid #0f8;color:#0f8}.signal-sell{background:#f443;border:1px solid #f44;color:#f44}.signal-hold{background:#00d9ff33;border:1px solid #00d9ff;color:#00d9ff}.trades-list{max-height:300px;overflow-y:auto}.trade-item{align-items:center;border-bottom:1px solid #2a2a4a;display:flex;justify-content:space-between;padding:.75rem}.trade-item:last-child{border-bottom:none}.config-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-top:1rem}.config-item{display:flex;flex-direction:column;gap:.5rem}.config-item label{color:#888;font-size:.9rem}.config-item input{background:#0a0a0f;border:1px solid #2a2a4a;border-radius:6px;color:#e0e0e0;font-size:1rem;padding:.5rem}.config-item input:focus{border-color:#00d9ff;outline:none}.loading{align-items:center;color:#888;display:flex;height:200px;justify-content:center}.error{background:#ff44441a;border-radius:8px;color:#f44;margin-top:1rem;padding:1rem}.btn-paper{background:#00d9ff33;border:1px solid #00d9ff;color:#00d9ff;font-size:.9rem;padding:.5rem 1rem}.btn-paper:hover{background:#00d9ff4d}.btn-paper-active{background:linear-gradient(135deg,#00d9ff,#09c);box-shadow:0 4px 15px #00d9ff4d;color:#000}.btn-live,.btn-paper-active{font-size:.9rem;padding:.5rem 1rem}.btn-live{background:#f443;border:1px solid #f44;color:#f44}.btn-live:hover{background:#ff44444d}.btn-live-active{background:linear-gradient(135deg,#f44,#c00);box-shadow:0 4px 15px #ff44444d;color:#fff}.btn-live-active,.btn-segment{font-size:.9rem;padding:.5rem 1rem}.btn-segment{background:#0f83;border:1px solid #0f8;color:#0f8}.btn-segment:hover{background:#00ff884d}.btn-segment-active{background:linear-gradient(135deg,#0f8,#00cc6a);box-shadow:0 4px 15px #00ff884d;color:#000;font-size:.9rem;padding:.5rem 1rem}.nav-tabs{display:flex;gap:.5rem}.nav-btn{background:#0000;border:1px solid #2a2a4a;border-radius:8px;color:#888;cursor:pointer;padding:.5rem 1.5rem;transition:all .2s}.nav-btn:hover{border-color:#00d9ff;color:#00d9ff}.nav-btn.active{background:linear-gradient(135deg,#00d9ff,#09c);border-color:#0000;color:#000}.settings-page{margin:0 auto;max-width:800px}.message{border-radius:8px;margin-bottom:1rem;padding:1rem;text-align:center}.message.success{background:#0f83;border:1px solid #0f8;color:#0f8}.message.error{background:#f443;border:1px solid #f44;color:#f44}.search-options-page{display:flex;flex-direction:column;gap:1rem}.search-options-page h2{color:#00d9ff;margin:0}.login-page{align-items:center;background:linear-gradient(135deg,#0a0a0f,#1a1a2e 50%,#16213e);display:flex;justify-content:center;min-height:100vh}.login-card{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:3rem;width:100%}.login-logo{margin-bottom:2rem;text-align:center}.logo-icon{align-items:center;background:linear-gradient(135deg,#00d9ff,#0f8);border-radius:20px;color:#0a0a0f;display:flex;font-size:2rem;font-weight:900;height:80px;justify-content:center;margin:0 auto 1rem;width:80px}.login-logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;margin-bottom:.5rem}.login-logo p{color:#888;font-size:.9rem}.login-input-group{margin-bottom:1rem}.login-input-group input{background:#0a0a0f;border:1px solid #2a2a4a;border-radius:10px;color:#fff;font-size:1rem;outline:none;padding:1rem 1.2rem;transition:border-color .3s;width:100%}.login-input-group input:focus{border-color:#00d9ff;box-shadow:0 0 15px #00d9ff33}.login-error{color:#f44;font-size:.85rem;margin-bottom:1rem;text-align:center}.login-btn{background:linear-gradient(135deg,#00d9ff,#0f8);border:none;border-radius:10px;color:#0a0a0f;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem;transition:transform .2s,box-shadow .2s;width:100%}.login-btn:hover{box-shadow:0 8px 25px #00d9ff4d;transform:translateY(-2px)}.login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.header-right{align-items:center;display:flex;gap:1.5rem}.logout-btn{background:#0000;border:1px solid #f44;border-radius:6px;color:#f44;cursor:pointer;font-size:.8rem;padding:.4rem 1rem;transition:all .2s}.logout-btn:hover{background:#ff444426;color:#f66}.user-info{align-items:center;display:flex;gap:.5rem}.user-name{color:#ccc;font-size:.85rem;font-weight:500}.user-info .role-badge{border-radius:8px;font-size:.7rem;font-weight:600;padding:.2rem .5rem}.user-info .role-badge.admin{background:#f803;color:#f80}.user-info .role-badge.user{background:#00d9ff33;color:#00d9ff}.change-pwd-btn{background:#0000;border:1px solid #4a4a6a;border-radius:4px;color:#888;cursor:pointer;font-size:.7rem;padding:.2rem .5rem;transition:all .2s}.change-pwd-btn:hover{border-color:#00d9ff;color:#00d9ff}.change-password-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.change-password-card{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:12px;max-width:400px;padding:2rem;width:100%}.change-password-card h3{color:#00d9ff;margin:0 0 1.5rem;text-align:center}.change-password-card .form-group{margin-bottom:1rem}.change-password-card .form-group label{color:#888;display:block;font-size:.8rem;margin-bottom:.3rem}.change-password-card .form-group input{background:#0a0a0f;border:1px solid #2a2a4a;border-radius:6px;color:#fff;font-size:.9rem;outline:none;padding:.7rem;width:100%}.change-password-card .form-group input:focus{border-color:#00d9ff}.success-msg{color:#0f8}.error-msg,.success-msg{font-size:.85rem;margin-bottom:1rem;text-align:center}.error-msg{color:#f44}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.cancel-btn{background:#2a2a4a;border:1px solid #4a4a6a;border-radius:6px;color:#ccc}.cancel-btn,.submit-btn{cursor:pointer;flex:1 1;padding:.7rem}.submit-btn{background:linear-gradient(135deg,#00d9ff,#0f8);border:none;border-radius:6px;color:#0a0a0f;font-weight:600}.submit-btn:disabled{cursor:not-allowed;opacity:.6}
/*# sourceMappingURL=main.5118fcfc.css.map*/