.login-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-box{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:#2c3e50;font-size:32px;margin-bottom:5px}.login-header h2{color:#7f8c8d;font-size:18px;font-weight:400}.login-form{display:flex;flex-direction:column;gap:20px}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px;border-radius:6px;font-size:16px;font-weight:500;transition:transform .2s}.login-btn:hover:not(:disabled){transform:translateY(-2px)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.dashboard{padding:20px 0}.page-title{font-size:32px;color:#2c3e50;margin-bottom:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:30px}.stat-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:20px;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.stat-card.clickable{cursor:pointer;position:relative}.stat-card.clickable:active{transform:translateY(-2px)}.card-arrow{font-size:24px;color:#bdc3c7;margin-left:auto;transition:transform .3s,color .3s}.stat-card.clickable:hover .card-arrow{transform:translate(5px);color:#2c3e50}.stat-card.blue{border-left:4px solid #3498db}.stat-card.yellow{border-left:4px solid #f39c12}.stat-card.green{border-left:4px solid #27ae60}.stat-icon{font-size:48px}.stat-content h3{font-size:16px;color:#7f8c8d;margin-bottom:8px;font-weight:500}.stat-number{font-size:36px;font-weight:700;color:#2c3e50}.empresas{padding:20px 0}.page-header{margin-bottom:30px}.page-title{font-size:32px;color:#2c3e50;margin-bottom:8px}.page-subtitle{font-size:16px;color:#7f8c8d}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.empresas-table{width:100%;border-collapse:collapse}.empresas-table thead{background-color:#34495e;color:#fff}.empresas-table th{padding:16px;text-align:left;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.empresas-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .2s}.empresas-table tbody tr:hover{background-color:#f8f9fa}.empresas-table td{padding:16px;font-size:14px;color:#2c3e50}.empresa-nome{font-weight:500;color:#2c3e50}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.trial{background-color:#fff3cd;color:#856404}.status-badge.ativo{background-color:#d4edda;color:#155724}.manage-btn{background-color:#3498db;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;transition:background-color .3s;cursor:pointer}.manage-btn:hover{background-color:#2980b9}.edit-btn{background-color:#f39c12;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .3s}.edit-btn:hover{background-color:#e67e22}.save-btn{background-color:#27ae60;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .3s;margin-right:8px}.save-btn:hover{background-color:#229954}.cancel-btn{background-color:#95a5a6;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .3s}.cancel-btn:hover{background-color:#7f8c8d}.action-buttons{display:flex;gap:8px}.date-input{padding:6px 10px;border:2px solid #3498db;border-radius:4px;font-size:13px;width:140px}.no-data{text-align:center;padding:40px!important;color:#7f8c8d;font-style:italic}.loading,.error{text-align:center;padding:40px;font-size:18px}.error{color:#e74c3c}.clickable-row{cursor:pointer}.clickable-row:hover{background-color:#ecf7ff!important}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.add-empresa-btn{background-color:#6366f1;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s}.add-empresa-btn:hover{background-color:#4f46e5}.delete-btn{background-color:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .3s}.delete-btn:hover{background-color:#dc2626}.text-input,.select-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;color:#1f2937;transition:border-color .2s;box-sizing:border-box}.text-input:focus,.select-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.modal-actions .save-btn,.modal-actions .cancel-btn{flex:1;padding:.75rem 1.5rem}.modal-actions .save-btn:disabled,.modal-actions .cancel-btn:disabled{opacity:.5;cursor:not-allowed}.empresa-detalhes{padding:2rem;max-width:1000px;margin:0 auto}.page-header{margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.back-btn{background:#6366f1;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .2s}.back-btn:hover{background:#4f46e5}.empresa-info{display:flex;flex-direction:column;gap:2rem}.info-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.info-card h2{margin:0 0 1.5rem;color:#1f2937;font-size:1.5rem;font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-label{font-size:.875rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:1.125rem;color:#1f2937;font-weight:600}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:6px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.ativo{background:#dcfce7;color:#15803d}.status-badge.trial{background:#fef3c7;color:#92400e}.status-badge.inativo{background:#fee2e2;color:#991b1b}.edit-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.edit-card h3{margin:0 0 1.5rem;color:#1f2937;font-size:1.25rem;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;align-items:start}.date-display{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;padding:.5rem;background:#f9fafb;border-radius:4px}.date-input,.select-input,.number-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;color:#1f2937;transition:border-color .2s;background:#fff}.date-input:focus,.select-input:focus,.number-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.select-input{cursor:pointer}.form-actions{display:flex;gap:1rem;margin-top:2rem}.error-container{padding:2rem;text-align:center}.error-container .error{margin-bottom:1.5rem;padding:1rem;background:#fee2e2;color:#991b1b;border-radius:6px;font-weight:500}.usuarios-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.usuarios-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.usuarios-header h3{margin:0;color:#1f2937;font-size:1.25rem;font-weight:600}.add-usuario-btn{background:#6366f1;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .2s}.add-usuario-btn:hover{background:#4f46e5}.loading-small{text-align:center;padding:2rem;color:#6b7280}.no-usuarios{text-align:center;padding:2rem;color:#6b7280;background:#f9fafb;border-radius:8px}.usuarios-table{width:100%;border-collapse:collapse}.usuarios-table th{text-align:left;padding:.75rem;background:#f3f4f6;color:#374151;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.usuarios-table th:first-child{border-radius:6px 0 0 6px}.usuarios-table th:last-child{border-radius:0 6px 6px 0}.usuarios-table td{padding:.75rem;border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:.9rem}.usuarios-table tr:last-child td{border-bottom:none}.permissao-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.permissao-badge.admin{background:#dbeafe;color:#1d4ed8}.permissao-badge.gerente{background:#fef3c7;color:#92400e}.permissao-badge.usuario{background:#e5e7eb;color:#374151}.usuario-actions{display:flex;gap:.5rem}.edit-usuario-btn{background:#f59e0b;color:#fff;border:none;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .2s}.edit-usuario-btn:hover{background:#d97706}.delete-usuario-btn{background:#ef4444;color:#fff;border:none;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .2s}.delete-usuario-btn:hover{background:#dc2626}.delete-btn{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background .2s}.delete-btn:hover{background:#dc2626}.text-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;color:#1f2937;transition:border-color .2s}.plano-info-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:1.5rem;color:#fff;box-shadow:0 10px 30px #667eea66;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;gap:1rem;margin-top:-11.5rem}.plano-info-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #667eea80}.plano-info-card.basico{background:linear-gradient(135deg,#11998e,#38ef7d);box-shadow:0 10px 30px #11998e66}.plano-info-card.basico:hover{box-shadow:0 15px 40px #11998e80}.plano-info-card.profissional{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 10px 30px #667eea66}.plano-info-card.profissional:hover{box-shadow:0 15px 40px #667eea80}.plano-info-card.empresarial{background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 10px 30px #f5576c66}.plano-info-card.empresarial:hover{box-shadow:0 15px 40px #f5576c80}.plano-info-header{display:flex;align-items:center;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.3)}.plano-icon{font-size:2rem;line-height:1}.plano-title{font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.plano-info-content{display:flex;flex-direction:column;gap:.5rem}.plano-feature{display:flex;align-items:center;gap:.5rem;font-size:.95rem;padding:.35rem 0}.plano-feature.adicional{background:#ffffff26;border-radius:8px;padding:.5rem .75rem;margin-top:.25rem}.feature-icon{font-size:1.1rem}.feature-text{font-weight:500}.plano-total{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.3);margin-top:.5rem}.total-label{font-size:.9rem;font-weight:500;opacity:.9}.total-value{font-size:1.75rem;font-weight:800;background:#fff3;padding:.25rem .75rem;border-radius:8px}@media (max-width: 768px){.empresa-detalhes{padding:1rem}.info-grid,.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.usuarios-header{flex-direction:column;gap:1rem;align-items:flex-start}.usuarios-table{display:block;overflow-x:auto}.modal-content{margin:1rem;max-width:calc(100% - 2rem)}.modal-actions{flex-direction:column}}.change-password-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:40px 20px}.change-password-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 2px 8px #0000001a;width:100%;max-width:500px}.change-password-container h1{font-size:28px;color:#2c3e50;margin-bottom:8px}.subtitle{color:#7f8c8d;margin-bottom:30px;font-size:14px}.change-password-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#2c3e50}.form-group input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;font-size:14px;text-align:center}.success-message{background-color:#d4edda;color:#155724;padding:12px;border-radius:6px;font-size:14px;text-align:center}.form-actions{display:flex;gap:12px;margin-top:10px}.btn-cancel,.btn-submit{flex:1;padding:12px;border:none;border-radius:6px;font-size:16px;font-weight:500;transition:all .3s}.btn-cancel{background-color:#e0e0e0;color:#2c3e50}.btn-cancel:hover:not(:disabled){background-color:#d0d0d0}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}.administradores-page{padding:2rem;max-width:1000px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-title{font-size:1.8rem;color:#1f2937;margin:0;font-weight:600}.add-admin-btn{background:#6366f1;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;transition:background .2s}.add-admin-btn:hover{background:#4f46e5}.success-message{background:#dcfce7;color:#15803d;padding:1rem;border-radius:6px;margin-bottom:1rem;font-weight:500}.error-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:6px;margin-bottom:1rem;font-weight:500}.admin-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.no-admins{text-align:center;padding:2rem;color:#6b7280;background:#f9fafb;border-radius:8px}.admins-table{width:100%;border-collapse:collapse}.admins-table th{text-align:left;padding:.75rem;background:#f3f4f6;color:#374151;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.admins-table th:first-child{border-radius:6px 0 0 6px}.admins-table th:last-child{border-radius:0 6px 6px 0}.admins-table td{padding:.75rem;border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:.9rem}.admins-table tr:last-child td{border-bottom:none}.admins-table tr.current-user{background:#f0fdf4}.current-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;background:#10b981;color:#fff;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.admin-actions{display:flex;gap:.5rem}.edit-admin-btn{background:#f59e0b;color:#fff;border:none;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .2s}.edit-admin-btn:hover{background:#d97706}.delete-admin-btn{background:#ef4444;color:#fff;border:none;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .2s}.delete-admin-btn:hover{background:#dc2626}.delete-admin-btn:disabled{background:#9ca3af;cursor:not-allowed}.loading{text-align:center;padding:3rem;font-size:1.125rem;color:#6b7280}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-content h3{margin:0 0 1.5rem;color:#1f2937;font-size:1.25rem;font-weight:600}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.9rem;font-weight:600;color:#374151;margin-bottom:.5rem}.text-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;color:#1f2937;transition:border-color .2s;box-sizing:border-box}.text-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.save-btn{flex:1;background:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .2s}.save-btn:hover:not(:disabled){background:#059669}.save-btn:disabled{background:#9ca3af;cursor:not-allowed}.cancel-btn{flex:1;background:#6b7280;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .2s}.cancel-btn:hover:not(:disabled){background:#4b5563}.cancel-btn:disabled{background:#d1d5db;cursor:not-allowed}@media (max-width: 768px){.administradores-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.admins-table{display:block;overflow-x:auto}.admin-actions{flex-direction:column;gap:.25rem}.modal-content{margin:1rem;max-width:calc(100% - 2rem)}.modal-actions{flex-direction:column}}.layout{min-height:100vh;display:flex;flex-direction:column}.navbar{background-color:#2c3e50;color:#fff;padding:0;box-shadow:0 2px 4px #0000001a}.navbar-content{max-width:1400px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:60px}.navbar-brand h1{font-size:24px;font-weight:600}.navbar-menu{display:flex;gap:30px}.navbar-menu a{color:#fff;text-decoration:none;font-size:16px;padding:8px 16px;border-radius:4px;transition:background-color .3s}.navbar-menu a:hover{background-color:#ffffff1a}.navbar-menu a.active{background-color:#fff3;font-weight:500}.navbar-user{display:flex;align-items:center;gap:15px}.navbar-user span{font-size:14px}.change-password-link{color:#fff;text-decoration:none;font-size:14px;padding:8px 16px;border-radius:4px;background-color:#ffffff1a;transition:background-color .3s}.change-password-link:hover{background-color:#fff3}.logout-btn{background-color:#e74c3c;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;transition:background-color .3s}.logout-btn:hover{background-color:#c0392b}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:30px 20px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{max-width:1200px;margin:0 auto;padding:20px}button{cursor:pointer;font-family:inherit}input{font-family:inherit}
