*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f5f7fa;color:#172033;line-height:1.45}
a{color:#243b64;text-decoration:none}a:hover{text-decoration:underline}
.site-header{height:64px;background:#101828;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px}
.brand{color:#fff;font-size:21px;font-weight:700}.site-header nav{display:flex;gap:18px}.site-header nav a{color:#fff;font-size:14px}
.container,main{max-width:1120px;margin:0 auto;padding:32px 20px 60px}
.flash{background:#fff4cc;border:1px solid #e5cf78;border-radius:8px;padding:12px 14px;margin-bottom:18px}
.muted{color:#667085}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.09em;color:#667085;margin:0 0 7px;text-transform:uppercase}
.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.page-heading h1{margin:4px 0 7px;font-size:30px}.page-heading p{margin:0;color:#667085}.heading-actions{display:flex;gap:10px;flex-wrap:wrap}
.back{font-size:14px}.btn,button{border:0;border-radius:8px;background:#243b64;color:#fff;padding:10px 15px;cursor:pointer;font-size:14px;text-decoration:none;display:inline-block}.btn:hover,button:hover{opacity:.9;text-decoration:none}.btn.success,.success{background:#198754}.btn.danger,.danger{background:#c0392b}.btn.warning,.warning{background:#9a6700}.btn.secondary{background:#667085}.btn.light{background:#eef2f6;color:#344054}
.status{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.state{background:#eef2f6;color:#475467}.state.green{background:#ecfdf3;color:#067647}.state.orange{background:#fff7e6;color:#9a6700}.state.blue{background:#eef4ff;color:#2457a6}.state.dark{background:#e4e7ec;color:#344054}
.admin-menu,.player-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:24px}.player-menu{grid-template-columns:repeat(3,1fr)}
.menu-card{background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:20px;display:flex;align-items:center;gap:14px;min-height:105px;box-shadow:0 3px 10px rgba(16,24,40,.04);text-decoration:none}.menu-card:hover{border-color:#98a2b3;text-decoration:none;transform:translateY(-1px)}.menu-icon{font-size:28px}.menu-card strong,.menu-card small{display:block}.menu-card strong{font-size:16px;margin-bottom:5px;color:#172033}.menu-card small{font-size:13px;color:#667085;line-height:1.35}.arrow{margin-left:auto;font-size:28px;color:#98a2b3}
.admin-panel,.panel,.game-card{background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:20px;margin:20px 0;box-shadow:0 3px 10px rgba(16,24,40,.035)}.panel h2,.panel h3,.admin-panel h2{margin-top:0}
.game-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.summary-card{background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:16px}.summary-card span{display:block;font-size:11px;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.summary-card strong{font-size:19px}
.table-wrap{overflow-x:auto;background:#fff;border:1px solid #e4e7ec;border-radius:12px;margin-bottom:20px}.data-table{width:100%;border-collapse:collapse}.data-table th{background:#f8fafc;color:#475467;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid #eaecf0;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table td.actions-cell{white-space:nowrap}.data-table .subtle{font-size:12px;color:#667085}
.empty-state{text-align:center;background:#fff;border:1px dashed #d0d5dd;border-radius:14px;padding:45px 20px;margin:20px 0}.empty-icon{font-size:35px;margin-bottom:10px}
.actions{display:flex;gap:10px;flex-wrap:wrap}.inline-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:14px}.inline-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}.inline-form input,.inline-form select{padding:9px;border:1px solid #d0d5dd;border-radius:7px;background:#fff}
.extra-form{display:grid;grid-template-columns:minmax(240px,1fr) 180px auto;gap:14px;align-items:end;margin:18px 0 4px}.extra-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#344054}.extra-form input{width:100%;height:40px;padding:9px 11px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;font-size:14px}.money-input{display:flex;align-items:center;gap:8px}.money-input input{flex:1}.money-input span{font-size:14px;font-weight:600;color:#475467}.extra-form button{height:40px;white-space:nowrap;margin:0}
.teams{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.team{border:1px solid #e4e7ec;border-radius:12px;padding:18px;background:#f9fafb}.team h3{margin:0 0 12px}.team ul{margin:0;padding-left:20px}.team li{padding:5px 0}.team-extra{color:#667085;font-size:13px}
.lock-warning{background:#fff7e6;border:1px solid #f2d39b;border-radius:8px;padding:12px;margin:15px 0}.lock-success{background:#ecfdf3;border:1px solid #abefc6;color:#067647;border-radius:8px;padding:12px;margin:15px 0}
.correction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.correction-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #eaecf0;border-radius:9px;padding:10px;background:#fff}.correction-row form{display:flex;gap:6px;align-items:center}.correction-row select{padding:7px;border:1px solid #d0d5dd;border-radius:7px;background:#fff}.correction-row button{padding:7px 9px}
.presence-actions{display:flex;gap:6px;flex-wrap:wrap}.presence-actions button{padding:7px 9px;font-size:12px}.presence-actions .out{background:#667085}
.game-list{display:grid;gap:14px}.game-card{margin:0;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.game-main{min-width:0}.game-date{font-size:12px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.game-title{font-size:20px;font-weight:700;margin:4px 0}.game-meta{display:flex;gap:16px;flex-wrap:wrap;color:#667085;font-size:14px}.game-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:30px 0 12px}.section-heading h2{margin:0;font-size:21px}.count-badge{background:#eef2f6;color:#475467;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}
.vote-live{border:1px solid #b7c7e6;background:#f7f9fd}.vote-live-header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.vote-live-header h2{margin:0 0 5px}.vote-deadline{font-size:14px;color:#475467}.vote-refresh{font-size:12px;color:#667085;text-align:right}.vote-progress{height:12px;background:#e4e7ec;border-radius:999px;overflow:hidden;margin:16px 0 8px}.vote-progress>span{display:block;height:100%;background:#243b64;border-radius:999px}.vote-progress-label{display:flex;justify-content:space-between;font-size:13px;color:#475467}.vote-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.vote-stat{background:#fff;border:1px solid #e4e7ec;border-radius:10px;padding:14px}.vote-stat span{display:block;color:#667085;font-size:12px;font-weight:700}.vote-stat strong{display:block;font-size:25px;margin-top:4px}.vote-results{display:grid;gap:8px}.vote-result-row{display:grid;grid-template-columns:minmax(130px,1fr) 1fr 50px;align-items:center;gap:10px}.vote-result-name{font-weight:600}.vote-bar{height:9px;background:#eef2f6;border-radius:999px;overflow:hidden}.vote-bar span{display:block;height:100%;background:#667085;border-radius:999px}.vote-number{text-align:right;font-weight:700}.vote-empty{color:#667085;font-size:14px}
.voting-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.missing-vote{border:1px solid #f2d39b;background:#fffaf0;border-radius:10px;padding:14px;margin:10px 0}.candidate-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 14px;margin:10px 0}.candidate-grid label{display:flex;gap:7px;align-items:center;padding:6px 0}.candidate-grid input{width:17px;height:17px}
.kit{font-weight:700}.kit.black{color:#111}.kit.white{color:#667085}.status.paid{color:#137333}.status.unpaid{color:#a15c00}
.next-game{background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:24px;display:flex;justify-content:space-between;gap:24px;align-items:center;box-shadow:0 4px 14px rgba(16,24,40,.06);margin-bottom:24px}.next-game h2{margin:4px 0 8px;font-size:25px}.next-game h2 span{color:#98a2b3}.next-game p{margin:0}.kit-box{min-width:220px;text-align:center;border-radius:12px;background:#f2f4f7;padding:17px}.kit-box span{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:7px}.kit-box strong{display:block;font-size:21px}
.finance-filter,.generate-month-form,.expense-form{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:16px 0}.finance-filter label,.generate-month-form label,.expense-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#344054}.finance-filter input,.finance-filter select,.generate-month-form input,.expense-form input{height:40px;padding:9px 11px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;font-size:14px}.finance-filter label input{min-width:155px}.finance-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.finance-card{background:#f8fafc;border:1px solid #e4e7ec;border-radius:12px;padding:17px}.finance-card.highlight{background:#ecfdf3;border-color:#abefc6}.finance-card span{display:block;color:#667085;font-size:12px;font-weight:700;margin-bottom:8px}.finance-card strong{display:block;font-size:23px;margin-bottom:6px}.finance-card small{display:block;color:#667085;line-height:1.4}.money-edit,.payment-action{display:flex;gap:7px;align-items:center}.money-edit input{width:105px;height:36px;padding:7px 9px;border:1px solid #d0d5dd;border-radius:7px}.money-edit button,.payment-action button{padding:8px 10px}.payment-action input{height:36px;padding:7px 9px;border:1px solid #d0d5dd;border-radius:7px}.expense-form label:first-child{flex:1;min-width:260px}.expense-form input{width:170px}.mvp-winner{background:#fff8e1;border:1px solid #f2d39b;border-radius:12px;padding:18px;margin-bottom:22px}.mvp-winner span,.mvp-winner strong,.mvp-winner small{display:block}.mvp-winner span{font-size:12px;font-weight:700;color:#8a6116;text-transform:uppercase;letter-spacing:.06em}.mvp-winner strong{font-size:25px;margin:5px 0}.mvp-winner small{color:#667085}
.vote-panel{max-width:700px;background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:24px;box-shadow:0 4px 14px rgba(16,24,40,.05)}.vote-options{display:grid;gap:10px;margin-bottom:20px}.vote-option{display:flex;align-items:center;gap:12px;border:1px solid #d0d5dd;border-radius:10px;padding:14px 16px;cursor:pointer;background:#fff}.vote-option:hover{border-color:#98a2b3;background:#f8fafc}.vote-option input{width:18px;height:18px}.vote-option span{font-weight:600}.vote-submit{width:100%;padding:12px}.vote-help{margin:0 0 16px;color:#475467;line-height:1.5}.vote-counter{margin:0 0 14px;color:#667085;font-size:13px;font-weight:600}
@media(max-width:900px){.finance-cards{grid-template-columns:repeat(2,1fr)}.game-card{align-items:flex-start;flex-direction:column}.game-actions{justify-content:flex-start}.correction-grid{grid-template-columns:1fr}}
@media(max-width:760px){.admin-menu,.player-menu{grid-template-columns:1fr}.game-summary,.vote-stats{grid-template-columns:1fr}.next-game{flex-direction:column;align-items:stretch}.kit-box{min-width:0}.teams{grid-template-columns:1fr}.container,main{padding:22px 12px 45px}.site-header{padding:0 15px}.site-header nav{gap:10px}.inline-form,.finance-filter,.generate-month-form,.expense-form{align-items:stretch;flex-direction:column}.finance-filter label input,.expense-form input{width:100%}.extra-form{grid-template-columns:1fr;align-items:stretch}.extra-form button{width:100%}.money-input{max-width:220px}.finance-cards{grid-template-columns:1fr}.heading-actions{width:100%}.page-heading{flex-direction:column}.game-actions{width:100%}.game-actions .btn{flex:1;text-align:center}.vote-live-header{flex-direction:column}.vote-refresh{text-align:left}.vote-result-row{grid-template-columns:1fr 1fr 40px}.candidate-grid{grid-template-columns:1fr}}

/* PONTO 14 — optimização mobile da área do jogador */
.player-action-card{margin-bottom:20px}
.player-action-card h3{margin-top:0;margin-bottom:5px}
.player-action-buttons{margin-top:14px}
.player-action-buttons form{flex:1;min-width:150px}
.player-big-btn{min-height:44px;padding:11px 16px;font-weight:700}
.player-action-buttons .player-big-btn{width:100%}
.player-card-title{display:flex;align-items:center;gap:9px}.player-card-title h3{margin:0}.player-card-icon{font-size:23px}
.next-game-location{font-size:15px;color:#475467}
.player-payment-list{display:grid;gap:12px;margin-bottom:20px}
.player-payment-card{display:grid;grid-template-columns:1.1fr 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:16px;box-shadow:0 3px 10px rgba(16,24,40,.035)}
.player-payment-main{min-width:0}.player-payment-ref{font-size:13px;font-weight:700;color:#667085}.player-payment-value{font-size:20px;font-weight:700;margin-top:3px}.player-payment-status{display:flex;flex-direction:column;gap:5px}.player-payment-status small{color:#667085}.player-status-pending{background:#fff7e6;color:#9a6700}.player-payment-action{text-align:right}.player-payment-action form{margin:0}.player-profile-card{background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:20px;margin:0 0 16px;box-shadow:0 3px 10px rgba(16,24,40,.035)}.player-profile-card h2{margin-top:0}.player-profile-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #eaecf0}.player-profile-row:first-child{padding-top:0}.player-profile-row:last-child{border-bottom:0;padding-bottom:0}.player-profile-row span{color:#667085}.player-profile-row strong{text-align:right}.player-password-form{display:grid;gap:14px;max-width:520px}.player-password-form label{display:grid;gap:6px;font-weight:600;color:#344054;font-size:14px}.player-password-form input{height:44px;padding:10px 12px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;font-size:16px}.player-vote-panel{max-width:760px}.player-vote-option{position:relative;min-height:54px;padding:15px 48px 15px 15px;transition:border-color .15s,background .15s,box-shadow .15s}.player-vote-option:has(input:checked){border-color:#243b64;background:#f7f9fd;box-shadow:0 0 0 1px #243b64}.player-vote-option input{flex:0 0 auto}.vote-checkmark{display:none;margin-left:auto;color:#243b64;font-weight:800}.player-vote-option:has(input:checked) .vote-checkmark{display:inline}.player-vote-options{gap:9px}

@media(max-width:760px){
  .site-header{height:auto;min-height:58px;padding:10px 12px;gap:10px}.brand{font-size:18px}.site-header nav{gap:7px;flex-wrap:wrap;justify-content:flex-end}.site-header nav a{font-size:13px;padding:5px 2px}
  .player-header h1{font-size:27px;line-height:1.15}.player-header .muted{font-size:14px}
  .player-next-game{padding:18px;margin-bottom:18px;gap:16px}.player-next-game h2{font-size:22px;line-height:1.25}.player-next-game h2 span{padding:0 2px}.next-game-location{font-size:14px}.player-kit-box{padding:14px}.player-kit-box strong{font-size:19px}
  .player-menu{gap:10px;margin-bottom:18px}.player-menu-card{min-height:76px;padding:14px 13px;gap:11px}.player-menu-card .menu-icon{font-size:24px}.player-menu-card .menu-card-text{min-width:0;flex:1}.player-menu-card strong{font-size:15px}.player-menu-card small{font-size:12px}.player-menu-card .arrow{font-size:25px}
  .player-action-card{padding:16px;margin:14px 0}.player-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.player-action-buttons form{min-width:0}.player-big-btn{width:100%;min-height:46px}
  .player-page-heading{gap:5px;margin-bottom:18px}.player-page-heading h1{font-size:26px}.player-page-heading p{font-size:14px}.player-page-heading .back{font-size:13px}
  .player-table-wrap{border:0;background:transparent;overflow:visible}.player-history-table{display:block}.player-history-table thead{display:none}.player-history-table tbody{display:grid;gap:10px}.player-history-table tr{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:11px 13px;box-shadow:0 2px 8px rgba(16,24,40,.03)}.player-history-table td{display:flex;align-items:baseline;gap:7px;padding:6px 0;border:0;font-size:14px;min-width:0}.player-history-table td::before{content:attr(data-label);font-size:11px;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.04em;flex:0 0 auto}.player-history-table td:nth-child(3),.player-history-table td:nth-child(4),.player-history-table td:nth-child(5){grid-column:1 / -1}.player-history-table td:nth-child(3){overflow-wrap:anywhere}.player-history-table .state{font-size:11px}
  .player-payment-card{grid-template-columns:1fr auto;gap:10px 14px;padding:14px}.player-payment-main{grid-column:1}.player-payment-status{grid-column:2;align-items:flex-end;text-align:right}.player-payment-action{grid-column:1 / -1;text-align:left;border-top:1px solid #eaecf0;padding-top:10px}.player-payment-action .player-big-btn{width:100%}.player-payment-action .muted{font-size:13px}
  .player-profile-card{padding:16px}.player-profile-row{font-size:14px;gap:12px}.player-profile-row strong{max-width:60%;overflow-wrap:anywhere}.player-password-form{max-width:none}.player-password-form input{font-size:16px}
  .player-vote-panel{padding:16px}.player-vote-option{min-height:58px;padding:15px 42px 15px 13px}.player-vote-option span{font-size:15px}.vote-help{font-size:14px}.vote-submit{font-size:15px}
}
@media(max-width:380px){
  .site-header{align-items:flex-start}.site-header nav{gap:5px}.site-header nav a{font-size:12px}.brand{font-size:17px}.player-header h1{font-size:24px}.player-action-buttons{grid-template-columns:1fr}.player-payment-card{grid-template-columns:1fr}.player-payment-status{grid-column:1;align-items:flex-start;text-align:left}.player-payment-action{grid-column:1}.player-history-table tr{grid-template-columns:1fr}.player-history-table td:nth-child(3),.player-history-table td:nth-child(4),.player-history-table td:nth-child(5){grid-column:auto}
}

.month-picker{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:16px 0 22px}.month-picker label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#344054}.month-picker select,.month-picker button{height:40px;padding:8px 11px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;font-size:14px}.mvp-month-winner{background:#fff8e1;border:1px solid #f2d39b;border-radius:14px;padding:20px;margin:18px 0 22px}.mvp-month-winner .eyebrow{font-size:12px;font-weight:700;color:#8a6116;text-transform:uppercase;letter-spacing:.06em}.mvp-month-winner h2{font-size:28px;margin:6px 0}.mvp-month-winner p{margin:4px 0;color:#667085}.mvp-ranking{display:flex;flex-direction:column;gap:9px}.mvp-ranking-row{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #e4e7ec;border-radius:10px;padding:12px 14px}.mvp-ranking-pos{font-weight:800;color:#667085}.mvp-ranking-name{font-weight:700}.mvp-ranking-votes{font-weight:800}.mvp-empty{background:#f8fafc;border:1px solid #e4e7ec;border-radius:12px;padding:18px;color:#667085}
@media(max-width:760px){.month-picker{flex-direction:column;align-items:stretch}.month-picker select,.month-picker button{width:100%}.mvp-month-winner{padding:17px}.mvp-month-winner h2{font-size:23px}.mvp-ranking-row{grid-template-columns:34px 1fr auto;padding:11px 12px}}
