*{box-sizing:border-box}body{background-color:#f8fafc;color:#2d3748}.app{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1 1}.app-loading{align-items:center;gap:16px;height:100vh;justify-content:center}.app-loading,.bot-card{display:flex;flex-direction:column}.bot-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;height:100%;min-height:400px;padding:20px;transition:all .2s ease}.bot-card-content{display:flex;flex:1 1;flex-direction:column}.bot-card-main-content{flex:1 1}.bot-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.bot-card-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.bot-info h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 4px}.bot-twitter{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:4px;margin:0}.bot-status-group{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.bot-status{border-radius:20px;font-size:12px;gap:6px;padding:6px 12px;text-transform:capitalize}.bot-status,.process-status{align-items:center;display:flex;font-weight:500}.process-status{border-radius:12px;font-size:10px;gap:4px;padding:4px 8px}.process-status-running{background-color:#dcfce7;color:#166534}.process-status-detected_stopped{background-color:#fef3c7;color:#92400e}.process-status-not_detected{background-color:#fee2e2;color:#dc2626}.kill-buttons-group{display:flex;gap:4px;margin-top:2px}.kill-button-small{align-items:center;background-color:#fee2e2;border:1px solid #dc2626;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;font-size:9px;font-weight:500;gap:4px;justify-content:center;padding:2px 6px;transition:all .2s ease}.kill-button-small:hover:not(:disabled){background-color:#dc2626;color:#fff}.kill-button-small:active:not(:disabled){transform:scale(.95)}.kill-button-small:disabled{cursor:not-allowed;opacity:.5}.kill-restart-button{background-color:#fef3c7;border-color:#f59e0b;color:#f59e0b}.kill-restart-button:hover:not(:disabled){background-color:#f59e0b;color:#fff}.kill-restart-button:disabled{cursor:not-allowed;opacity:.5}.bot-status.success{background-color:#dcfce7;color:#166534}.bot-status.warning{background-color:#fef3c7;color:#92400e}.bot-status.pending{background-color:#dbeafe;color:#1e40af}.bot-status.error{background-color:#fee2e2;color:#dc2626}.bot-status.inactive{background-color:#f3f4f6;color:#4b5563}.bot-details{align-items:flex-start;display:flex;gap:16px;margin-bottom:16px}.bot-details-left{flex:1 1;min-width:0}.detail-item{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;margin-bottom:8px}.detail-item:last-child{margin-bottom:0}.detail-item .usernames-list{display:flex;flex-wrap:wrap;gap:4px;margin-left:4px}.detail-item .usernames-label{margin-right:4px}.detail-item.schedule-disabled{color:#9ca3af;opacity:.6}.detail-item.schedule-disabled svg{color:#9ca3af}.schedule-status{color:#9ca3af;font-size:12px;font-style:italic}.sent-counts-container{margin-bottom:16px;margin-top:8px}.desired-counts-row{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:4px;width:100%}.desired-count-item{align-items:center;color:#9ca3af;display:flex;font-size:11px;gap:4px;white-space:nowrap}.desired-label{color:#6b7280;font-weight:500}.sent-counts-row{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;width:100%}.sent-count-item{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:6px;white-space:nowrap}.bot-activity{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:12px}.activity-title{align-items:center;color:#475569;display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 8px}.loading-message,.no-activity{color:#64748b;font-size:12px;font-style:italic}.activity-content{display:flex;flex-direction:column;gap:6px}.current-message,.current-usernames{align-items:flex-start;display:flex;font-size:12px;gap:6px}.current-usernames{margin-top:8px}.usernames-label{font-weight:500;min-width:80px}.usernames-list{display:flex;flex:1 1;flex-wrap:wrap;gap:4px}.username-tag{border-radius:4px;font-size:11px;font-weight:500;padding:2px 6px}.username-tag.primary{background-color:#dbeafe;color:#1e40af}.username-tag.secondary{background-color:#fef3c7;color:#92400e}.username-tag.tertiary{background-color:#fce7f3;color:#9f1239}.current-target{align-items:flex-start;display:flex;font-size:12px;gap:6px;margin-top:8px}.message-label,.target-label{color:#475569;font-weight:500;min-width:50px}.message-text,.target-text{color:#334155;flex:1 1;word-break:break-word}.bot-stats{align-self:flex-start;background-color:#fafafa;border:1px solid #e5e7eb;border-radius:8px;flex-shrink:0;min-width:160px;padding:8px}.stats-title{align-items:center;color:#374151;display:flex;font-size:12px;font-weight:600;gap:6px;margin:0 0 6px}.stats-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,1fr)}.stat-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:6px;text-align:center}.stat-number{color:#111827;font-size:16px;font-weight:700;margin-bottom:2px}.stat-label{color:#6b7280;font-size:10px;font-weight:500}.bot-error{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;display:flex;gap:6px;margin-bottom:16px;padding:8px 12px}.error-text{color:#dc2626;font-size:12px;word-break:break-word}.bot-schedule{align-items:center;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;display:flex;font-size:12px;gap:6px;margin-bottom:16px;padding:8px 12px}.bot-logs-preview{background-color:#1a1a1a;border:1px solid #374151;border-radius:8px;padding:12px;transition:all .2s ease}.bot-card-bottom-section{display:flex;flex-direction:column;gap:16px;margin-top:auto}.bot-logs-preview:hover{background-color:#262626;border-color:#4b5563}.logs-preview-header{align-items:center;color:#e2e8f0;display:flex;font-size:12px;font-weight:600;gap:6px;margin-bottom:8px}.logs-preview-title{flex:1 1}.logs-preview-status{animation:pulse 2s ease-in-out infinite;color:#48bb78;font-size:10px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.logs-preview-content{display:flex;flex-direction:column;gap:4px;min-height:48px}.logs-preview-empty{color:#9ca3af;font-size:11px;font-style:italic;padding:4px 0}.logs-preview-line{background-color:#ffffff0d;border-radius:3px;color:#d1d5db;font-family:Courier New,monospace;font-size:11px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;transition:background-color .2s ease;white-space:nowrap}.logs-preview-line:hover{background-color:#ffffff1a}.bot-actions{display:flex;flex-wrap:wrap;gap:8px}.action-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-size:12px;font-weight:500;gap:6px;justify-content:center;min-width:70px;padding:8px 12px;transition:all .2s ease}.action-button:disabled{cursor:not-allowed;opacity:.5}.action-button.secondary{background-color:#f3f4f6;color:#374151}.action-button.secondary:hover:not(:disabled){background-color:#e5e7eb}.action-button.success{background-color:#10b981;color:#fff}.action-button.success:hover:not(:disabled){background-color:#059669}.action-button.danger{background-color:#ef4444;color:#fff}.action-button.danger:hover:not(:disabled){background-color:#dc2626}.action-button.warning{background-color:#f59e0b;color:#fff}.action-button.warning:hover:not(:disabled){background-color:#d97706}.bot-config-modal{max-height:90vh;max-width:1800px!important;overflow-x:hidden;overflow-y:auto;width:90vw!important}.bot-config-modal .modal-body{box-sizing:border-box;padding:24px;width:100%}.config-section{border-bottom:1px solid #e2e8f0;box-sizing:border-box;margin-bottom:32px;padding-bottom:24px;width:100%}.config-section:last-child{border-bottom:none}.config-section h3{color:#1a202c;font-size:18px;font-weight:600;margin:0 0 16px}.form-row{grid-gap:16px;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.form-group label{color:#4a5568}.form-group input[type=number],.form-group input[type=text]{border:1px solid #cbd5e0;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-group input[type=number]:focus,.form-group input[type=text]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.checkbox-group{align-items:center;flex-direction:row;gap:8px}.checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.bot-config-modal{max-width:95vw;width:95vw}}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.modal-header,.modal-title{align-items:center;display:flex}.modal-title{gap:12px}.modal-title h2{color:#2d3748;font-size:20px;font-weight:600;margin:0}.modal-title svg{color:#667eea}.modal-close{background:none;border:none;border-radius:6px;color:#718096;cursor:pointer;padding:8px;transition:background-color .2s ease}.modal-close:hover{background-color:#f7fafc;color:#4a5568}.modal-body{display:flex;flex-direction:column;gap:20px;padding:0 24px 24px}.form-group{gap:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.button:disabled{cursor:not-allowed;opacity:.6}.button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.button.primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.button.secondary{background-color:#f7fafc;border:1px solid #e2e8f0;color:#4a5568}.button.secondary:hover:not(:disabled){background-color:#edf2f7;color:#2d3748}.button.danger{background-color:#e53e3e;color:#fff}.button.danger:hover:not(:disabled){background-color:#c53030;box-shadow:0 4px 12px #e53e3e4d;transform:translateY(-1px)}.logs-container{background-color:#1a202c;border:1px solid #2d3748;border-radius:8px;font-family:Courier New,monospace;font-size:12px;height:400px;line-height:1.4;overflow-y:auto;padding:16px}.logs-content{color:#e2e8f0;white-space:pre-wrap;word-break:break-all}.logs-controls{display:flex;gap:12px;margin-bottom:16px}.logs-controls button{font-size:12px;padding:8px 16px}.log-entry{margin-bottom:4px}.log-entry.error{color:#fed7d7}.log-entry.warning{color:#fbb6ce}.log-entry.info{color:#bee3f8}.log-entry.debug{color:#c6f6d5}.selection-count{color:#667eea;font-weight:600}.cookie-selection{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.cookie-option{align-items:center;background-color:#f7fafc;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:all .2s;-webkit-user-select:none;user-select:none}.cookie-option:hover:not(.disabled){background-color:#edf2f7;border-color:#667eea}.cookie-option.selected{background-color:#eef2ff;border-color:#667eea;color:#667eea;font-weight:500}.cookie-option.disabled{cursor:not-allowed;opacity:.5}.cookie-option input[type=checkbox]{cursor:pointer;margin:0}.cookie-option.disabled input[type=checkbox]{cursor:not-allowed}.no-cookies-hint{background-color:#f7fafc;border:1px dashed #cbd5e0;border-radius:6px;color:#a0aec0;font-style:italic;padding:12px}.form-hint{color:#718096;font-size:.875rem;margin-top:4px}.selected-cookies-ordered{background-color:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px}.selected-cookies-header{align-items:center;display:flex;font-size:14px;justify-content:space-between;margin-bottom:12px}.order-hint{color:#718096;font-size:12px;font-weight:400}.ordered-cookie-list{display:flex;flex-direction:column;gap:8px}.ordered-cookie-item{align-items:center;background-color:#fff;border:2px solid #e2e8f0;border-radius:6px;display:flex;gap:12px;padding:12px;transition:all .2s}.ordered-cookie-item.first-cookie{background-color:#eef2ff;border-color:#667eea}.ordered-cookie-item.first-cookie.matches-username{background-color:#d1fae5;border-color:#10b981}.ordered-cookie-item.first-cookie.warning{background-color:#fef3c7;border-color:#f59e0b}.cookie-order-number{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:28px;justify-content:center;width:28px}.cookie-order-number,.ordered-cookie-item.first-cookie .cookie-order-number{background-color:#667eea}.ordered-cookie-item.first-cookie.matches-username .cookie-order-number{background-color:#10b981}.ordered-cookie-item.first-cookie.warning .cookie-order-number{background-color:#f59e0b}.cookie-username{color:#2d3748;flex:1 1;font-weight:500}.cookie-first-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.ordered-cookie-item.first-cookie.matches-username .cookie-first-badge{background-color:#10b981;color:#fff}.ordered-cookie-item.first-cookie.warning .cookie-first-badge{background-color:#f59e0b;color:#fff}.cookie-order-controls{display:flex;flex-shrink:0;gap:4px}.order-button{align-items:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#4a5568;cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.order-button:hover:not(:disabled){background-color:#f7fafc;border-color:#667eea;color:#667eea}.order-button:disabled{cursor:not-allowed;opacity:.4}.order-button.remove{color:#e53e3e}.order-button.remove:hover:not(:disabled){background-color:#fed7d7;border-color:#e53e3e;color:#c53030}.available-cookies-header{color:#2d3748;font-size:14px;margin-bottom:8px}.bot-messages-modal{max-height:90vh;max-width:1400px;overflow-y:auto;width:95vw}.bot-messages-modal .modal-body{padding:24px}.messages-info{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;margin-bottom:24px;padding:16px}.messages-info .info-text{color:#4a5568;font-size:14px;margin:0}.messages-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.message-item{background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:16px}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.message-header h3{align-items:center;color:#1a202c;display:flex;font-size:16px;font-weight:600;gap:12px;margin:0}.sent-counts-table-container{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:16px}.sent-counts-title{color:#1a202c;font-size:16px;font-weight:600;margin:0 0 12px}.sent-counts-table{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr)}.sent-counts-table-cell{align-items:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:12px;transition:all .2s ease}.sent-counts-table-cell.editable:hover{background-color:#f8f9fa;border-color:#007bff}.sent-counts-table-cell.editing{border-color:#007bff;border-width:2px}.sent-count-number{color:#4a5568;font-size:12px;font-weight:600}.sent-count-value{color:#1a202c;font-size:18px;font-weight:700}.sent-count-edit-controls{align-items:center;display:flex;gap:4px}.sent-count-input{-moz-appearance:textfield;border:1px solid #e2e8f0;border-radius:4px;font-size:16px;font-weight:600;padding:4px 6px;text-align:center;width:60px}.sent-count-input::-webkit-inner-spin-button,.sent-count-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sent-count-input:focus{border-color:#007bff;outline:none}.sent-count-cancel-btn,.sent-count-save-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;height:24px;justify-content:center;transition:background-color .2s;width:24px}.sent-count-save-btn{background-color:#10b981;color:#fff}.sent-count-save-btn:hover:not(:disabled){background-color:#059669}.sent-count-cancel-btn{background-color:#ef4444;color:#fff}.sent-count-cancel-btn:hover:not(:disabled){background-color:#dc2626}.sent-count-cancel-btn:disabled,.sent-count-save-btn:disabled{cursor:not-allowed;opacity:.5}.edit-hint{color:#6b7280;font-size:12px;font-weight:400;margin-left:8px}.saving-spinner{animation:spin 1s linear infinite;color:#007bff}.message-actions{align-items:center;display:flex;gap:8px}.active-toggle{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:14px;gap:6px}.active-toggle input[type=checkbox]{cursor:pointer;height:16px;width:16px}.button.small{font-size:13px;padding:6px 12px}.button.small svg{height:14px;width:14px}.message-editor{display:flex;flex-direction:column;gap:16px}.form-group{gap:6px}.form-group label{font-size:13px}.template-select{border:1px solid #cbd5e0;border-radius:4px;font-size:14px;padding:8px}.template-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.template-preview-small{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;margin-top:8px;padding:8px}.template-preview-small pre{word-wrap:break-word;color:#4a5568;font-family:Courier New,monospace;font-size:12px;margin:0;white-space:pre-wrap}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.username-input{border:1px solid #cbd5e0;border-radius:4px;font-size:13px;padding:8px}.username-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.message-preview{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:12px;position:relative}.message-info{margin-bottom:12px}.info-row{display:flex;font-size:13px;gap:8px;margin-bottom:6px}.info-label{color:#4a5568;font-weight:500}.info-value{color:#2d3748}.template-preview{background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:10px}.template-text{word-wrap:break-word;color:#2d3748;font-size:12px}.inactive-badge{border-radius:3px;font-size:11px;padding:4px 8px;position:absolute;right:8px;top:8px}.message-empty{color:#a0aec0;font-style:italic;padding:20px;text-align:center}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;padding:12px}@media (max-width:768px){.form-row,.messages-list{grid-template-columns:1fr}.message-header{align-items:flex-start;flex-direction:column;gap:8px}.message-actions{justify-content:flex-end;width:100%}.bot-messages-modal{max-width:95vw;width:95vw}}.cookie-upload-container{margin:0 auto;max-width:1200px;padding:24px}.cookie-upload-container h2{color:#333;margin-bottom:24px}.cookie-upload-area{background-color:#f9f9f9;border:2px dashed #ccc;border-radius:8px;cursor:pointer;margin-bottom:24px;padding:48px;text-align:center;transition:all .3s ease}.cookie-upload-area:hover{background-color:#f0f7ff;border-color:#007bff}.upload-icon{color:#666;margin-bottom:16px}.cookie-upload-area p{color:#666;margin:8px 0}.upload-hint{color:#999;font-size:.9em;font-style:italic}.upload-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-top:16px;padding:12px 24px;transition:background-color .2s}.upload-button:hover:not(:disabled){background-color:#0056b3}.upload-button:disabled{background-color:#ccc;cursor:not-allowed}.upload-status{align-items:center;border-radius:4px;display:flex;gap:8px;margin-bottom:24px;padding:12px}.upload-status.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.upload-status.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.cookies-list{margin-top:32px}.cookies-list h3{color:#333;margin-bottom:16px}.no-cookies{color:#999;font-style:italic;padding:24px;text-align:center}.cookies-table{background-color:#fff;border-collapse:collapse;border-radius:4px;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.cookies-table thead{background-color:#f8f9fa}.cookies-table th{border-bottom:2px solid #dee2e6;color:#333;font-weight:600;padding:12px;text-align:left}.cookies-table td{border-bottom:1px solid #dee2e6;padding:12px}.cookies-table tbody tr:hover{background-color:#f8f9fa}.status-badge{border-radius:4px;display:inline-block;font-size:.85em;font-weight:500;padding:4px 8px}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.cookie-actions{align-items:center;display:flex;gap:8px}.update-button{background:none;border:none;border-radius:4px;color:#007bff;cursor:pointer;padding:4px 8px;transition:background-color .2s}.update-button:hover{background-color:#e7f3ff}.delete-button{background:none;border:none;border-radius:4px;color:#dc3545;cursor:pointer;padding:4px 8px;transition:background-color .2s}.delete-button:hover{background-color:#f8d7da}.update-hint{color:#007bff;display:block;font-weight:500;margin-top:4px}.upload-progress-list{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;margin-bottom:24px;margin-top:16px;padding:16px}.upload-progress-list h4{color:#333;font-size:.95em;font-weight:600;margin:0 0 12px}.upload-progress-item{align-items:center;background-color:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;gap:8px;margin-bottom:8px;padding:8px 12px;transition:all .2s ease}.upload-progress-item:last-child{margin-bottom:0}.upload-progress-item.uploading{border-left:3px solid #007bff}.upload-progress-item.success{border-left:3px solid #28a745}.upload-progress-item.error{border-left:3px solid #dc3545}.upload-progress-item span:first-of-type{color:#333;flex:1 1;font-size:.9em}.progress-status{color:#666;font-size:.85em;font-weight:500}.upload-progress-item.uploading .progress-status{color:#007bff}.upload-progress-item.success .progress-status{color:#28a745}.upload-progress-item.error .progress-status{color:#dc3545}.dashboard{margin:0 auto;max-width:1200px;padding:24px}.dashboard-loading{align-items:center;display:flex;flex-direction:column;gap:16px;height:60vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dashboard-header{gap:16px;justify-content:space-between;margin-bottom:24px}.dashboard-actions,.dashboard-header{align-items:center;display:flex;flex-wrap:wrap}.dashboard-actions{gap:12px}.dashboard-title{align-items:center;color:#2d3748;display:flex;gap:12px}.dashboard-title h2{font-size:24px;font-weight:600;margin:0}.dashboard-stats{display:flex;gap:16px}.stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;gap:12px;padding:16px}.stat-card svg{color:#667eea}.stat-number{color:#2d3748;font-size:20px;font-weight:600}.stat-label,.stat-number{display:block;line-height:1}.stat-label{color:#718096;font-size:12px;letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.cookie-upload-section{margin-bottom:24px;margin-top:24px}.create-bot-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.create-bot-button:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-1px)}.error-banner{background-color:#fed7d7;border:1px solid #feb2b2;border-radius:8px;justify-content:space-between;margin-bottom:24px;padding:12px 16px}.error-banner,.error-banner button{align-items:center;color:#c53030;display:flex}.error-banner button{background:none;border:none;cursor:pointer;font-size:20px;height:24px;justify-content:center;padding:0;width:24px}.bots-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-top:24px}@media (max-width:1024px){.bots-grid{grid-template-columns:1fr}}@media (max-width:768px){.dashboard{padding:16px}.dashboard-header{align-items:stretch;flex-direction:column}.dashboard-stats{justify-content:center}.dashboard-actions{justify-content:flex-start;width:100%}.dashboard-actions .create-bot-button{flex:1 1 auto;min-width:0}}.empty-state{align-items:center;color:#718096;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:60px 20px;text-align:center}.empty-state svg{margin-bottom:16px;opacity:.5}.empty-state h3{color:#4a5568;font-size:20px;font-weight:500;margin:0 0 8px}.empty-state p{font-size:16px;margin:0}.global-templates-modal{max-width:800px}.templates-info{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:16px}.templates-info .info-text{color:#2d3748;font-weight:500;margin:0 0 12px}.placeholder-list{color:#4a5568;margin:0;padding-left:20px}.placeholder-list li{margin:8px 0}.placeholder-list code{background-color:#edf2f7;border-radius:4px;color:#667eea;font-family:Courier New,monospace;font-weight:600;padding:2px 6px}.templates-actions{margin-bottom:24px}.template-editor-section{background-color:#f7fafc;border:2px solid #667eea;border-radius:8px;margin-bottom:24px;padding:20px}.template-editor-section h3{color:#2d3748;margin:0 0 16px}.template-textarea{font-family:Courier New,monospace;font-size:14px;resize:vertical}.editor-actions{display:flex;gap:12px;margin-top:16px}.templates-list{margin-top:24px}.templates-list h3{color:#2d3748;margin:0 0 16px}.no-templates{background-color:#f7fafc;border:1px dashed #cbd5e0;border-radius:8px;color:#a0aec0;padding:40px;text-align:center}.template-item{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px;transition:box-shadow .2s}.template-item:hover{box-shadow:0 2px 8px #0000001a}.template-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.template-header h4{color:#2d3748;display:inline-block;margin:0 8px 0 0}.template-actions{display:flex;gap:8px}.template-preview{margin-top:12px}.template-text{background-color:#1a202c;border-radius:6px;color:#e2e8f0;font-family:Courier New,monospace;font-size:13px;line-height:1.5;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap;word-break:break-word}.template-meta{color:#718096;font-size:12px;margin-top:8px}.inactive-badge{background-color:#fed7d7;border-radius:4px;color:#c53030;display:inline-block;font-size:12px;font-weight:500;margin-left:8px;padding:2px 8px}.success-message{background-color:#c6f6d5;border:1px solid #9ae6b4;border-radius:8px;color:#22543d;font-size:14px;margin-bottom:16px;padding:12px 16px}.header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;justify-content:space-between;padding:16px 24px}.header,.header-left{align-items:center;display:flex}.header-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:24px;font-weight:600;margin:0}.header-center{flex:1 1;justify-content:center}.header-actions,.header-center{align-items:center;display:flex}.header-actions{flex-wrap:wrap;gap:12px}.header-action-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.header-action-button:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-1px)}.header-right{gap:16px}.header-right,.user-info{align-items:center;display:flex}.user-info{background-color:#f7fafc;border-radius:8px;gap:12px;padding:8px 12px}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;height:32px;justify-content:center;width:32px}.user-details{align-items:flex-start;display:flex;flex-direction:column}.user-email{color:#2d3748;font-size:14px;font-weight:500;line-height:1}.user-role{color:#718096;font-size:12px;line-height:1;margin-top:2px;text-transform:capitalize}.logout-button{align-items:center;background-color:initial;border:1px solid #e2e8f0;border-radius:6px;color:#718096;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s ease}.logout-button:hover{background-color:#f7fafc;border-color:#fed7d7;color:#e53e3e}@media (max-width:768px){.header{flex-direction:column;gap:16px;padding:12px 16px}.header-left{width:100%}.header-center{justify-content:flex-start;width:100%}.header-actions{flex-direction:column;width:100%}.header-action-button{justify-content:center;width:100%}.header-right{justify-content:space-between;width:100%}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-box{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-icon{color:#667eea;margin-bottom:16px}.login-header h1{color:#2d3748;font-size:28px;font-weight:600;margin:0 0 8px}.login-header p{color:#718096;font-size:16px;margin:0}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group label{color:#2d3748;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{border:2px solid #e2e8f0;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .2s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:transform .2s ease,box-shadow .2s ease}.login-button:hover:not(:disabled){box-shadow:0 8px 20px #667eea4d;transform:translateY(-1px)}.login-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.error-message{background-color:#fed7d7;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:14px;padding:12px 16px}.backend-error{background-color:#fef3c7;border:1px solid #fbbf24;color:#92400e;display:flex;flex-direction:column;gap:8px}.retry-button{align-self:flex-start;background-color:#f59e0b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s}.retry-button:hover{background-color:#d97706}.login-footer{margin-top:24px;text-align:center}.login-footer p{color:#718096;font-size:14px;margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}