.st-wrap { --st-blue:#102b59; --st-blue-d:#092047; --st-gold:#b48a45; --st-border:#dce3ed; --st-mute:#586679; --st-bg:#f6f8fb; font-family:inherit; color:#1a2a40; line-height:1.55; max-width:920px; margin:30px auto 70px; box-sizing:border-box; }
.st-wrap *, .st-wrap *::before, .st-wrap *::after {box-sizing:border-box}
.st-intro { background:linear-gradient(125deg, var(--st-blue-d), #194477); color:white; padding:clamp(28px,5vw,52px); border-radius:20px 20px 0 0; position:relative; overflow:hidden; }
.st-intro::after {content:''; border:1px solid rgba(255,255,255,.11); width:310px;height:310px;position:absolute;border-radius:50%;right:-135px;top:-145px;pointer-events:none}
.st-eyebrow {display:block;font-weight:700;letter-spacing:.13em;font-size:11px;color:#e0c592;margin-bottom:13px}
.st-intro h2 {font-size:clamp(26px,4vw,39px);line-height:1.16;letter-spacing:-.02em;margin:0 0 14px;color:#fff;font-weight:750}
.st-intro p {max-width:690px;font-size:15px;line-height:1.65;margin:0;color:#e5edfa}
.st-shell {border:1px solid var(--st-border); border-top:0; border-radius:0 0 20px 20px; padding:clamp(21px,4vw,42px); background:white; box-shadow:0 16px 36px rgba(14,37,75,.055);scroll-margin-top:30px;}
.st-stepper {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:34px;}
.st-step-label {display:flex;align-items:center;gap:7px;color:#708096; font-size:12px;font-weight:600;white-space:nowrap;}
.st-step-label b {width:29px;height:29px;flex:none;border:1px solid #cbd5e1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#6d7e91;font-size:12px;}
.st-step-label.st-current {color:var(--st-blue)}
.st-step-label.st-current b {background:var(--st-blue); color:white;border-color:var(--st-blue)}
.st-step-label.st-complete b {background:#e9f2ec;color:#286c45;border-color:#cbe2d2}
.st-panel {border:0;margin:0;padding:0;min-width:0;}
.st-wrap [hidden] {display:none!important;}
.st-panel legend {font-size:24px;line-height:1.25;color:var(--st-blue-d);font-weight:750;padding:0;margin-bottom:6px;}
.st-description {margin:0 0 26px;color:var(--st-mute);font-size:14px;line-height:1.6}
.st-grid {display:grid;grid-template-columns:1fr 1fr;gap:22px 19px;}
.st-field {display:flex; flex-direction:column; gap:8px; min-width:0; color:#293b55; font-size:13px;font-weight:650;}
.st-field .st-field-title {display:block;font-size:13px;font-weight:650;}
.st-field span[aria-hidden=true],.st-upload-title span {color:#a56a18}
.st-full {grid-column:1 / -1}
.st-field input,.st-field select,.st-field textarea {font:inherit; width:100%; max-width:100%;border:1px solid #c8d2df;border-radius:9px;min-height:44px;padding:10px 12px;background:#fff;color:#13243d;font-size:14px;font-weight:400;box-shadow:none;}
.st-field textarea {resize:vertical;}
.st-field input:focus,.st-field select:focus,.st-field textarea:focus,.st-upload input:focus {outline:2px solid #89a7d7;outline-offset:1px;border-color:#527cae}
.st-field input::placeholder,.st-field textarea::placeholder {color:#93a0ae;}
.st-checkgrid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 11px;margin-top:3px;}
.st-choice {display:flex; align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--st-border);border-radius:10px;min-width:0;cursor:pointer;font-size:13px;font-weight:500;color:#2d3e55;line-height:1.35;}
.st-choice:hover {background:#f5f8fd; border-color:#bbcadd}
.st-choice:has(input:checked) {background:#f0f4fb;border-color:#7393c5}
.st-choice input {width:16px;height:16px;min-height:16px;padding:0;flex:none;margin:0;accent-color:var(--st-blue)}
.st-choice span {min-width:0}
.st-checkgrid.st-invalid {outline:1px solid #b63838;outline-offset:4px;border-radius:8px}
.st-group-error {color:#a12a2a;font-weight:500;font-size:12px}
.st-upload {background:var(--st-bg);border:1px dashed #96a9c2;border-radius:13px;padding:22px;margin-bottom:26px;display:flex;flex-direction:column;gap:12px}
.st-upload label {font-weight:700; font-size:14px;color:var(--st-blue)}
.st-upload label small {display:block;font-size:12px;color:var(--st-mute);font-weight:400;margin-top:5px}
.st-upload input {font:inherit;font-size:13px;max-width:100%;color:#263950}
.st-upload input::file-selector-button {font:inherit;background:white;border:1px solid #b9c7d8;border-radius:7px;padding:7px 12px;margin-right:12px;cursor:pointer}
.st-privacy {display:flex;align-items:flex-start;gap:11px;font-weight:400;font-size:13px;line-height:1.65;color:#354760;cursor:pointer;margin-bottom:17px}
.st-privacy input {margin-top:5px;flex:none;accent-color:var(--st-blue)}
.st-privacy a {color:#1555a4;text-decoration:underline}
.st-muted {font-size:12px;color:#798394;margin-top:0}
.st-actions {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:31px;padding-top:22px;border-top:1px solid #e9edf3;}
.st-actions button {border:0;border-radius:9px;min-height:46px;padding:12px 22px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease}
.st-actions button:focus-visible {outline:3px solid #91acda;outline-offset:2px}
.st-actions button:disabled {opacity:.6;cursor:wait}
.st-next,.st-send {background:var(--st-blue);color:#fff;margin-left:auto}
.st-next:hover,.st-send:hover {background:#224b86}
.st-back {background:#eff3f8;color:#304d6d}
.st-back:hover {background:#e2eaf2}
.st-required {color:#758297;font-size:11px;margin:17px 0 0}
.st-status {border-radius:12px;padding:18px 22px;line-height:1.6;font-size:14px;margin-top:18px;}
.st-status.st-error {border:1px solid #e9b0b0;background:#fff4f4;color:#8b2525}
.st-status.st-success {border:1px solid #b6d9c1;background:#eff9f2;color:#225c3a;font-weight:600}
.st-status:focus {outline:0}
.st-hp {position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(100%)!important;left:-10000px!important}
@media(max-width:670px){.st-intro{border-radius:14px 14px 0 0}.st-shell{border-radius:0 0 14px 14px}.st-stepper{gap:6px}.st-step-label{font-size:10px;gap:3px;flex-direction:column;text-align:center;flex:1;white-space:normal}.st-step-label b{width:26px;height:26px}.st-grid{grid-template-columns:1fr;gap:19px}.st-full{grid-column:auto}.st-checkgrid{grid-template-columns:1fr}.st-panel legend{font-size:22px}.st-actions button{padding:11px 14px}}

.st-smallnote{color:var(--st-mute);font-size:12px;line-height:1.5;margin:0 0 8px;font-weight:400}
.st-subject-set{margin-top:16px;padding-top:14px;border-top:1px solid #edf0f4}
.st-subject-set .st-field-title{display:block;margin:0 0 10px}

.st-divider-field {border-top:1px solid #e9edf3; padding-top:18px; margin-top:5px;}
.st-divider-field .st-smallnote {margin:0; font-weight:400;}
.st-char-count {align-self:flex-end; font-size:12px; font-weight:400; color:var(--st-mute)}


/* Oportunidades e candidatura espontânea — v0.3.0 */
.st-opportunities {border:1px solid var(--st-border);border-top:0;background:#f9fbfe;padding:clamp(20px,4vw,39px);}
.st-opportunities > h3,.st-vagas-list > h3 {color:var(--st-blue-d);font-size:20px;line-height:1.35;margin:0 0 15px;font-weight:750;}
.st-mode-cards {display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px;}
.st-mode-card {border:1px solid #d1dbea;background:white;border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:7px;text-decoration:none!important;color:#30425d!important;min-width:0;}
.st-mode-card strong {font-size:17px;color:var(--st-blue-d);line-height:1.35;}
.st-mode-card span:not(.st-mode-icon) {font-size:13px;line-height:1.55;color:#52667e;}
.st-mode-card em {font-size:13px;color:#164983;font-style:normal;font-weight:700;margin-top:auto;padding-top:5px;}
.st-mode-card.st-selected {border-color:#7a9dd2;box-shadow:inset 0 0 0 1px #7a9dd2;background:#f1f6ff;}
.st-mode-icon {display:inline-flex;align-items:center;justify-content:center;color:#204a7e;background:#ecf2fb;border-radius:9px;width:32px;height:32px;font-size:19px;line-height:1}
.st-vagas-list {border-top:1px solid #e1e7ef;padding-top:20px;}
.st-vagas-list > h3 {font-size:18px;}
.st-vaga-card {display:flex;justify-content:space-between;gap:18px;background:white;border:1px solid #dde4ee;border-radius:13px;padding:20px;margin-bottom:12px;align-items:start;}
.st-vaga-card.st-vaga-selected {border-color:#6f99c6;background:#f2f7fd;box-shadow:inset 0 0 0 1px #6f99c6;}
.st-vaga-body {min-width:0;flex:1;}
.st-vaga-code {display:block;letter-spacing:.04em;color:#55708f;font-size:11px;font-weight:750;text-transform:uppercase;margin-bottom:5px;}
.st-vaga-card h4 {font-size:17px;color:#142f55;line-height:1.35;margin:0 0 9px;font-weight:750;}
.st-vaga-meta {display:flex;gap:7px;flex-wrap:wrap;margin-bottom:11px;}
.st-vaga-meta span {color:#3c5672;background:#ecf2f8;border-radius:99px;padding:3px 9px;font-size:11px;line-height:1.45;}
.st-vaga-desc {font-size:13px;color:#42546a;line-height:1.6;margin-top:6px;}
.st-vaga-desc p {margin:0 0 7px;}
.st-vaga-desc ul,.st-vaga-desc ol {padding-left:20px;margin:6px 0;}
.st-vaga-requisitos {color:#304d6a;font-size:13px;margin-top:9px;}
.st-vaga-requisitos summary {cursor:pointer;color:#174a86;font-weight:700;}
.st-vaga-requisitos p {margin:8px 0 0;line-height:1.65;}
.st-vaga-apply {display:inline-flex;align-items:center;justify-content:center;align-self:center;min-width:145px;border-radius:9px;padding:11px 15px;white-space:nowrap;background:var(--st-blue);color:#fff!important;font-size:13px;line-height:1.35;font-weight:700;text-decoration:none!important;text-align:center;}
.st-vaga-apply:hover,.st-vaga-apply:focus {background:#235292;color:#fff!important}
.st-empty-vagas {font-size:13px;color:#54677e;margin:0;}
.st-application-summary {border-left:4px solid var(--st-gold);background:#fffaf0;padding:15px 17px;border-radius:0 9px 9px 0;margin:0 0 27px;display:flex;flex-direction:column;gap:3px;}
.st-application-summary strong {font-size:15px;color:#183556;}
.st-application-summary span {font-size:12px;color:#4e5e74;}
.st-shell {scroll-margin-top:40px;}
@media(max-width:700px){.st-mode-cards{grid-template-columns:1fr}.st-vaga-card{flex-direction:column;gap:12px}.st-vaga-apply{align-self:stretch}.st-opportunities{padding:20px}}

.st-stale-vaga{padding:12px 15px;border:1px solid #d9b484;border-radius:10px;background:#fff8ed;color:#71470f;font-size:13px;margin:0 0 20px;}
