/* Loading and result screens share the visual language of the welcome page. */
body.end-layout {background:#fcf2f5!important;}
body.end-layout .page {background:radial-gradient(ellipse at 90% 0%,#fce6ee 0%,transparent 48%),linear-gradient(180deg,#fffafb,#fff4f8)!important;}
body.end-layout #header {position:static;background:transparent;backdrop-filter:none;}
body.end-layout #header .progress-track {display:none;}
body.end-layout #header .logo {margin:4px 0 6px!important;}
#loadingScreen,#resultScreen {
  width:100%!important;max-width:640px!important;margin:0 auto!important;
  padding:18px 0 24px!important;min-height:0!important;
  font-family:'Quiz Inter',Arial,sans-serif!important;color:#57243e;
}
#loadingScreen.active,#resultScreen.active {align-items:stretch!important;justify-content:flex-start!important;}
#loadingScreen .end-kicker,#resultScreen .end-kicker {
  display:block;color:#b6356e;font-size:10px;font-weight:700;line-height:1.5;
  letter-spacing:.13em;text-transform:uppercase;text-align:center;
}
#loadingScreen .loading-panel {
  width:100%;padding:32px 28px 28px;border:1px solid #f3d0de;border-radius:28px;
  background:radial-gradient(ellipse at 50% 30%,#fff 0%,#fffafd 45%,#fcecf2 100%);
  box-shadow:0 16px 42px rgba(115,42,77,.07),inset 0 1px 0 #fff;text-align:center;
}
#loadingScreen #processingTitle {
  max-width:410px;margin:16px auto 0!important;padding:0!important;
  font:750 clamp(27px,4vw,36px)/1.12 'Quiz Inter',Arial,sans-serif!important;
  letter-spacing:-.04em!important;color:#551032!important;text-align:center;
}
#loadingScreen #processingTitle::after {display:none!important;}
#loadingScreen .loading-ring {
  position:relative;display:grid;place-items:center;width:176px;height:176px;
  margin:24px auto;border-radius:50%;background:radial-gradient(circle,#fff 53%,#fce7f0 71%,transparent 72%);
  box-shadow:0 0 42px rgba(231,79,138,.08);
}
#loadingScreen .loading-ring svg {position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible;}
#loadingScreen .loading-ring circle {fill:none;stroke-width:7;}
#loadingScreen .ring-track {stroke:#f4dce7;}
#loadingScreen #processbar {stroke:url(#ringPink);stroke-linecap:round;transition:stroke-dashoffset .55s ease;}
#loadingScreen #percent {margin:0!important;font-size:44px!important;line-height:1!important;font-weight:750;letter-spacing:-.06em;color:#c8296b!important;font-variant-numeric:tabular-nums;}
#loadingScreen .loading-status {
  max-width:390px;min-height:3em;margin:0 auto 20px!important;
  color:#79596b!important;font:400 16px/1.5 'Quiz Inter',Arial,sans-serif!important;
}
#loadingScreen .loading-topics {display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:420px;margin:0 auto;}
#loadingScreen .loading-topics span {padding:8px 12px;border:1px solid #f1d6e2;border-radius:999px;background:#fff9fc;color:#89586f;font-size:11px;font-weight:500;line-height:1.2;}
#loadingScreen.is-ready .loading-status {display:none;}
#loadingScreen.is-ready .loading-ring {box-shadow:0 0 42px rgba(231,79,138,.14);}
#loadingScreen #resultBtn {margin-top:24px!important;}
#loadingScreen .end-action,#resultScreen .end-action {
  position:relative;display:flex;align-items:center;justify-content:center;
  width:100%;min-height:60px;padding:16px 60px;border:1px solid rgba(191,31,92,.24);border-radius:17px;
  background:linear-gradient(180deg,#e24482,#d62c72 48%,#c92367);box-shadow:inset 0 1px 0 #ffffff66,0 8px 22px #a1225329;
  font:800 16px/1.4 'Quiz Inter',Arial,sans-serif;letter-spacing:.01em;color:white;text-align:center;
  cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;
  transition:box-shadow .18s ease,transform .18s ease;
}
#loadingScreen .end-action-label,#resultScreen .end-action-label {min-width:0;text-wrap:balance;}
#loadingScreen .end-action-icon,#resultScreen .end-action-icon {
  position:absolute;right:16px;top:50%;transform:translateY(-50%);width:30px;height:30px;
  display:grid;place-items:center;border:1px solid #ffffff47;border-radius:50%;background:#ffffff1f;
}
#loadingScreen .end-action-icon svg,#resultScreen .end-action-icon svg {width:18px;height:18px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
#loadingScreen .end-action:disabled {cursor:default;opacity:.6;}
#loadingScreen .end-action:focus-visible,#resultScreen .end-action:focus-visible {outline:3px solid #71123f;outline-offset:4px;}
@media(hover:hover) and (pointer:fine){
  #loadingScreen .end-action:not(:disabled):hover,#resultScreen .end-action:hover {transform:translateY(-1px);box-shadow:inset 0 1px 0 #ffffff66,0 10px 26px #a1225338;}
}
#loadingScreen .end-action:not(:disabled):active,#resultScreen .end-action:active {transform:translateY(1px);box-shadow:0 3px 10px #a1225329;}
#resultScreen .result-intro {margin:0 0 18px;}
#resultScreen #resultCard {margin:0!important;padding:0!important;border:1px solid #f1cdda;border-radius:26px;background:#fffafb;overflow:hidden;box-shadow:0 12px 36px rgba(107,29,56,.07);}
#resultScreen #resultCard::before,#resultScreen #resultCard::after {display:none!important;}
#resultScreen .rv-heading {padding:26px 26px 24px;text-align:center;background:radial-gradient(ellipse at 50% 0%,#fff,#fdebf2);}
#resultScreen .rv-stage {display:inline-block;padding:7px 12px;border:1px solid #edc4d6;border-radius:999px;background:#fff7fb;color:#ac2e65;font-size:10px;font-weight:700;letter-spacing:.09em;line-height:1.4;}
#resultScreen .rv-label {margin:18px 0 8px;font-size:10px;letter-spacing:.12em;font-weight:600;color:#97667d;line-height:1.4;}
#resultScreen .rv-diagnosis {max-width:540px;margin:0 auto!important;font:800 clamp(29px,4.5vw,42px)/1.06 'Quiz Inter',Arial,sans-serif!important;letter-spacing:-.045em!important;color:#b01f5a!important;text-wrap:balance;}
#resultScreen .rv-diagnosis::after {display:none!important;}
#resultScreen .rv-visual {width:100%;margin:0;padding:0;background:#f1d7db;}
#resultScreen .rv-visual img {display:block;width:100%;height:clamp(190px,46vw,280px);object-fit:cover;object-position:center top;margin:0;border:0;border-radius:0;}
#resultScreen .rv-copy {padding:26px;}
#resultScreen .rv-title {margin:0 0 20px;font:750 clamp(19px,2.8vw,23px)/1.25 'Quiz Inter',Arial,sans-serif;color:#56243e;letter-spacing:-.03em;text-wrap:pretty;}
#resultScreen .rv-body p {margin:0 0 16px;font:400 16px/1.6 'Quiz Inter',Arial,sans-serif;color:#795a6b;letter-spacing:-.012em;}
#resultScreen .rv-body strong {font-weight:700;color:#67334c;}
#resultScreen .rv-body p:last-child {position:relative;margin:22px 0 0;padding:18px 18px 18px 21px;background:#fcecf3;border:1px solid #f4d4e3;border-radius:14px;color:#67334c;}
#resultScreen .rv-body p:last-child::before {content:'';position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:4px;background:#db4b87;}
#resultScreen #resultCta {margin:18px 0 0!important;}
@media(max-width:600px){
  #loadingScreen,#resultScreen {padding:12px 0 20px!important;}
  #loadingScreen .loading-panel {padding:26px 18px 22px;border-radius:24px;}
  #loadingScreen .end-kicker,#resultScreen .end-kicker {font-size:9px;letter-spacing:.11em;}
  #loadingScreen .loading-ring {width:156px;height:156px;margin:22px auto;}
  #loadingScreen #percent {font-size:40px!important;}
  #loadingScreen .loading-status {font-size:15px!important;}
  #loadingScreen .loading-topics {gap:7px;}
  #loadingScreen .loading-topics span {font-size:10px;padding:7px 10px;}
  #resultScreen .rv-heading {padding:22px 16px 20px;}
  #resultScreen .rv-stage {font-size:9px;letter-spacing:.06em;}
  #resultScreen .rv-diagnosis {font-size:clamp(27px,7.4vw,36px)!important;}
  #resultScreen .rv-copy {padding:20px 18px;}
  #resultScreen .rv-body p {font-size:15px;line-height:1.55;}
  #resultScreen .rv-body p:last-child {padding:15px 15px 15px 18px;}
  #loadingScreen .end-action,#resultScreen .end-action {padding:14px 50px;font-size:14px;min-height:56px;}
  #loadingScreen .end-action-icon,#resultScreen .end-action-icon {right:12px;width:28px;height:28px;}
}
@media(prefers-reduced-motion:reduce){
  #loadingScreen,#resultScreen {animation:none!important;}
  #loadingScreen #processbar,#loadingScreen .end-action,#resultScreen .end-action {transition:none;}
  #loadingScreen .end-action:not(:disabled):hover,#resultScreen .end-action:hover,
  #loadingScreen .end-action:not(:disabled):active,#resultScreen .end-action:active {transform:none;}
}
/* Keep both faces visible in the identity result's wider photo crop. */
#resultScreen[data-result="identidade"] .rv-visual img {object-position:50% 45%;}

/* Shared invitation between each result and its offer button. */
#resultScreen .result-next-step {
  width:100%;max-width:560px;box-sizing:border-box;
  margin:26px auto 0;padding:0 12px;text-align:center;
}
#resultScreen .result-next-step p {
  margin:0;font:400 16px/1.6 'Quiz Inter',Arial,sans-serif;
  color:#795a6b;letter-spacing:-.012em;
}
#resultScreen .result-next-step .result-next-step-lead {
  margin-bottom:14px;font-size:18px;font-weight:650;line-height:1.5;color:#56243e;
}
#resultScreen .result-next-step strong {font-weight:750;color:#b01f5a;}
@media(max-width:600px){
  #resultScreen .result-next-step {margin-top:22px;padding:0 6px;}
  #resultScreen .result-next-step .result-next-step-lead {font-size:17px;}
}

/* Compact results, preserving every paragraph and the complete invitation. */
body.end-layout:has(#resultScreen.active) .page {
  width:100%!important;max-width:1040px!important;padding:8px 18px 12px!important;
}
body.end-layout:has(#resultScreen.active) #header {padding:0 0 6px!important;}
body.end-layout:has(#resultScreen.active) #header .logo {margin:0!important;}
body.end-layout:has(#resultScreen.active) #header .logo img {width:180px!important;height:auto!important;}
#resultScreen {max-width:100%!important;padding:4px 0 8px!important;}
#resultScreen #resultCard {display:grid;grid-template-columns:32% minmax(0,1fr);border-radius:20px;}
#resultScreen .rv-heading {grid-column:1;grid-row:1;padding:18px 16px 14px;}
#resultScreen .rv-stage {padding:5px 9px;font-size:9px;letter-spacing:.05em;}
#resultScreen .rv-label {margin:10px 0 5px;font-size:9px;}
#resultScreen .rv-diagnosis {font-size:clamp(24px,2.4vw,31px)!important;line-height:1.08!important;}
#resultScreen .rv-visual {grid-column:1;grid-row:2;align-self:stretch;min-height:150px;}
#resultScreen .rv-visual img {height:100%;min-height:150px;max-height:250px;object-fit:cover;}
#resultScreen .rv-copy {grid-column:2;grid-row:1 / span 2;padding:22px;align-self:center;}
#resultScreen .rv-title {font-size:18px;line-height:1.3;margin:0 0 12px;}
#resultScreen .rv-body p {font-size:16px;line-height:1.45;margin:0 0 10px;}
#resultScreen .rv-body p:last-child {margin:12px 0 0;padding:12px 14px;}
#resultScreen .rv-body p:last-child::before {top:12px;bottom:12px;}
#resultScreen .result-next-step {max-width:880px;margin:16px auto 0;padding:0 12px;}
#resultScreen .result-next-step p {font-size:15px;line-height:1.4;}
#resultScreen .result-next-step .result-next-step-lead {font-size:16px;line-height:1.4;margin-bottom:8px;}
#resultScreen #resultCta {max-width:640px;align-self:center;margin:12px auto 0!important;min-height:54px;padding-top:12px;padding-bottom:12px;}
body.end-layout:has(#resultScreen.active) #quizFooter {margin:8px auto 0;padding:8px 0 0;max-width:900px;font-size:10px;line-height:1.35;}
@media(max-width:700px){
  body.end-layout:has(#resultScreen.active) .page {padding:6px 12px 10px!important;}
  body.end-layout:has(#resultScreen.active) #header .logo img {width:160px!important;}
  #resultScreen #resultCard {grid-template-columns:minmax(0,1fr) 94px;}
  #resultScreen .rv-heading {grid-column:1;grid-row:1;padding:12px 10px;text-align:left;}
  #resultScreen .rv-stage {font-size:8px;padding:4px 7px;letter-spacing:.025em;}
  #resultScreen .rv-label {font-size:8px;margin:7px 0 4px;}
  #resultScreen .rv-diagnosis {font-size:24px!important;text-align:left;}
  #resultScreen .rv-visual {grid-column:2;grid-row:1;min-height:105px;}
  #resultScreen .rv-visual img {height:100%;min-height:105px;max-height:160px;object-position:center;}
  #resultScreen .rv-copy {grid-column:1 / -1;grid-row:2;padding:12px 14px 14px;}
  #resultScreen .rv-title {font-size:15px;line-height:1.3;margin-bottom:10px;}
  #resultScreen .rv-body p {font-size:14px;line-height:1.4;margin-bottom:8px;}
  #resultScreen .rv-body p:last-child {margin-top:8px;padding:10px 12px;}
  #resultScreen .result-next-step {margin-top:12px;padding:0 4px;}
  #resultScreen .result-next-step p {font-size:14px;line-height:1.4;}
  #resultScreen .result-next-step .result-next-step-lead {font-size:15px;line-height:1.35;margin-bottom:7px;}
  #resultScreen #resultCta {margin-top:10px!important;min-height:54px;padding-top:10px;padding-bottom:10px;}
}
@media(max-width:700px){
  body.end-layout:has(#resultScreen.active) .page {padding-bottom:6px!important;}
  #resultScreen .rv-heading {padding-top:10px;padding-bottom:10px;}
  #resultScreen .rv-copy {padding-top:10px;padding-bottom:10px;}
  #resultScreen .rv-title {margin-bottom:8px;}
  #resultScreen .rv-body p {margin-bottom:6px;}
  #resultScreen .rv-body p:last-child {padding-top:8px;padding-bottom:8px;}
  #resultScreen .result-next-step {margin-top:8px;}
  body.end-layout:has(#resultScreen.active) #quizFooter {margin-top:4px;padding-top:6px;}
}

/* Give the compact result copy clearer separation without enlarging images. */
#resultScreen .rv-title {line-height:1.35;margin-bottom:16px;}
#resultScreen .rv-body p {line-height:1.5;margin-bottom:14px;}
#resultScreen .rv-body p:last-child {margin-top:14px;padding-top:14px;padding-bottom:14px;}
#resultScreen .result-next-step {margin-top:20px;}
#resultScreen .result-next-step p {line-height:1.5;}
#resultScreen .result-next-step .result-next-step-lead {line-height:1.45;margin-bottom:12px;}
#resultScreen #resultCta {margin-top:16px!important;}
@media(max-width:700px){
  #resultScreen .rv-copy {padding-top:14px;padding-bottom:14px;}
  #resultScreen .rv-title {margin-bottom:14px;}
  #resultScreen .rv-body p {line-height:1.5;margin-bottom:12px;}
  #resultScreen .rv-body p:last-child {margin-top:10px;padding-top:10px;padding-bottom:10px;}
  #resultScreen .result-next-step {margin-top:16px;}
  #resultScreen .result-next-step p {line-height:1.45;}
  #resultScreen .result-next-step .result-next-step-lead {line-height:1.4;margin-bottom:10px;}
  #resultScreen #resultCta {margin-top:14px!important;}
}

/* Slightly larger reading text, with the approved spacing retained. */
#resultScreen .rv-stage,#resultScreen .rv-label {font-size:10px;}
#resultScreen .rv-title {font-size:19px;}
#resultScreen .rv-body p {font-size:17px;}
#resultScreen .result-next-step p {font-size:16px;}
#resultScreen .result-next-step .result-next-step-lead {font-size:17px;}
@media(max-width:700px){
  #resultScreen .rv-stage,#resultScreen .rv-label {font-size:9px;}
  #resultScreen .rv-title {font-size:16px;}
  #resultScreen .rv-body p {font-size:15px;}
  #resultScreen .result-next-step p {font-size:15px;}
  #resultScreen .result-next-step .result-next-step-lead {font-size:16px;}
}

/* Slightly larger, medium-weight reading copy across all four results. */
#resultScreen .rv-body p {font-size:18px;font-weight:500;}
#resultScreen .result-next-step p {font-size:17px;font-weight:500;}
#resultScreen .result-next-step .result-next-step-lead {font-size:18px;font-weight:700;}
@media(max-width:700px){
  #resultScreen .rv-body p,#resultScreen .result-next-step p {font-size:16px;}
  #resultScreen .result-next-step .result-next-step-lead {font-size:17px;}
}

/* Restore a taller result card and give its photograph the full width. */
body.end-layout:has(#resultScreen.active) .page {
  max-width:800px!important;padding:14px 20px 20px!important;
}
body.end-layout:has(#resultScreen.active) #header {padding-bottom:12px!important;}
#resultScreen {padding:8px 0 12px!important;}
#resultScreen #resultCard {display:block;border-radius:24px;}
#resultScreen .rv-heading {padding:24px 22px;text-align:center;}
#resultScreen .rv-diagnosis {text-align:center;}
#resultScreen .rv-visual {min-height:0;width:100%;}
#resultScreen .rv-visual img {
  display:block;width:100%;height:380px;min-height:0;max-height:none;
  object-fit:cover;object-position:center top;
}
#resultScreen[data-result="identidade"] .rv-visual img {object-position:center top;}
#resultScreen .rv-copy {padding:26px;}
#resultScreen .result-next-step {max-width:720px;}
@media(max-width:700px){
  body.end-layout:has(#resultScreen.active) .page {padding:12px 14px 16px!important;}
  #resultScreen .rv-heading {padding:20px 18px;}
  #resultScreen .rv-visual img {height:clamp(200px,58vw,290px);}
  #resultScreen .rv-copy {padding:22px 18px;}
}
