| <!DOCTYPE html> |
| <html lang="pt-BR"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <title>LIMANET - Controle de Assinantes</title> |
| <script src="https://cdn.tailwindcss.com"></script> |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> |
| <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> |
| <style> |
| @import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700&display=swap'); |
| |
| .logo-text { |
| font-family: 'Orbitron', sans-serif; |
| color: #FF7B25; |
| text-shadow: 0 0 10px rgba(255, 123, 37, 0.7); |
| } |
| |
| .neon-border { |
| position: relative; |
| } |
| |
| .neon-border::after { |
| content: ''; |
| position: absolute; |
| top: -2px; |
| left: -2px; |
| right: -2px; |
| bottom: -2px; |
| border: 2px solid transparent; |
| border-radius: 0.5rem; |
| background: linear-gradient(45deg, #FF7B25, #FF5100, #FF7B25); |
| background-size: 200% 200%; |
| animation: neonGlow 2s linear infinite; |
| z-index: -1; |
| } |
| |
| @keyframes neonGlow { |
| 0% { |
| background-position: 0% 50%; |
| opacity: 0.7; |
| } |
| 50% { |
| background-position: 100% 50%; |
| opacity: 1; |
| } |
| 100% { |
| background-position: 0% 50%; |
| opacity: 0.7; |
| } |
| } |
| |
| .sidebar-item:hover { |
| background-color: #2D3748; |
| border-left: 4px solid #FF7B25; |
| } |
| |
| .sidebar-item.active { |
| background-color: #2D3748; |
| border-left: 4px solid #FF7B25; |
| } |
| |
| .card-hover:hover { |
| transform: translateY(-5px); |
| box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3); |
| } |
| |
| .status-active { |
| background-color: rgba(16, 185, 129, 0.1); |
| color: #10B981; |
| } |
| |
| .status-overdue { |
| background-color: rgba(239, 68, 68, 0.1); |
| color: #EF4444; |
| } |
| |
| .status-inactive { |
| background-color: rgba(156, 163, 175, 0.1); |
| color: #9CA3AF; |
| } |
| |
| .transition-all { |
| transition: all 0.3s ease; |
| } |
| </style> |
| </head> |
| <body class="bg-gray-900 text-gray-200"> |
| |
| <div class="flex h-screen overflow-hidden"> |
| |
| <div class="w-64 bg-gray-800 flex flex-col"> |
| |
| <div class="p-4 flex items-center justify-center"> |
| <div class="flex items-center neon-border p-3 rounded-lg"> |
| <div class="w-10 h-10 flex items-center justify-center bg-gradient-to-br from-orange-500 to-orange-700 rounded-full mr-2"> |
| <i class="fas fa-wifi text-white"></i> |
| </div> |
| <span class="logo-text text-xl font-bold">LIMANET</span> |
| </div> |
| </div> |
| |
| |
| <nav class="flex-1 px-4 py-6 space-y-2"> |
| <a href="#" class="sidebar-item active flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-tachometer-alt mr-3 text-orange-500"></i> |
| <span>Dashboard</span> |
| </a> |
| <a href="#" class="sidebar-item flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-users mr-3 text-blue-400"></i> |
| <span>Clientes</span> |
| </a> |
| <a href="#" class="sidebar-item flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-file-invoice-dollar mr-3 text-green-400"></i> |
| <span>Planos de Assinatura</span> |
| </a> |
| <a href="#" class="sidebar-item flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-money-bill-wave mr-3 text-yellow-400"></i> |
| <span>Pagamentos</span> |
| </a> |
| <a href="#" class="sidebar-item flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-chart-line mr-3 text-purple-400"></i> |
| <span>Financeiro</span> |
| </a> |
| <a href="#" class="sidebar-item flex items-center px-4 py-3 rounded-lg transition-all"> |
| <i class="fas fa-cog mr-3 text-gray-400"></i> |
| <span>Configurações</span> |
| </a> |
| </nav> |
| |
| |
| <div class="p-4 border-t border-gray-700"> |
| <div class="flex items-center"> |
| <img src="https://randomuser.me/api/portraits/men/32.jpg" alt="User" class="w-10 h-10 rounded-full mr-3"> |
| <div> |
| <p class="font-medium">Admin</p> |
| <p class="text-xs text-gray-400">Administrador</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="flex-1 flex flex-col overflow-hidden"> |
| |
| <header class="bg-gray-800 border-b border-gray-700 p-4 flex justify-between items-center"> |
| <h1 class="text-xl font-semibold">Dashboard</h1> |
| <div class="flex items-center space-x-4"> |
| <div class="relative"> |
| <i class="fas fa-search absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"></i> |
| <input type="text" placeholder="Pesquisar..." class="bg-gray-700 rounded-lg pl-10 pr-4 py-2 focus:outline-none focus:ring-2 focus:ring-orange-500"> |
| </div> |
| <button class="bg-orange-600 hover:bg-orange-700 px-4 py-2 rounded-lg transition-all"> |
| <i class="fas fa-plus mr-2"></i> Novo Cliente |
| </button> |
| <div class="relative"> |
| <i class="fas fa-bell text-gray-400 text-xl cursor-pointer"></i> |
| <span class="absolute -top-1 -right-1 bg-red-500 text-white text-xs rounded-full w-5 h-5 flex items-center justify-center">3</span> |
| </div> |
| </div> |
| </header> |
| |
| |
| <main class="flex-1 overflow-y-auto p-6 bg-gray-900"> |
| |
| <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"> |
| <div class="bg-gray-800 rounded-xl p-6 shadow-lg card-hover transition-all"> |
| <div class="flex items-center justify-between"> |
| <div> |
| <p class="text-sm font-medium text-gray-400">Total de Clientes</p> |
| <p class="text-3xl font-bold mt-2">248</p> |
| </div> |
| <div class="bg-blue-900/30 p-3 rounded-full"> |
| <i class="fas fa-users text-blue-400 text-xl"></i> |
| </div> |
| </div> |
| <div class="mt-4"> |
| <div class="flex items-center text-sm text-green-400"> |
| <i class="fas fa-arrow-up mr-1"></i> |
| <span>12% desde o último mês</span> |
| </div> |
| </div> |
| </div> |
| |
| <div class="bg-gray-800 rounded-xl p-6 shadow-lg card-hover transition-all"> |
| <div class="flex items-center justify-between"> |
| <div> |
| <p class="text-sm font-medium text-gray-400">Clientes Ativos</p> |
| <p class="text-3xl font-bold mt-2">198</p> |
| </div> |
| <div class="bg-green-900/30 p-3 rounded-full"> |
| <i class="fas fa-user-check text-green-400 text-xl"></i> |
| </div> |
| </div> |
| <div class="mt-4"> |
| <div class="flex items-center text-sm text-green-400"> |
| <i class="fas fa-arrow-up mr-1"></i> |
| <span>8% desde o último mês</span> |
| </div> |
| </div> |
| </div> |
| |
| <div class="bg-gray-800 rounded-xl p-6 shadow-lg card-hover transition-all"> |
| <div class="flex items-center justify-between"> |
| <div> |
| <p class="text-sm font-medium text-gray-400">Inadimplentes</p> |
| <p class="text-3xl font-bold mt-2">32</p> |
| </div> |
| <div class="bg-red-900/30 p-3 rounded-full"> |
| <i class="fas fa-exclamation-triangle text-red-400 text-xl"></i> |
| </div> |
| </div> |
| <div class="mt-4"> |
| <div class="flex items-center text-sm text-red-400"> |
| <i class="fas fa-arrow-down mr-1"></i> |
| <span>5% desde o último mês</span> |
| </div> |
| </div> |
| </div> |
| |
| <div class="bg-gray-800 rounded-xl p-6 shadow-lg card-hover transition-all"> |
| <div class="flex items-center justify-between"> |
| <div> |
| <p class="text-sm font-medium text-gray-400">Receita Mensal</p> |
| <p class="text-3xl font-bold mt-2">R$ 24,780</p> |
| </div> |
| <div class="bg-purple-900/30 p-3 rounded-full"> |
| <i class="fas fa-dollar-sign text-purple-400 text-xl"></i> |
| </div> |
| </div> |
| <div class="mt-4"> |
| <div class="flex items-center text-sm text-green-400"> |
| <i class="fas fa-arrow-up mr-1"></i> |
| <span>15% desde o último mês</span> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mb-8"> |
| |
| <div class="bg-gray-800 rounded-xl shadow-lg overflow-hidden"> |
| <div class="px-6 py-4 border-b border-gray-700"> |
| <h2 class="text-lg font-semibold flex items-center"> |
| <i class="fas fa-money-bill-wave text-yellow-400 mr-2"></i> |
| Últimos Pagamentos |
| </h2> |
| </div> |
| <div class="divide-y divide-gray-700"> |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-green-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-check-circle text-green-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">João Silva</p> |
| <p class="text-sm text-gray-400">100MB - Bloco 19</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium">R$ 89,90</p> |
| <p class="text-sm text-gray-400">10/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-green-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-check-circle text-green-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Maria Oliveira</p> |
| <p class="text-sm text-gray-400">200MB - Bloco 20</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium">R$ 119,90</p> |
| <p class="text-sm text-gray-400">09/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-green-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-check-circle text-green-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Carlos Souza</p> |
| <p class="text-sm text-gray-400">300MB - Bloco 21</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium">R$ 149,90</p> |
| <p class="text-sm text-gray-400">08/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-green-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-check-circle text-green-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Ana Costa</p> |
| <p class="text-sm text-gray-400">100MB - Bloco 22</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium">R$ 89,90</p> |
| <p class="text-sm text-gray-400">07/05/2023</p> |
| </div> |
| </div> |
| </div> |
| <div class="px-6 py-3 border-t border-gray-700 text-center"> |
| <a href="#" class="text-orange-500 hover:text-orange-400 text-sm font-medium">Ver todos os pagamentos</a> |
| </div> |
| </div> |
| |
| |
| <div class="bg-gray-800 rounded-xl shadow-lg overflow-hidden"> |
| <div class="px-6 py-4 border-b border-gray-700"> |
| <h2 class="text-lg font-semibold flex items-center"> |
| <i class="fas fa-exclamation-triangle text-red-400 mr-2"></i> |
| Clientes Inadimplentes |
| </h2> |
| </div> |
| <div class="divide-y divide-gray-700"> |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-red-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-exclamation text-red-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Pedro Alves</p> |
| <p class="text-sm text-gray-400">200MB - Bloco 23</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium text-red-400">- R$ 119,90</p> |
| <p class="text-sm text-gray-400">Venceu em 05/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-red-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-exclamation text-red-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Luiza Mendes</p> |
| <p class="text-sm text-gray-400">100MB - Bloco 19</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium text-red-400">- R$ 89,90</p> |
| <p class="text-sm text-gray-400">Venceu em 03/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-red-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-exclamation text-red-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Ricardo Lima</p> |
| <p class="text-sm text-gray-400">300MB - Bloco 24</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium text-red-400">- R$ 149,90</p> |
| <p class="text-sm text-gray-400">Venceu em 01/05/2023</p> |
| </div> |
| </div> |
| |
| <div class="px-6 py-4 flex items-center justify-between hover:bg-gray-700/50 transition-all"> |
| <div class="flex items-center"> |
| <div class="bg-red-900/20 p-2 rounded-lg mr-4"> |
| <i class="fas fa-exclamation text-red-400"></i> |
| </div> |
| <div> |
| <p class="font-medium">Fernanda Rocha</p> |
| <p class="text-sm text-gray-400">200MB - Bloco 20</p> |
| </div> |
| </div> |
| <div class="text-right"> |
| <p class="font-medium text-red-400">- R$ 119,90</p> |
| <p class="text-sm text-gray-400">Venceu em 30/04/2023</p> |
| </div> |
| </div> |
| </div> |
| <div class="px-6 py-3 border-t border-gray-700 text-center"> |
| <a href="#" class="text-orange-500 hover:text-orange-400 text-sm font-medium">Ver todos os inadimplentes</a> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="grid grid-cols-1 lg:grid-cols-2 gap-6"> |
| |
| <div class="bg-gray-800 rounded-xl shadow-lg p-6"> |
| <h2 class="text-lg font-semibold mb-4 flex items-center"> |
| <i class="fas fa-chart-pie text-orange-400 mr-2"></i> |
| Status dos Clientes |
| </h2> |
| <div class="h-64"> |
| <canvas id="clientsStatusChart"></canvas> |
| </div> |
| </div> |
| |
| |
| </html> |