:root{--bg:#f4f7f6;--ink:#14221d;--muted:#62716b;--brand:#6b1d2c;--brand2:#173f2f;--line:#dce5e1;--card:#fff;--ok:#18794e;--shadow:0 16px 40px rgba(20,34,29,.10)}*{box-sizing:border-box}body{margin:0;font:14px/1.45 Inter,system-ui,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}input,select,textarea,button{font:inherit}input,select,textarea{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;outline:none;text-transform:none}input:focus,select:focus,textarea:focus{border-color:#7f9f90;box-shadow:0 0 0 3px rgba(23,63,47,.08)}textarea{min-height:90px;resize:vertical}label{display:flex;gap:7px;flex-direction:column;font-size:12px;font-weight:800;letter-spacing:.04em}button,a{cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border:0;border-radius:10px;background:var(--brand2);color:#fff;text-decoration:none;font-weight:850;letter-spacing:.03em}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.success{background:var(--ok)}.public-shell{max-width:1050px;margin:auto;padding:26px}.public-shell.narrow{max-width:720px}.hero{display:flex;align-items:center;gap:20px;padding:28px 0}.crest{width:72px;height:72px;object-fit:contain}.crest.big{width:105px;height:105px}.hero h1,.top h1,.confirm-card h1,.login-card h1{margin:3px 0;font-size:clamp(26px,4vw,42px);line-height:1}.hero p,.top p{margin:8px 0;color:var(--muted)}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.13em;color:var(--brand)}.event-card{display:grid;grid-template-columns:1fr auto auto;gap:16px;background:linear-gradient(135deg,#173f2f,#251a21);color:#fff;padding:20px;border-radius:18px;box-shadow:var(--shadow);margin-bottom:18px}.event-card div{display:flex;gap:3px;flex-direction:column}.event-card span,.event-card small{opacity:.72}.form-card,.confirm-card,.login-card,.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.form-card{padding:24px}.steps{display:flex;gap:8px;overflow:auto;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:22px}.steps span{white-space:nowrap;padding:8px 11px;border-radius:999px;background:#edf2ef;color:var(--muted);font-weight:800;font-size:11px}.steps .active{background:var(--brand2);color:#fff}.step{display:none}.step.active{display:block}.step h2,.panel h2{font-size:17px;margin:0 0 18px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span2{grid-column:1/-1}.step-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.hidden{display:none!important}.hint,.notice{background:#f1f5f3;padding:12px 14px;border-radius:10px;color:var(--muted)}.check{display:flex;flex-direction:row;align-items:flex-start;margin:18px 0}.check input{width:auto;margin-top:3px}.review{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.review div{background:#f4f7f6;padding:12px;border-radius:10px}.review small,.confirm-grid small{display:block;color:var(--muted);font-size:10px}.review b,.confirm-grid b{display:block;margin-top:4px}.public-shell footer{text-align:center;color:var(--muted);padding:24px}.confirm-card{text-align:center;padding:34px}.protocol{display:inline-block;background:#171a18;color:#fff;padding:10px 14px;border-radius:9px;font-size:20px;font-weight:900;letter-spacing:.08em;margin:14px}.qr{width:170px;display:block;margin:8px auto}.qr.small{width:94px;margin:0}.confirm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:22px 0;text-align:left}.confirm-grid div{padding:13px;background:#f4f7f6;border-radius:10px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,#e1ece7,transparent 35%),#eef3f1}.login-card{width:min(420px,100%);padding:32px;display:flex;flex-direction:column;gap:15px;text-align:center}.login-card label{text-align:left}.password{display:flex}.password input{border-radius:10px 0 0 10px}.password button{width:48px;border:1px solid var(--line);background:#f4f7f6;border-radius:0 10px 10px 0}.error{background:#fde9e9;color:#8a2020;padding:12px;border-radius:10px}.admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.admin-shell aside{position:sticky;top:0;height:100vh;background:#13231d;color:#fff;padding:22px;display:flex;flex-direction:column}.admin-shell aside h3{margin:8px 0 0}.admin-shell aside>span{font-size:11px;opacity:.65}.admin-shell nav{display:flex;flex-direction:column;gap:6px;margin-top:30px}.admin-shell nav a{color:#d9e5e0;text-decoration:none;padding:11px;border-radius:9px;font-weight:700}.admin-shell nav a.active,.admin-shell nav a:hover{background:#29483c}.user{margin-top:auto;display:flex;flex-direction:column;border-top:1px solid #365247;padding-top:14px}.user small{opacity:.65}.user a{color:#fff;margin-top:8px}.admin-shell main{padding:26px;min-width:0}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.stats div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.stats small{display:block;color:var(--muted)}.stats b{font-size:28px}.filters{display:grid;grid-template-columns:2fr repeat(5,1fr) auto auto;gap:8px;background:#fff;padding:14px;border:1px solid var(--line);border-radius:14px;margin-bottom:16px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:980px}th,td{text-align:left;padding:13px;border-bottom:1px solid #edf1ef}th{font-size:10px;letter-spacing:.08em;color:var(--muted);background:#f8faf9}td small{display:block;color:var(--muted)}.status{display:inline-block;padding:5px 8px;border-radius:999px;background:#edf2ef;font-size:10px;font-weight:900}.s-aprovado{background:#dff5e9;color:#12633e}.s-convocado{background:#e7efff;color:#294f94}.s-não-aprovado{background:#fde5e5;color:#872323}.link{font-weight:850;color:var(--brand2);text-decoration:none}.empty{text-align:center;color:var(--muted);padding:28px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{padding:20px}.panel.span{grid-column:1/-1}dl{display:grid;grid-template-columns:150px 1fr;gap:8px 12px}dt{font-size:10px;color:var(--muted);font-weight:900}dd{margin:0;font-weight:650}.athlete-photo{max-width:230px;border-radius:14px;margin-top:16px}.timeline{margin-top:22px;border-left:2px solid var(--line);padding-left:18px}.timeline div{margin-bottom:14px}.timeline span{display:block;color:var(--muted);font-size:11px}.timeline p{margin:4px 0}.event-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.event-row div{display:flex;flex-direction:column}.event-row span{color:var(--muted);font-size:11px}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-shell aside{height:auto;position:relative;flex-direction:row;align-items:center;gap:12px}.admin-shell aside .crest{width:44px;height:44px}.admin-shell aside nav{margin:0 0 0 auto;flex-direction:row}.admin-shell aside>span,.admin-shell aside h3,.user{display:none}.stats{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.panel.span{grid-column:auto}}@media(max-width:650px){.public-shell{padding:14px}.hero{align-items:flex-start}.hero .crest{width:60px;height:60px}.event-card{grid-template-columns:1fr}.form-card{padding:16px}.grid{grid-template-columns:1fr}.span2{grid-column:auto}.review{grid-template-columns:1fr 1fr}.admin-shell main{padding:14px}.admin-shell aside nav a{font-size:0}.admin-shell aside nav a::first-letter{font-size:16px}.top{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}.confirm-grid{grid-template-columns:1fr}}@media print{.btn,.steps,footer{display:none!important}.confirm-card{box-shadow:none;border:0}}

/* V1.0.2 - FORMULÁRIO AMPLO, PREPARADO PARA IMAGEM DE FUNDO E FLUXO PÚBLICO */
.public-shell-wide{width:min(94vw,1600px);max-width:none;padding-left:20px;padding-right:20px}
.public-shell-wide .hero,.public-shell-wide .event-card,.public-shell-wide .form-card{width:100%}
.public-shell-wide .form-card{padding:30px 34px;background:rgba(255,255,255,.97);backdrop-filter:blur(3px)}
.public-shell-wide .grid{gap:20px 24px}
.public-shell-wide input,.public-shell-wide select{min-height:48px;padding:13px 15px}
.public-shell-wide textarea{min-height:110px;padding:13px 15px}
.public-shell-wide label{font-size:12.5px}
.public-shell-wide .step h2{font-size:19px;margin-bottom:22px}
.hero-copy{min-width:0}.public-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end}.public-actions .btn{white-space:nowrap}
.success-screen .success-message{font-size:15px;line-height:1.7;color:var(--ink);background:#f1f5f3;border-radius:14px;padding:16px 18px;margin:18px 0}.success-screen .motto{margin-top:22px;font-weight:900;letter-spacing:.06em;color:var(--brand)}
.confirm-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.recover-shell{padding-top:32px}.recover-hero{padding-bottom:18px}.recover-card{padding:28px}.recover-form{display:grid;gap:16px}.recover-results{display:grid;gap:10px;margin:18px 0}.recover-result{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;background:#f8faf9}.recover-result:hover{border-color:#8ca99b;background:#f1f6f3}.recover-result div{display:flex;flex-direction:column;gap:3px}.recover-result span{font-size:12px;color:var(--muted)}
@media(min-width:1500px){.public-shell-wide{width:min(92vw,1700px)}.public-shell-wide .form-card{padding:34px 40px}.public-shell-wide .grid{gap:22px 30px}}
@media(max-width:900px){.public-shell-wide{width:100%;padding:18px}.public-actions{width:100%;margin-left:0}.hero{flex-wrap:wrap}.public-actions .btn{width:100%}}
@media(max-width:650px){.public-shell-wide{padding:12px}.public-shell-wide .form-card{padding:16px}.recover-result{align-items:flex-start;flex-direction:column}}


/* V1.0.3 - FUNDO 4DEXPOSED OFICIAL DA AVALIACAO */
body.public-registration-bg{
  min-height:100vh;
  background:
    linear-gradient(rgba(5,10,9,.30),rgba(5,10,9,.38)),
    url('/static/fundo-avaliacao-4dexposed.png') center center / cover fixed no-repeat;
}
body.public-registration-bg .public-shell{position:relative;z-index:1}
body.public-registration-bg .hero{
  background:rgba(255,255,255,.91);
  border:1px solid rgba(255,255,255,.60);
  border-radius:18px;
  padding:20px 24px;
  margin:18px 0;
  box-shadow:0 14px 38px rgba(0,0,0,.20);
  backdrop-filter:blur(7px);
}
body.public-registration-bg .event-card{box-shadow:0 16px 42px rgba(0,0,0,.28)}
body.public-registration-bg .form-card,
body.public-registration-bg .confirm-card{
  background:rgba(255,255,255,.94);
  border-color:rgba(255,255,255,.68);
  backdrop-filter:blur(7px);
  box-shadow:0 18px 46px rgba(0,0,0,.24);
}
body.public-registration-bg footer{
  display:table;
  margin:18px auto 0;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:var(--ink);
  backdrop-filter:blur(5px);
}
@media(max-width:900px){
  body.public-registration-bg{background-attachment:scroll;background-position:center top}
  body.public-registration-bg .hero{padding:16px}
}

/* V1.0.4 - ABERTURA CINEMATICA E LIMPEZA AUTOMATICA POS-INSCRICAO */
body.entry-intro{overflow:hidden}
body.entry-intro .public-shell-wide{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
}
body.public-registration-bg .public-shell-wide{
  transition:opacity .65s ease, transform .65s ease, visibility 0s linear;
}
body.public-registration-bg:not(.entry-intro) .public-shell-wide{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
}
body.confirm-auto-hide .public-shell.narrow{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .5s ease, visibility .5s ease;
}
@media (prefers-reduced-motion: reduce){
  body.public-registration-bg .public-shell-wide,
  body.confirm-auto-hide .public-shell.narrow{transition:none}
}

/* V1.1.0 - GESTAO DE INSCRITOS, CHECK-IN, RESULTADOS E RELATORIOS */
.top-actions{display:flex;gap:8px;flex-wrap:wrap}.stats-six{grid-template-columns:repeat(6,1fr)}.filters-admin{grid-template-columns:1.3fr 1.8fr repeat(5,1fr) auto auto}.list-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;color:var(--muted);font-size:12px;font-weight:800}.check-ok{color:#12633e;font-weight:900}.muted{color:var(--muted)}.checkin-main{max-width:1600px}.checkin-search{display:grid;grid-template-columns:1.2fr 3fr auto;gap:10px;background:#fff;padding:18px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);margin-bottom:18px}.checkin-search input{font-size:18px;font-weight:800;min-height:54px}.checkin-results{display:grid;gap:12px}.checkin-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 8px 24px rgba(20,34,29,.07)}.checkin-card.checked{border-color:#8ac7a8;background:#f3fbf7}.checkin-person h2{margin:4px 0;font-size:24px}.checkin-person p{margin:0 0 5px;color:var(--muted)}.protocol-mini{font-size:11px;font-weight:900;letter-spacing:.1em;color:var(--brand)}.checkin-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.checkin-actions form{margin:0}.big-action{font-size:15px;padding:14px 20px}.toast-success,.checkin-banner{background:#dff5e9;color:#12633e;border:1px solid #a8dcc0;border-radius:12px;padding:13px 16px;font-weight:850;margin:0 0 14px}.empty-state{background:#fff;border:1px dashed var(--line);padding:32px;border-radius:16px;text-align:center;color:var(--muted)}.results-filter{grid-template-columns:2fr 1fr auto}.report-filter{grid-template-columns:2fr auto auto}.report-total{background:linear-gradient(135deg,#173f2f,#251a21);color:#fff;border-radius:18px;padding:22px;margin-bottom:16px}.report-total small{display:block;opacity:.7}.report-total b{font-size:42px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.metric-row:last-child{border-bottom:0}.metric-row span{font-weight:700}.metric-row b{font-size:18px}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.city-grid div{background:#f5f8f7;border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:8px}.s-compareceu{background:#e4f8ee;color:#12633e}.s-ausente{background:#fff1d8;color:#7b5610}.s-em-análise{background:#f0eaff;color:#5c3b92}.s-nova{background:#edf2ef;color:#47635a}
@media(max-width:1200px){.stats-six{grid-template-columns:repeat(3,1fr)}.filters-admin{grid-template-columns:1fr 1fr 1fr}.city-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.checkin-search{grid-template-columns:1fr}.checkin-card{align-items:flex-start;flex-direction:column}.checkin-actions{width:100%;justify-content:flex-start}.report-grid{grid-template-columns:1fr}.city-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.stats-six{grid-template-columns:1fr 1fr}.filters-admin,.results-filter,.report-filter{grid-template-columns:1fr}.checkin-person h2{font-size:20px}.checkin-actions .btn,.checkin-actions form{width:100%}.checkin-actions form .btn{width:100%}.city-grid{grid-template-columns:1fr}}
