:root{
  --red:#e32329;
  --red-dark:#b9181d;
  --soft-red:#fff1f1;
}
html[data-theme="dark"]{
  --red:#ff575c;
  --red-dark:#ff8589;
  --soft-red:#392527;
}

.ambient-a{background:#e32329}
.ambient-b{background:#d86b58}
.nav-step.active{background:#f4e7e7}
html[data-theme="dark"] .nav-step.active,html[data-theme="dark"] .nav-step:hover{background:#30292a}
input:focus,textarea:focus,select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,35,41,.13);background-color:var(--white)}
.dropdown{position:relative;display:block}
.dropdown-toggle{font:500 15px "DM Sans";color:var(--ink);border:1px solid var(--line);background:var(--white);border-radius:10px;padding:15px 40px 15px 16px;width:100%;outline:none;transition:.2s;cursor:pointer;display:flex;align-items:center;justify-content:space-between;text-align:left}
.dropdown-toggle svg{width:12px;height:8px;flex-shrink:0;position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:.2s;color:#777}
.dropdown.open .dropdown-toggle svg{transform:translateY(-50%) rotate(180deg)}
.dropdown-toggle:hover{border-color:#bbb}
.dropdown-toggle:focus,.dropdown.open .dropdown-toggle{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,35,41,.13);background:var(--white)}
.dropdown-toggle span{color:var(--muted)}
.dropdown-toggle span.selected{color:var(--ink)}
.dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--white);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.1);list-style:none;margin:0;padding:6px;display:none;overflow:hidden}
.dropdown.open .dropdown-menu{display:block;animation:dropIn .15s ease}
.dropdown-menu li{padding:11px 14px;border-radius:7px;font:500 14px "Segoe UI",Arial,sans-serif;color:var(--ink);cursor:pointer;transition:.12s}
.dropdown-menu li:hover{background:var(--soft-red);color:var(--red-dark)}
.dropdown-menu li:active{background:var(--red);color:#fff}
html[data-theme="dark"] .dropdown-toggle{background:#222526;border-color:#3c4143;color:#f0f2f2}
html[data-theme="dark"] .dropdown-toggle svg{color:#999}
html[data-theme="dark"] .dropdown-toggle:focus,html[data-theme="dark"] .dropdown.open .dropdown-toggle{border-color:var(--red);background:#1c1f20}
html[data-theme="dark"] .dropdown-menu{background:#1c1f20;border-color:#34383a;box-shadow:0 12px 32px rgba(0,0,0,.4)}
html[data-theme="dark"] .dropdown-menu li{color:#f0f2f2}
html[data-theme="dark"] .dropdown-menu li:hover{background:#392527;color:#ff8589}
html[data-theme="dark"] .dropdown-menu li:active{background:var(--red);color:#fff}
@keyframes dropIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.highlight-field,.next-step-card{background:var(--soft-red)}
html[data-theme="dark"] .highlight-field,html[data-theme="dark"] .next-step-card{background:var(--soft-red)}

.draft-dot{display:none}
.draft-state{gap:0}
.progress-ring{background:conic-gradient(var(--red) calc(var(--p)*1%),var(--line) 0)}
.nav-step.active span,.eyebrow,.step-kicker,.step-heading h2 em,.side-intro h1 em{color:var(--red)}
.btn.primary{background:linear-gradient(135deg,#e32329,#b9181d);box-shadow:0 8px 22px rgba(227,35,41,.24)}
.btn.primary:hover{background:linear-gradient(135deg,#c91b21,#9f1116)}
.choice input:checked+span{border-color:var(--red);background:var(--soft-red);color:var(--red-dark)}
.choice input:checked+span:before{background:var(--red);border-color:var(--red);box-shadow:inset 0 0 0 3px var(--soft-red)}
html[data-theme="dark"] .choice input:checked+span{border-color:var(--red);background:var(--soft-red);color:#ff8589}
html[data-theme="dark"] .choice input:checked+span:before{background:var(--red);border-color:var(--red);box-shadow:inset 0 0 0 3px #392527}
.stars label:hover span,.stars label.selected span{background:var(--red);color:#fff}
html[data-theme="dark"] .stars label:hover span,html[data-theme="dark"] .stars label.selected span{background:var(--red);color:#fff}
.segmented input:checked+span,html[data-theme="dark"] .segmented input:checked+span{background:var(--red);color:#fff}
.opportunity-grid input:checked+span{background:linear-gradient(135deg,#c91b21,#e32329);box-shadow:0 9px 22px rgba(227,35,41,.2)}
.opportunity-grid input:checked+span b{color:#fff}
.priority-num{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e32329;color:#fff!important;font:700 11px/1 "Segoe UI",Arial,sans-serif;margin-right:6px;vertical-align:middle}
html[data-theme="dark"] .priority-num{background:#c91b21}

.priority-list b{background:var(--red-dark);color:#fff}
html[data-theme="dark"] .priority-list b{background:#e32329;color:#fff}
.score-card>p{color:var(--red)!important}
.section-title span,.action-item b{color:var(--red)}
.toast{background:var(--ink);color:#fff}
html[data-theme="dark"] .toast{background:#1c1f20;color:#f0f2f2}
.next-step-card{border-color:var(--red)}
.score-track i{background:linear-gradient(90deg,#e32329,#e85d43,#e9b83f)}

label:has(input:focus-visible) span{outline:none}
.choice input:focus-visible+span,.opportunity-grid input:focus-visible+span,.segmented input:focus-visible+span,.stars input:focus-visible+span{outline:3px solid rgba(227,35,41,.24);outline-offset:2px}
.invalid input,.invalid textarea,.invalid .choice span,[data-required-group].invalid{border-color:var(--red)!important;box-shadow:0 0 0 3px rgba(227,35,41,.14)!important}
.choice-grid.invalid{outline-color:var(--red)!important}
.rating-row.invalid{background:var(--soft-red)!important;box-shadow:inset 3px 0 var(--red)!important}
html[data-theme="dark"] .rating-row.invalid{background:#392527!important;box-shadow:inset 3px 0 var(--red)!important}

textarea{resize:none;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}
.choice-grid:not(.compact){grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr))}
.binary-list fieldset{gap:24px;padding-left:2px;padding-right:2px}
.binary-list legend{line-height:1.4;text-align:left}
.segmented{flex-shrink:0;border-color:var(--line)}
.segmented span{background:var(--white);color:var(--ink)}
.segmented span:hover{background:var(--soft-red)}
.segmented.three{max-width:360px;width:100%}
html[data-theme="dark"] .segmented{border-color:#3c4143}
html[data-theme="dark"] .segmented span{background:#222526;color:#d3d6d6}
html[data-theme="dark"] .segmented span:hover{background:#2a2525}
.priority-list span{outline:none!important;background:transparent!important}

.report-hero{background:#111314}
.report-hero:after{border-color:#e9b83f #e85d43 #21aa98 #079fb5}
.report-hero h2 em{display:inline-block;background:linear-gradient(90deg,#079fb5 0%,#21aa98 35%,#e9b83f 68%,#e85d43 100%);background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.report-footer{background:#111314}

/* Modal / popups de confirmacao — tema do site */
.modal-backdrop{z-index:120;background:rgba(17,19,20,.55);animation:modalFadeIn .2s ease}
.modal-backdrop.show{display:grid}
.modal{background:var(--white);border:1px solid var(--line);animation:modalScaleIn .25s ease}
.modal h3{color:var(--ink);font-family:"Segoe UI",Arial,Helvetica,sans-serif}
.modal p{color:var(--muted)}
.modal-icon{background:var(--soft-red);color:var(--red);font-family:"Segoe UI",Arial,Helvetica,sans-serif}
.modal .btn{margin:0}
.modal>div{display:flex;gap:10px;justify-content:center;margin-top:22px}
.btn.danger{background:var(--red);color:#fff}
.btn.danger:hover{background:var(--red-dark)}
html[data-theme="dark"] .modal{background:#1c1f20;border-color:#34383a}
html[data-theme="dark"] .modal h3{color:#f0f2f2}
html[data-theme="dark"] .modal p{color:#adb2b3}
html[data-theme="dark"] .modal-backdrop{background:rgba(0,0,0,.7)}
html[data-theme="dark"] .modal-icon{background:#392527;color:#ff575c}
html[data-theme="dark"] .btn.danger{background:#e32329;color:#fff}
html[data-theme="dark"] .btn.danger:hover{background:#c91b21}
@keyframes modalFadeIn{from{opacity:0}to{opacity:1}}
@keyframes modalScaleIn{from{transform:scale(.92);opacity:0}to{transform:none;opacity:1}}

.history-button{position:relative;margin-left:10px}
.history-button svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.history-count{position:absolute;right:1px;top:0;min-width:15px;height:15px;padding:0 3px;border:2px solid var(--paper);border-radius:10px;background:var(--red);color:#fff;font:700 8px/11px Arial;text-align:center;display:none}
.history-backdrop{position:fixed;inset:0;z-index:110;display:none;background:rgba(12,14,15,.62);backdrop-filter:blur(6px)}
.history-backdrop.show{display:block}
.history-panel{position:absolute;right:0;top:0;width:min(480px,100%);height:100%;display:flex;flex-direction:column;background:var(--paper);box-shadow:-24px 0 70px rgba(0,0,0,.2);animation:historyIn .25s ease}
@keyframes historyIn{from{transform:translateX(30px);opacity:0}to{transform:none;opacity:1}}
.history-header{display:flex;align-items:center;gap:14px;padding:24px 24px 20px;border-bottom:1px solid var(--line)}
.history-header>div{min-width:0}
.history-header h2{margin:0;font:700 22px/1.1 Arial,sans-serif;letter-spacing:-.03em}
.history-header p{margin:5px 0 0;color:var(--muted);font-size:11px}
.history-close{margin-left:auto;flex:none}
.history-list{flex:1;overflow:auto;padding:16px 20px 28px}
.history-empty{height:100%;min-height:260px;display:grid;place-items:center;text-align:center;color:var(--muted)}
.history-empty svg{width:38px;display:block;margin:0 auto 13px;fill:none;stroke:var(--brand-gray);stroke-width:1.3}
.history-empty strong{display:block;color:var(--ink);font-size:14px;margin-bottom:6px}
.history-empty span{font-size:11px}
.history-card{padding:17px 17px 15px;margin-bottom:10px;border:1px solid var(--line);border-radius:13px;background:var(--white)}
.history-card-top{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}
.history-card h3{margin:0;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.history-card time{display:block;margin-top:5px;color:var(--muted);font-size:10px}
.history-score{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:var(--soft-red);color:var(--red);font:800 13px Arial}
.history-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;color:var(--muted);font-size:10px}
.history-meta span{padding:5px 8px;border-radius:20px;background:var(--paper)}
.history-actions{display:flex;gap:7px;padding-top:12px;border-top:1px solid var(--line)}
.history-actions button{min-height:36px;padding:8px 12px}
.history-actions .view-report{flex:1}
.history-actions .delete-history{width:36px;padding:0;background:transparent;color:var(--muted)}
.history-actions .delete-history:hover{color:var(--red);background:var(--soft-red)}

html[data-theme="dark"] .history-panel{background:#151718}
html[data-theme="dark"] .history-header{border-color:#34383a}
html[data-theme="dark"] .history-card{background:#222526;border-color:#363a3c}
html[data-theme="dark"] .history-card h3{color:#f0f2f2}
html[data-theme="dark"] .history-meta span{background:#2b2f30}
html[data-theme="dark"] .history-count{border-color:#151718}
html[data-theme="dark"] .history-empty svg{stroke:#5a6063}
html[data-theme="dark"] .history-actions{border-color:#363a3c}
html[data-theme="dark"] .history-close{color:#a8adaf}

@media(max-width:700px){
  .history-button,.theme-toggle,.icon-button{margin-left:8px}
  .history-header{padding:20px 18px 17px}
  .history-list{padding:13px 14px 22px}
  .binary-list fieldset{gap:12px}
  .multiple-hint{display:block;margin:5px 0 0}
  .multiple-hint:before{display:none}
}

@media print{
  .report-hero{background:#111314!important;box-shadow:inset 0 0 0 1000px #111314!important;color:#fff!important;border-top-color:#111314}
  .report-hero>img{filter:brightness(0) invert(1)}
  .report-hero>div:nth-child(2)>span,.report-meta{color:#aeb4b5}
  .report-hero h2,.report-hero p{color:#fff!important}
  .report-hero h2 em{background:linear-gradient(90deg,#079fb5 0%,#21aa98 35%,#e9b83f 68%,#e85d43 100%);background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent!important}
  .report-hero:after{border-color:#e9b83f #e85d43 #21aa98 #079fb5!important}
  .report-footer{background:#fff!important;color:#153b43!important;box-shadow:none!important}
  .report-footer img{filter:none}
}


.icon-button:hover,.icon-button:focus-visible{background:#f1e7e7}
html[data-theme="dark"] .icon-button:hover,html[data-theme="dark"] .icon-button:focus-visible{background:#322a2b}
html[data-theme="dark"] .icon-button svg,html[data-theme="dark"] .theme-toggle svg,html[data-theme="dark"] .history-button svg{stroke:#e4e6e6}
.theme-toggle:focus-visible,.history-button:focus-visible,.icon-button:focus-visible{outline-color:rgba(227,35,41,.5)}

.report-hero:after{
  width:520px;
  height:520px;
  border:0!important;
  background:conic-gradient(from 205deg,
    #079fb5 0 6.25%,#21aa98 6.25% 12.5%,#e9b83f 12.5% 18.75%,#e85d43 18.75% 25%,
    #079fb5 25% 31.25%,#21aa98 31.25% 37.5%,#e9b83f 37.5% 43.75%,#e85d43 43.75% 50%,
    #079fb5 50% 56.25%,#21aa98 56.25% 62.5%,#e9b83f 62.5% 68.75%,#e85d43 68.75% 75%,
    #079fb5 75% 81.25%,#21aa98 81.25% 87.5%,#e9b83f 87.5% 93.75%,#e85d43 93.75% 100%);
  -webkit-mask:radial-gradient(farthest-side,transparent 0 67%,#000 68% 100%);
  mask:radial-gradient(farthest-side,transparent 0 67%,#000 68% 100%);
}
.report-hero h2 em{display:inline-flex;align-items:flex-start;overflow:visible;background:none!important;-webkit-text-fill-color:initial!important;color:inherit!important}
.report-hero h2 em .brand-360{display:inline-block;background:linear-gradient(90deg,#079fb5 0%,#21aa98 38%,#e9b83f 70%,#e85d43 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.report-hero h2 em sup{display:inline-block;margin:.08em 0 0 .04em;color:#e85d43!important;-webkit-text-fill-color:#e85d43!important;font-size:.42em;line-height:1;font-weight:800}
.report-footer img{filter:none!important;width:112px;height:auto}

@media(max-width:700px){
  .report-hero:after{width:430px;height:430px}
}

@media print{
  .report-hero:after{width:230px;height:230px}
  .report-hero h2 em{background:none!important;-webkit-text-fill-color:initial!important}
  .report-hero h2 em .brand-360{background:linear-gradient(90deg,#079fb5 0%,#21aa98 38%,#e9b83f 70%,#e85d43 100%);background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent!important}
  .report-hero h2 em sup{color:#e85d43!important;-webkit-text-fill-color:#e85d43!important}
  .report-footer img{filter:none!important}
}



/* Correções finais de tipografia, formulário de gestão, capa do relatório e próximo passo. */
body,input,textarea,button,.nav-step,.btn{font-family:"Segoe UI",Arial,Helvetica,sans-serif}
.side-intro h1,.step-heading h2,.report-hero h2,.report-summary h3,.section-title h3,.modal h3,.priority-list b,.score-card strong,.action-item h4,.step-position,.progress-ring strong{font-family:"Segoe UI",Arial,Helvetica,sans-serif}
.step-heading h2{font-weight:750;letter-spacing:-.045em}
.report-hero h2,.report-summary h3{font-weight:750}

@media(min-width:701px){
  .binary-list fieldset{display:flex;justify-content:space-between;gap:30px;align-items:center;min-height:90px;padding:8px 0}
  .binary-list legend{float:none;margin:auto 0;line-height:1.2;font-size:13px;font-weight:600;color:var(--ink);text-align:left;flex:0 0 auto}
  .binary-list .segmented{margin-left:auto;width:132px;flex-shrink:0}
  .binary-list .segmented.three{width:360px;max-width:100%}
  .binary-list .segmented label{flex:1}
  .binary-list .segmented span{text-align:center;padding:9px 8px;display:grid;place-items:center;min-height:34px;line-height:1.2}
}

/* Form section spacing fixes */
.form-step > * + *{margin-top:28px!important}
.form-step > fieldset{margin-top:28px!important;margin-bottom:0!important}
.form-step > .field-grid{margin-top:28px!important}

/* Outro specify text input box */
.outro-field-wrap{animation:fadeInUp .25s ease;width:100%}
.outro-field-wrap.outro-field-wrap{margin-top:12px!important}
.outro-field-wrap .field{margin-top:0}
.outro-field-wrap input{background:#fff;border-color:#deded9}
html[data-theme="dark"] .outro-field-wrap input{background:#222526;border-color:#3c4143}
@keyframes fadeInUp{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* PDF Cover / Report Hero */
.report-hero{position:relative;display:flex;justify-content:space-between;align-items:center;height:420px;padding:48px 58px;background:#111314!important;box-shadow:inset 0 0 0 1000px #111314;color:#fff;isolation:isolate;overflow:hidden}
.report-hero:after{display:none!important;content:none!important}
.report-hero>img:not(.report-brand-logo img){display:none!important}

.report-hero-left{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;max-width:65%}
.report-hero-left>span{font-size:10px;letter-spacing:.22em;color:#adb3b4;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.report-hero-left h2{font-size:56px;line-height:.96;letter-spacing:-.055em;margin:8px 0 14px;color:#fff}
.report-hero-left h2 em{font-size:1em;line-height:1;letter-spacing:-.055em;text-transform:none}
.report-hero-left h2 em .brand-360{font-size:1em!important;line-height:1!important;letter-spacing:-.055em!important;text-transform:none!important}
.report-hero-left h2 em sup{font-size:.42em!important;line-height:1!important;margin:.07em 0 0 .04em!important}
.report-hero-left p#reportCompany{font-size:22px;font-weight:700;color:#fff;margin:0 0 12px 0;overflow-wrap:anywhere}

.report-meta{position:static!important;inset:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;gap:4px!important;margin-top:2px!important;padding:0!important;z-index:2}
.report-meta span#reportDate{font-size:13px;font-weight:700;color:#ffffff;letter-spacing:.05em;text-transform:uppercase}
.report-meta span#reportConsultant{font-size:10px;font-weight:600;color:#aeb4b5;letter-spacing:.14em;text-transform:uppercase}

.report-brand-logo{position:relative;z-index:2;width:180px;height:140px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.report-brand-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:none!important}

/* Legible, non-red Próximos passos card */
.next-step-card{background:#f7f7f5!important;border:1px solid #deded9!important;border-left:4px solid var(--red)!important;padding:22px!important;border-radius:12px!important;box-shadow:0 2px 8px rgba(0,0,0,.03)!important}
.next-step-card strong{display:block!important;font:700 16px/1.4 "Segoe UI",Arial,sans-serif!important;color:#181818!important;margin-bottom:8px!important}
.next-step-card span{display:block!important;font-size:12px!important;line-height:1.6!important;color:#4a4a4a!important}

html[data-theme="dark"] .next-step-card{background:#222526!important;border:1px solid #363a3c!important;border-left:4px solid var(--red)!important}
html[data-theme="dark"] .next-step-card strong{color:#f0f2f2!important}
html[data-theme="dark"] .next-step-card span{color:#b0b8ba!important}

@media(max-width:1040px) and (min-width:701px){
  .workspace{max-width:880px}
  .step-heading h2{font-size:46px}
}

@media(max-width:700px){
  .report-hero{flex-direction:column;align-items:flex-start;height:auto;min-height:380px;padding:34px 24px;gap:24px}
  .report-hero-left{max-width:100%}
  .report-hero-left h2{font-size:42px}
  .report-brand-logo{width:130px;height:100px;align-self:flex-start}
}

@media print{
  .report-hero{
    width:210mm!important;
    height:297mm!important;
    min-height:297mm!important;
    padding:24mm 20mm!important;
    break-after:page;
    page-break-after:always;
    border:0!important;
    background:#111314!important;
    box-shadow:inset 0 0 0 300mm #111314!important;
    color:#fff!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
  .report-hero:after{display:none!important;content:none!important}
  .report-hero>img:not(.report-brand-logo img){display:none!important}

  .report-hero-left{max-width:120mm!important}
  .report-hero-left>span{font-size:9pt!important;color:#adb3b4!important}
  .report-hero-left h2{font-size:44pt!important;line-height:.95!important;margin:4mm 0 6mm!important;color:#fff!important}
  .report-hero-left p#reportCompany{font-size:18pt!important;color:#fff!important;margin-bottom:6mm!important}
  .report-meta{position:static!important;text-align:left!important;margin-top:4mm!important}
  .report-meta span#reportDate{font-size:11pt!important;color:#ffffff!important}
  .report-meta span#reportConsultant{font-size:9pt!important;color:#aeb4b5!important}

  .report-brand-logo{width:55mm!important;height:45mm!important}
  .report-brand-logo img{max-width:100%!important;max-height:100%!important;filter:none!important}

  .report-content{padding:15mm 16mm 0!important}
  .report-footer img{width:32mm;filter:none!important}

  .next-step-card{background:#f7f7f5!important;border:1px solid #ddd!important;border-left:4pt solid var(--red)!important;padding:16pt!important}
  .next-step-card strong{color:#181818!important;font-size:13pt!important}
  .next-step-card span{color:#444444!important;font-size:10pt!important}
}





/* Extra overrides for report meta flow */
.report-meta{position:static!important;inset:auto!important}
@media print{.report-meta{position:static!important;inset:auto!important}}


