*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background:#1a1a2e;color:#fff;min-height:100vh;padding:20px}
.container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 350px;gap:24px}
.main-panel{background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border-radius:20px;padding:30px;border:2px solid rgba(255,255,255,.12)}
.trading-panel{background:#16213e;border-radius:20px;padding:25px;border:2px solid rgba(255,255,255,.12);height:fit-content}
h1{text-align:center;margin-bottom:30px;font-size:2rem;background:linear-gradient(45deg,#0f8,#0cf);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.section{background:rgba(255,255,255,.05);border-radius:15px;padding:20px;margin-bottom:20px;border:2px solid rgba(255,255,255,.12)}
.section-title{font-size:1.8rem;margin-bottom:15px;color:#0f8;display:flex;align-items:center;gap:8px;font-weight:800;justify-content:space-between}
.input-group{margin-bottom:15px}
.input-row{display:flex;gap:15px;align-items:flex-end;margin-bottom:15px}
.input-row .input-group{flex:1;min-width:0}
.input-row .input-group label{display:block;margin-bottom:5px;font-weight:700;color:#e0e0e0}
.input-row .input-group input{width:100%;padding:10px;border:2px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:16px;transition:all .3s ease}
.input-row .input-group input:focus{outline:0;border-color:#0cf;box-shadow:0 0 10px rgba(0,204,255,.3)}
label{display:block;margin-bottom:8px;font-weight:600;color:#e0e0e0;font-size:19px}
input[type=file],input[type=number],input[type=time],select{width:100%;padding:14px;border:2px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:20px;transition:all .3s ease}
select option{background:#fff!important;color:#000!important;padding:8px;font-size:16px}
input:focus,select:focus{outline:0;border-color:#0cf;box-shadow:0 0 10px rgba(0,204,255,.3)}

/* Placeholder e spinners (para replicar visual do original) */
input::placeholder{color:#bdbdbd;opacity:1}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button{ -webkit-appearance: none; margin:0 }
input[type=number]{ -moz-appearance:textfield; appearance:textfield; -webkit-appearance: none }

/* Reativar setas (spinners) na seção Gestão de Banca */
.banca-section input[type=number]{ appearance:auto; -moz-appearance:auto; -webkit-appearance:number-input }
.banca-section input[type=number]::-webkit-outer-spin-button,
.banca-section input[type=number]::-webkit-inner-spin-button{ -webkit-appearance:auto; margin:0 }

/* Foco mais discreto e esverdeado na seção de banca */
.banca-section input:focus{border-color:#00ff88;box-shadow:none}
.banca-section .field{margin-bottom:12px}
.banca-section .input-row{margin-top:10px}
.tracking-controls{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
.tracking-controls select{min-width:220px}
.start-btn{flex:1;padding:16px;background:linear-gradient(45deg,#0f8,#0cf);border:none;border-radius:10px;color:#000;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease}
.start-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,255,136,.4)}
.start-btn:disabled{background:#666;cursor:not-allowed;transform:none}
.stop-btn{flex:1;padding:16px;background:linear-gradient(45deg,#ff4757,#ff3838);border:none;border-radius:10px;color:#fff;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease}
.stop-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(255,71,87,.4)}
.stop-btn:disabled{background:#666;cursor:not-allowed;transform:none}
.connection-status{display:flex;align-items:center;gap:8px;font-size:18px;margin-bottom:15px}
.status-dot{width:8px;height:8px;border-radius:50%;background:#ff4757}
.status-dot.connected{background:#0f8}
.status-dot.tracking{background:orange;animation:pulse 1s infinite}
@keyframes pulse{0%{opacity:1}50%{opacity:.5}100%{opacity:1}}
.tracking-status{background:rgba(255,165,0,.1);border:1px solid orange;padding:15px;border-radius:10px;margin-bottom:20px;display:none;text-align:center}
.tracking-status.active{display:block}
.scanning-progress{background:rgba(0,204,255,.1);border:1px solid #0cf;padding:15px;border-radius:10px;margin-bottom:20px;display:none}
.scanning-progress.active{display:block}
/* Títulos internos dos boxes como no original */
.scanning-progress .title{font-weight:700;color:#0cf;margin-bottom:10px}
.tracking-status .title{font-weight:700;color:orange;margin-bottom:5px}
.tracking-status .next-scan{margin-top:10px}
.progress-bar{width:100%;height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden;margin:10px 0}
.progress-fill{height:100%;background:linear-gradient(45deg,#0f8,#0cf);width:0%;transition:width .3s ease}
.trading-info{display:grid;gap:15px;margin-bottom:25px}
.info-card{background:rgba(255,255,255,.05);padding:15px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}
.info-label{font-size:16px;color:#888;margin-bottom:5px;display:flex;align-items:center;gap:5px}
.info-value{font-size:24px;font-weight:700}
.banca-value{color:#0cf}
.aposta-value{color:orange}
.lucro-value{color:#0f8}
.signal-card{background:linear-gradient(135deg,#2d4a22 0,#1a2f16 100%);padding:20px;border-radius:15px;margin-bottom:20px;border:2px solid #0f8;display:none;animation:signalPulse .5s ease-in-out}
.signal-card.sell{background:linear-gradient(135deg,#4a222d 0,#2f161a 100%);border-color:#ff4757}
/* Alinhar largura dos cards ao painel direito como no original */
.signals-container{display:block !important}
.signal-card{width:100%}
@keyframes signalPulse{0%{transform:scale(.95);opacity:.8}100%{transform:scale(1);opacity:1}}
.signal-header{text-align:center;margin-bottom:15px}
.signal-action{font-size:28px;font-weight:700;margin-bottom:10px}
.signal-time{font-size:20px;color:#ccc;margin-bottom:15px}
.signal-details{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}
.detail-item{text-align:center}
.detail-label{font-size:12px;color:#ccc;margin-bottom:5px}
.detail-value{font-size:16px;font-weight:700}
.signal-explanation{background:rgba(0,0,0,.2);padding:15px;border-radius:10px;font-size:14px;line-height:1.5;display:none !important}
.result-buttons{display:flex;gap:10px;margin-top:15px}
.result-btn{flex:1;padding:12px;border:none;border-radius:8px;font-weight:700;cursor:pointer;font-size:14px}
.win-btn{background:linear-gradient(45deg,#0f8,#00cc70);color:#000}
.loss-btn{background:linear-gradient(45deg,#ff4757,#ff3838);color:#fff}
.history-section{max-height:300px;overflow-y:auto;display:none}
.history-section.show{display:block}
.history-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:rgba(255,255,255,.05);border-radius:8px;margin-bottom:8px;font-size:14px}
.history-item.win{border-left:4px solid #0f8}
.history-item.loss{border-left:4px solid #ff4757}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.stat-card{background:rgba(0,0,0,.2);padding:10px;border-radius:8px;text-align:center}
.stat-value{font-size:18px;font-weight:700;margin-bottom:5px}
.stat-label{font-size:12px;color:#ccc}
.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #34495e}
.header-section h1{margin:0;font-size:2.4rem;font-weight:800;color:#00ff88;text-align:left}
#sound-control{display:flex;flex-direction:row;gap:10px;align-items:center}
#sound-toggle{background:linear-gradient(135deg,#2ecc71,#27ae60);border:none;border-radius:25px;padding:8px 12px;color:#fff;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 3px 10px rgba(46,204,113,.3);transition:all .3s ease;font-size:13px;min-width:100px}
#sound-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 15px rgba(46,204,113,.4)}
#sound-toggle.sound-off{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 3px 10px rgba(231,76,60,.3)}
#sound-toggle.sound-off:hover{box-shadow:0 4px 15px rgba(231,76,60,.4)}
#sound-type{background:#34495e;color:#fff;border:none;border-radius:15px;padding:8px 12px;font-size:12px;cursor:pointer;outline:0;transition:all .3s ease}
#sound-type:hover{background:#2c3e50;transform:translateY(-1px)}
#sound-type:focus{box-shadow:0 0 0 2px rgba(52,152,219,.5)}
@media (max-width:768px){.container{grid-template-columns:1fr}.tracking-controls{flex-direction:column}}
.strategy-info{display:none !important}
.signal-explanation{display:none !important}
#callExplanation, #putExplanation{display:none !important;visibility:hidden !important;height:0 !important;padding:0 !important;margin:0 !important}
.history-toggle-btn{background:linear-gradient(45deg,#0f8,#0cf);border:none;border-radius:8px;color:#000;font-size:12px;font-weight:700;cursor:pointer;padding:8px 12px;margin-left:10px;transition:all .3s ease}
.history-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,255,136,.4)}

/* Seção de sinais deve manter altura visível mesmo sem conteúdo */
.signals-section{min-height:140px}

/* Estilo do botão MANUAL inserido via JS */
.manual-btn {
  display: block;
  width: fit-content;
  background: linear-gradient(45deg, #ffd166, #fca311);
  border: none;
  border-radius: 8px;
  color: #000;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  padding: 10px 14px;
  margin: 12px auto 0;
  text-decoration: none;
  transition: all .3s ease;
}
.manual-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 3px 10px rgba(252, 163, 17, .4);
}

.container2{max-width:1200px;margin:0 auto;gap:24px}