/* Partiu Futuro · inteligência vocacional v2
   Acrescenta clareza ao relatório sem substituir o layout aprovado. */
body.pf16-vocational .pf17-invite{
  max-width:570px;margin:13px 0 18px;
  font:800 14px/1.6 'Nunito Sans',sans-serif;color:#43457a;
}
body.pf16-vocational .intro .start{
  min-width:min(100%,320px);min-height:66px;padding:18px 28px;
  margin-top:5px;font:950 17px/1.15 'Nunito Sans',sans-serif;
  border-radius:17px;position:relative;isolation:isolate;
  color:#fff;background:#673cf1;box-shadow:0 14px 30px #6034d350;
  animation:pf17-pulse 2.65s ease-in-out infinite;
}
body.pf16-vocational .intro .start:hover{background:#5023c9;animation-play-state:paused}
@keyframes pf17-pulse{0%,100%{box-shadow:0 12px 26px #6339d743;transform:scale(1)}55%{box-shadow:0 14px 34px #6339d777;transform:scale(1.023)}}
body.pf16-result .pf17-profile-heading{display:flex;align-items:start;gap:12px;justify-content:space-between}
body.pf16-result .pf17-profile-heading h3{flex:1 1 auto;min-width:0}
body.pf16-result .pf17-profile-number{color:#6038cf;font:950 23px/1 Sora,sans-serif;white-space:nowrap}
body.pf16-result .pf17-profile-number small{font:800 11px 'Nunito Sans',sans-serif;letter-spacing:0;color:#7f7099}
body.pf16-result .pf17-level{display:inline-flex;margin-top:12px;padding:6px 10px;background:#fff;border-radius:999px;color:#6b43c1;font-size:10px;font-weight:900;text-transform:capitalize}
body.pf16-result .pf17-axis-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 26px}
body.pf16-result .pf17-axis-row{padding:14px 16px 12px;background:#fbfaff;border:1px solid #ebe3f9;border-radius:14px}
body.pf16-result .pf17-axis-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;color:#231642}
body.pf16-result .pf17-axis-head strong{font-size:13px}
body.pf16-result .pf17-axis-head span{font:950 21px/1 Sora,sans-serif;color:#5c34c9;font-variant-numeric:tabular-nums}
body.pf16-result .pf17-axis-head span small{font:800 10px 'Nunito Sans',sans-serif;color:#776f8d}
body.pf16-result .pf17-axis-track{height:13px;border-radius:999px;background:#ece6fa;overflow:hidden}
body.pf16-result .pf17-axis-fill{height:100%;border-radius:999px;min-width:0;transition:width .45s ease}
body.pf16-result .pf17-axis-row p{font:700 10px/1.5 'Nunito Sans',sans-serif;color:#6a718a;margin:10px 0 0}
body.pf16-result .pf17-method{margin-top:20px;background:#f1eaff;border-left:4px solid #683df1;border-radius:12px;padding:16px 18px;color:#514876;font:700 12px/1.7 'Nunito Sans',sans-serif}
body.pf16-result .pf17-method strong{color:#4426aa}
body.pf16-result .pf17-evidence-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
body.pf16-result .pf17-evidence-head h3{margin:8px 0 13px}
body.pf16-result .pf17-evidence-head strong{font:900 18px Sora,sans-serif;color:#643ed0}
body.pf16-result .pf17-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
body.pf16-result .pf17-course-card{border-radius:20px;border:1px solid #e5dcf8;overflow:hidden;background:#fff;box-shadow:0 9px 22px #3b278b0b;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
body.pf16-result .pf17-course-card:hover{transform:translateY(-3px);box-shadow:0 17px 32px #3b278b18}
body.pf16-result .pf17-course-winner{grid-column:1/-1;border-color:#b8a0fb;box-shadow:0 15px 31px #5325b521;background:linear-gradient(180deg,#faf7ff,#fff 48%)}
body.pf16-result .pf17-course-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:19px 23px;border-bottom:1px solid #eae2fa;background:#f6f0ff}
body.pf16-result .pf17-course-winner .pf17-course-top{background:linear-gradient(105deg,#5731cf,#7953f5);color:#fff}
body.pf16-result .pf17-course-rank{font:950 11px/1.35 'Nunito Sans',sans-serif;letter-spacing:.075em;color:#623bc8}
body.pf16-result .pf17-course-winner .pf17-course-rank{color:#fff}
body.pf16-result .pf17-score{display:flex;align-items:baseline;gap:4px;white-space:nowrap}
body.pf16-result .pf17-score strong{font:950 clamp(32px,3.6vw,43px)/1 Sora,sans-serif;letter-spacing:-.06em;color:#4f2cbf}
body.pf16-result .pf17-score span{font:900 12px 'Nunito Sans',sans-serif;color:#715ca2}
body.pf16-result .pf17-score small{display:block;font:750 9px 'Nunito Sans',sans-serif;letter-spacing:0;text-align:right}
body.pf16-result .pf17-course-winner .pf17-score strong,body.pf16-result .pf17-course-winner .pf17-score span{color:#fff}
body.pf16-result .pf17-course-body{padding:23px;display:flex;flex-direction:column;gap:11px;flex:1}
body.pf16-result .pf17-course-area{font:850 11px 'Nunito Sans',sans-serif;color:#6d4bc0}
body.pf16-result .pf17-course-body h3{font:950 clamp(21px,2.3vw,27px)/1.22 'Nunito Sans',sans-serif;letter-spacing:-.035em;color:#171b40;margin:0;overflow-wrap:anywhere}
body.pf16-result .pf17-course-intro{font:750 13px/1.65 'Nunito Sans',sans-serif;color:#5c6181;margin:0}
body.pf16-result .pf17-course-why{background:#f6f2ff;border-radius:14px;padding:14px 16px;flex:1}
body.pf16-result .pf17-course-why>strong{display:block;color:#4e2e9f;font-size:12px;margin-bottom:10px}
body.pf16-result .pf17-course-why p{margin:6px 0;color:#454260;font:700 11px/1.65 'Nunito Sans',sans-serif}
body.pf16-result .pf17-course-why p span{color:#24a87d;margin-right:5px}
body.pf16-result .pf17-course-why p small{color:#846bb7;white-space:nowrap}
body.pf16-result .pf17-course-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 17px;min-height:49px;text-decoration:none;background:#683df1;color:#fff;border-radius:13px;font:950 12px 'Nunito Sans',sans-serif;margin-top:auto;transition:background .2s}
body.pf16-result .pf17-course-cta:hover{background:#5129ba}
body.pf16-result .pf17-course-cta:focus-visible,body.pf16-result .pf17-lead-button:focus-visible{outline:3px solid #ffd34b;outline-offset:3px}
body.pf16-result .pf17-lead-section{background:linear-gradient(125deg,#f8f3ff 0%,#fff 70%);border-color:#d9c9ff}
body.pf16-result .pf17-lead-title{display:flex;gap:17px;align-items:flex-start;margin-bottom:19px}
body.pf16-result .pf17-lead-icon{display:grid;place-items:center;flex:none;width:49px;height:49px;border-radius:15px;background:#683df1;color:#fff;font-size:26px}
body.pf16-result .pf17-lead-title h2{margin:10px 0}
body.pf16-result .pf17-lead-title p{max-width:750px;font-size:13px;color:#646982;margin:0}
body.pf16-result .pf17-lead-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.pf16-result .pf17-lead-fields label{display:flex;flex-direction:column;gap:6px;font:900 12px 'Nunito Sans',sans-serif;color:#2b254f}
body.pf16-result .pf17-lead-fields input,body.pf16-result .pf17-lead-fields select{width:100%;min-height:47px;border:1px solid #ded5f1;border-radius:11px;background:#fff;color:#262044;padding:11px 12px;font:700 12px 'Nunito Sans',sans-serif}
body.pf16-result .pf17-lead-fields input:focus,body.pf16-result .pf17-lead-fields select:focus{outline:3px solid #683df12b;border-color:#683df1}
body.pf16-result .pf17-lead-course{grid-column:1/-1}
body.pf16-result .pf17-consent{display:flex;gap:11px;align-items:flex-start;margin-top:17px;color:#67607d;font:650 11px/1.7 'Nunito Sans',sans-serif}
body.pf16-result .pf17-consent input{margin:4px 0 0;flex:none;width:18px;height:18px;accent-color:#683df1}
body.pf16-result .pf17-lead-button{border:0;display:inline-flex;align-items:center;gap:11px;justify-content:center;padding:15px 22px;margin-top:18px;border-radius:13px;background:#683df1;color:#fff;cursor:pointer;min-height:49px;font:950 12px 'Nunito Sans',sans-serif}
body.pf16-result .pf17-lead-disclaimer{margin:12px 0 0;color:#8a809e;font:700 10px/1.5 'Nunito Sans',sans-serif}
body.pf16-result .pf17-next-grid article{position:relative;transition:transform .23s ease,box-shadow .23s ease}
body.pf16-result .pf17-next-grid article:hover{transform:translateY(-4px);box-shadow:0 11px 24px #5325b514}
body.pf16-result .pf17-next-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#fff;color:#683df1;font-size:22px;margin-bottom:12px}
@media(max-width:780px){body.pf16-result .pf17-axis-list{grid-template-columns:1fr}body.pf16-result .pf17-course-grid{grid-template-columns:1fr}body.pf16-result .pf17-course-winner{grid-column:auto}}
@media(max-width:490px){body.pf16-result .pf17-course-top{padding:15px}body.pf16-result .pf17-course-body{padding:17px}body.pf16-result .pf17-lead-title{flex-direction:column}body.pf16-result .pf17-lead-fields{grid-template-columns:1fr}body.pf16-result .pf17-lead-course{grid-column:auto}body.pf16-vocational .intro .start{font-size:15px;min-height:61px}}
@media(prefers-reduced-motion:reduce){body.pf16-vocational .intro .start{animation:none!important}body.pf16-result .pf17-course-card,body.pf16-result .pf17-next-grid article{transition:none!important}body.pf16-result .pf17-course-card:hover,body.pf16-result .pf17-next-grid article:hover{transform:none!important}}
/* A impressão não pode herdar opacidade/transform de animações de entrada,
   responsáveis por páginas vazias antes da capa em certos navegadores. */
@media print{
 @page{size:A4;margin:13mm}
 html,body.pf16-result{margin:0!important;padding:0!important;background:#fff!important}
 body.pf16-result .pf-reveal,body.pf16-result .pf-reveal *{opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important;animation:none!important}
 body.pf16-result .pf17-lead-section,body.pf16-result .pf17-lead-form,body.pf16-result .pf17-course-cta,body.pf16-result .pf17-next-grid{display:none!important}
 body.pf16-result main.wrap{margin:0!important;padding:0!important;width:100%!important}
 body.pf16-result .cover{break-before:avoid!important;break-after:avoid!important;page-break-before:avoid!important;margin:0 0 7mm!important;min-height:0!important}
 body.pf16-result .section{break-inside:auto!important;page-break-inside:auto!important;margin:6mm 0!important;padding:5mm!important}
 body.pf16-result .profile,body.pf16-result .pf17-axis-row,body.pf16-result .evidence,body.pf16-result .pf17-course-card{break-inside:avoid;page-break-inside:avoid}
 body.pf16-result .pf17-axis-list,body.pf16-result .pf17-course-grid{grid-template-columns:1fr 1fr;gap:3mm}
 body.pf16-result .pf17-course-winner{grid-column:1/-1}
 body.pf16-result .pf17-course-why{padding:7px}
 body.pf16-result .pf17-lead-section+section{display:none}
 body.pf16-result .cover:before,body.pf16-result .cover:after{display:none!important}
}

/* Versão 2.1: relatório objetivo e conteúdo sempre visível no celular */
body.pf16-result .pf18-details{margin:16px 0;padding:0;background:#fff;border:1px solid #e3d8f6;border-radius:18px;overflow:visible}
body.pf16-result .pf18-details>summary{display:flex;justify-content:space-between;gap:15px;align-items:center;cursor:pointer;list-style:none;padding:22px;color:#4926b5;font:900 15px 'Nunito Sans',sans-serif}
body.pf16-result .pf18-details>summary::-webkit-details-marker{display:none}
body.pf16-result .pf18-details[open]>summary{border-bottom:1px solid #e9e0fa}
body.pf16-result .pf18-details[open]>summary span{transform:rotate(180deg)}
body.pf16-result .pf18-details>.section{margin:0;padding:22px;border:0;box-shadow:none}
body.pf16-result .pf18-details .pf-reveal{opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important}
body.pf16-vocational .pf18-area-hint{background:#f1eafe;color:#5c468c;border-radius:13px;padding:14px 16px;font:750 12px/1.6 'Nunito Sans',sans-serif}
body.pf16-vocational .pf18-gate{border:1px solid #ddd0fb;border-radius:20px;padding:22px;background:#faf8ff}
body.pf16-vocational .pf18-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
body.pf16-vocational .pf18-gate-grid>label{display:grid;gap:7px;color:#332252;font:900 12px 'Nunito Sans',sans-serif}
body.pf16-vocational .pf18-gate-grid input,body.pf16-vocational .pf18-gate-grid select{width:100%;min-height:48px;padding:12px;border:1px solid #d9cbed;border-radius:12px;background:#fff;color:#241a43;font:700 13px 'Nunito Sans',sans-serif}
body.pf16-vocational .pf18-gate-grid :is(input,select):focus-visible{outline:3px solid #f5cb4d;outline-offset:2px}
body.pf16-vocational .pf18-optional{font-size:10px;color:#8f83ad}
body.pf16-vocational .pf18-consent{display:flex;gap:12px;align-items:flex-start;padding:12px 0;color:#4b4468;font:700 12px/1.6 'Nunito Sans',sans-serif}
body.pf16-vocational .pf18-consent input{width:18px;height:18px;flex:none;margin:3px 0 0;accent-color:#683df1}
body.pf16-vocational .pf18-consent strong{color:#5833c5}
@media(max-width:767px){
 /* No mobile, IntersectionObserver podia deixar grandes espaços brancos:
  * revelar tudo imediatamente, preservando a rolagem nativa da página. */
 html.pf-motion-ready body.pf16-result .pf-reveal,
 body.pf16-result .pf-reveal{
   opacity:1!important;visibility:visible!important;
   transform:none!important;translate:none!important;
   animation:none!important;transition:none!important;
 }
 body.pf16-result .pf18-details>.section{padding:17px}
 body.pf16-result .pf18-details>summary{min-height:54px;padding:17px}
 body.pf16-vocational .pf18-gate-grid{grid-template-columns:1fr}
 body.pf16-result .pf17-course-why p{font-size:12px}
}
@media print{
 body.pf16-result .pf18-details{display:block!important;break-inside:auto!important}
 body.pf16-result .pf18-details>summary{display:none!important}
 body.pf16-result .pf18-details .section{display:block!important}
}

/* Formulário vocacional: feedback no próprio campo, sem reiniciar as etapas */
body.pf16-vocational .pf19-field-error{
 display:block;margin:8px 0 0;color:#b9273e;font:850 12px/1.5 'Nunito Sans',sans-serif;
}
body.pf16-vocational input[aria-invalid="true"],
body.pf16-vocational select[aria-invalid="true"]{
 border-color:#d73251!important;box-shadow:0 0 0 3px #d732511c!important;
}
body.pf16-vocational #error-status:not(:empty){
 display:block;margin-top:16px;border:1px solid #f5a9b8;
 background:#fff3f5;border-radius:11px;padding:12px 15px;
 color:#9e2037;font:800 12px/1.55 'Nunito Sans',sans-serif;
}
