.bubble-wrapper{margin:2px 12px;display:flex}.bubble-wrapper.bot{justify-content:flex-start}.bubble-wrapper.user{justify-content:flex-end}.bubble{border-radius:8px;max-width:75%;padding:8px 12px 6px;position:relative;box-shadow:0 1px 2px #00000026}.bubble-bot{background:#fff;border-top-left-radius:2px}.bubble-user{background:#dcf8c6;border-top-right-radius:2px}.bubble-text{color:#111b21;white-space:pre-wrap;word-break:break-word;margin:0 0 4px;font-size:14.2px;line-height:19px}.bubble-time{color:#667781;justify-content:flex-end;align-items:center;gap:3px;margin-top:2px;font-size:11px;display:flex}.tick{color:#53bdeb;font-size:12px}.typing-wrapper{justify-content:flex-start;margin:2px 12px;display:flex}.typing-bubble{background:#fff;border-radius:2px 8px 8px;align-items:center;gap:4px;padding:12px 16px;display:flex;box-shadow:0 1px 2px #00000026}.typing-bubble span{background:#8696a0;border-radius:50%;width:7px;height:7px;animation:1.2s infinite bounce}.typing-bubble span:nth-child(2){animation-delay:.2s}.typing-bubble span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.signature-pad{padding:4px 0}.signature-label{color:#667781;margin:0 0 6px;font-size:13px}.signature-canvas{touch-action:none;cursor:crosshair;background:#f9f9f9;border:1.5px solid #ccc;border-radius:6px;display:block}.signature-actions{gap:8px;margin-top:8px;display:flex}.btn-clear{cursor:pointer;color:#555;background:#fff;border:1px solid #ccc;border-radius:6px;flex:1;padding:8px;font-size:13px}.btn-confirm{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:6px;flex:2;padding:8px;font-size:13px;font-weight:600}.btn-confirm:disabled{cursor:default;background:#a8e6c0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:#111b21;font-family:-apple-system,Segoe UI,Roboto,sans-serif}.app{background:#efeae2;flex-direction:column;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.wa-chat:before{content:"";pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23b3b3b3' fill-opacity='0.12'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:fixed;inset:0}.wa-header{z-index:10;background:#202c33;flex-shrink:0;align-items:center;gap:12px;padding:10px 16px;display:flex}.wa-avatar{color:#fff;background:#25d366;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:700;display:flex}.wa-contact{flex:1}.wa-name{color:#e9edef;font-size:15px;font-weight:600;display:block}.wa-status{color:#8696a0;font-size:12px}.wa-header-icons{cursor:pointer;align-items:center;gap:12px;font-size:18px;display:flex}.reset-btn{color:#8696a0;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;line-height:1}.reset-btn:hover{color:#e9edef}.session-banner{color:#8fd3f4;z-index:5;background:#1a3a4a;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:7px 16px;font-size:12px;display:flex}.session-reset{color:#8fd3f4;cursor:pointer;background:0 0;border:1px solid #8fd3f4;border-radius:12px;flex-shrink:0;padding:2px 10px;font-size:11px}.session-reset:hover{background:#8fd3f41a}.wa-chat{z-index:1;flex-direction:column;flex:1;gap:2px;padding:12px 0 8px;display:flex;position:relative;overflow-y:auto}.wa-chat::-webkit-scrollbar{width:5px}.wa-chat::-webkit-scrollbar-track{background:0 0}.wa-chat::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.consent-box{max-width:280px}.consent-title{color:#111b21;border-bottom:1px solid #e0e0e0;margin-bottom:8px;padding-bottom:6px;font-size:14px;font-weight:700}.consent-text{color:#333;white-space:pre-wrap;max-height:160px;margin-bottom:10px;font-size:12.5px;line-height:1.6;overflow-y:auto}.consent-actions{gap:8px;display:flex}.btn-decline{color:#ef4444;cursor:pointer;background:#fff;border:1.5px solid #ef4444;border-radius:6px;flex:1;padding:8px 4px;font-size:13px;font-weight:600}.btn-accept{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:6px;flex:1.5;padding:8px 4px;font-size:13px;font-weight:600}.slots-grid{flex-direction:column;gap:6px;min-width:220px;display:flex}.slot-btn{color:#075e54;cursor:pointer;text-align:left;background:#f0faf4;border:1.5px solid #25d366;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:500;transition:background .15s}.slot-btn:hover{background:#dcf8c6}.wa-footer{z-index:10;background:#202c33;flex-shrink:0;padding:8px 12px}.quick-replies{flex-wrap:wrap;gap:6px;padding:4px 0 8px;display:flex}.quick-reply-btn{color:#00a884;cursor:pointer;background:#2a3942;border:1px solid #3b4a54;border-radius:20px;padding:8px 14px;font-size:13.5px;font-weight:500;transition:background .15s}.quick-reply-btn:hover{background:#3b4a54}.continuar-btn{color:#fff;background:#00a884;border-color:#00a884;border-radius:24px;padding:10px 32px;font-size:15px;font-weight:600}.continuar-btn:hover{background:#00c79a;border-color:#00c79a}.input-row{align-items:flex-end;gap:8px;display:flex}.input-wrap{flex:1;position:relative}.input-wrap input{color:#e9edef;background:#2a3942;border:none;border-radius:24px;outline:none;width:100%;padding:10px 14px;font-size:15px}.input-wrap input::placeholder{color:#8696a0}.input-wrap input.has-error{border:1.5px solid #ef4444}.input-error{color:#ef4444;font-size:11px;position:absolute;bottom:-18px;left:14px}.send-btn{color:#fff;cursor:pointer;background:#00a884;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:background .15s;display:flex}.send-btn:disabled{cursor:default;background:#3b4a54}.send-btn:not(:disabled):hover{background:#00c79a}.footer-hint{text-align:center;color:#8696a0;padding:6px 0;font-size:12px}.footer-done{color:#25d366;justify-content:space-between;align-items:center;gap:8px;padding:6px 4px;font-size:13px;font-weight:600;display:flex}.btn-reset-small{color:#8696a0;cursor:pointer;background:0 0;border:1px solid #3b4a54;border-radius:12px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:400}.btn-reset-small:hover{color:#e9edef;border-color:#8696a0}.consent-list-box{flex-direction:column;gap:6px;min-width:240px;max-width:300px;display:flex}.no-consents-msg{color:#555;margin-bottom:8px;font-size:13px}.consent-item{background:#fff;border:1.5px solid #d0d0d0;border-radius:8px;transition:border-color .15s;overflow:hidden}.consent-item.consent-signed{background:#f0faf4;border-color:#25d366}.consent-item-link{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 12px;display:flex}.consent-signed .consent-item-link{cursor:default}.consent-icon{flex-shrink:0;font-size:16px}.consent-item-title{color:#111b21;flex:1;font-size:13px;font-weight:600;line-height:1.3}.consent-check{color:#25d366;flex-shrink:0;font-size:12px;font-weight:700}.consent-arrow{color:#1a6ea3;flex-shrink:0;font-size:11px;font-weight:600}.consent-item-body{border-top:1px solid #e8e8e8;padding:0 12px 12px}.consent-subtitle{color:#333;margin:8px 0 4px;font-size:12px;font-weight:600}.consent-bajada{color:#666;margin-bottom:6px;font-size:11px}.btn-continuar-consents{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:8px;width:100%;margin-top:8px;padding:10px;font-size:14px;font-weight:700;transition:background .15s}.btn-continuar-consents:hover:not(:disabled){background:#20b858}.btn-continuar-consents.btn-disabled{cursor:not-allowed;background:#aaa}.notif-box{max-width:280px}.notif-msg{color:#111b21;margin-bottom:10px;font-size:13px;line-height:1.5}.btn-notif{color:#fff;cursor:pointer;background:#1a6ea3;border:none;border-radius:8px;width:100%;padding:10px;font-size:14px;font-weight:600;transition:background .15s}.btn-notif:hover{background:#2e9dd8}.notif-ok{color:#1a7a3c;font-size:13px;font-weight:600;line-height:1.5}.notif-warn{color:#7a4e1a;font-size:13px;line-height:1.5}
