@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);:root{--primary-color:#0D9488;--primary-light:#99F6E4;--secondary-color:#7C3AED;--secondary-light:#DDD6FE;--bg-color:#F8FAFC;--bg-alt:#FFFFFF;--text-main:#1E293B;--text-muted:#64748B;--border-color:#E2E8F0;--success-color:#10B981;--danger-color:#EF4444;--chat-bg-body:#F1F5F9;--chat-bg-sidebar:#FFFFFF;--chat-bg-devices:#F8FAFC;--chat-border:#E2E8F0;--chat-bubble-in:#FFFFFF;--chat-text-muted:#64748B;--chat-accent:#0D9488}*{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}body{background-color:var(--bg-color);color:var(--text-main)}.navbar-vertical{background:linear-gradient(180deg,#fff 0,#f8fafc 100%);border-right:1px solid var(--border-color);box-shadow:2px 0 10px rgba(0,0,0,.02)}.navbar-brand{padding:1.5rem 1rem;border-bottom:1px solid var(--border-color)}.text-main{color:var(--text-main);font-weight:600}.nav-link{color:var(--text-muted);padding:.75rem 1rem;margin:.25rem .5rem;border-radius:8px;transition:.2s}.nav-link:hover{background-color:#f1f5f9;color:var(--primary-color)}.nav-link.active{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff!important;font-weight:600}.nav-link.active i{color:#fff!important}.card{border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.02);transition:.3s}.card:hover{box-shadow:0 4px 12px rgba(0,0,0,.05)}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;font-weight:600;transition:.3s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(13,148,136,.3)}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.connected{background-color:#d1fae5;color:#065f46}.status-badge.disconnected{background-color:#fee2e2;color:#991b1b}.landing-body{background:linear-gradient(135deg,#f8fafc 0,#f1f5f9 100%);margin:0;padding:0;display:flex;flex-direction:column;min-height:100vh}.page-wrapper,main{flex:1}.navbar-custom{background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);padding:1rem 0;position:fixed;top:0;width:100%;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.05)}.navbar-brand-logo{display:flex;align-items:center;font-size:1.25rem;font-weight:700;color:var(--text-main)}.navbar-logo{height:32px;width:auto;margin-right:10px}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#f8fafc 0,#f1f5f9 100%);padding:120px 20px 60px}.hero-blob{position:absolute;border-radius:50%;filter:blur(80px);z-index:0;opacity:.6}.blob-1{top:-10%;right:-5%;width:500px;height:500px;background:var(--primary-light);animation:10s infinite alternate float}.blob-2{bottom:-10%;left:-5%;width:400px;height:400px;background:var(--secondary-light);animation:12s infinite alternate-reverse float}@keyframes float{0%{transform:translate(0,0) rotate(0)}100%{transform:translate(30px,30px) rotate(5deg)}}.hero-content{position:relative;z-index:10;text-align:center;max-width:900px;margin:0 auto}.badge-hero{display:inline-block;background:linear-gradient(135deg,var(--primary-light),var(--secondary-light));color:var(--primary-color);padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.85rem;letter-spacing:.5px}.brand-text{font-size:3.5rem;font-weight:700;color:var(--text-main);margin:1.5rem 0;line-height:1.2;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.6;max-width:700px;margin-left:auto;margin-right:auto}.cta-button{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:1rem 2rem;border-radius:12px;font-weight:600;font-size:1.1rem;text-decoration:none;transition:.3s;box-shadow:0 4px 15px rgba(13,148,136,.3)}.cta-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(13,148,136,.4);color:#fff}.btn-outline-custom{display:inline-flex;align-items:center;padding:1rem 2rem;border:2px solid var(--primary-color);color:var(--primary-color);border-radius:12px;font-weight:600;font-size:1.1rem;text-decoration:none;transition:.3s;background:0 0}.btn-outline-custom:hover{background:var(--primary-color);color:#fff;transform:translateY(-3px)}.dashboard-preview-container{max-width:800px}.features-section{padding:80px 20px;background:#fff}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-size:2.5rem;font-weight:700;color:var(--text-main);margin-bottom:1rem}.section-subtitle{font-size:1.1rem;color:var(--text-muted);max-width:600px;margin:0 auto}.feature-card{background:#fff;border-radius:16px;padding:2rem;transition:.3s;border:1px solid var(--border-color);height:100%}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--primary-color)}.feature-icon-wrapper{width:64px;height:64px;background:linear-gradient(135deg,var(--primary-light),var(--secondary-light));border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.feature-icon-wrapper i{font-size:2rem;color:var(--primary-color)}.feature-title{font-size:1.25rem;font-weight:700;color:var(--text-main);margin-bottom:1rem}.feature-text{color:var(--text-muted);line-height:1.6;margin:0}footer{position:relative;padding:1rem 0;max-height:64px;background:#fff;border-top:2px solid var(--border-color);box-shadow:0 -2px 10px rgba(0,0,0,.05);z-index:100}.footer.footer-transparent{position:relative;background:#fff!important;border-top:2px solid var(--border-color);box-shadow:0 -2px 10px rgba(0,0,0,.05);z-index:100;padding:.75rem 0;max-height:56px}@media (max-width:768px){.brand-text{font-size:2rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.75rem}.btn-outline-custom,.cta-button{font-size:1rem;padding:.875rem 1.5rem}}.login-body{background:linear-gradient(135deg,#f8fafc 0,#f1f5f9 100%);min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.shape-1{top:-100px;right:-100px;width:600px;height:600px;background:var(--primary-light);animation:10s infinite alternate float}.shape-2{bottom:-100px;left:-100px;width:500px;height:500px;background:var(--secondary-light);animation:12s infinite alternate-reverse float}.login-card{background:rgba(255,255,255,.9);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);border-radius:24px;padding:3rem;width:100%;max-width:450px;box-shadow:0 25px 50px -12px rgba(0,0,0,.05);position:relative;z-index:10}.login-header{text-align:center;margin-bottom:2rem}.login-header .logo-img{height:64px;width:auto;margin-bottom:1.5rem;transition:transform .3s}.login-header .logo-img:hover{transform:scale(1.05)}.login-header .app-title{font-size:1.75rem;font-weight:700;color:var(--text-main);margin-bottom:.5rem}.login-header .app-subtitle{color:var(--text-muted);font-size:.95rem;margin-bottom:0}.btn-primary-custom{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;color:#fff;font-weight:600;padding:.75rem 1.5rem;border-radius:12px;width:100%;transition:.3s}.btn-primary-custom:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(13,148,136,.3)}.link-custom{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s}.link-custom:hover{color:var(--secondary-color)}.alert-custom{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;border-radius:12px;display:flex;align-items:center;gap:.5rem}.code-block{background:#f8f9fa;border-radius:4px;padding:1rem;margin:.5rem 0;overflow-x:auto}.method-badge{font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.method-get{background:#e3f2fd;color:#0d47a1}.method-post{background:#e8f5e9;color:#1b5e20}.method-delete{background:#ffebee;color:#b71c1c}.endpoint-card{border-left:4px solid transparent;transition:.2s}.endpoint-card:hover{transform:translateX(5px)}.endpoint-get{border-left-color:#2196f3}.endpoint-post{border-left-color:#4caf50}.icon-lg{font-size:2rem}.text-md{font-size:1.1rem}.logo-chat-watermark{opacity:.8;height:64px;filter:grayscale(100%)}.emoji-picker-container{width:280px;z-index:1000;border-radius:16px}.chat-container{display:grid;grid-template-columns:280px 350px 1fr;height:calc(100vh - 100px);gap:1rem;padding:0 1rem 1rem;overflow:hidden;background:0 0}.chat-column,.conversations-column,.devices-column{border-radius:16px;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -1px rgba(0,0,0,.03);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--chat-border)}.devices-column{background:var(--chat-bg-devices);color:#1e293b}.devices-header{padding:1.5rem;background:0 0;border-bottom:1px solid var(--chat-border)}.devices-header h5{font-weight:700;font-size:1rem;color:#334155}.devices-list{flex:1;overflow-y:auto;padding:1rem}.device-card{background:#fff;color:#334155;margin-bottom:.75rem;padding:1rem;border-radius:12px;cursor:pointer;border:1px solid #d8b4fe;box-shadow:0 2px 4px rgba(139,92,246,.05)}.device-card:hover{background:#faf5ff;box-shadow:0 4px 12px rgba(139,92,246,.1)}.device-card.selected{background:#f3e8ff;border:2px solid #7c3aed;box-shadow:0 4px 15px rgba(124,58,237,.2)}.device-card .device-name{font-weight:700;font-size:.95rem;color:#4c1d95}.device-card .device-phone{font-size:.8rem;color:#5b21b6}.status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.5rem}.status-indicator.online{background-color:#10b981;box-shadow:0 0 8px rgba(16,185,129,.4)}.status-indicator.offline{background-color:#ef4444}.conversations-column{background:var(--chat-bg-sidebar)}.conversations-header{padding:1.25rem;background:#fff;border-bottom:1px solid var(--chat-border)}.conversations-list{flex:1;overflow-y:auto;background:#fff}.conversation-item{padding:1.25rem 1rem;margin:.5rem .75rem;border-radius:16px;cursor:pointer;transition:.25s;display:flex;align-items:center;gap:1.25rem;border:1px solid transparent}.conversation-item:hover{background-color:#eef2ff;border-color:#e0e7ff;transform:translateY(-2px);box-shadow:0 4px 12px rgba(99,102,241,.1)}.conversation-item.selected{background-color:#f0fdfa;border:2px solid var(--chat-accent);box-shadow:0 8px 20px rgba(13,148,136,.15)}.conversation-item .conversation-avatar{width:52px;height:52px;background:#f1f5f9;border-radius:16px;display:flex;align-items:center;justify-content:center;font-weight:600;color:#64748b;font-size:1.25rem;flex-shrink:0}.conversation-item.selected .conversation-avatar{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;box-shadow:0 4px 10px rgba(13,148,136,.3)}.conversation-item .conversation-content{flex:1;min-width:0}.conversation-item .conversation-name{font-weight:600;font-size:1rem;color:#1e293b}.conversation-item .conversation-preview{font-size:.9rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-column{background:#fff}.chat-wrapper{display:flex;flex-direction:column;height:100%}.chat-header{padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--chat-border);display:flex;align-items:center;justify-content:space-between;height:80px}.chat-contact-info h3{margin:0;font-size:1.1rem;font-weight:700;color:#1e293b}.chat-contact-info p{margin:0;font-size:.8rem;color:var(--chat-text-muted)}.messages-area{flex:1;overflow-y:auto;padding:2rem;background-color:#f8fafc;background-image:radial-gradient(#e2e8f0 1px,transparent 1px);background-size:20px 20px}.message-bubble{max-width:70%;padding:1rem 1.25rem;border-radius:16px;margin-bottom:1rem;position:relative;box-shadow:0 2px 4px rgba(0,0,0,.02);font-size:.95rem;line-height:1.5;animation:.3s ease-out forwards slideUp}.message-bubble.outgoing{background:linear-gradient(135deg,#f3e8ff 0,#e0e7ff 100%);color:#4c1d95;margin-left:auto;border-bottom-right-radius:4px;border:1px solid #c084fc}.message-bubble.incoming{background:#fff;color:#334155;margin-right:auto;border-bottom-left-radius:4px;border:1px solid var(--chat-border)}.message-meta{font-size:.7rem;margin-top:.5rem;display:flex;align-items:center;justify-content:flex-end;gap:4px;opacity:.8}.message-input-area{padding:1.5rem;background:#fff;border-top:1px solid var(--chat-border);position:relative}.input-container{background:#f1f5f9;border-radius:50px;padding:.5rem;display:flex;align-items:center;border:1px solid transparent;transition:.3s}.input-container:focus-within{background:#fff;border-color:var(--chat-accent);box-shadow:0 0 0 4px rgba(13,148,136,.1)}.message-input{border:none;background:0 0;flex:1;padding:.5rem 1rem;outline:0;color:#334155}.btn-icon{width:40px;height:40px;border-radius:50%;border:none;background:0 0;color:#64748b;transition:.2s;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#e2e8f0;color:#1e293b}.btn-send{width:40px;height:40px;border-radius:50%;border:none;background:var(--chat-accent);color:#fff;margin-left:.5rem;transition:.2s;display:flex;align-items:center;justify-content:center}.btn-send:hover{transform:scale(1.05);background:#0f766e}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.chat-container{display:flex;flex-direction:column;padding:0;height:100vh}.chat-column,.conversations-column,.devices-column{border-radius:0;border:none;box-shadow:none;display:none;height:100vh;width:100%}.chat-column.mobile-active,.conversations-column.mobile-active,.devices-column.mobile-active{display:flex}.message-bubble{max-width:85%}}@keyframes slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.quoted-message{padding:.6rem .8rem;background:rgba(0,0,0,.03);border-left:3px solid var(--chat-accent);border-radius:8px;font-size:.85em;cursor:pointer;margin-bottom:.5rem}.message-bubble.outgoing .quoted-message{background:rgba(255,255,255,.5);border-left-color:#7c3aed;color:#5b21b6}.settings-icon-wrapper{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-light),var(--secondary-light));border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-icon-wrapper i{font-size:2rem;color:var(--primary-color)}.settings-card{border:1px solid var(--border-color);border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:.3s;overflow:hidden;animation:.4s ease-out forwards fadeInUp}.settings-card:hover{box-shadow:0 8px 20px rgba(0,0,0,.08);transform:translateY(-2px)}.settings-card .card-header{background:linear-gradient(135deg,#f8fafc 0,#fff 100%);border-bottom:2px solid var(--border-color);padding:1.5rem}.settings-category-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-category-icon i{font-size:1.25rem;color:#fff}.setting-item{padding:.5rem 0}.setting-item .form-label{font-weight:600;color:var(--text-main);margin-bottom:.5rem;display:flex;align-items:center}.setting-item .form-label i{font-size:1.1rem}.setting-item .form-control,.setting-item .input-group{border-radius:10px;border:1px solid var(--border-color);transition:.2s}.setting-item .form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(13,148,136,.1)}.setting-item .input-group-text{background:#f8fafc;border:1px solid var(--border-color);color:var(--text-muted);font-weight:600;border-radius:0 10px 10px 0}.setting-item .form-hint{color:var(--text-muted);font-size:.85rem;margin-top:.25rem;display:block}.form-switch-lg .form-check-input{width:3rem;height:1.5rem;cursor:pointer}.form-switch-lg .form-check-input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.action-btn{padding:1rem;border-radius:12px;text-align:left;transition:.3s;border-width:2px}.action-btn:hover{transform:translateX(5px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.action-btn i{font-size:1.5rem}.info-item{padding:.5rem 0}.info-item i{font-size:1.25rem}.stat-item{padding:.25rem 0}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.settings-card:first-child{animation-delay:.1s}.settings-card:nth-child(2){animation-delay:.2s}.settings-card:nth-child(3){animation-delay:.3s}.settings-card:nth-child(4){animation-delay:.4s}@media (max-width:992px){.settings-icon-wrapper{width:50px;height:50px}.page-title,.settings-icon-wrapper i{font-size:1.5rem}}.border-danger{border-color:#dc3545!important;border-width:2px!important}.bg-danger-lt{background-color:#fee2e2!important}.settings-category-icon.bg-danger{background:linear-gradient(135deg,#dc3545,#c82333)!important}#systemResetModal .modal-content{border-width:3px}#systemResetModal .modal-header{border-bottom:2px solid rgba(255,255,255,.2)}#systemResetModal .alert-danger{background-color:#fee2e2;border-color:#fca5a5;color:#991b1b}#systemResetModal .alert-warning{background-color:#fef3c7;border-color:#fcd34d;color:#92400e}#systemResetModal code{background-color:#fee2e2;color:#dc2626;padding:.25rem .5rem;border-radius:4px;font-weight:700}#processingModal .spinner-border{border-width:.3rem}.drag-drop-area{border:2px dashed var(--border-color);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:.3s;background:#f8fafc}.drag-drop-area:hover{border-color:var(--primary-color);background:rgba(13,148,136,.05)}.drag-drop-area.drag-over{border-color:var(--primary-color);background:rgba(13,148,136,.1);transform:scale(1.02)}.file-preview{display:flex;flex-wrap:wrap;gap:1rem}.file-preview-item{position:relative;width:120px;height:120px;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;background:#fff;transition:.3s}.file-preview-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px)}.file-preview-item img{width:100%;height:100%;object-fit:cover}.file-preview-item .file-icon{display:flex;align-items:center;justify-content:center;height:100%;font-size:3rem;color:var(--primary-color)}.file-preview-item .file-name{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.7);color:#fff;padding:.5rem;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-preview-item .remove-file{position:absolute;top:5px;right:5px;background:rgba(220,53,69,.9);color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;opacity:0}.file-preview-item:hover .remove-file{opacity:1}.file-preview-item .remove-file:hover{background:#dc3545;transform:scale(1.1)}#send-progress .progress{border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}#send-progress .progress-bar{font-size:.875rem;display:flex;align-items:center;justify-content:center}#modal-contact-selector .list-group-item{border-left:3px solid transparent;transition:.2s}#modal-contact-selector .list-group-item:hover{background-color:#f8fafc;border-left-color:var(--primary-color)}#modal-contact-selector .list-group-item.active{background-color:rgba(13,148,136,.1);border-left-color:var(--primary-color)}#modal-contact-selector .form-check-input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.bg-primary-lt{background-color:rgba(13,148,136,.1)!important}#send-results .alert{border-radius:10px;border-left-width:4px}#send-results .alert-success{border-left-color:var(--success-color)}#send-results .alert-danger{border-left-color:var(--danger-color)}@media (max-width:768px){.drag-drop-area{padding:2rem 1rem}.file-preview-item{width:100px;height:100px}}.bg-success-lt{background-color:rgba(40,167,69,.1)!important}.bg-warning-lt{background-color:rgba(255,193,7,.1)!important}#modal-confirm-send .modal-content{border-radius:16px;overflow:hidden}#modal-confirm-send .modal-header{border-bottom:2px solid rgba(40,167,69,.2)}#modal-send-success .modal-content{border-radius:16px}#modal-send-success .ti-circle-check{animation:.6s ease-out successPulse}@keyframes successPulse{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}.card-footer.bg-transparent{background-color:#f8fafc!important;border-top:1px solid var(--border-color)}.page-pretitle{font-size:.875rem;color:var(--text-muted);font-weight:500;margin-bottom:.5rem;display:flex;align-items:center}.page-pretitle i{font-size:1rem}.qr-modal-canvas{max-width:300px;border:4px solid #fff;box-shadow:0 4px 20px rgba(0,0,0,.1);border-radius:12px}#qr-instructions{text-align:left;background:linear-gradient(135deg,#eff6ff 0,#dbeafe 100%);border-left:4px solid #3b82f6}#qr-instructions ol{padding-left:1.25rem}#qr-instructions li{margin-bottom:.5rem}#template-preview{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:.9375rem;line-height:1.6;color:var(--text-main)}.font-monospace{font-family:Monaco,Menlo,'Ubuntu Mono',monospace!important;font-size:.875rem}.input-icon{position:relative}.input-icon .input-icon-addon{position:absolute;top:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;min-width:2.5rem;color:var(--text-muted);pointer-events:none}.input-icon .form-control{padding-left:2.5rem}.device-card{transition:.3s;border:1px solid var(--border-color)}.device-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12);border-color:var(--primary-color)}.device-card .btn-group{box-shadow:0 2px 8px rgba(0,0,0,.08)}.template-card{transition:.3s;border:1px solid var(--border-color);cursor:pointer}.template-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12);border-color:var(--primary-color)}.template-card .card-header{background:linear-gradient(135deg,#f8fafc 0,#fff 100%);border-bottom:1px solid var(--border-color)}.template-favorite{color:#fcd34d;font-size:1.25rem}.template-favorite.active{color:#f59e0b}.badge{font-weight:500;padding:.35em .65em}.badge.bg-success-lt{background-color:#d1fae5!important;color:#065f46!important}.badge.bg-warning-lt{background-color:#fef3c7!important;color:#92400e!important}.badge.bg-danger-lt{background-color:#fee2e2!important;color:#991b1b!important}.badge.bg-info-lt{background-color:#dbeafe!important;color:#1e40af!important}.modal-header.bg-success-lt{background:linear-gradient(135deg,#d1fae5 0,#a7f3d0 100%);border-bottom:2px solid #10b981}.modal-header.bg-primary-lt{background:linear-gradient(135deg,#dbeafe 0,#bfdbfe 100%);border-bottom:2px solid #3b82f6}.modal-header.bg-warning-lt{background:linear-gradient(135deg,#fef3c7 0,#fde68a 100%);border-bottom:2px solid #f59e0b}.modal-header.bg-danger-lt{background:linear-gradient(135deg,#fee2e2 0,#fecaca 100%);border-bottom:2px solid #ef4444}.form-hint{display:block;margin-top:.25rem;font-size:.8125rem;color:var(--text-muted)}@media (max-width:768px){.page-pretitle{font-size:.8125rem}.qr-modal-canvas{max-width:250px}.device-card:hover,.template-card:hover{transform:none}}.send-message-container{display:flex;height:calc(100vh - 100px);gap:0;background:0 0;overflow:hidden;padding:0 1rem 1rem}.send-devices-column{width:320px;min-width:320px;border-right:1px solid var(--border-color);display:flex;flex-direction:column;background:#f8fafc;border-radius:16px 0 0 16px;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -1px rgba(0,0,0,.03)}.send-devices-column .devices-header{padding:1.5rem;border-bottom:1px solid var(--border-color);background:linear-gradient(180deg,#fff 0,#f8fafc 100%)}.send-devices-column .devices-header h5{font-size:1rem;font-weight:600;color:var(--text-main);margin:0}.send-devices-column .devices-list{flex:1;overflow-y:auto;padding:.5rem}.send-device-card{border:2px solid var(--border-color)}.send-device-card:hover{border-color:var(--primary-color)}.send-device-card.selected{border-color:var(--primary-color);box-shadow:0 4px 12px rgba(13,148,136,.2)}.send-device-card .device-name{color:var(--text-main)}.send-device-card .device-number{color:var(--text-muted);font-family:Monaco,monospace}.send-device-card .device-status{display:inline-flex;align-items:center;gap:.375rem;margin-top:.5rem}.send-device-card .device-status.connected{background:#d1fae5;color:#065f46}.send-device-card .device-status.disconnected{background:#fee2e2;color:#991b1b}.send-form-column{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:0 16px 16px 0;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -1px rgba(0,0,0,.03)}.send-header{padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);background:#fff}.send-header .page-title{font-size:1.5rem;font-weight:700}.send-header #selected-device-info{font-size:.875rem;display:flex;align-items:center}.send-form-content{flex:1;overflow-y:auto;padding:2rem;background:#f8fafc}.empty-state{display:flex;align-items:center;justify-content:center;height:100%}.empty-state .bg-primary-lt{background:linear-gradient(135deg,#dbeafe 0,#bfdbfe 100%);color:#1e40af}.message-form{max-width:900px;margin:0 auto}@media (max-width:992px){.send-message-container{height:auto;min-height:calc(100vh - 120px)}.send-devices-column{width:280px;min-width:280px}.send-form-content{padding:1.5rem}}@media (max-width:768px){.send-message-container{flex-direction:column;height:auto}.send-devices-column{width:100%;min-width:100%;max-height:300px;border-right:none;border-bottom:1px solid var(--border-color);border-radius:16px 16px 0 0}.send-form-column{border-radius:0 0 16px 16px}.send-device-card:hover{transform:none}.send-form-content,.send-header{padding:1rem}}.send-device-icon{background:linear-gradient(135deg,#0d9488 0,#14b8a6 100%);display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.send-device-card.selected .send-device-icon{background:linear-gradient(135deg,#059669 0,#10b981 100%);box-shadow:0 4px 12px rgba(16,185,129,.3);box-shadow:0 4px 12px rgba(13,148,136,.4);transform:scale(1.05)}.cursor-pointer{cursor:pointer}.hover-shadow{transition:box-shadow .2s}.hover-shadow:hover{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.device-selector-fab{display:none;position:fixed;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--primary-color,#0d6efd);color:#fff;border:none;box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:1040;align-items:center;justify-content:center;font-size:24px;cursor:pointer;transition:transform .2s}.device-selector-fab:hover{transform:scale(1.1)}.device-selector-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:1050;align-items:center;justify-content:center;backdrop-filter:blur(2px)}.device-selector-modal.active{display:flex}.device-selector-content{background:var(--bs-body-bg,#fff);padding:1.5rem;border-radius:1rem;width:90%;max-width:400px;box-shadow:0 10px 25px rgba(0,0,0,.2);max-height:80vh;overflow-y:auto}@media (max-width:768px){.device-selector-fab{display:flex}}.z-high{z-index:2000!important}.mw-300{max-width:300px}.scroll-container-row{height:calc(100vh - 200px)}.scroll-column-left{height:100%;overflow-y:auto;padding-right:15px}.scroll-column-right{height:100%;overflow-y:auto;padding-right:30px}.scroll-column-left::-webkit-scrollbar,.scroll-column-right::-webkit-scrollbar{width:8px}.scroll-column-left::-webkit-scrollbar-track,.scroll-column-right::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.scroll-column-left::-webkit-scrollbar-thumb,.scroll-column-right::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.scroll-column-left::-webkit-scrollbar-thumb:hover,.scroll-column-right::-webkit-scrollbar-thumb:hover{background:#94a3b8}.send-device-card{display:flex;align-items:center;gap:1rem;background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1rem;margin-bottom:.75rem;cursor:pointer;transition:.3s}.send-device-card:hover{border-color:var(--primary-color);background:#f0fdfa;transform:translateX(4px);box-shadow:0 4px 12px rgba(13,148,136,.15)}.send-device-card.selected{border-color:var(--primary-color);background:linear-gradient(135deg,#f0fdfa 0,#ecfdf5 100%);box-shadow:0 4px 16px rgba(13,148,136,.2)}.send-device-icon{flex-shrink:0;width:48px;height:48px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem}.send-device-info{flex:1;min-width:0}.send-device-card .device-name{font-weight:700;font-size:.95rem;color:#1e293b;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.send-device-card .device-number{font-size:.8rem;color:#64748b;margin-bottom:.25rem}.send-device-card .device-status{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;background:#d1fae5;color:#065f46}.send-device-card .device-status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 6px rgba(16,185,129,.6)}