:root{--navy:#071426;--navy2:#0b203a;--blue:#347fdc;--line:rgba(102,174,235,.22);--muted:#adc1dc}
html{background:#071426}body{background:radial-gradient(circle at 82% 5%,rgba(74,144,220,.14),transparent 30%),radial-gradient(circle at 38% 88%,rgba(50,103,166,.15),transparent 34%),linear-gradient(145deg,#071426,#0b203a 48%,#102d4f)}
.sidebar{background:radial-gradient(circle at 50% 2%,rgba(70,140,215,.16),transparent 28%),linear-gradient(180deg,#08162a,#0c2543 56%,#071426)}
.hero{background:radial-gradient(circle at 78% 26%,rgba(74,144,220,.20),transparent 24%),linear-gradient(115deg,#09182c,#0d2b4b 55%,#16436f)}
.panel,.card,.tab,.info-box,.doc-card,.athlete-card,.field-panel,.inline-form,.postgame-box,.match-card>div:not(.match-teams),.ficha-tab-body{background:radial-gradient(circle at 96% 5%,rgba(74,144,220,.08),transparent 28%),linear-gradient(145deg,#102d4f,#0b203a 66%,#09192c)}
.panel-head{background:radial-gradient(circle at 90% 20%,rgba(74,144,220,.12),transparent 28%),linear-gradient(90deg,#0b203a,#12365a)}
input,select,textarea,.player-line,.ficha-grid .mini,.metric-field{background:#0d2745}.nav button.active{background:linear-gradient(90deg,#286fc5,#164b86)}table{background:#0b203a}th{background:#12365a}tr:hover td{background:#113154}
.lineup-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.lineup-check{padding:11px 12px;border-radius:11px;background:#0d2745;border:1px solid rgba(102,174,235,.2)}.lineup-check strong,.lineup-check span{display:block}.lineup-check span{font-size:11px;color:var(--muted);margin-top:3px}.lineup-check.ok{border-color:rgba(69,201,143,.35);background:rgba(21,102,72,.22)}.lineup-check.warn{border-color:rgba(242,199,107,.4);background:rgba(102,72,20,.25)}
.panel-head h3{letter-spacing:.1px}.panel-body{line-height:1.55}.btn{transition:transform .15s ease,filter .15s ease}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}label{margin-bottom:6px}.empty-state{line-height:1.55}
.nav-group{margin:5px 0 10px}.nav .nav-group-toggle{display:grid;grid-template-columns:34px 1fr 24px;align-items:center;width:100%;margin:0;padding:11px 12px;color:#fff;background:rgba(18,54,90,.72);border:1px solid rgba(102,174,235,.18);border-radius:12px;text-align:left}.nav .nav-group-toggle:hover{padding-left:12px;background:#173f68}.nav-group-toggle strong{font-size:12px;letter-spacing:.3px}.nav-chevron{font-size:17px;text-align:center;transition:transform .18s ease}.nav-group-toggle.open .nav-chevron{transform:rotate(180deg)}.nav-group-items{padding:5px 0 0 9px;border-left:1px solid rgba(102,174,235,.22);margin-left:17px}.nav-group-items[hidden]{display:none}.nav-group-items button[data-view]{width:calc(100% - 3px);margin:2px 0;padding:10px 12px;font-size:11px}.nav-group-items button[data-view] .ico{width:28px;height:28px;font-size:13px}
/* A métrica de .pdf-doc (largura/altura/padding/box-sizing) vive só em
   css/styles.css. Aqui ficam apenas regras de quebra de página. */
.pdf-doc table{break-inside:auto}.pdf-doc tr{break-inside:avoid}
@media(max-width:760px){.lineup-status{grid-template-columns:1fr}}
/* Bloco @media print removido: era uma duplicata do css/print.css e competia
   com ele por especificidade. Todas as regras de impressão vivem em print.css. */
