*{box-sizing:border-box}body{margin:0;font-family:Arial,Segoe UI,sans-serif;color:#eee;background:#101610 url('backgroundjogo.jpg') center/cover fixed;font-size:14px}body:before{content:'';position:fixed;inset:0;background:#0007;z-index:-1}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border-radius:8px;padding:11px 16px;font-weight:700;border:1px solid #4d554d;color:#fff;background:#252a25}button:hover{filter:brightness(1.15)}button:disabled{opacity:.4;cursor:not-allowed}a{color:#8cfa7c;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:32px;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 12px #35cf5460}h2{font-size:22px}p{color:#c7ccc7;line-height:1.6}small{font-size:11px;color:#c1c9c1}label{display:block;font-size:13px;font-weight:600;margin:0 0 16px}input,select{background:#101510;border:1px solid #536053;border-radius:6px;padding:11px;color:#fff;width:100%;min-width:0}label input,label select{margin-top:8px}input:focus,select:focus{outline:2px solid #34f703;outline-offset:1px}.primary{background:#153018;border:2px solid #34f703;color:#8bff79}.ghost{background:#252a25;border:1px solid #616a61}.danger-button{background:#381818;border:2px solid #e27575;color:#ffc8c8}.danger{color:#ff9d9d}.text-button{border:0;background:none;color:#8bff79;padding:0;text-align:left}.brand{font-size:20px;font-weight:800;white-space:nowrap}.brand span{color:#34f703}.eyebrow{font-size:11px;color:#adf5a3;letter-spacing:2px;margin-bottom:12px}.classic-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:#080c08e8;border-bottom:1px solid #526352;padding:14px 28px}.classic-nav>small{display:none}.classic-nav nav{display:flex;gap:10px;flex-wrap:wrap}.nav{background:transparent;border:1px solid transparent;color:#d5dbd5}.nav.active{border-color:#34f703;color:#8bff79}.sidebar-bottom{display:flex;align-items:center;gap:12px;font-size:12px}.sidebar-bottom small{display:none}.sidebar-bottom form{margin:0}.sidebar-bottom button{padding:8px 12px}.workspace{max-width:1720px;margin:auto;padding:0 26px 40px}.topbar{display:flex;justify-content:space-between;font-size:10px;color:#ddd;padding:18px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 28px}.page-heading p{margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{background:#121712de;border:1px solid #526052;border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:12px}.stat strong{font-size:26px;color:#8bff79}.stat span{font-size:11px;color:#b4bfb4;line-height:1.5}.section-title{display:flex;justify-content:space-between;align-items:center;margin:30px 0 15px}.section-title h2{margin:0}.section-title span{font-size:12px;color:#ccc}.match-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.match-card{background:#111711e8;border:1px solid #486148;padding:22px;text-align:left}.match-card h3{margin:22px 0 10px;font-size:21px}.card-top,.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.card-bottom{border-top:1px solid #414b41;margin-top:20px;padding-top:16px}.card-bottom strong{font-size:23px;color:#8bff79}.card-bottom span{font-size:11px}.teams-mini{display:flex;gap:20px;font-size:12px}.blue-dot{color:#9bc4ff}.red-dot{color:#ffb4b4}.badge{border-radius:20px;padding:7px 10px;background:#343c34;font-size:11px;color:#ddd;white-space:nowrap}.badge.andamento{background:#1a4620;color:#a9ff9a}.badge.pausada{background:#51401b;color:#ffe392}.badge.finalizada{background:#303830;color:#ccd5cc}.empty{border:1px dashed #667766;background:#111711dd;padding:35px;text-align:center;border-radius:10px;color:#ccc}.empty p{margin:10px 0 0}.panel{background:#121712eb;border:1px solid #536053;border-radius:12px;margin-bottom:22px;box-shadow:0 6px 24px #0005}.padded{padding:24px}.classic-heading{text-align:center;margin:22px 0}.classic-heading h1{margin-bottom:12px}.classic-heading p{margin:0}.classic-timer{text-align:center;margin:22px auto}.classic-timer strong{display:inline-block;background:#000d;border:2px solid #3c503c;border-radius:10px;padding:10px 38px;color:#00ff00;font-size:52px;letter-spacing:3px;font-variant-numeric:tabular-nums;box-shadow:0 0 22px #00ff0030}.classic-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:22px 0}.classic-buttons button{padding:13px 22px}.price-line{text-align:center;color:#d0d9d0;margin:20px 0;font-size:13px}.match-money{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;background:#0d140de8;border:1px solid #526352;border-radius:8px;padding:16px;margin-bottom:24px;font-size:13px}.match-money strong{color:#b9ffa8}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.team{padding:14px;min-width:0}.team-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 16px}.team-heading h2{margin:0;text-transform:uppercase;letter-spacing:1px;font-size:25px}.azul .team-heading h2{color:#91bfff}.vermelho .team-heading h2{color:#ffb0b0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #465046;vertical-align:middle}th{font-size:12px;background:#293529;color:#eee;white-space:nowrap}td{font-size:12px}td small{display:block;margin-top:6px;font-size:10px;color:#b2bdb2}.azul .players-table th{background:#155094;color:white}.vermelho .players-table th{background:#9b2629;color:white}.players-table{table-layout:fixed;min-width:550px}.players-table th:first-child{width:23%}.players-table th:nth-child(2){width:21%}.players-table th:nth-child(3){width:17%}.players-table th:nth-child(4){width:20%}.players-table th:nth-child(5){width:19%}.players-table tr:nth-child(even){background:#ffffff05}.player-name strong{font-size:15px;overflow-wrap:anywhere}.entry-tag{display:inline-block;font-size:11px;padding:6px;border-radius:5px;line-height:1.3}.entry-tag.paid{color:#a6ff93;background:#23401f}.entry-tag.unpaid{color:#ffd68e;background:#4a361b}.central-btn{display:block;font-size:10px;margin-top:8px}.refill-count{font-size:20px;font-weight:700}.recarga-buttons{display:flex;gap:5px;margin-top:8px}.recarga-buttons button{padding:5px 9px;font-size:16px}.refill{color:#a2caff;background:#193350;border:1px solid #4e81be}.vermelho .refill{color:#ffc4c4;background:#542329;border-color:#b45d65}.due-cell strong{color:#bcffa5;font-size:15px;white-space:nowrap}.player-actions button{display:block;font-size:10px;padding:6px;margin-bottom:5px;width:100%}.empty-row td{height:66px;color:#a0afa0}.empty-row button{color:#adbfad;font-size:12px}.team-total{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px 4px 4px}.team-total span{font-size:12px;color:#d7dfd7}.team-total strong{color:#adff97}.scanner{padding:18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.scanner label{margin:0}.scanner input{flex:1;min-width:180px}.scanner select{width:160px}.scanner button{white-space:nowrap}.back{margin-top:15px}.notice{background:#192a19ee;border:1px solid #496549;border-radius:8px;padding:15px 18px;color:#dce7dc;margin-bottom:22px;font-size:12px;line-height:1.6}.filters{display:flex;align-items:end;gap:15px;flex-wrap:wrap;margin-bottom:25px}.filters label{margin:0}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.user-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid #4b594b}.user-row small{display:block;margin-top:6px}.voided td{opacity:.55}.receipts h2{font-size:19px}.receipts td{white-space:nowrap}dialog{background:#141b14;color:#fff;border:1px solid #657965;border-radius:12px;padding:28px;width:470px;max-width:calc(100vw - 28px);box-shadow:0 20px 90px #000a}dialog::backdrop{background:#000b}.dialog-actions{display:flex;gap:12px;justify-content:end;margin-top:24px}.hint{font-size:12px}#toast{position:fixed;bottom:24px;right:24px;max-width:calc(100vw - 48px);padding:18px;background:#204725;color:#fff;border:1px solid #7bb77b;border-radius:10px;display:none;z-index:100}#toast.show{display:block}.error,#toast.error{background:#50252b;color:#ffe2e6;border:1px solid #b66774}.error{padding:15px;border-radius:8px;margin-bottom:18px}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:80px;padding:35px;background:linear-gradient(#0007,#0007),url('backgroundinicio.jpg') center/cover}.login-story{max-width:550px}.login-story h1{font-size:42px;margin-top:40px;line-height:1.25}.login-story small{display:block;margin-top:40px}.login-form{width:400px;padding:35px;background:#000d;border:2px solid #34f703;border-radius:14px}.login-form h2{font-size:27px}.login-form .primary{width:100%}.login-form>small{display:block;margin-top:20px}.report-page{max-width:1150px;margin:40px auto;padding:0 24px}.report-brand{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;gap:20px}.report-page footer{font-size:11px;margin:30px 0;color:#c6d0c6}.report-page .stats{margin:25px 0}.classic-home{text-align:center;margin:35px 0 30px}.classic-home h1{font-size:36px;margin-bottom:25px}.home-buttons{display:flex;justify-content:center;gap:25px;flex-wrap:wrap}.home-buttons button{font-size:20px;min-width:210px;padding:20px 30px;border:2px solid #34f703;background:#000b;color:#34f703}.home-buttons button:hover{background:#34f703;color:black}@media(max-width:1200px){.team-grid{gap:12px}.workspace{padding:0 16px 32px}.team{padding:10px}.classic-nav{padding:15px 18px;gap:15px}.stat strong{font-size:23px}.match-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:950px){.team-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.login-story{display:none}.login{padding:24px}.login-form{max-width:440px;width:100%}.admin-grid{grid-template-columns:1fr}.sidebar-bottom{margin-left:auto}.classic-nav{justify-content:center}.classic-nav nav{order:3;width:100%;justify-content:center}.players-table{min-width:600px}}@media(max-width:550px){h1{font-size:26px}.classic-heading h1{font-size:25px;line-height:1.3}.classic-timer strong{font-size:40px;padding:10px 24px}.classic-buttons{gap:8px}.classic-buttons button{font-size:12px;padding:10px 13px}.classic-nav .brand{font-size:17px}.sidebar-bottom{font-size:10px;gap:7px}.classic-nav{gap:10px}.nav{font-size:11px;padding:9px 11px}.stats{gap:10px}.stat{padding:15px}.stat strong{font-size:22px}.match-grid{grid-template-columns:1fr}.page-heading{flex-wrap:wrap}.scanner label{width:100%}.scanner input{width:100%;flex-basis:100%}.match-money{gap:14px;justify-content:start}.team-heading h2{font-size:22px}.report-brand{flex-wrap:wrap}.padded{padding:18px}.classic-home h1{font-size:29px}.home-buttons button{font-size:17px}.topbar{font-size:9px}}
@media print{body{background:#fff;color:#000}body:before,.no-print,.classic-nav,.topbar,#toast,dialog{display:none!important}.report-page{margin:0;padding:0;max-width:none}.panel,.stat,.notice{background:white;color:black;border-color:#ccc;box-shadow:none}.stat strong,h1,h2,small,td small,p,.report-page footer{color:black!important;text-shadow:none}th{background:#eee;color:black}th,td{border-color:#ccc;padding:9px}tr{break-inside:avoid}.report-page .stats{grid-template-columns:repeat(4,1fr)}.stat{padding:12px}.stat strong{font-size:18px}.table-wrap{overflow:visible}.report-brand a{display:none}}

.receipts summary{cursor:pointer;font-size:17px;font-weight:700;list-style-position:inside}.receipts[open] summary{margin-bottom:20px}
@media(max-width:600px){.players-table{min-width:0;display:block}.players-table thead{display:none}.players-table tbody{display:block}.players-table tr.player{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 8px;border-bottom:1px solid #526352}.players-table td{display:block;border:0;padding:0;min-width:0}.players-table .player-name{grid-column:1/-1}.player-name strong{font-size:18px}.players-table td:nth-child(2):before{content:'Entrada';display:block;color:#b4c1b4;font-size:11px;margin-bottom:6px}.refill-cell:before{content:'Recargas';display:block;color:#b4c1b4;font-size:11px;margin-bottom:6px}.due-cell:before{content:'A pagar';display:block;color:#b4c1b4;font-size:11px;margin-bottom:6px}.players-table .due-cell{grid-column:1/-1}.players-table .player-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.player-actions button{width:auto;font-size:12px;padding:9px 12px;margin:0}.recarga-buttons button{padding:8px 16px}.empty-row{display:block;padding:15px 8px;border-bottom:1px solid #465046}.players-table .empty-row td{display:none;height:auto}.players-table .empty-row td:first-child{display:block}.empty-row button{font-size:13px}.team-total strong{font-size:13px}.receipts summary{font-size:15px}}

.billing-modal{width:550px;max-height:calc(100dvh - 28px);overflow:auto}.billing-player{font-size:12px;color:#bcccba;margin:0 0 18px}.billing-items{background:#0b110b;border:1px solid #344b34;border-radius:8px;padding:14px;margin:0 0 20px}.billing-items>div,.billing-summary>div,.billing-change{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;font-size:13px}.billing-items strong{white-space:nowrap}.billing-discount{border-top:1px solid #3c503c;padding-top:18px}.billing-summary{border:1px solid #577d47;background:#142311;border-radius:9px;padding:12px 16px;margin:0 0 22px}.billing-summary .billing-total-line{border-top:1px solid #49613d;margin-top:6px;padding-top:15px;font-weight:700}.billing-total-line strong{font-size:27px;color:#a7ff8e}.billing-total-line span{font-size:15px}.billing-summary #billing-discount{color:#ffd496}.billing-change{padding:12px 16px;background:#1c2c18;border:1px solid #3d6634;border-radius:7px;margin:0 0 15px}.billing-change strong{color:#b0ff98;font-size:19px}.billing-error{font-size:12px;color:#ffa7a7;margin:0 0 14px}.billing-modal label{font-size:12px}.billing-modal input,.billing-modal select{padding:10px}.billing-modal .hint{font-size:11px;margin-bottom:0}.billing-modal .dialog-actions{position:sticky;bottom:-28px;background:#141b14;border-top:1px solid #425842;padding:15px 0 0;margin-top:20px}.billing-modal [hidden]{display:none!important}@media(max-width:550px){.billing-modal{padding:20px}.billing-total-line strong{font-size:24px}.billing-items>div{font-size:12px}.billing-modal .dialog-actions{bottom:-20px}.billing-modal .dialog-actions button{font-size:12px;padding:12px}.billing-modal h2{font-size:21px}}

.live-table{min-width:480px;table-layout:auto}.live-table th:first-child{width:35%}.live-table th:nth-child(2){width:35%}.live-table th:nth-child(3){width:30%}.live-table td{padding:18px 12px}.live-table .refill{font-size:12px;padding:9px 13px}.live-table .refill-count{font-size:25px}.live-table .empty-row td{height:60px}.team-discounts{background:#0a160ad9;border:1px solid #496749;border-radius:8px;padding:15px;margin-bottom:18px}.team-discounts>strong{display:block;margin-bottom:15px}.team-discount-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.team-discounts label{font-size:11px}.team-discounts>small{display:block;line-height:1.5;margin-bottom:12px}.team-discounts button{font-size:12px}.checkout-table{min-width:610px}.checkout-table th:nth-child(2){width:22%}.checkout-table th:nth-child(3){width:22%}.checkout-table th:nth-child(4){width:21%}.checkout-table th:nth-child(5){width:12%}.game-stage-notice{text-align:center}.checkout-table strong{white-space:nowrap}.team-discounts:has(input:disabled) label:has(input:disabled){opacity:.65}@media(max-width:600px){.live-table,.checkout-table{min-width:0;table-layout:auto}.live-table td:nth-child(2):before{content:'Ingresso'}.checkout-table td:nth-child(2):before{content:'Ingresso do paintball'}.live-table td:last-child:empty{display:none}.live-table .refill{padding:10px;font-size:12px}.live-table .recarga-buttons{flex-wrap:wrap}.team-discount-fields{grid-template-columns:1fr}.checkout-table .refill-cell:before{content:'Recargas a pagar'}}

/* Histórico financeiro: valores separados por origem e situação. */
.payment-history th,.receipt-table th{white-space:normal;min-width:110px}.payment-history td,.receipt-table td{vertical-align:top}.payment-history td:first-child,.receipt-table td:first-child{min-width:190px}.receipt-table strong{display:block}.money-paid{color:#9fff85;font-weight:700}.money-due{color:#ffda8a;font-weight:700}.player-ledger{margin-top:24px}.player-ledger h2,.receipts h2{margin-top:0}.player-ledger p,.receipts>p,.ledger-note{color:#bcc8bd}.receipts details{padding:18px 0;border-top:1px solid #40503e}.receipts summary{cursor:pointer;font-size:17px;font-weight:700}.receipts summary small{display:block;margin:5px 0 0 18px;font-size:13px;font-weight:400;color:#bcc8bd}.receipts .table-wrap{margin-top:16px}.ledger-note{display:block;margin-top:10px}.empty-receipts{color:#bcc8bd;padding:12px 0}.player-ledger table{min-width:760px}.payment-history{min-width:1050px}.receipt-table{min-width:850px}@media(max-width:700px){.player-ledger,.receipts{padding:16px}.player-ledger h2,.receipts h2{font-size:21px}.player-ledger .table-wrap,.receipts .table-wrap{max-width:100%;overflow-x:auto}.receipts summary{font-size:16px}}
