@font-face{font-family:Bricolage;font-style:normal;font-weight:400 800;font-display:swap;src:url(../../../fonts/bricolage-grotesque.woff2) format("woff2")}@font-face{font-family:Instrument;font-style:normal;font-weight:400 700;font-display:swap;src:url(../../../fonts/instrument-sans.woff2) format("woff2")}@font-face{font-family:Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../../../fonts/plex-mono-400.woff2) format("woff2")}@font-face{font-family:Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../../../fonts/plex-mono-500.woff2) format("woff2")}:root{--color-primary: #3b4eff;--color-primary-hover: #2c3ecc;--color-primary-light: rgba(59, 78, 255, .1);--color-primary-rgb: 59, 78, 255;--color-purple: #10131a;--color-purple-light: #262b38;--color-bg: #f6f7fa;--color-surface: #ffffff;--color-surface-light: #f0f1f6;--color-border: #e3e5ee;--color-gray-400: #aeb2c4;--color-gray-500: #8a90a6;--color-gray-300: #dadde6;--color-success: var(--color-primary);--color-danger: #dc2626;--color-warning: #d97706;--color-whatsapp: var(--color-primary);--color-text: #10131a;--color-text-muted: #5b6072;--color-text-dim: #8a90a6;--color-spark: #e8590c;--color-spark-light: rgba(232, 89, 12, .1);--font-family: "Instrument", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Bricolage", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Plex Mono", ui-monospace, "SF Mono", monospace;--shadow-sm: 0 1px 3px rgba(16, 19, 26, .08);--shadow-md: 0 4px 14px rgba(16, 19, 26, .1);--shadow-lg: 0 12px 32px rgba(16, 19, 26, .14);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}.container{max-width:1200px;margin:0 auto;padding:0 20px}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md);margin-bottom:20px;border:1px solid var(--color-border)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 22px;min-height:42px;background-color:var(--color-primary);color:#fff;text-decoration:none;border-radius:var(--radius-sm);border:none;cursor:pointer;font-family:var(--font-family);font-size:14px;font-weight:500;transition:background-color .2s,transform .15s}.btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px)}.btn:disabled{background-color:var(--color-gray-500);cursor:not-allowed;transform:none;opacity:.6}.btn-primary{background-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-surface-light);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-gray-300)}.btn-success{background-color:var(--color-success)}.btn-success:hover{background-color:var(--color-primary-hover)}.form-group{margin-bottom:15px}.form-label{display:block;margin-bottom:5px;font-weight:500;color:var(--color-text)}.form-input{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font-family);background:var(--color-surface);color:var(--color-text)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.25)}.alert{padding:10px;border-radius:var(--radius-sm);margin-bottom:15px}.alert-error{background-color:#dc262614;color:#b91c1c;border:1px solid rgba(220,38,38,.25)}.text-center{text-align:center}.mb-4{margin-bottom:1.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.d-flex{display:flex}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.gap-2{gap:.5rem}.w-100{width:100%}.loading{display:inline-block;width:20px;height:20px;border:2px solid var(--color-border);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-indicator{width:12px;height:12px;border-radius:50%;margin-right:8px}.status-connected{background-color:var(--color-success)}.status-disconnected{background-color:var(--color-danger)}.row{display:flex;gap:1rem;margin:1rem 0}.col-md-6{flex:1}@media (max-width: 768px){.row{flex-direction:column}.d-flex{flex-direction:column;gap:1rem}.justify-content-between{justify-content:flex-start}}
