*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:#0f0f0f;color:#e0e0e0;min-height:100vh}

/* Badge sequencial de live (#1, #2, ...) no top-bar */
.live-badge{background:#c53030;color:#fff;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.05em;white-space:nowrap;align-self:center}

/* Abas do painel de usuarios */
.users-tab-btn{padding:8px 16px;background:none;color:#888;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.85rem;transition:all .15s}
.users-tab-btn:hover{color:#ccc}
.users-tab-active{color:#e8a846;border-bottom-color:#e8a846}

/* Invite: badge de status */
.invite-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:600}
.invite-status-pendente{background:#1a3a2a;color:#4ecba0}
.invite-status-expirado{background:#3a2a1a;color:#e8a846}
.invite-status-usado{background:#1a1a1a;color:#666;border:1px solid #333}

/* Calendario (agenda) */
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background:#1a1a1a;border:1px solid #222;border-radius:6px;overflow:hidden}
.cal-head{background:#141414;color:#888;font-size:.72rem;font-weight:600;text-align:center;padding:6px 4px;text-transform:uppercase;letter-spacing:.04em}
.cal-day{background:#0a0a0a;min-height:92px;padding:4px;position:relative;cursor:pointer;transition:background .1s}
.cal-day:hover{background:#111}
.cal-day-num{color:#888;font-size:.72rem;font-weight:600;margin-bottom:2px}
.cal-day-today{background:#1a1a2a;border:1px solid #3a3a5a}
.cal-day-today .cal-day-num{color:#5fa8e8}
.cal-day-outside{opacity:.3}
.cal-event{display:block;font-size:.7rem;color:#e0e0e0;background:#1a3a2a;border-left:3px solid #4ecba0;padding:1px 4px;margin-top:1px;border-radius:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.cal-event:hover{background:#2a4a3a}
.cal-event-more{display:block;font-size:.66rem;color:#888;padding:1px 4px;margin-top:1px}

/* Setup */
#setup{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}
#setup.hidden{display:none}
.setup-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:16px;padding:40px;max-width:480px;width:100%}
.setup-card h1{font-size:1.4rem;text-align:center;margin-bottom:6px;color:#f4a030}
.setup-card .subtitle{text-align:center;color:#888;font-size:.85rem;margin-bottom:28px}
.setup-card label{display:block;font-size:.8rem;color:#aaa;margin-bottom:4px;margin-top:16px}
.setup-card input{width:100%;padding:10px 14px;background:#111;border:1px solid #333;border-radius:8px;color:#e0e0e0;font-size:.9rem;outline:none;transition:border .2s}
.setup-card input:focus{border-color:#f4a030}
.setup-card button{width:100%;margin-top:24px;padding:12px;background:#f4a030;color:#000;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}
.setup-card button:hover{background:#e8922a}
.setup-card button:disabled{opacity:.5;cursor:not-allowed}
#setup-error{color:#e84040;font-size:.82rem;margin-top:12px;text-align:center;min-height:20px}

/* Monitor */
#monitor{display:none;flex-direction:column;height:100vh}
#monitor.active{display:flex}

.top-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#141414;border-bottom:1px solid #222;flex-shrink:0;gap:10px;flex-wrap:wrap}
.top-bar h1{font-size:1rem;color:#f4a030;white-space:nowrap}
.status-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.status-dot{width:10px;height:10px;border-radius:50%;background:#e84040;flex-shrink:0;transition:background .3s}
.status-dot.live{background:#4ecba0}
.status-text{font-size:.78rem;color:#888}
.btn-stop{padding:6px 16px;background:#2a1a1a;color:#e84040;border:1px solid #3a2020;border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .2s}
.btn-stop:hover{background:#3a2020}
.btn-report{padding:6px 16px;background:#1a2a3a;color:#5fa8e8;border:1px solid #2a3a4a;border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .2s}
.btn-report:hover{background:#2a3a4a}
.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 14px;background:none;border:none;color:#ddd;font-size:.85rem;text-align:left;cursor:pointer;font-family:inherit}
.menu-item:hover{background:#1e1e1e;color:#e8a846}
.menu-item>span:first-child{font-size:1rem;width:20px;text-align:center}
.menu-item kbd{margin-left:auto;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:3px;padding:1px 5px;font-size:.68rem;color:#666;font-family:monospace}

/* Metrics */
.metrics{display:flex;gap:8px;padding:10px 20px;background:#111;border-bottom:1px solid #1e1e1e;flex-shrink:0;flex-wrap:wrap}
.metric{padding:8px 14px;background:#1a1a1a;border-radius:8px;text-align:center;min-width:88px}
.metric .val{font-size:1.25rem;font-weight:700}
.metric .lbl{font-size:.68rem;color:#888;margin-top:2px}
.metric.viewers .val{color:#5fa8e8}
.metric.total .val{color:#e0e0e0}
.metric.oracao .val{color:#f4a030}
.metric.elogio .val{color:#4ecba0}
.metric.reclamacao .val{color:#e84040}
.metric.saudacao .val{color:#b090e0}
.metric.louvor .val{color:#e868b0}
.metric.testemunho .val{color:#7cc440}

/* Columns */
.columns{display:flex;flex:1;overflow:hidden}
.col{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}
.col+.col{border-left:1px solid #1e1e1e}
.col-header{padding:10px 16px;background:#141414;border-bottom:1px solid #1e1e1e;font-size:.82rem;color:#888;font-weight:600;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:8px}
.col-body{flex:1;overflow-y:auto;padding:10px}
.col-body::-webkit-scrollbar{width:6px}
.col-body::-webkit-scrollbar-thumb{background:#333;border-radius:3px}

/* Message */
.msg{background:#1a1a1a;border:1px solid #222;border-radius:10px;padding:10px 14px;margin-bottom:8px;animation:fadeIn .3s ease}
.msg.urgente{border-left:4px solid #e84040;background:#2a1414;animation:urgentPulse 1.5s ease-in-out 3}
.msg.deleted{opacity:.5}
.msg.deleted .msg-text{text-decoration:line-through;color:#666}
.msg.locked-other{opacity:.5}
.msg.locked-other .sug-btn{pointer-events:none;filter:grayscale(.5)}
.chip-claim-mine{font-size:.66rem;background:#0f1f33;color:#7ec4f0;padding:3px 8px;border-radius:10px;font-weight:600;border:1px solid #1a3a5a;margin-top:6px;display:inline-block}
.chip-claim-other{font-size:.66rem;background:#2a2218;color:#e8a846;padding:3px 8px;border-radius:10px;font-weight:600;border:1px solid #3a2f1a;margin-top:6px;display:inline-block}
.btn-takeover{margin-left:6px;font-size:.66rem;background:#3a2218;color:#ffb060;padding:2px 8px;border-radius:8px;border:1px solid #5a3a20;cursor:pointer}
@keyframes urgentPulse{0%,100%{box-shadow:0 0 0 0 rgba(232,64,64,0)}50%{box-shadow:0 0 0 4px rgba(232,64,64,.3)}}
@keyframes fadeIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.msg-top{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.msg-author{font-size:.8rem;font-weight:600;color:#ccc}
.msg-time{font-size:.7rem;color:#555;margin-left:auto}
.msg-text{font-size:.85rem;color:#ccc;line-height:1.4;word-break:break-word}
.badge{font-size:.65rem;padding:2px 8px;border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.badge-oracao{background:#4a2a00;color:#f4a030}
.badge-elogio{background:#003322;color:#4ecba0}
.badge-reclamacao{background:#3a0a0a;color:#e84040}
.badge-saudacao{background:#2a1a3a;color:#b090e0}
.badge-louvor{background:#3a1a2a;color:#e868b0}
.badge-testemunho{background:#0a2a00;color:#7cc440}
.badge-outro{background:#222;color:#888}

/* Botao de marcar/corrigir vencedor: so aparece enquanto ha uma pergunta atual no desafio */
.winner-btn{display:none}
#feedCol.challenge-live .winner-btn{display:inline-flex}

/* Suggestion */
.sug-box{margin-top:8px;background:#111;border-radius:8px;padding:8px 12px;border-left:2px solid #f4a030;animation:fadeIn .3s ease}
.sug-box.loading{opacity:.7}
.sug-label{font-size:.68rem;color:#f4a030;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.sug-text{font-size:.85rem;color:#ddd;line-height:1.4;margin-bottom:8px}
.sug-actions{display:flex;gap:6px;flex-wrap:wrap}
.sug-btn{padding:5px 12px;border-radius:6px;font-size:.74rem;font-weight:600;cursor:pointer;transition:all .15s;border:none}
.sug-btn:disabled{opacity:.5;cursor:wait}
.sug-accept{background:#1a3a1a;color:#4ecba0;border:1px solid #2a4a2a}
.sug-accept:hover:not(:disabled){background:#2a4a2a}
.sug-reject{background:#2a1a1a;color:#e84040;border:1px solid #3a2020}
.sug-reject:hover:not(:disabled){background:#3a2020}
.sug-other{background:#1a2a3a;color:#5fa8e8;border:1px solid #2a3a4a}
.sug-other:hover:not(:disabled){background:#2a3a4a}
.sug-ask{margin-top:6px;padding:4px 10px;background:#1a1a1a;color:#888;border:1px solid #2a2a2a;border-radius:6px;font-size:.72rem;cursor:pointer;transition:all .15s}
.sug-ask:hover{background:#222;color:#f4a030;border-color:#f4a030}
.sug-posted{font-size:.72rem;color:#4ecba0;padding:4px 0;font-weight:600}

/* Filter tabs */
.tabs{display:flex;gap:4px;padding:8px 10px;background:#141414;border-bottom:1px solid #1e1e1e;flex-shrink:0;flex-wrap:wrap}
.tab{padding:4px 10px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:6px;font-size:.72rem;color:#888;cursor:pointer;transition:all .15s}
.tab:hover{background:#222;color:#ccc}
.tab.active{background:#f4a030;color:#000;border-color:#f4a030}

/* Names column */
.name-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#1a1a1a;border:1px solid #222;border-radius:8px;margin-bottom:6px;animation:fadeIn .3s ease}
.name-item.done{opacity:.4;background:#0f0f0f}
.name-item.done .name-text{text-decoration:line-through}
.name-text{flex:1;font-size:.85rem;color:#ccc;word-break:break-word}
.name-count{font-size:.68rem;color:#666;padding:2px 6px;background:#111;border-radius:4px}
.btn-hi{padding:4px 10px;background:#1a2a3a;color:#5fa8e8;border:1px solid #2a3a4a;border-radius:6px;font-size:.72rem;cursor:pointer;transition:all .15s;white-space:nowrap}
.btn-hi:hover{background:#2a3a4a}
.btn-hi.done{background:#1a3a1a;color:#4ecba0;border-color:#2a4a2a}

/* Toast */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(100px);background:#1a1a1a;color:#e0e0e0;padding:10px 24px;border-radius:8px;border:1px solid #333;font-size:.85rem;z-index:9999;transition:transform .3s ease;pointer-events:none}
.toast.show{transform:translateX(-50%) translateY(0)}
.toast.error{border-color:#e84040;color:#e84040}
.toast.ok{border-color:#4ecba0;color:#4ecba0}

/* Export */
.export-bar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:#1a1a00;border-bottom:1px solid #3a3a00;flex-shrink:0;flex-wrap:wrap}
.export-bar.hidden{display:none}
.export-label{font-size:.82rem;color:#f4a030;font-weight:600}
.btn-export{padding:8px 20px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}
.btn-excel{background:#217346;color:#fff}
.btn-excel:hover{background:#1a5c38}
.btn-export:disabled{opacity:.5;cursor:wait}

/* Report */
.report-overlay{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:1000;display:none;overflow-y:auto}
.report-overlay.active{display:block}
.report-panel{max-width:920px;margin:20px auto;padding:24px;background:#1a1a1a;border-radius:16px;border:1px solid #2a2a2a}
.report-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.report-header h2{font-size:1.2rem;color:#f4a030}
.btn-close-report{background:none;border:1px solid #333;color:#888;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:.8rem}
.btn-close-report:hover{color:#e0e0e0;border-color:#555}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:20px}
.stat-card{background:#111;border-radius:10px;padding:12px;text-align:center;border:1px solid #222}
.stat-card .stat-val{font-size:1.3rem;font-weight:700;color:#f4a030}
.stat-card .stat-lbl{font-size:.68rem;color:#888;margin-top:2px}
.charts-row{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}
.charts-row-2{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:16px}
.chart-box{background:#111;border-radius:10px;padding:16px;border:1px solid #222}
.chart-box h3{font-size:.82rem;color:#888;margin-bottom:10px;font-weight:600}
.insights-box{background:#111;border-radius:10px;padding:16px;border:1px solid #222;margin-top:16px}
.insights-box h3{font-size:.82rem;color:#f4a030;margin-bottom:10px;font-weight:600}
.insight-item{font-size:.82rem;color:#ccc;padding:6px 0;border-bottom:1px solid #1e1e1e;line-height:1.4}
.insight-item:last-child{border-bottom:none}
.insight-item strong{color:#f4a030}

@media(max-width:900px){
  .columns{flex-direction:column}
  .col+.col{border-left:none;border-top:1px solid #1e1e1e}
  .charts-row-2{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .report-panel{margin:10px;padding:16px}
}

/* ===== WHATSAPP INBOX ===== */
.wa-conv-item{display:flex;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid #1e1e1e;transition:background .1s;align-items:flex-start}
.wa-conv-item:hover{background:#1a1a1a}
.wa-conv-item.active{background:#1d2a22;border-left:3px solid #25d366;padding-left:11px}
.wa-conv-avatar{width:36px;height:36px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;flex-shrink:0}
.wa-conv-avatar.group{background:#4a5568}
.wa-conv-main{flex:1;min-width:0}
.wa-conv-name{color:#e0e0e0;font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;justify-content:space-between;gap:6px}
.wa-conv-name .wa-conv-ts{color:#666;font-size:.68rem;font-weight:400;flex-shrink:0}
.wa-conv-preview{color:#888;font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.wa-conv-badge{background:#25d366;color:#fff;font-size:.65rem;padding:1px 7px;border-radius:10px;font-weight:600;flex-shrink:0}
.wa-conv-tag{display:inline-block;background:#2a2a2a;color:#888;font-size:.6rem;padding:1px 5px;border-radius:3px;margin-left:4px}
.wa-conv-tag.group{background:#3a4a6a;color:#9ab}
.wa-conv-tag.archived{background:#4a3a2a;color:#c8a878}

/* Mensagens */
.wa-msg{max-width:72%;padding:7px 11px;border-radius:10px;word-wrap:break-word;font-size:.85rem;line-height:1.4;position:relative}
.wa-msg-in{align-self:flex-start;background:#141414;color:#ddd;border:1px solid #222;border-bottom-left-radius:3px}
.wa-msg-out{align-self:flex-end;background:#1d3a2a;color:#d8e8d8;border:1px solid #2a4a3a;border-bottom-right-radius:3px}
.wa-msg-ts{color:#666;font-size:.65rem;margin-top:3px;text-align:right}
.wa-msg-out .wa-msg-ts{color:#6a9a7a}
.wa-msg-status{color:#888;font-size:.65rem;margin-left:4px}
.wa-msg-img{max-width:260px;max-height:320px;border-radius:6px;cursor:zoom-in;display:block}
.wa-msg-audio,.wa-msg-video{max-width:320px;display:block}
.wa-msg-doc{display:flex;align-items:center;gap:8px;padding:6px 8px;background:rgba(255,255,255,.04);border-radius:6px;color:#bbb;text-decoration:none;font-size:.78rem}
.wa-msg-doc:hover{background:rgba(255,255,255,.08)}
.wa-msg-placeholder{color:#888;font-style:italic;font-size:.8rem}
.wa-msg-placeholder.err{color:#c66}
.wa-day-sep{text-align:center;margin:10px 0;color:#666;font-size:.7rem;padding:3px 10px;background:#141414;border-radius:10px;align-self:center}
