@charset "UTF-8";
.optional-label{font-size:12px;font-weight:400;color:#687b73}
.additional-fields{margin:8px 0 24px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc;padding:16px}
.additional-fields summary{font-size:14px;font-weight:650;color:var(--brand);cursor:pointer}
.additional-fields summary span{font-size:12px;font-weight:400}
.additional-fields[open] summary{margin-bottom:16px}
.additional-fields fieldset{padding:18px;margin:20px 0;background:#fff}
.additional-fields legend{font-size:13px}
.additional-fields label:last-child{margin-bottom:0}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.profile-grid>label{min-width:0}
.candidate-profile{grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr)}
.candidate-profile dd{overflow-wrap:anywhere}
@media(max-width:760px){.profile-grid{grid-template-columns:minmax(0,1fr)}.candidate-profile{grid-template-columns:minmax(0,1fr);gap:4px}.candidate-profile dd{margin-bottom:16px}}
/* Alinhamento e acabamento da página pública do curso. */
.course-status{margin:8px 0 20px}
.columns.course-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:0;align-items:start}
.course-layout>.card{margin-bottom:0;padding:32px;min-width:0;border-radius:16px;box-shadow:0 8px 28px #20303b06}
.course-layout h2{margin:0 0 12px;font-size:24px}
.course-layout h2+p{margin:0 0 26px}
.course-layout .description{line-height:1.8}
.course-summary dl{grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr);gap:0;margin:28px 0 0;border-top:1px solid var(--line)}
.course-summary dt,.course-summary dd{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.course-summary dd{padding-left:16px}
.course-layout>.application-form{box-shadow:inset 0 3px 0 var(--brand),0 8px 28px #20303b06}
.application-form input:not([type=checkbox]){min-height:48px;background:#fbfcfc}
.application-form input:focus{background:#fff}
.application-form .privacy{border:1px solid #e5ece9;background:#f5f8f6;line-height:1.65}
.application-form .check{font-size:13px;line-height:1.6}
.application-form button{width:100%;min-height:48px}
@media(max-width:760px){.columns.course-layout{grid-template-columns:minmax(0,1fr);gap:24px}.course-layout>.card{padding:24px}.course-layout h2{font-size:22px}}
:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#20303b;background:#f4f6f8;font-size:16px;line-height:1.6;--brand:#185447;--line:#dce4e7}*{box-sizing:border-box}body{margin:0}a{color:var(--brand);text-underline-offset:4px}header{background:#fff;border-bottom:1px solid var(--line);padding:22px max(5vw,20px);display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-size:25px;font-weight:800;letter-spacing:-1px;text-decoration:none}.brand span{display:block;font-size:12px;font-weight:500;letter-spacing:.5px;color:#697a83}nav,.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}nav a{font-size:14px;text-decoration:none}nav form{margin:0}main{max-width:1240px;margin:auto;padding:52px 28px 72px;min-height:75vh}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:#55796f}h1{font-size:clamp(30px,4vw,48px);line-height:1.16;letter-spacing:-1.5px;margin:16px 0 24px}h2{font-size:22px;line-height:1.3;letter-spacing:-.5px}p{color:#54636d}.intro{font-size:18px;margin-bottom:32px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:24px}.card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:24px;box-shadow:0 4px 18px #23303b04}.grid .card{margin-bottom:0}.narrow{max-width:540px}.badge{display:inline-block;background:#e6f2eb;color:#256448;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.7px;padding:6px 10px;border-radius:5px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:32px}.description{white-space:normal;overflow-wrap:anywhere}label{display:block;font-size:14px;font-weight:600;margin-bottom:20px}input,textarea,select{display:block;width:100%;padding:12px 14px;border:1px solid #cbd5db;border-radius:7px;background:#fff;color:#20303b;font:inherit;margin-top:7px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:3px solid #b0d8cb;border-color:#185447}button,.button{display:inline-block;background:var(--brand);border:1px solid var(--brand);color:white;border-radius:7px;padding:12px 20px;font:inherit;font-size:14px;font-weight:650;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#103d33}.secondary{background:#fff;color:var(--brand)}.secondary:hover{color:#fff}.link{border:0;background:none;color:var(--brand);padding:0}.link:hover{background:none;text-decoration:underline}.check{display:flex;gap:10px;font-weight:400;align-items:flex-start}.check input{width:18px;height:18px;flex:none;margin-top:4px}.privacy{background:#f4f6f8;border-radius:8px;padding:16px;font-size:13px;color:#53656d;margin:20px 0}.alert,.success{padding:16px 20px;border-radius:7px;border:1px solid #e5beb5;background:#fff0ed;color:#8e3525}.success{background:#e8f4ed;border-color:#b9d8c5;color:#24573b}dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:14px;margin-top:30px}dt{color:#657780}dd{margin:0;font-weight:600}.stats{margin:32px 0 40px}.stats span{font-size:11px;letter-spacing:1.2px;color:#60736c}.stats strong{display:block;font-size:48px;line-height:1.5}.stats a{font-size:14px}.actions{font-size:13px;margin-top:20px}.table{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th,td{padding:18px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#eef2f3;font-size:12px}td form{display:flex;gap:8px;min-width:240px}td select{margin:0}td button{padding:8px 12px}.filters{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:30px 0}.filters label{margin:0;flex:1;min-width:180px}.pagination{margin-top:24px}footer{padding:24px max(5vw,20px);border-top:1px solid var(--line);font-size:12px;color:#697a83;display:flex;justify-content:space-between;gap:20px}.trap{display:none}code{font-size:12px;overflow-wrap:anywhere}@media(max-width:760px){header{align-items:flex-start;flex-direction:column}nav{gap:14px}main{padding:32px 20px}.columns{grid-template-columns:1fr;gap:24px}.card{padding:22px}h1{letter-spacing:-1px}footer{flex-direction:column}}

/* Vestibular e ficha do candidato */
.subnav{padding:14px 0 24px;margin-bottom:12px;border-bottom:1px solid var(--line)}
fieldset{min-width:0;border:1px solid var(--line);border-radius:12px;padding:24px;margin:12px 0 24px}
legend{padding:0 10px;font-size:15px;font-weight:700;color:var(--brand)}
.hint{display:block;font-size:12px;font-weight:400;color:#62736d;line-height:1.6;margin-top:8px}
.exam-list{margin-top:28px}
.question-options{padding-left:24px}
.question-options li{padding:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.question-prompt{font-size:18px;font-weight:600;color:#20303b;margin:0 0 24px;overflow-wrap:anywhere}
.candidate-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 28px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.candidate-bar span{font-size:14px;color:#61736b}
.exam-timer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;background:#e8f2ed;border:1px solid #c7ddcf;padding:18px 24px;border-radius:10px;margin-bottom:28px;color:#185447}
.exam-question{margin-bottom:24px}
.exam-option{display:flex;gap:14px;align-items:flex-start;font-size:15px;font-weight:400;border:1px solid var(--line);border-radius:9px;padding:14px 16px;cursor:pointer;margin-bottom:12px}
.exam-option:hover{background:#f5f9f7;border-color:#9bbcaf}
.exam-option:has(input:checked){background:#eaf4ee;border-color:#47816b}
.exam-option input{width:18px;height:18px;flex:none;margin:4px 0 0;accent-color:var(--brand)}
.exam-option span{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}
.exam-score{font-size:48px;font-weight:750;line-height:1.2;color:var(--brand)}
.exam-score span{font-size:16px;font-weight:400}
@media(max-width:760px){fieldset{padding:20px}.candidate-bar{align-items:flex-start}.exam-timer{padding:16px}.exam-submit .actions{align-items:stretch;flex-direction:column}.exam-option{padding:12px}.subnav{gap:16px}}
