.guest-body{background:#070707 url('../fundo.png') center/cover fixed no-repeat!important;color:#f4f4f4;position:relative}.guest-body::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.56);pointer-events:none}.guest-shell{position:relative;z-index:1}.guest-body .login-card{background:rgba(17,17,17,.94);box-shadow:0 24px 70px rgba(0,0,0,.55)}
.guest-body{background:#070707;color:#f4f4f4}.guest-shell{width:min(440px,100%)}.guest-body .login-card{background:#111;border:1px solid #2b2b2b;box-shadow:0 24px 70px rgba(0,0,0,.45)}.guest-body .login-mark{display:flex;align-items:center;justify-content:center;width:92px;height:72px;margin-bottom:22px;background:transparent;border-radius:0}.guest-body .login-mark img{display:block;width:92px;height:72px;object-fit:contain}.guest-body .eyebrow{color:#53dfa0}.guest-body h1{color:#f4f4f4}.guest-body .muted{color:#a1a1a1}.guest-body .form-stack label{color:#f4f4f4}.guest-body .form-stack input{background:#0b0b0b;border-color:#383838;color:#f4f4f4}.guest-body .form-stack input:focus{border-color:#16a56a;box-shadow:0 0 0 4px rgba(22,165,106,.18)}.guest-body .button{background:#16a56a;color:#fff}.guest-body .alert{background:#35151a;color:#ff929e}
.brand img{display:block;width:180px;height:76px;object-fit:contain;border-radius:0;background:transparent}
:root{--primary:#16a56a;--primary-dark:#087c4c;--dark:#10231b;--muted:#64736d;--light:#f3f7f5;--white:#fff;--danger:#c83e4d;--border:#dce7e1;--shadow:0 18px 45px rgba(16,35,27,.10)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--dark);background:var(--light)}a{text-decoration:none;color:inherit}.guest-body{min-height:100vh;background:radial-gradient(circle at top right,#d3f7e5 0,transparent 38%),var(--light);display:grid;place-items:center;padding:24px}.guest-shell{width:min(440px,100%)}.login-card,.error-card{background:var(--white);padding:38px;border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow)}.login-mark,.brand span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--primary);color:white;font-weight:900}.eyebrow{font-size:.72rem;letter-spacing:.14em;font-weight:800;color:var(--primary-dark);margin:20px 0 8px}h1,h2,p{margin-top:0}h1{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:10px}.muted{color:var(--muted);line-height:1.55}.form-stack{display:grid;gap:18px;margin-top:28px}.form-stack label{display:grid;gap:7px;font-weight:700;font-size:.88rem}.form-stack input{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:10px;font:inherit;outline:none}.form-stack input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(22,165,106,.12)}.button{display:inline-flex;justify-content:center;border:0;border-radius:10px;background:var(--primary);color:white;padding:13px 18px;font-weight:800;cursor:pointer}.alert{background:#fff0f2;color:var(--danger);padding:12px 14px;border-radius:10px;margin-top:20px}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--dark);color:white;padding:25px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:1.05rem;font-weight:900;margin-bottom:38px}.brand span{width:38px;height:38px;border-radius:10px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:12px;border-radius:9px;color:#bcd0c7}.sidebar nav a.active{background:rgba(255,255,255,.09);color:white}.sidebar small{float:right;color:#7d9a8e}.sidebar form{margin-top:auto}.logout{width:100%;padding:11px;background:transparent;border:1px solid #385047;border-radius:9px;color:white;cursor:pointer}.main-content{padding:42px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px}.status-badge{background:#d9f6e8;color:var(--primary-dark);padding:8px 12px;border-radius:999px;font-weight:800;font-size:.78rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric-grid article,.panel{background:white;border:1px solid var(--border);border-radius:16px;padding:22px}.metric-grid span,.metric-grid small{display:block;color:var(--muted)}.metric-grid strong{display:block;font-size:2rem;margin:10px 0}.panel{margin-top:22px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;color:var(--primary-dark);font-weight:700}.error-card{text-align:center}.error-card>span{font-size:4rem;font-weight:900;color:var(--primary)}@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}.check-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.app-shell{display:block}.sidebar{position:static;height:auto;padding:16px}.sidebar nav{display:none}.sidebar form{position:absolute;right:16px;top:16px}.brand{margin:0}.main-content{padding:24px 16px}.page-header{display:block}.status-badge{display:inline-block;margin-bottom:18px}.metric-grid,.check-grid{grid-template-columns:1fr}}

.button.secondary{background:#fff;color:var(--dark);border:1px solid var(--border)}.button.danger{background:var(--danger)}.toast-message{position:fixed;right:24px;top:20px;z-index:10;padding:14px 18px;border-radius:12px;box-shadow:var(--shadow);font-weight:700;background:#d9f6e8;color:var(--primary-dark);animation:toast-out .3s ease 4s forwards}.toast-message.error{background:#fff0f2;color:var(--danger)}@keyframes toast-out{to{opacity:0;transform:translateY(-10px);pointer-events:none}}.filter-panel{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(130px,1fr)) auto auto;gap:12px;align-items:end;background:#fff;border:1px solid var(--border);padding:18px;border-radius:16px;margin-bottom:18px}.filter-panel label,.form-grid label{display:grid;gap:7px;font-weight:700;font-size:.82rem}.filter-panel input,.filter-panel select,.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--dark);font:inherit;outline:none}.filter-panel input:focus,.filter-panel select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(22,165,106,.1)}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:16px}.data-table{border-collapse:collapse;width:100%;min-width:760px}.data-table th,.data-table td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.data-table th{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f9fbfa}.data-table tr:last-child td{border:0}.person-cell{display:flex;align-items:center;gap:12px}.person-cell>img,.person-cell>span{width:42px;height:42px;border-radius:50%;object-fit:cover}.person-cell>span{display:grid;place-items:center;background:#d9f6e8;color:var(--primary-dark);font-weight:900}.person-cell small,.block-muted,.simple-list small{display:block;color:var(--muted);margin-top:3px}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:800;background:#eef2f0;color:var(--muted)}.status-pill.active{background:#d9f6e8;color:var(--primary-dark)}.status-pill.suspended{background:#fff0d8;color:#9a6400}.actions{white-space:nowrap}.actions a{color:var(--primary-dark);font-weight:700;margin-left:12px;font-size:.85rem}.pagination{display:flex;gap:6px;margin-top:18px}.pagination a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:9px;background:#fff}.pagination a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.empty-state{text-align:center;background:#fff;border:1px dashed var(--border);border-radius:16px;padding:55px}.empty-state>div{font-size:3rem;color:var(--primary)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0}.form-section-title{grid-column:1/-1;border-bottom:1px solid var(--border);padding:8px 0;margin-top:12px}.form-section-title h2{margin-bottom:4px}.span-2,.span-all{grid-column:1/-1}.form-grid label>small{font-weight:400;color:var(--muted)}.form-grid .field-error{color:var(--danger);font-weight:700}.form-actions{display:flex;justify-content:flex-end;padding-top:10px}.profile-header{margin-top:0;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center}.profile-photo img,.profile-photo span{width:110px;height:110px;border-radius:24px;object-fit:cover}.profile-photo span{display:grid;place-items:center;background:#d9f6e8;color:var(--primary-dark);font-size:2.5rem;font-weight:900}.profile-identity h1{margin:8px 0 2px}.profile-identity>p{color:var(--muted);margin-bottom:12px}.profile-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.profile-actions{display:flex;gap:8px;align-items:center}.profile-actions form{margin:0}.stat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:20px}.stat-grid article{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}.stat-grid span,.stat-grid small{display:block;color:var(--muted);font-size:.78rem}.stat-grid strong{display:block;font-size:1.6rem;margin:7px 0}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:0}.details dt{font-size:.75rem;color:var(--muted);margin-bottom:4px}.details dd{margin:0;font-weight:700}.simple-list{list-style:none;margin:0;padding:0}.simple-list li+li{border-top:1px solid var(--border)}.simple-list a{display:block;padding:11px 0}
@media(max-width:1100px){.filter-panel{grid-template-columns:repeat(3,1fr)}.filter-search{grid-column:span 2}.stat-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.filter-panel,.form-grid,.detail-grid{grid-template-columns:1fr}.filter-search,.span-2,.span-all,.form-section-title{grid-column:1}.profile-header{grid-template-columns:1fr;text-align:center}.profile-photo{margin:auto}.profile-meta,.profile-actions{justify-content:center}.stat-grid{grid-template-columns:repeat(2,1fr)}}
.team-filters{grid-template-columns:minmax(250px,1fr) 180px auto auto}.team-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.team-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;transition:.2s}.team-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.team-card-top{display:flex;align-items:flex-start;justify-content:space-between}.team-card-top>img,.team-card-top>span:first-child{width:54px;height:54px;border-radius:15px;object-fit:cover}.team-card-top>span:first-child{display:grid;place-items:center;background:#d9f6e8;color:var(--primary-dark);font-weight:900;font-size:1.1rem}.team-card h2{font-size:1.15rem;margin:18px 0 6px}.team-members{font-weight:700;margin-bottom:7px}.card-actions{display:flex;gap:18px;border-top:1px solid var(--border);padding-top:14px;margin-top:16px}.card-actions a{color:var(--primary-dark);font-weight:800;font-size:.84rem}.history-lock{color:#8a5b00;background:#fff5d9;padding:10px 12px;border-radius:9px;margin:8px 0 0}.team-photo span{font-size:1.7rem}.player-pair{display:flex;gap:10px;flex-wrap:wrap}.player-pair a{background:var(--light);border:1px solid var(--border);padding:9px 12px;border-radius:10px;font-weight:800}.player-pair small{display:block;color:var(--muted);font-weight:400;margin-top:2px}.table-wrap.embedded{border-radius:10px;box-shadow:none}@media(max-width:1000px){.team-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.team-filters,.team-card-grid{grid-template-columns:1fr}}
.tournament-list{display:grid;gap:14px}.tournament-row{display:grid;grid-template-columns:180px 1fr;background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden}.tournament-cover{min-height:145px;background:linear-gradient(135deg,var(--event-primary),var(--dark));display:grid;place-items:center}.tournament-cover img{width:100%;height:100%;object-fit:cover}.tournament-cover span{color:#fff;font-weight:900;font-size:2rem}.tournament-main{display:grid;grid-template-columns:1fr auto;gap:14px;padding:20px}.tournament-main h2{margin:8px 0 5px}.tournament-main .card-actions{grid-column:1/-1;margin:0}.event-date{text-align:center;background:var(--light);border-radius:12px;padding:12px;min-width:70px}.event-date strong,.event-date small{display:block}.event-date strong{font-size:1.15rem}.tournament-status.registration_open{background:#d9f6e8;color:var(--primary-dark)}.tournament-status.in_progress{background:#dcecff;color:#175a9e}.tournament-status.finished{background:#e9e8ff;color:#4c42a8}.tournament-status.cancelled{background:#fff0f2;color:var(--danger)}.checkbox-field{display:flex!important;grid-template-columns:auto 1fr;align-items:center;background:var(--light);padding:12px;border-radius:10px}.checkbox-field input{width:18px}.event-hero{position:relative;min-height:260px;border-radius:20px;overflow:hidden;background:linear-gradient(125deg,var(--event-secondary),var(--event-primary));color:#fff}.event-banner{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.25}.event-overlay{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;min-height:260px;padding:32px}.event-brand img,.event-brand span{width:90px;height:90px;border-radius:20px;object-fit:contain;background:#fff}.event-brand span{display:grid;place-items:center;color:var(--event-primary);font-size:1.8rem;font-weight:900}.event-overlay h1{margin:9px 0}.event-overlay p{margin:0;color:rgba(255,255,255,.8)}.event-stats .date-value{font-size:1.05rem}.text-content{line-height:1.7;color:#41534b}.details .span-all{grid-column:1/-1}@media(max-width:760px){.tournament-row{grid-template-columns:1fr}.tournament-cover{min-height:110px}.event-overlay{grid-template-columns:1fr;text-align:center}.event-brand{margin:auto}.event-overlay .profile-actions{justify-content:center}}
.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel-heading a{color:var(--primary-dark);font-weight:800}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px}.category-card-head{display:flex;justify-content:space-between;align-items:center}.category-card h2{margin:18px 0 5px}.category-card dl{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0 0}.category-card dt{font-size:.72rem;color:var(--muted)}.category-card dd{margin:3px 0 0;font-weight:800}.category-card form{margin:0}.link-button{border:0;background:none;padding:0;font:inherit;font-weight:800;cursor:pointer}.danger-text{color:var(--danger)}.subgrid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.tiebreak-list{display:grid;gap:9px}.tiebreak-list label{display:grid;grid-template-columns:42px 1fr;align-items:center}.tiebreak-list label>span{display:grid;place-items:center;background:var(--dark);color:#fff;height:42px;border-radius:9px 0 0 9px}.tiebreak-list select{border-radius:0 9px 9px 0}@media(max-width:1000px){.category-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.category-grid,.subgrid{grid-template-columns:1fr}}
.registration-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.registration-kpis article{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px}.registration-kpis span{display:block;color:var(--muted);font-size:.76rem}.registration-kpis strong{display:block;font-size:1.35rem;margin-top:6px}.registration-filters{grid-template-columns:minmax(210px,1.5fr) repeat(4,minmax(130px,1fr)) auto auto}.registration-confirmed,.payment-paid{background:#d9f6e8;color:var(--primary-dark)}.registration-waitlist{background:#fff5d9;color:#8a5b00}.registration-cancelled,.registration-disqualified,.payment-cancelled{background:#fff0f2;color:var(--danger)}.payment-courtesy{background:#e9e8ff;color:#4c42a8}.inline-form{display:inline;margin-left:12px}@media(max-width:1100px){.registration-filters{grid-template-columns:repeat(3,1fr)}.registration-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.registration-filters,.registration-kpis{grid-template-columns:1fr}}
.draw-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:20px;display:grid;gap:18px}.draw-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.draw-methods label{cursor:pointer}.draw-methods input{position:absolute;opacity:0}.draw-methods span{display:block;height:100%;padding:16px;border:2px solid var(--border);border-radius:12px}.draw-methods input:checked+span{border-color:var(--primary);background:#effbf5}.draw-methods strong,.draw-methods small{display:block}.draw-methods small{color:var(--muted);margin-top:5px;line-height:1.4}.draw-panel>.button{justify-self:start}.draw-panel>.button:disabled{opacity:.45;cursor:not-allowed}.manual-assignment{border-top:1px solid var(--border);padding-top:16px}.manual-assignment>label{display:grid;grid-template-columns:1fr 180px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.manual-assignment small{display:block;color:var(--muted);margin-top:3px}.manual-assignment select{padding:10px;border:1px solid var(--border);border-radius:9px}.group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.group-board{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden}.group-board>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:var(--dark);color:#fff}.group-board>header p{font-size:.65rem;letter-spacing:.16em;margin:0;color:#9ab3a8}.group-board>header h2{font-size:1.8rem;margin:0}.group-board>header>span{font-size:.78rem;color:#bcd0c7}.group-board ol{list-style:none;margin:0;padding:0}.group-board li{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.group-position{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#d9f6e8;color:var(--primary-dark);font-weight:900}.group-board li small{display:block;color:var(--muted);margin-top:3px}.group-board footer{display:flex;justify-content:space-between;padding:12px 18px;background:var(--light);font-size:.75rem;color:var(--muted)}@media(max-width:800px){.draw-methods,.group-grid{grid-template-columns:1fr}.manual-assignment>label{grid-template-columns:1fr}}
.match-generation{display:flex;align-items:center;justify-content:space-between;gap:20px}.match-generation p:last-child{margin-bottom:0}.rounds-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;margin-top:20px}.match-group-title{background:var(--dark);color:#fff;margin:22px -22px 10px;padding:12px 22px}.round-label{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-dark);margin:16px 0 7px}.match-row{display:grid;grid-template-columns:42px 1fr 25px 1fr 100px;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;margin-bottom:7px}.match-row>span,.match-row>small{color:var(--muted);font-size:.75rem}.match-row>b{text-align:center;color:var(--muted)}@media(max-width:700px){.match-generation{display:block}.match-generation form{margin-top:16px}.match-row{grid-template-columns:32px 1fr 20px 1fr}.match-row>small{grid-column:2/-1}}
.match-filters{grid-template-columns:repeat(4,minmax(140px,1fr)) auto auto}.score-summary{font-size:1.15rem;font-weight:900}.match-finished{background:#d9f6e8;color:var(--primary-dark)}.match-in_progress{background:#fff5d9;color:#8a5b00}.match-cancelled{background:#fff0f2;color:var(--danger)}.score-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:26px}.score-teams{display:grid;grid-template-columns:1fr 40px 1fr;gap:18px;align-items:center;text-align:center}.score-teams article{background:var(--light);border-radius:14px;padding:20px}.score-teams span{display:block;color:var(--muted);font-size:.75rem;margin-bottom:7px}.score-teams strong{font-size:1.2rem}.score-teams>b{font-size:1.4rem;color:var(--muted)}.score-rules{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.score-rules span{background:#eef2f0;padding:7px 10px;border-radius:999px;color:var(--muted);font-size:.76rem;font-weight:800}.set-grid{display:grid;grid-template-columns:70px 1fr 1fr;gap:10px;align-items:center;margin-top:22px}.set-grid>span{text-align:center;color:var(--muted);font-size:.76rem;font-weight:800}.set-grid>strong{text-align:center}.set-grid input{width:100%;padding:14px;border:1px solid var(--border);border-radius:10px;text-align:center;font-size:1.25rem;font-weight:900}.set-grid input:disabled{background:var(--light);color:var(--dark)}.score-notes{display:grid;gap:7px;margin-top:20px;font-size:.82rem;font-weight:800}.score-notes textarea{padding:12px;border:1px solid var(--border);border-radius:10px;font:inherit}.score-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--border);margin-top:22px;padding-top:20px}.score-actions p{color:var(--muted);font-size:.82rem;margin:0}.result-lock{margin-top:22px;padding:14px;border-radius:10px;background:#d9f6e8;color:var(--primary-dark);font-weight:800}@media(max-width:800px){.match-filters{grid-template-columns:1fr 1fr}.score-teams{grid-template-columns:1fr}.score-actions{display:block}.score-actions .button{width:100%;margin-top:14px}}@media(max-width:520px){.match-filters{grid-template-columns:1fr}.score-card{padding:18px}.set-grid{grid-template-columns:45px 1fr 1fr}}
