@font-face { font-family: pfs-bold; src: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/142996/PFSquareSansPro-Bold.otf"); } body { margin: 0; font-family: pfs-bold; background-color: rgba(0, 0, 0, 0.5); color: white; text-transform: uppercase; display: none; overflow: hidden; /* evita scroll durante animação */ perspective: 800px; /* para efeito 3D */ } .tablet { display: flex; width: 70%; height: 70vh; margin: 13vh auto 0 auto; background-color: rgba(15, 23, 42, 1); border-radius: 15px; overflow: hidden; border: 1px solid #2f3339; /* Posição inicial para animação - de baixo */ opacity: 0; transform-origin: bottom center; transform: translateY(100vh) scale(0.4) rotateX(30deg); transition: opacity 0.5s ease, transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); pointer-events: none; } body.mostrar { display: block; } body.mostrar .tablet { opacity: 1; transform-origin: center center; transform: translateY(0) scale(1) rotateX(0deg); pointer-events: auto; } .sidebar { background-color: #0f172a; padding: 20px; width: 150px; display: flex; flex-direction: column; align-items: flex-start; /* alinhar ícones e texto à esquerda */ } .sidebar .icon { display: flex; align-items: center; margin: 20px 0; cursor: pointer; color: #94a3b8; } .sidebar .icon i { margin-right: 12px; font-size: 20px; } .sidebar .icon.active { color: #f7b532; } .sidebar .icon:hover { color: #f7b532; } .content { padding: 30px; flex: 1; } .content h1 { margin: 0; font-size: 28px; } .content p { color: #94a3b8; } .filter { margin-top: 20px; margin-bottom: 10px; } .filter select { padding: 8px; background-color: #1e293b; border: none; color: white; border-radius: 6px; } table { width: 100%; border-collapse: collapse; margin-top: 20px; background-color: #1e293b; border-radius: 12px; overflow: hidden; } thead { background-color: #111827; } th, td { padding: 12px 15px; text-align: left; } tbody tr:nth-child(even) { background-color: #1f2937; } .status-pago { color: #4ade80; } .status-pendente { color: #f7b532; } .status-rejeitado { color: #f87171; } .status-revogado { color: #1c7fc0; } .actions i { margin: 0 5px; cursor: pointer; } .pagination { text-align: center; margin-top: 20px; font-weight: bold; } .sidebar .icon.active { color: #f7b532; } /* Botão Enviar Fatura - estilo alinhado com o tablet */ /* Botão fechar (X) */ .close-btn { position: absolute; top: 12px; right: 16px; font-size: 26px; color: #94a3b8; /* cinza claro */ cursor: pointer; transition: color 0.3s ease; user-select: none; } .close-btn:hover { color: #ffffff; } /* Inputs e textarea */ #sendInvoiceForm input[type="text"], #sendInvoiceForm input[type="number"], #sendInvoiceForm textarea { width: 100%; padding: 12px 14px; margin: 10px 0 20px 0; border: 1.5px solid #475569; /* borda azul acinzentado */ border-radius: 8px; font-size: 16px; font-family: inherit; color: #f1f5f9; /* texto claro dentro do input */ background-color: #1e293b; /* fundo azul escuro dentro do input */ transition: border-color 0.3s ease; resize: none; } #sendInvoiceForm input[type="text"]:focus, #sendInvoiceForm input[type="number"]:focus, #sendInvoiceForm textarea:focus { border-color: #60a5fa; /* azul claro no foco */ outline: none; background-color: #273549; } /* Placeholder cor mais clara */ #sendInvoiceForm input::placeholder, #sendInvoiceForm textarea::placeholder { color: #94a3b8; } /* Botão Enviar no formulário */ #sendInvoiceForm button[type="submit"] { background-color: #2563eb; /* azul vibrante */ color: white; border: none; padding: 14px 0; width: 100%; border-radius: 8px; font-size: 18px; cursor: pointer; font-weight: 600; transition: background-color 0.3s ease; box-shadow: 0 4px 8px rgba(37, 99, 235, 0.5); } #sendInvoiceForm button[type="submit"]:hover { background-color: #1e40af; /* azul mais escuro no hover */ } /* Botão Selecionar Destinatário */ #btnSelecionarDestinatario { width: 100%; padding: 10px; margin-top: 5px; margin-bottom: 15px; background-color: #34495e; /* azul escuro */ color: #ecf0f1; /* branco suave */ border: none; border-radius: 6px; cursor: pointer; font-weight: 600; font-size: 1rem; transition: background-color 0.3s ease; } #btnSelecionarDestinatario:hover { background-color: #3d566e; /* tom mais claro ao passar o rato */ } /* Lista de jogadores próximos */ #listaJogadoresProximos { max-height: 120px; overflow-y: auto; background-color: #2c3e50; /* fundo escuro */ border-radius: 6px; padding: 8px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); color: #ecf0f1; font-size: 0.95rem; } /* Cada jogador na lista */ #listaJogadoresProximos>div { padding: 8px; margin-bottom: 6px; background-color: #34495e; border-radius: 4px; cursor: pointer; user-select: none; transition: background-color 0.3s ease; } #listaJogadoresProximos>div:hover { background-color: #3d566e; } .fundoescuro { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.8); z-index: 9998; /* atrás do modal */ } .modal { display: flex; justify-content: center; align-items: center; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; } .modal-content { background: linear-gradient( 135deg, rgba(25, 36, 59, 0.9) 0%, rgba(25, 36, 59, 1) 50%, rgba(25, 36, 59, 0.9) 100%); color: white; border-radius: 8px; display: flex; gap: 20px; max-width: 800px; margin: 40px auto; position: relative; width: 700px; height: auto; } .contentpadding { padding: 20px 30px; flex: 2; display: flex; flex-direction: column; } #selectedInvoicesSidebar { background-color: #0f172a; padding: 15px; border-radius: 8px; max-height: 400px; height: 400px; overflow-y: auto; flex: 1; } #selectedInvoicesSidebar h4 { margin-top: 0; font-size: 16px; } #selectedInvoicesSidebar ul { list-style: none; padding: 0; margin: 0; font-size: 14px; } #selectedInvoicesSidebar ul li { white-space: normal; word-wrap: break-word; margin-bottom: 8px; /* espaço entre cada fatura */ } .close-btn { cursor: pointer; float: right; } .btn-submit { font-family: 'pfs-bold'; background-color: #f7b532; color: #0f172a; padding: 12px 30px 12px 70px; /* espaço para ícone à esquerda */ border: none; border-radius: 5px; cursor: pointer; font-size: 16px; text-transform: uppercase; font-weight: bold; position: relative; overflow: hidden; transition: all 0.3s ease; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); display: inline-flex; align-items: center; width: 100%; /* Para ficar full width igual ao input */ justify-content: center; } .btn-submit::before { content: ""; position: absolute; top: 0; left: -85%; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.1); transition: all 0.4s ease; transform: skewX(-20deg); z-index: 1; } .btn-submit:hover::before { left: -20%; } .btn-submit:hover { background-color: #f29e0d; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3); } /* Espaço para o ícone branco à esquerda */ .btn-submit .icon-box { position: absolute; left: 0; top: 0; height: 100%; width: 40px; background: white; display: flex; justify-content: center; align-items: center; box-shadow: 0 0 6px rgba(0, 0, 0, 0.1); z-index: 2; color: #f7b532; font-size: 20px; pointer-events: none; border-radius: 5px 0 0 5px; /* borda arredondada só do lado esquerdo */ } .quantity-controls { display: flex; border: 1px solid #2f3339; border-radius: 8px; overflow: hidden; width: fit-content; background-color: #0f172a; line-height: 1; font-size: 0; } .quantity-controls button, .quantity-controls span { font-size: 16.2px; /* 10% menor que 18px */ margin: 0; padding: 0; border: none; outline: none; } .quantity-controls button { background: #334155; color: white; width: 36px; /* 10% menor que 40px */ height: 36px; display: flex; align-items: center; justify-content: center; cursor: pointer; } .quantity-controls .menos { background: #1e293b; border-right: 0; border-radius: 0; } .quantity-controls .mais { background: #1e293b; border-left: 0; border-radius: 0; } .quantity-controls span { color: white; padding: 0 14.4px; /* 10% menor que 16px */ border-left: 1px solid #2f3339; border-right: 1px solid #2f3339; display: flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; } /* Esconder o select original */ #invoiceType { position: relative; width: 100%; height: 40px; opacity: 0; appearance: none; pointer-events: none; position: absolute; z-index: 1; } /* Container custom */ .styled-select-wrapper { position: relative; width: 100%; font-size: 13px; user-select: none; } /* Botão que mostra o valor selecionado */ .styled-select-display { background-color: #1e293b; color: white; border: 1px solid #2f3339; border-radius: 8px; padding: 4px 10px; height: 30px; line-height: 24px; cursor: pointer; display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px; margin-top: 5px; } /* Ícone seta */ .styled-select-display::after { content: ""; border: solid rgb(255, 255, 255); border-width: 0 2px 2px 0; display: inline-block; padding: 4px; transform: rotate(45deg); transition: transform 0.3s ease; margin-left: 10px; } .styled-select-wrapper.open .styled-select-display { border-color: #f29e0d; } /* Seta gira quando aberto */ .styled-select-wrapper.open .styled-select-display::after { transform: rotate(-135deg); border-color: #f29e0d; } /* Popover dropdown */ .styled-select-options { position: absolute; top: 100%; left: 0; width: 100%; background-color: #1e293b; border: 1px solid #2f3339; border-radius: 8px; max-height: 200px; overflow-y: auto; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3); /* ANIMAÇÃO */ opacity: 0; pointer-events: none; transform-origin: top; transform: scaleY(0.8); transition: opacity 1.3s ease, transform 0.3s ease; z-index: 10; } .styled-select-wrapper select { position: absolute; opacity: 0; pointer-events: none; width: 0; height: 0; margin: 0; padding: 0; overflow: hidden; } .styled-select-wrapper.open .styled-select-options { opacity: 1; pointer-events: auto; transform: scaleY(1); } /* Cada opção */ .styled-select-option { padding: 10px 12px; color: white; cursor: pointer; user-select: none; } .styled-select-option:hover, .styled-select-option.selected { background-color: #334155; } .styled-input { background-color: #1e293b; color: white; border: 1px solid #2f3339; border-radius: 8px; padding: 0 12px; font-size: 18px; outline: none; height: 40px; width: 100%; box-sizing: border-box; margin-bottom: 15px; margin-top: 5px; } .styled-input:disabled { opacity: 0.7; cursor: not-allowed; } .styled-input:focus { border-color: #334155; } @keyframes fadeInScale { 0% { opacity: 0; transform: scale(0.9); } 100% { opacity: 1; transform: scale(1); } } .invoice-modal-show { animation: fadeInScale 0.3s ease forwards; } .header-container { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; } /* O título fica igual em ambos */ .header-container h1 { margin: 0; font-size: 1.8rem; font-weight: bold; } /* Espaço reservado no receivedTab para o botão que não existe */ .empty-button-space { width: 180px; /* mesma largura do botão */ } .subtitulo { width: calc(100% - 140px); /* deixa espaço para o botão */ margin-top: 0; margin-bottom: 12px; font-weight: 600; color: #333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .btn-open-modal { font-family: 'pfs-bold'; background-color: #f7b532; color: #0f172a; padding: 12px 30px 12px 70px; /* mais padding left para espaço do ícone */ border: none; border-radius: 5px; cursor: pointer; font-size: 16px; text-transform: uppercase; font-weight: bold; position: relative; overflow: hidden; transition: all 0.3s ease; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); display: inline-flex; align-items: center; } .btn-open-modal::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.3); transition: all 0.4s ease; transform: skewX(-20deg); z-index: 1; } .btn-open-modal:hover::before { left: 100%; } .btn-open-modal:hover { background-color: #f29e0d; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3); } /* Ícone no quadrado branco */ .icon-box { position: absolute; left: 0; top: 0; height: 100%; width: 40px; background: white; display: flex; justify-content: center; align-items: center; box-shadow: 0 0 6px rgba(0, 0, 0, 0.1); z-index: 2; color: #f7b532; font-size: 20px; pointer-events: none; } @keyframes fadeMenu { 0% { opacity: 0; transform: translate(-50%, -50%) scale(0.9); } 100% { opacity: 1; transform: translate(-50%, -50%) scale(1); } } /* Modal principal */ #MenuRevogar, #MenuPagamento, #MenuRejeitar { background: linear-gradient(135deg, rgba(25, 36, 59, 0.9) 0%, rgba(25, 36, 59, 1) 50%, rgba(25, 36, 59, 0.9) 100%); color: white; border-radius: 8px; padding: 20px; width: 400px; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.9); /* estado inicial */ opacity: 0; z-index: 9999; display: none; transition: opacity 0.3s ease; } #MenuRevogar.show, #MenuPagamento.show, #MenuRejeitar.show { display: block; opacity: 1; animation: fadeMenu 0.3s ease forwards; } /* Botão de fechar */ #btnRevogarFechar, #btnPagamentoFechar, #btnRejeitarFechar { position: absolute; top: 10px; right: 10px; background-color: #dc3545; border: none; color: white; font-size: 24px; width: 30px; height: 30px; border-radius: 10%; cursor: pointer; line-height: 0; } /* Título e parágrafo do modal */ #MenuRevogar h2, #MenuPagamento h2, #MenuRejeitar h2 { text-align: center; margin-bottom: 20px; } #modalInvoiceInfo, #modalInvoiceInfo, #modalRejeitarInfo { margin-bottom: 30px; text-align: center; } /* Botões de ação */ #btnPagamentoConfirmar, #btnPagamentoCancelar { padding: 10px 20px; border: none; border-radius: 5px; color: #0f172a; cursor: pointer; } #btnPagamentoConfirmar { background-color: #f29e0d; } /* Alinhamento dos botões */ #MenuPagamento .botoes, #MenuRejeitar .botoes { display: flex; justify-content: space-around; margin-top: 20px; } #MenuInfoFatura { background: linear-gradient(135deg, rgba(25, 36, 59, 0.9) 0%, rgba(25, 36, 59, 1) 50%, rgba(25, 36, 59, 0.9) 100%); color: white; border-radius: 8px; padding: 20px; width: 400px; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.9); opacity: 0; z-index: 9999; display: none; transition: opacity 0.3s ease; } #MenuInfoFatura.show { display: block; opacity: 1; animation: fadeMenu 0.3s ease forwards; } #MenuInfoFatura button#btnFecharInfo { position: absolute; top: 10px; right: 10px; background-color: #dc3545; border: none; color: white; font-size: 24px; width: 30px; height: 30px; border-radius: 10%; cursor: pointer; line-height: 0; } #MenuInfoFatura h2 { text-align: center; margin-bottom: 20px; } #modalFaturaDetalhes { text-align: center; margin-bottom: 30px; white-space: pre-line; } table { width: 100%; border-collapse: collapse; table-layout: fixed; /* permite controlar melhor os tamanhos */ } th, td { padding: 10px 15px; vertical-align: middle; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } /* Coluna: Emitido Por */ th:nth-child(1), td:nth-child(1) { text-align: left; width: 15%; } /* Coluna: Estado */ th:nth-child(2), td:nth-child(2) { text-align: left; width: 10%; } /* Coluna: Montante */ th:nth-child(3), td:nth-child(3) { text-align: left; width: 10%; } /* Coluna: Motivo */ th:nth-child(4), td:nth-child(4) { text-align: left; width: auto; /* ocupa o espaço que sobra */ } /* Coluna: Ações */ th:nth-child(5), td:nth-child(5) { text-align: right; width: 10%; }