.home-container{padding-top:64px}.hero{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);color:#fff;padding:6rem 2rem;text-align:center}.hero-content{margin:0 auto;max-width:800px}.hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#0f8,#0fc);-webkit-background-clip:text;font-size:3.5rem;font-weight:800;margin-bottom:1.5rem}.hero-subtitle{color:#ccc;font-size:1.5rem;line-height:1.5;margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem;justify-content:center}.features{background-color:#1a1a1a;padding:6rem 2rem}.features h2{color:#fff;font-size:2.5rem;margin-bottom:3rem;text-align:center}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:#2a2a2a;border-radius:12px;padding:2rem;text-align:center;transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.feature-icon{color:#0f8;height:48px;margin-bottom:1rem;width:48px}.feature-card h3{color:#fff;font-size:1.5rem;margin-bottom:1rem}.feature-card p{color:#ccc;line-height:1.6}.code-example{background-color:#151515;padding:6rem 2rem}.code-example h2{color:#fff;font-size:2.5rem;margin-bottom:3rem;text-align:center}.code-container{background:#2a2a2a;border-radius:12px;margin:0 auto;max-width:800px;overflow-x:auto;padding:2rem}.code-container pre{margin:0}.code-container code{color:#0f8;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.5}.use-cases{background-color:#1a1a1a;padding:6rem 2rem}.use-cases h2{color:#fff;font-size:2.5rem;margin-bottom:3rem;text-align:center}.use-cases-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:1200px}.use-case{background:#2a2a2a;border-radius:12px;padding:2rem;text-align:center}.use-case h3{color:#fff;font-size:1.25rem;margin-bottom:1rem}.use-case p{color:#ccc;line-height:1.6}.cta{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);color:#fff;padding:6rem 2rem;text-align:center}.cta h2{font-size:2.5rem;margin-bottom:1rem}.cta p{color:#ccc;font-size:1.25rem;margin-bottom:2rem}.cta-button{background:linear-gradient(90deg,#0f8,#0fc);border-radius:8px;color:#000;display:inline-block;font-weight:600;padding:1rem 2rem;text-decoration:none;transition:transform .3s ease}.cta-button:hover{transform:translateY(-2px)}.secondary-button{background:#0000;border:2px solid #0f8;border-radius:8px;color:#fff;display:inline-block;font-weight:600;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.secondary-button:hover{background:#00ff881a}@media (max-width:768px){.hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.code-example h2,.cta h2,.features h2,.use-cases h2{font-size:2rem}.hero-buttons{align-items:center;flex-direction:column}.code-container{padding:1rem}}.status-message{align-items:center;border-radius:4px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.75rem}.status-message.success{background-color:#ecfdf5;color:#065f46}.status-message.error{background-color:#fef2f2;color:#b91c1c}.status-icon{height:20px;width:20px}.confirmation-actions{display:flex;flex-direction:column;gap:1rem}.resend-button{align-items:center;background-color:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:background-color .2s}.resend-button:hover{background-color:#2563eb}.resend-button:disabled{background-color:#93c5fd;cursor:not-allowed}.login-link{color:#6b7280;font-size:.9rem;text-decoration:none}.login-link:hover{color:#3b82f6;text-decoration:underline}.spin-icon{animation:spin 1s linear infinite;height:20px;width:20px}.password-strength-container{margin-top:.5rem}.password-strength-label{display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.25rem}.strength-0{color:#b91c1c}.strength-1{color:#dc2626}.strength-2{color:#f59e0b}.strength-3{color:#10b981}.strength-4,.strength-5{color:#047857}.password-strength-meter{background-color:#e5e7eb;border-radius:2px;height:4px;overflow:hidden}.strength-bar{height:100%;transition:width .3s ease}.strength-bar.strength-0{background-color:#b91c1c}.strength-bar.strength-1{background-color:#dc2626}.strength-bar.strength-2{background-color:#f59e0b}.strength-bar.strength-3{background-color:#10b981}.strength-bar.strength-4,.strength-bar.strength-5{background-color:#047857}.password-requirements{color:#6b7280;font-size:.8rem;margin-top:.75rem}.password-requirements p{margin-bottom:.25rem}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.password-requirements li.met{color:#047857}.requirement-icon{height:16px;width:16px}.password-requirements li.met .requirement-icon{color:#047857}.password-requirements li:not(.met) .requirement-icon{color:#6b7280}.field-error-message{color:#b91c1c;font-size:.75rem;margin-top:.25rem}.input-error{border-color:#b91c1c!important}.verification-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:500px;padding:2rem;text-align:center}.loader{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#3b82f6;height:40px;margin:0 auto 1.5rem;width:40px}.success-icon{color:#10b981}.error-icon,.success-icon{height:80px;margin:0 auto 1.5rem;width:80px}.error-icon{align-items:center;background-color:#fee2e2;border-radius:50%;color:#b91c1c;display:flex;font-size:2.5rem;font-weight:700;justify-content:center}.primary-button{background-color:#3b82f6;border-radius:4px;color:#fff;display:inline-block;font-weight:500;padding:10px 20px;text-align:center;text-decoration:none;transition:background-color .2s}.primary-button:hover{background-color:#2563eb}.password-note{color:#6b7280;font-size:.8rem;margin-top:.5rem;padding-left:.25rem}.email-verification-notice{background-color:#fff8e1;border-left:4px solid #f59e0b;border-radius:6px;margin:1.5rem 0;padding:.75rem}.verification-alert{align-items:flex-start;display:flex;gap:.5rem;margin-bottom:.5rem}.notice-icon{color:#f59e0b;flex-shrink:0;height:20px;margin-top:2px;width:20px}.email-verification-notice p{color:#4b5563;font-size:.9rem;margin:.25rem 0}.email-verification-notice p strong{color:#1f2937}.auth-container{color:#1f2937}.auth-container,.confirmation-card{background-color:#fff;margin:0 auto;max-width:500px;text-align:center}.confirmation-card{border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:2rem}.confirmation-icon{align-items:center;background-color:#f0f7ff;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.confirmation-icon .icon{color:#3b82f6;height:50px;width:50px}.confirmation-message{margin-bottom:1.5rem}.email-highlight{color:#3b82f6;font-size:1.1rem;font-weight:700;margin:.5rem 0;word-break:break-all}.estimated-time{background-color:#f8fafc;border-radius:4px;color:#6b7280;font-size:.9rem;margin-bottom:1.5rem;padding:.5rem}:root{--bg-dark:#111827;--bg-darker:#0f172a;--bg-panel:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border-color:#334155;--accent-color:#3b82f6;--accent-hover:#2563eb;--success-color:#10b981;--error-color:#ef4444;--hover-bg:#3b82f61a;--sidebar-width:240px}body{color:#f1f5f9;color:var(--text-primary)}.dashboard-container,body{background-color:#111827;background-color:var(--bg-dark)}.dashboard-content{min-width:0;overflow-y:auto;padding:2rem}.dashboard-panels{margin:0 auto;max-width:1200px;padding:1rem;width:100%}.sidebar{background-color:#0f172a;background-color:var(--bg-darker);border-right:1px solid #334155;border-right:1px solid var(--border-color);box-shadow:2px 0 8px #00000040;flex-shrink:0;height:100vh;overflow-x:hidden;overflow-y:auto;padding:1.5rem 0;position:sticky;top:0;width:240px;width:var(--sidebar-width)}.sidebar-header{align-items:center;border-bottom:1px solid #334155;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;padding:1.5rem}.sidebar-logo{height:32px;object-fit:contain;width:32px}.sidebar-header h1{color:#f1f5f9;color:var(--text-primary);font-size:1.5rem;font-weight:600;letter-spacing:-.025em;margin:0}.nav-menu{padding:.75rem}.nav-link{align-items:center;background-color:initial;border:1px solid #0000;border-radius:.5rem;color:#f1f5f9;color:var(--text-primary);display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem 1rem;transition:all .2s ease}.nav-link:hover{background-color:#3b82f61a;background-color:var(--hover-bg);color:#3b82f6;color:var(--accent-color)}.nav-link.active{background-color:#3b82f6;background-color:var(--accent-color);color:#fff;font-weight:600}.nav-link.active:hover{background-color:#2563eb;background-color:var(--accent-hover);color:#fff}.nav-link svg{color:currentColor;flex-shrink:0;height:1.25rem;width:1.25rem}.nav-link span{font-size:.95rem}.nav-link.active svg,.nav-link:hover svg{opacity:1}.main-content{overflow-y:auto;padding:1.5rem}.dashboard-header{background-color:#1e293b;background-color:var(--bg-panel);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.5rem;padding:1.5rem}.header-content{display:flex;flex-direction:column;gap:.25rem}.dashboard-header h1{color:#f1f5f9;color:var(--text-primary);font-size:1.25rem;font-weight:500}.header-subtitle{color:#94a3b8;color:var(--text-secondary);font-size:.875rem}.docs-button,.header-buttons,.logout-button{align-items:center;display:flex;gap:.5rem}.docs-button,.logout-button{background-color:#0f172a;background-color:var(--bg-darker);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.375rem;color:#94a3b8;color:var(--text-secondary);font-size:.875rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.docs-button,.docs-button:hover{color:#3b82f6;color:var(--accent-color)}.docs-button:hover{background-color:#3b82f61a;background-color:var(--hover-bg)}.logout-button{color:#94a3b8;color:var(--text-secondary)}.logout-button:hover{background-color:#3b82f61a;background-color:var(--hover-bg);color:#f1f5f9;color:var(--text-primary)}.grid-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));width:100%}.panel{background-color:#1e293b;background-color:var(--bg-panel);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.panel-header{align-items:center;background-color:#0f172a;background-color:var(--bg-darker);border-bottom:1px solid #334155;border-bottom:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem}.panel-header h2{font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.panel-header h2,.panel-header svg{color:#94a3b8;color:var(--text-secondary)}.panel-header svg{height:1.25rem;width:1.25rem}.panel-content{padding:1rem}.subscription-panel .panel-content p,.user-panel .panel-content p{border-bottom:1px solid #334155;border-bottom:1px solid var(--border-color);color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.75rem;padding:.5rem}.subscription-panel .panel-content p:last-child,.user-panel .panel-content p:last-child{border-bottom:none}.subscription-panel .panel-content strong,.user-panel .panel-content strong{color:#f1f5f9;color:var(--text-primary);font-weight:500}.subscription-status{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.375rem;margin:.5rem 0;padding:.25rem .5rem;width:fit-content}.subscription-status svg{height:.875rem;width:.875rem}.subscription-status span{line-height:1}.subscription-status.active{background-color:#10b9811a;color:#10b981;color:var(--success-color)}.subscription-status.inactive{background-color:#ef44441a;color:#ef4444;color:var(--error-color)}.subscription-button{background-color:#3b82f6;background-color:var(--accent-color);border-radius:.375rem;color:#fff;display:block;font-size:.875rem;font-weight:500;margin:1rem .5rem;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .2s}.subscription-button:hover{background-color:#2563eb;transform:translateY(-1px)}.subscription-button:active{transform:translateY(0)}.preference-item{align-items:center;border-bottom:1px solid #334155;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.preference-item:last-child{border-bottom:none}.preference-item label{color:#94a3b8;color:var(--text-secondary);font-size:.875rem}.preference-item select{background-color:#0f172a;background-color:var(--bg-darker);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.375rem;color:#f1f5f9;color:var(--text-primary);font-size:.875rem;min-width:120px;padding:.375rem .75rem}.preference-item select:hover{border-color:#3b82f6;border-color:var(--accent-color)}.preference-item input[type=checkbox]{background-color:#0f172a;background-color:var(--bg-darker);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.25rem;cursor:pointer;height:1rem;width:1rem}.preference-item input[type=checkbox]:checked{background-color:#3b82f6;background-color:var(--accent-color);border-color:#3b82f6;border-color:var(--accent-color)}.qr-panel{background-color:#1e293b;background-color:var(--bg-panel)}.qr-placeholder{text-align:center}.qr-code{display:block;margin:0 auto 1rem;padding:1.5rem}.qr-placeholder p{font-size:.875rem}.loading-state,.qr-placeholder p{color:#94a3b8;color:var(--text-secondary)}.loading-state{padding:2rem;text-align:center}.spinner{border:2px solid #334155;border-top-color:#3b82f6;border:2px solid var(--border-color);height:1.5rem;width:1.5rem}.error-message{font-size:.875rem;margin-bottom:1rem}@media (max-width:768px){.dashboard-container{flex-direction:column}.sidebar{height:auto;padding:1rem 0;position:relative;width:100%}.dashboard-content{padding:1rem}.grid-container{grid-template-columns:1fr}}.logs-container{display:flex;flex-direction:column;height:100%;padding:1rem}.logs-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.logs-controls,.logs-header{align-items:center;display:flex}.logs-controls{gap:1rem}.connection-status{border-radius:9999px;padding:.25rem .5rem}.connection-status.connected{background-color:#dcfce7;color:#166534}.connection-status.disconnected{background-color:#fee2e2;color:#991b1b}.clear-logs-btn{background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:.375rem;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.clear-logs-btn:hover{background-color:#e5e7eb}.logs-content{flex:1 1;font-family:monospace;overflow-y:auto}.log-entry{border-bottom:1px solid #f3f4f6;gap:1rem;padding:.5rem}.log-timestamp{color:#6b7280;white-space:nowrap}.log-level{border-radius:.25rem;font-size:.75rem;font-weight:500;padding:.125rem .375rem;text-transform:uppercase}.log-level.info{background-color:#dbeafe;color:#1e40af}.log-level.error{background-color:#fee2e2;color:#991b1b}.log-level.warning{background-color:#fef3c7;color:#92400e}.log-message{flex:1 1;word-break:break-all}.status-container{display:flex;justify-content:center;padding:2rem}.status-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:600px;padding:1.5rem;width:100%}.whatsapp-status-content{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.whatsapp-logo{display:flex;justify-content:center;margin-bottom:1rem}.whatsapp-logo img{border:1px solid #e0e0e0;border-radius:8px;height:100px;width:100px}.status-item{align-items:center;display:flex;gap:1rem}.status-item label{color:#333;font-weight:500;min-width:80px}.phone-row{align-items:center;display:flex}.phone-number{color:#666;flex:1 1}.reset-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.reset-button:hover{background-color:#c82333}.webhook-row{align-items:flex-start;display:flex}.webhook-input-group{display:flex;flex:1 1;gap:.5rem}.webhook-input-group input{border:1px solid #ccc;border-radius:4px;flex:1 1;font-size:.9rem;padding:.5rem}.webhook-input-group input:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.check-button,.set-button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.check-button{background-color:#6c757d}.set-button{background-color:#28a745;color:#fff}.check-button:hover{background-color:#5a6268}.set-button:hover{background-color:#218838}.qr-panel,.status-panel{background:#1e293b;background:var(--bg-panel);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.qr-panel .panel-content,.status-panel .panel-content{display:flex;flex-direction:column;height:100%}.qr-content{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:1.5rem}.qr-placeholder{flex-direction:column;height:100%}.status-item{margin-bottom:1.5rem}.status-item:last-child{margin-bottom:0}.status-item label{color:#94a3b8;color:var(--text-secondary);display:block;font-size:.875rem;margin-bottom:.5rem}.phone-status{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.phone-status span{color:var(--text);font-size:1rem}.status-button{border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:600;padding:.25rem .5rem;transition:opacity .2s}.status-button:hover{opacity:.8}.status-button.rbt{background-color:#f59e0b;color:#fff}.status-button.rst{background-color:#ef4444;color:#fff}.toggle-container{align-items:center;display:flex;gap:.5rem;margin-left:auto}.toggle-container span{color:#94a3b8;color:var(--text-secondary);font-size:.75rem}.toggle-switch{height:20px;position:relative;width:40px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-switch label{background-color:#4b5563;border-radius:20px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:background-color .2s}.toggle-switch label:before{background-color:#fff;border-radius:50%;bottom:2px;content:"";height:16px;left:2px;position:absolute;transition:transform .2s;width:16px}.toggle-switch input:checked+label{background-color:var(--primary)}.toggle-switch input:checked+label:before{transform:translateX(20px)}.webhook-status{display:flex;gap:1rem}.webhook-status input{background-color:var(--surface-hover);border:1px solid var(--border);border-radius:4px;color:var(--text);flex:1 1;font-size:.875rem;padding:.5rem}.webhook-status input:focus{border-color:var(--primary);outline:none}.check-button{background-color:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.check-button:hover{background-color:var(--primary-dark)}.webhook-status-message{border-radius:4px;font-size:.875rem;margin-top:.5rem;padding:.5rem}.webhook-status-message.success{background-color:#10b9811a;color:#10b981}.webhook-status-message.error{background-color:#ef44441a;color:#ef4444}@media (max-width:1024px){.status-container{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.status-container{grid-template-columns:1fr}.phone-status{align-items:flex-start;flex-direction:column}.toggle-container{margin-left:0;margin-top:.5rem}}.empty-panel{background:#0000;border:none;box-shadow:none}.qr-panel,.status-panel{display:flex;flex-direction:column;min-height:400px}.qr-code{background-color:#fff;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.qr-content p{color:#94a3b8;color:var(--text-secondary);text-align:center}.status-container{padding:0}.panel-content{display:flex;flex:1 1;flex-direction:column}@media (max-width:1024px){.empty-panel{display:none}}.status-square{align-items:center;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;height:100px;justify-content:center;margin:0 auto 1rem;overflow:hidden;width:100px}.status-square img{max-height:100%;max-width:100%;object-fit:contain}.phone-row .subscription-button{background-color:#3b82f6;background-color:var(--accent-color);border:none;border-radius:4px;color:#fff;font-size:.9rem;margin:0;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.phone-row .subscription-button:hover{background-color:#2563eb}.contacts-dashboard,.groups-dashboard{padding:1rem}.contacts-grid,.groups-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:1rem}.contact-card,.group-card{background-color:#1e293b;background-color:var(--bg-panel);border:1px solid #334155;border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden;transition:transform .2s,box-shadow .2s}.contact-card:hover,.group-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.contact-card-header,.group-card-header{align-items:center;background-color:#0f172a;background-color:var(--bg-darker);border-bottom:1px solid #334155;border-bottom:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem}.contact-icon,.group-icon{color:#3b82f6;color:var(--accent-color);height:1.5rem;width:1.5rem}.contact-card-header h3,.group-card-header h3{color:#f1f5f9;color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0}.contact-card-content,.group-card-content{padding:1rem}.contact-card-content p,.group-card-content p{color:#94a3b8;color:var(--text-secondary);margin:.5rem 0}.contact-card-content strong,.group-card-content strong{color:#f1f5f9;color:var(--text-primary)}.status-badge{border-radius:9999px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.status-badge.active{background-color:#10b9811a;color:#10b981;color:var(--success-color)}.status-badge.inactive{background-color:#ef44441a;color:#ef4444;color:var(--error-color)}.status-dashboard{padding:2rem}.status-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.status-card{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:.5rem;padding:1.5rem;transition:transform .2s ease-in-out}.status-card:hover{transform:translateY(-2px)}.status-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.status-icon{height:1.5rem;width:1.5rem}.status-card h3{color:var(--text-secondary);font-size:1rem;font-weight:500;margin:0}.status-card-value{color:var(--text-primary);font-size:1.25rem;font-weight:600}.status-green .status-icon{color:#10b981}.status-red .status-icon{color:#ef4444}.status-yellow .status-icon{color:#f59e0b}.status-blue .status-icon{color:#3b82f6}.status-gray .status-icon{color:#6b7280}@media (max-width:768px){.status-dashboard{padding:1rem}.status-grid{grid-template-columns:1fr}}.config-dashboard{padding:2rem}.config-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:minmax(300px,1fr) 350px}.controls-column{display:flex;flex-direction:column;gap:2rem}.config-card{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.config-card-header{align-items:center;background-color:var(--bg-darker);border-bottom:1px solid var(--border-color);display:flex;gap:1rem;padding:1rem}.config-icon{color:var(--text-secondary);height:1.5rem;width:1.5rem}.config-card h3{color:var(--text-secondary);font-size:1rem;font-weight:500;margin:0}.qr-status-indicator{animation:pulse 1.5s infinite;background-color:#10b98133;border-radius:1rem;color:#10b981;font-size:.75rem;margin-left:auto;padding:.25rem .5rem}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.config-card-content{padding:1.5rem}.webhook-form{gap:1.5rem}.input-group,.webhook-form{display:flex;flex-direction:column}.input-group{gap:.5rem}.input-group label{color:var(--text-secondary);font-size:.875rem}.input-group input{background-color:var(--bg-darker);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem;padding:.75rem;transition:border-color .2s;width:100%}.input-group input:focus{border-color:var(--accent-color);outline:none}.submit-button{align-self:flex-start;background-color:var(--accent-color);border-radius:.375rem;font-weight:500;padding:.75rem 1.5rem}.webhook-form .message{border-radius:.375rem;font-size:.875rem;margin:1rem 0;padding:.75rem 1rem}.webhook-form .message.success{background-color:#10b9811a;border:1px solid #10b98133;color:#10b981}.webhook-form .message.error{background-color:#ef44441a;border:1px solid #ef444433;color:#ef4444}.qr-container{gap:1rem;min-height:50px}.qr-container,.qr-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1rem}.qr-wrapper{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px #0000001a}.qr-wrapper.qr-only{height:auto;width:auto}.qr-wrapper svg{height:280px;width:280px}.qr-info{font-size:.9rem}.qr-info,.qr-metadata{color:var(--text-secondary);text-align:center;width:100%}.qr-metadata{background-color:var(--bg-darker);border-radius:.375rem;font-size:.85rem;margin-top:.5rem;padding:.5rem}.qr-info p,.qr-metadata p{margin:.5rem 0}.qr-placeholder{background-color:var(--bg-darker);border-radius:.5rem;color:var(--text-secondary);font-size:.875rem}.loading-state,.qr-placeholder{align-items:center;display:flex;height:300px;justify-content:center;width:300px}.loading-state{color:var(--text-primary);flex-direction:column;gap:1rem}.error-state{background:var(--bg-darker);border:1px solid var(--border-color);border-radius:.75rem;box-shadow:0 2px 4px #0000001a;color:var(--text-primary);padding:2rem;text-align:center;width:300px}.error-message{border:1px solid #ef444433;border-radius:.375rem;color:var(--error-color);font-size:1.1rem;margin-bottom:.5rem}.error-help{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem}.spinner{border-top:4px solid var(--bg-darker);border:4px solid var(--bg-darker);border-radius:50%;border-top-color:var(--accent-color);height:40px;width:40px}.retry-button{background-color:var(--accent-color);border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s}.retry-button:hover{opacity:.9;transform:translateY(-1px)}.retry-button:active{transform:translateY(0)}.wipe-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;text-align:center}.wipe-warning{background-color:#ef44441a;border:1px solid #ef444433;border-radius:.375rem;color:#ef4444;font-size:.875rem;margin:0;padding:1rem}.wipe-container .message{border-radius:.375rem;font-size:.875rem;margin:0;padding:.75rem 1rem;width:100%}.wipe-container .message.success{background-color:#10b9811a;border:1px solid #10b98133;color:#10b981}.wipe-container .message.error{background-color:#ef44441a;border:1px solid #ef444433;color:#ef4444}.wipe-button{background-color:#ef4444;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.wipe-button:hover{background-color:#dc2626;transform:translateY(-1px)}.wipe-button:active{transform:translateY(0)}.reboot-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;text-align:center}.reboot-warning{background-color:#f59e0b1a;border:1px solid #f59e0b33;border-radius:.375rem;color:#f59e0b;font-size:.875rem;margin:0;padding:1rem}.reboot-container .message{border-radius:.375rem;font-size:.875rem;margin:0;padding:.75rem 1rem;width:100%}.reboot-container .message.success{background-color:#10b9811a;border:1px solid #10b98133;color:#10b981}.reboot-container .message.error{background-color:#ef44441a;border:1px solid #ef444433;color:#ef4444}.reboot-button{background-color:#f59e0b;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.reboot-button:hover{background-color:#d97706;transform:translateY(-1px)}.reboot-button:active{transform:translateY(0)}.swagger-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;text-align:center}.swagger-description{color:var(--text-secondary);font-size:.875rem;margin:0;padding:.5rem}.swagger-button{align-items:center;background-color:var(--accent-color);border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.swagger-button:hover{opacity:.9;transform:translateY(-1px)}.swagger-button:active{transform:translateY(0)}@media (max-width:768px){.config-dashboard{padding:1rem}.config-grid{grid-template-columns:1fr}.controls-column{order:2}.reboot-button,.submit-button,.wipe-button{width:100%}.qr-container{min-height:50px}.qr-placeholder,.qr-wrapper{height:auto;width:auto}.qr-wrapper svg{height:280px;width:280px}}.config-grid>div:last-child .config-card{max-height:none;overflow:visible}.config-grid>div:last-child .config-card-header{padding:.75rem 1rem}.config-grid>div:last-child .config-card-content{padding:1rem}.confirmation-dialog{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:.5rem;display:flex;flex-direction:column;gap:1rem;margin-top:1rem;padding:1.5rem}.confirmation-message{color:var(--text-primary);font-size:1rem;font-weight:500;margin:0}.confirmation-details{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.confirmation-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.cancel-button,.confirm-button{border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.confirm-button{background-color:var(--accent-color);color:#fff}.confirm-button:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.confirm-button.wipe-confirm{background-color:#ef4444}.confirm-button.wipe-confirm:hover{background-color:#dc2626}.cancel-button{background-color:var(--bg-darker);border:1px solid var(--border-color);color:var(--text-secondary)}.cancel-button:hover{background-color:var(--hover-bg);color:var(--text-primary);transform:translateY(-1px)}.confirmation-buttons button:active{transform:translateY(0)}.log-viewer{background-color:var(--bg-darker);border:1px solid var(--border-color);border-radius:.5rem;display:flex;flex-direction:column;font-family:Courier New,monospace;height:100%;max-width:100%;overflow:hidden;width:100%}.control-panel{align-items:center;background-color:var(--bg-panel);border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem}.filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.filter-button{background-color:var(--bg-darker);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.filter-button:hover{background-color:var(--hover-bg);color:var(--text-primary)}.filter-button.active{background-color:var(--accent-color);border-color:#0000;color:#fff}.controls{gap:1rem}.auto-scroll-toggle,.controls{align-items:center;display:flex}.auto-scroll-toggle{color:var(--text-secondary);cursor:pointer;font-size:.875rem;gap:.5rem}.auto-scroll-toggle input[type=checkbox]{background-color:var(--bg-darker);border:1px solid var(--border-color);border-radius:.25rem;cursor:pointer;height:1rem;width:1rem}.auto-scroll-toggle input[type=checkbox]:checked{background-color:var(--accent-color);border-color:var(--accent-color)}.clear-button{background-color:var(--error-color);border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:opacity .2s}.clear-button:hover{opacity:.9}.reconnect-button{background-color:var(--accent-color);border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:opacity .2s}.reconnect-button:hover{opacity:.9}.connection-status{border-radius:.375rem;font-size:.875rem;font-weight:500;padding:.375rem .75rem}.connection-status .error-details{font-style:italic;font-weight:400}.connection-status.connected{background-color:#10b9811a;color:var(--success-color)}.connection-status.disconnected{background-color:#ef44441a;color:var(--error-color)}.logs-container{background-color:var(--bg-darker);color:var(--text-primary);flex:1 1;overflow:hidden}.log-entry{align-items:center;border-bottom:1px solid var(--border-color);box-sizing:border-box;color:var(--text-primary);display:flex;font-size:.875rem;line-height:1.5;min-height:32px;padding:.5rem 1rem;width:100%}.log-entry.system{background-color:#17a2b80d;color:#17a2b8;font-style:italic}.log-entry.error{background-color:#dc35450d;color:#dc3545}.log-entry .timestamp{color:#6c757d;white-space:nowrap}.log-entry .level,.log-entry .timestamp{font-size:.85rem;overflow:hidden;text-overflow:ellipsis}.log-entry .level{border-radius:3px;font-weight:700;min-width:4rem;padding:.125rem .375rem;text-align:center}.log-entry .module{color:#6c757d;font-size:.85rem;font-style:italic}.log-entry .message,.log-entry .module{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-entry .message{box-sizing:border-box;cursor:help;padding-right:.5rem;width:100%}.log-entry.debug{color:#6c757d}.log-entry.debug .level{background-color:#f8f9fa;color:#343a40}.log-entry.info{color:#0dcaf0}.log-entry.info .level{background-color:#0dcaf0;color:#fff}.log-entry.warn{color:#ffc107}.log-entry.warn .level{background-color:#ffc107;color:#000}.log-entry.error .level{background-color:#dc3545;color:#fff}.no-logs-message{align-items:center;background-color:var(--bg-darker);color:var(--text-secondary);display:flex;font-size:1.1rem;font-style:italic;height:100%;justify-content:center;padding:2rem;text-align:center}.footer{background-color:var(--background);border-top:1px solid var(--border);margin-top:auto;padding:1rem 0}.footer-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1rem}.footer-copyright{color:var(--text-secondary);font-size:.875rem}.footer-links{display:flex;gap:2rem}.footer-links a{color:var(--text-secondary);font-size:.875rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--text)}@media (max-width:640px){.footer-content{flex-direction:column;gap:1rem;text-align:center}.footer-links{gap:1rem}}.pricing-container{margin:0 auto;max-width:1200px;padding:6rem 2rem}.pricing-header{margin-bottom:4rem;text-align:center}.pricing-header h1{color:var(--text-primary);font-size:2.5rem;margin-bottom:1rem}.pricing-header p{color:var(--text-secondary);font-size:1.25rem}.pricing-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin-bottom:4rem}.pricing-card{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:.5rem;display:flex;flex-direction:column;padding:2rem;transition:transform .3s ease}.pricing-card:hover{transform:translateY(-5px)}.pricing-card.premium{background:linear-gradient(135deg,var(--bg-panel) 0,var(--bg-darker) 100%);border:1px solid var(--accent-color)}.pricing-card-header{margin-bottom:2rem;text-align:center}.pricing-card-header h2{font-size:1.5rem}.price,.pricing-card-header h2{color:var(--text-primary);margin-bottom:1rem}.price{font-size:3rem}.currency{font-size:1.5rem;vertical-align:super}.period{font-size:1rem}.period,.pricing-card-header p{color:var(--text-secondary)}.pricing-features{flex:1 1;margin-bottom:2rem}.feature{align-items:center;color:var(--text-primary);display:flex;gap:.75rem;margin-bottom:1rem}.feature-icon{color:var(--accent-color);height:1.25rem;width:1.25rem}.pricing-button{background-color:var(--bg-darker);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);display:block;padding:1rem;text-align:center;text-decoration:none;transition:all .2s}.pricing-button:hover{background-color:var(--hover-bg)}.pricing-button.premium{background-color:var(--accent-color);border-color:var(--accent-color);color:#fff}.pricing-button.premium:hover{background-color:#2563eb}.pricing-footer{border-top:1px solid var(--border-color);padding-top:3rem;text-align:center}.pricing-footer h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:1rem}.pricing-footer p{color:var(--text-secondary);margin-bottom:2rem}.enterprise-button{background-color:initial;border:1px solid var(--accent-color);border-radius:.375rem;color:var(--text-primary);display:inline-block;padding:1rem 2rem;text-decoration:none;transition:all .2s}.enterprise-button:hover{background-color:var(--accent-color);color:#fff}.comparison-section{margin:4rem auto;max-width:1200px;padding:2rem}.comparison-section h2{color:var(--text-primary);font-size:2.5rem;margin-bottom:2rem;text-align:center}.comparison-table{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:.5rem;box-shadow:0 4px 6px #0000001a;overflow-x:auto}.comparison-table table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%}.comparison-table td:first-child,.comparison-table th:first-child{width:20%}.comparison-table td:nth-child(2),.comparison-table td:nth-child(3),.comparison-table th:nth-child(2),.comparison-table th:nth-child(3){width:40%}.comparison-table th{background-color:var(--bg-darker);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-weight:600;padding:1.5rem;text-align:center}.comparison-table th:first-child{text-align:left}.comparison-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);line-height:1.5;padding:1.25rem 1.5rem}.comparison-table tr:last-child td{border-bottom:none}.whinself-column{background-color:var(--bg-darker);color:var(--text-primary)!important;font-weight:500}.robot-icon{height:32px;object-fit:contain;width:32px}.others-icon,.robot-icon{margin-right:.5rem;vertical-align:middle}.others-icon{color:#f44;font-size:1.5rem}.comparison-table small{color:var(--text-secondary);display:block;font-size:.875rem;margin-top:.5rem}.comparison-table tr:hover td{background-color:var(--hover-bg)}.comparison-table tr:hover .whinself-column{background-color:var(--accent-color);color:#fff!important}@media (max-width:768px){.pricing-grid{grid-template-columns:1fr}.pricing-container{padding:4rem 1rem}.pricing-header h1{font-size:2rem}.pricing-header p{font-size:1rem}.comparison-section{padding:1rem}.comparison-table{font-size:.875rem}.comparison-table td,.comparison-table th{padding:1rem}}:root{--primary:#10b981;--primary-dark:#059669;--background:#1a1b1e;--surface:#25262b;--surface-hover:#2c2e33;--text:#c1c2c5;--text-secondary:#909296;--border:#373a40}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1b1e;background-color:var(--background);box-sizing:border-box;color:#c1c2c5;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden;width:100%}*,:after,:before{box-sizing:inherit}.app{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;width:100%}.nav-bar{background-color:#000;box-sizing:border-box;padding:.75rem 1rem;position:fixed;top:0;width:100%;z-index:1000}.nav-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1rem}.brand-link,.nav-container,.nav-logo{align-items:center;display:flex}.brand-link{gap:.75rem;text-decoration:none}.logo{height:32px;object-fit:contain;width:32px}.brand-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e0e0);-webkit-background-clip:text;color:#fff;font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;text-shadow:0 2px 4px #0000001a}.nav-links{align-items:center;display:flex;gap:2rem}.nav-link{color:#fff;font-size:.875rem;font-weight:500;letter-spacing:.05em;text-decoration:none;transition:color .2s;white-space:nowrap}.nav-link:hover{color:#ccc}.nav-auth{align-items:center;display:flex;gap:1rem}.nav-button{border-radius:4px;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .2s;white-space:nowrap}.nav-button.login{background:none;border:none;color:#fff;cursor:pointer}.nav-button.login:hover{color:#ccc}.nav-button.signup{background-color:#fff;border:none;color:#000}.nav-button.signup:hover{background-color:#f0f0f0}.main-content{flex:1 1;width:100%}body:not(.dashboard-page) .main-content{margin-top:64px}.auth-container{background-color:#25262b;background-color:var(--surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#c1c2c5;color:var(--text);margin:2rem auto;max-width:400px;padding:2rem}.auth-form{gap:1rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#c1c2c5;color:var(--text);font-weight:500}.form-group input{background-color:#2c2e33;background-color:var(--surface-hover);border:1px solid #373a40;border:1px solid var(--border);border-radius:4px;color:#c1c2c5;color:var(--text);font-size:1rem;padding:.75rem}.form-group input:focus{border-color:#10b981;border-color:var(--primary);outline:none}.submit-button{font-size:1rem;padding:.75rem;transition:background-color .3s ease}.dashboard-container{background-color:#1a1b1e;background-color:var(--background);display:flex;margin:0;min-height:100vh;overflow-x:hidden;padding:0;width:100%}.dashboard-header{align-items:center;background-color:#25262b;background-color:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem}.dashboard-header h1{color:#c1c2c5;color:var(--text);font-size:1.5rem;margin:0}.logout-button{align-items:center;background-color:initial;border:1px solid #373a40;border:1px solid var(--border);border-radius:4px;color:#ef4444;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.logout-button:hover{background-color:#ef44441a}.dashboard-content{flex:1 1;max-width:100%;overflow-x:hidden;padding:1.5rem;width:100%}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background-color:#25262b;background-color:var(--surface);border-radius:8px;display:flex;gap:1rem;padding:1.5rem}.stat-icon{background-color:#10b981;background-color:var(--primary);border-radius:8px;color:#fff;height:40px;padding:.5rem;width:40px}.stat-info h3{color:#909296;color:var(--text-secondary);font-size:.875rem;margin:0}.stat-info p{color:#c1c2c5;color:var(--text);font-size:1.5rem;font-weight:700;margin:.25rem 0 0}.table-container{background-color:#25262b;background-color:var(--surface);border-radius:8px;overflow-x:auto;width:100%}.table-header{align-items:center;border-bottom:1px solid #373a40;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem}.table-header h2{font-size:1.25rem;margin:0}.submit-button{align-items:center;background-color:#10b981;background-color:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.submit-button:hover{background-color:#059669;background-color:var(--primary-dark)}.entry-form{border-bottom:1px solid #373a40;border-bottom:1px solid var(--border);padding:1rem}.entry-form form{display:flex;gap:1rem}.entry-form input{background-color:#2c2e33;background-color:var(--surface-hover);border:1px solid #373a40;border:1px solid var(--border);border-radius:4px;color:#c1c2c5;color:var(--text);flex:1 1;font-size:.875rem;padding:.5rem}.entry-form input:focus{border-color:#10b981;border-color:var(--primary);outline:none}.error-message{background-color:#ef44441a;border-radius:4px;color:#ef4444;margin:1rem;padding:.75rem}.empty-state,.loading-state{color:#909296;color:var(--text-secondary);padding:2rem;text-align:center}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #373a40;border-bottom:1px solid var(--border);padding:1rem;text-align:left}.table th{color:#909296;color:var(--text-secondary);font-size:.875rem;font-weight:500}.table th,.table tr:hover{background-color:#2c2e33;background-color:var(--surface-hover)}.action-buttons{display:flex;gap:.5rem}.action-button{background-color:initial;border:none;border-radius:4px;color:#909296;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .2s}.action-button:hover{background-color:#2c2e33;background-color:var(--surface-hover);color:#c1c2c5;color:var(--text)}.action-button.edit{color:#10b981;color:var(--primary)}.action-button.delete{color:#ef4444}@media (max-width:768px){.nav-container{flex-wrap:wrap;gap:1rem}.nav-links{gap:1rem;justify-content:center;order:3;overflow-x:auto;padding-bottom:.5rem;width:100%}.nav-auth{gap:.5rem}.nav-button{padding:.5rem .75rem}.main-content{margin-top:96px}.brand-name{font-size:1.25rem}}@media (max-width:480px){.nav-container{padding:0 .5rem}.nav-links{gap:.75rem}.nav-button,.nav-link{font-size:.75rem}.nav-button{padding:.4rem .6rem}}