/* ============ WA SEND MODULE ============ */
.wa-status-bar{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;
               border:1px solid var(--g200);border-radius:var(--r-lg);margin-bottom:20px;box-shadow:var(--sh-1)}
.wa-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;transition:background .3s}
.wa-dot-offline,.wa-dot-unknown,.wa-dot-disconnected{background:var(--g400)}
.wa-dot-qr,.wa-dot-connecting{background:#f59e0b;animation:waPulse 1.2s ease-in-out infinite}
.wa-dot-ready{background:#10b981}
@keyframes waPulse{0%,100%{opacity:1}50%{opacity:.35}}
.wa-status-txt{font-weight:600;font-size:14px;color:var(--g900)}
.wa-status-hint{font-size:12px;color:var(--g500);margin-left:auto}
.wa-reset-btn{flex-shrink:0;padding:6px 12px;font-size:12px}
.wa-qr-panel{background:#fff;border:1px solid var(--g200);border-radius:var(--r-lg);
             padding:22px;margin-bottom:20px;text-align:center;box-shadow:var(--sh-1)}
.wa-qr-panel p{margin:0 0 14px 0;font-size:14px;color:var(--g700)}
.wa-qr-panel img{max-width:240px;border-radius:8px;border:1px solid var(--g200)}
.wa-instr-panel{background:#eef0ff;border:1px solid rgba(1,2,178,.15);border-radius:var(--r-lg);
                padding:18px 22px;margin-bottom:20px}
.wa-instr-panel p{margin:0 0 10px 0;font-weight:600;color:var(--blue);font-size:14px}
.wa-instr-panel ol{margin:0;padding-left:20px;font-size:13px;color:var(--g700);line-height:2.2}
.wa-instr-panel code{background:rgba(1,2,178,.1);padding:1px 7px;border-radius:4px;font-size:12px}
.wa-panel{background:#fff;border:1px solid var(--g200);border-radius:var(--r-lg);
          padding:20px 22px;margin-bottom:20px;box-shadow:var(--sh-1)}
.wa-panel-hdr{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.wa-panel-ttl{font-size:16px;font-weight:700;color:var(--g900);margin:0;flex:1}
.wa-group-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--g200);flex-wrap:wrap}
.wa-group-row:last-child{border-bottom:none}
.wa-group-l{display:flex;align-items:center;gap:8px;flex:0 0 210px;min-width:0}
.wa-region-badge{font-size:9px;font-weight:800;letter-spacing:1.5px;color:var(--blue);background:#eef0ff;
                 padding:2px 7px;border-radius:999px;white-space:nowrap}
.wa-plaza-name{font-weight:700;font-size:14px;color:var(--g900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wa-group-r{flex:1;display:flex;align-items:center;gap:8px;min-width:260px}
.wa-group-search{width:96px;padding:7px 9px;border:1px solid var(--g300);border-radius:7px;
                 font-size:12px;color:var(--g700);background:#f9fafb;flex-shrink:0;
                 transition:width .2s,border-color .15s}
.wa-group-search:focus{outline:none;border-color:var(--blue);width:140px;
                       box-shadow:0 0 0 3px rgba(1,2,178,.08);background:#fff}
.wa-group-search::placeholder{color:var(--g400)}
.wa-group-sel{flex:1;padding:8px 10px;border:1px solid var(--g300);border-radius:8px;
              font-size:13px;background:#fff;color:var(--g900);cursor:pointer}
.wa-group-sel:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(1,2,178,.1)}
.wa-tog-lbl{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--g700);cursor:pointer;white-space:nowrap}
.wa-save-dirty{background:var(--red) !important;color:#fff !important;
               animation:wa-dirty-pulse 1.8s ease-in-out infinite}
.wa-msg-lbl{display:block;font-size:13px;font-weight:700;color:var(--g900);margin:14px 0 6px}
.wa-msg-lbl:first-of-type{margin-top:0}
.wa-msg-sub{font-weight:400;color:var(--g500);font-size:12px}
.wa-msg-area{width:100%;box-sizing:border-box;font:inherit;font-size:14px;line-height:1.5;
             padding:10px 12px;border:1px solid var(--g200);border-radius:8px;color:var(--g900);
             resize:vertical;background:#fff}
.wa-msg-area:focus{outline:none;border-color:var(--blue,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
/* Paneles plegables (mensaje / config grupos) */
.wa-details{padding:0;overflow:hidden}
.wa-details-sum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;cursor:pointer;
                padding:18px 22px;list-style:none;user-select:none}
.wa-details-sum::-webkit-details-marker{display:none}
.wa-details-sum::before{content:"▸";color:var(--g500);font-size:13px;transition:transform .15s}
.wa-details[open] .wa-details-sum::before{transform:rotate(90deg)}
.wa-details-sum:hover{background:#f9fafb}
.wa-details-hint{font-size:12px;color:var(--g500);font-weight:400}
.wa-details-body{padding:0 22px 22px}
/* Vista previa en vivo del mensaje */
.wa-msg-preview{margin-top:16px;border:1px dashed var(--g200);border-radius:10px;
                background:#f7faf7;padding:14px 16px}
.wa-msg-preview-lab{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--g500);
                    text-transform:uppercase;margin-bottom:10px}
.wa-msg-preview-body{display:flex;flex-direction:column;gap:8px}
.wa-prev-line{white-space:pre-wrap;font-size:14px;line-height:1.5;color:var(--g900)}
.wa-prev-img{align-self:flex-start;font-size:13px;color:var(--g500);background:#fff;
             border:1px solid var(--g200);border-radius:8px;padding:8px 14px}
@keyframes wa-dirty-pulse{0%,100%{box-shadow:0 0 0 0 rgba(250,34,49,.30)}50%{box-shadow:0 0 0 5px rgba(250,34,49,.08)}}
.wa-prog-hdr{font-weight:700;font-size:14px;color:var(--g900);margin-bottom:14px}
.wa-retry-wrap{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;background:#fff8e1;border:1px solid #f9c74f;border-radius:8px;flex-wrap:wrap}
.wa-retry-btn{padding:8px 14px;font-size:13px;font-weight:700;background:#fa2231;color:#fff;border:none;border-radius:6px;cursor:pointer}
.wa-retry-btn:hover{background:#d61828}
.wa-retry-note{font-size:12px;color:#7a5a00}
.wa-prog-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.wa-prog-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#f9fafb;border-radius:8px;font-size:13px}
.wa-pr-icon{font-size:16px;flex-shrink:0;width:22px;text-align:center}
.wa-pr-name{font-weight:600;flex:0 0 120px;color:var(--g900)}
.wa-pr-note{color:var(--g500);font-size:12px}
.wa-pr-ok .wa-pr-icon{color:#10b981}
.wa-pr-err .wa-pr-icon{color:var(--red)}
.wa-pr-wait .wa-pr-icon{color:#f59e0b}
