
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#272d2e;background:#dce2df;color-scheme:light;--line:#d4dad8;--muted:#596364;--accent:#f7c83a}*{box-sizing:border-box}body{margin:0;line-height:1.5}.app{width:100%;max-width:430px;min-height:100dvh;margin:auto;background:#eff2f1}.topbar{height:64px;background:#2c3031;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 20px}.brand-logo{display:block;width:108px;height:32px;object-fit:contain;object-position:left center}.header-label{font-size:12px;color:#d6dcda}.preview{padding:12px 20px;background:#fff;border-bottom:1px solid var(--line)}.preview p{font-size:10px;color:#66716e;letter-spacing:.03em;margin:0 0 8px}.entry-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px}.entry-switch button{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px;min-height:40px;font-size:12px;color:var(--muted)}.entry-switch button[aria-pressed=true]{background:#e5eae8;color:#272d2e;border-color:#e5eae8;font-weight:600}main{padding:25px 20px 32px}h1{font-size:28px;line-height:1.18;letter-spacing:-.6px;font-weight:600;margin:0 0 12px}.intro{font-size:13px;color:var(--muted);margin:0 0 23px}.eyebrow{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#66716e;margin:0 0 8px}fieldset{padding:0;border:0;margin:0 0 23px}legend{font-size:13px;font-weight:600;margin-bottom:9px}.person-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}.person-switch label{display:flex;align-items:center;gap:8px;min-height:46px;padding:9px 11px;background:#fff;border:1px solid var(--line);border-radius:8px;font-size:13px;cursor:pointer}.person-switch label:has(input:checked){border-color:#b4c1b9;background:#e5eae8}.person-switch input{width:16px;height:16px;flex:none;accent-color:#b5871d;margin:0}.field{margin-bottom:17px}.field label{display:block;font-size:13px;font-weight:500;margin-bottom:7px}.field .optional{font-size:11px;font-weight:400;color:#66716e}.field input,.field select{display:block;width:100%;min-width:0;min-height:48px;padding:11px 12px;background:#fff;color:#272d2e;border:1px solid #cdd5d0;border-radius:8px;font-family:inherit;font-size:15px;box-shadow:none}.field select{padding-right:28px}.field input::placeholder{color:#849088}.help{font-size:11px;color:#66716e;margin:6px 0 0;line-height:1.45}.guardian-hint{border-left:2px solid #b5c6bb;padding-left:10px;font-size:11px;color:#526459;margin:-8px 0 18px}.review-note{display:flex;gap:9px;align-items:flex-start;padding-top:4px;margin:5px 0 19px;font-size:12px;color:#596364}.review-note svg{width:18px;height:18px;flex:none;margin-top:1px;stroke:#667a6e;fill:none;stroke-width:1.5}.primary,.secondary{width:100%;min-height:48px;border:1px solid var(--accent);border-radius:9px;background:var(--accent);color:#272d2e;font-size:14px;font-weight:600;padding:11px 14px}.secondary{background:#fff;border-color:var(--line);margin-top:11px;font-weight:500}.small-note{font-size:10px;line-height:1.5;color:#66716e;text-align:center;margin:12px 0 0}.error{font-size:12px;color:#8a3f36;background:#fff3ef;border-left:2px solid #b87568;padding:10px 12px;margin:0 0 15px}.success-icon{width:50px;height:50px;display:grid;place-items:center;border:1px solid #c1d3c6;border-radius:50%;color:#42634e;background:#e8efe9;margin:5px 0 21px}.success-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.6}.status{display:inline-block;font-size:11px;color:#765919;background:#fff5d6;border:1px solid #e2d4a9;padding:6px 9px;border-radius:7px;margin:3px 0 20px}.next{margin:0 0 23px;padding:0;list-style:none}.next li{padding:13px 0;border-bottom:1px solid var(--line);display:flex;gap:11px;font-size:13px;color:#596364}.next b{font-weight:600;color:#272d2e;font-size:11px}.simulation{font-size:11px;color:#66716e;border-left:2px solid #ccd6cf;padding-left:11px;margin:0 0 24px}.responsible-note{font-size:12px;color:#596364;margin:0 0 20px}button,input,select{font-family:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #3e4748;outline-offset:3px}[hidden]{display:none!important}h1[tabindex]:focus{outline:none}@media(max-width:350px){main{padding:23px 16px 28px}.topbar,.preview{padding-left:16px;padding-right:16px}h1{font-size:26px}.entry-switch button{font-size:11px}.person-switch label{font-size:12px;padding:9px}}

.photo-row{display:flex;align-items:center;gap:12px}.photo-frame{flex:none;width:66px;height:76px;border:1px solid var(--line);border-radius:9px;background:#e3e9e5;display:grid;place-items:center;overflow:hidden}.photo-frame svg{width:36px;height:36px;fill:none;stroke:#7d8e84;stroke-width:1.5}.photo-frame img{width:100%;height:100%;object-fit:cover}.photo-control{min-width:0;flex:1}.photo-control input{min-height:42px;padding:5px 0;background:transparent;border:0;border-radius:0;font-size:11px}.photo-control input::file-selector-button{font:inherit;border:1px solid #b9c6be;border-radius:7px;background:#fff;color:#272d2e;padding:9px 8px;margin-right:5px}.required-note{font-size:11px;color:#66716e;font-weight:400}.graduation{margin-bottom:20px}.graduation .field{margin-bottom:13px}.demo-link{display:block;text-align:center;text-decoration:none}.phase-links{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;font-size:11px}.phase-links a{color:#596364;text-underline-offset:3px}.photo-control .help{font-size:10px}

/* Cadastro do aluno: amarelo solicitado somente nestes controles. */
.entry-switch button,
.entry-switch button[aria-pressed="true"] {
  background: var(--accent);
  border-color: var(--accent);
  color: #272d2e;
}
.entry-switch button[aria-pressed="true"] {
  box-shadow: inset 0 0 0 2px #272d2e;
}
.person-switch label:has(input:checked) {
  background: var(--accent);
  border-color: var(--accent);
  color: #272d2e;
}
.person-switch input {
  accent-color: #272d2e;
}
.photo-control input::file-selector-button {
  background: var(--accent);
  border-color: var(--accent);
  color: #272d2e;
}

.entry-help{display:block;margin-top:20px;text-align:center;font-size:12px;color:#596364;text-underline-offset:3px}.entry-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-size:12px}.entry-consent input{margin:3px 0;flex:none;accent-color:#b5871d}.entry-credential-photo{width:120px;height:140px;object-fit:cover;border-radius:12px;margin:24px 0}.entry-switch{margin-bottom:18px}#entryFeedback{margin:16px 20px 0;padding:12px;font-size:12px}