.cprec-wrap{--cprec-paper:#F8F8F8; --cprec-paper-alt:#F4F4F4; --cprec-paper-raised:#FFFFFF; --cprec-ink:#2E2E33; --cprec-ink-soft:#3F3F45; --cprec-ink-mute:#8C8C8C; --cprec-line:#E3E1E9; --cprec-purple:#5C3C97; --cprec-purple-dark:#3E2A68; --cprec-purple-tint:#EFEAF9; --cprec-lilac:#9F76EB; --cprec-lilac-dark:#5B3F94; --cprec-gradient:linear-gradient(135deg,#5C3C97 0%,#8A5FD6 55%,#9F76EB 100%); --cprec-radius:12px; font-family:'Poppins',Arial,sans-serif !important; color:var(--cprec-ink) !important; line-height:1.55 !important; max-width:1080px !important; margin:0 auto !important;}
.cprec-wrap *{box-sizing:border-box !important; font-family:inherit !important;}
.cprec-wrap h2,.cprec-wrap h3{font-weight:600 !important;}
.cprec-wrap p{margin:0 !important;}

/* título */
.cprec-title-block{text-align:center !important; max-width:640px !important; margin:0 auto 40px !important;}
.cprec-eyebrow{font-size:14px !important; letter-spacing:.12em !important; text-transform:uppercase !important; color:var(--cprec-purple) !important; font-weight:600 !important; margin-bottom:10px !important;}
.cprec-title-block h1{font-size:30px !important; line-height:1.2 !important; font-weight:700 !important; margin:0 0 12px !important; color:var(--cprec-ink) !important;}
.cprec-sub{font-size:16px !important; color:var(--cprec-ink-soft) !important;}

/* stepper */
.cprec-stepper{display:flex !important; align-items:center !important; justify-content:center !important; gap:6px !important; margin-bottom:36px !important; flex-wrap:wrap !important;}
.cprec-step-dot{display:flex !important; flex-direction:column !important; align-items:center !important; gap:6px !important; opacity:.45 !important;}
.cprec-step-dot span{width:30px !important; height:30px !important; border-radius:50% !important; background:var(--cprec-paper-alt) !important; border:2px solid var(--cprec-line) !important; display:flex !important; align-items:center !important; justify-content:center !important; font-size:15px !important; font-weight:600 !important; color:var(--cprec-ink-soft) !important;}
.cprec-step-dot em{font-style:normal !important; font-size:12px !important; color:var(--cprec-ink-soft) !important; white-space:nowrap !important;}
.cprec-step-dot.active,.cprec-step-dot.done{opacity:1 !important;}
.cprec-step-dot.done{cursor:pointer !important;}
.cprec-step-dot.done:hover span{transform:scale(1.08) !important;}
.cprec-step-dot.active span{background:var(--cprec-gradient) !important; border-color:transparent !important; color:#fff !important;}
.cprec-step-dot.done span{background:var(--cprec-purple-tint) !important; border-color:var(--cprec-purple) !important; color:var(--cprec-purple) !important;}
.cprec-step-line{width:36px !important; height:2px !important; background:var(--cprec-line) !important;}

/* painel de cada etapa */
.cprec-step-panel{background:var(--cprec-paper-raised) !important; border:1px solid var(--cprec-line) !important; border-radius:var(--cprec-radius) !important; padding:34px !important; margin-bottom:26px !important;}
.cprec-step-panel h2{font-size:20px !important; margin:0 0 10px !important;}
.cprec-hint{font-size:15px !important; color:var(--cprec-ink-soft) !important; margin-bottom:48px !important; line-height:1.6 !important; display:block !important;}

/* chips de marketplace */
.cprec-chips{display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:16px !important; margin-bottom:18px !important;}
@media (max-width:640px){ .cprec-chips{grid-template-columns:1fr 1fr !important;} }
.cprec-chip{display:flex !important; align-items:center !important; gap:10px !important; padding:12px 14px !important; border:2px solid var(--cprec-line) !important; border-radius:10px !important; background:var(--cprec-paper-alt) !important; cursor:pointer !important; font-size:15px !important; font-weight:500 !important; color:var(--cprec-ink) !important; text-align:left !important; transition:border-color .15s,transform .1s !important;}
.cprec-chip:hover{border-color:var(--cprec-lilac) !important; transform:translateY(-1px) !important;}
.cprec-chip.active{border-color:var(--cprec-purple) !important; background:var(--cprec-purple-tint) !important;}
.cprec-chip-logo{width:38px !important; height:38px !important; border-radius:11px !important; display:flex !important; align-items:center !important; justify-content:center !important; font-size:15px !important; font-weight:800 !important; letter-spacing:.02em !important; flex-shrink:0 !important; box-shadow:0 3px 8px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25) !important; position:relative !important; text-shadow:0 1px 1px rgba(0,0,0,.12) !important;}
.cprec-chip{font-size:16px !important; padding:14px 16px !important;}

.cprec-field{margin-bottom:18px !important;}
.cprec-field label{display:block !important; font-size:15px !important; color:var(--cprec-ink-soft) !important; margin-bottom:5px !important;}
.cprec-field input[type=number],.cprec-field input[type=text],.cprec-field input[type=email],.cprec-field input[type=tel]{width:100% !important; padding:10px 12px !important; border:1px solid var(--cprec-line) !important; border-radius:8px !important; font-size:16px !important; background:var(--cprec-paper-alt) !important; color:var(--cprec-ink) !important;}
.cprec-field input:focus{outline:2px solid var(--cprec-purple) !important; outline-offset:1px !important;}

.cprec-row2{display:grid !important; grid-template-columns:1fr 1fr !important; gap:16px !important;}

.cprec-slider-row{margin-bottom:26px !important;}
.cprec-slider-row .cprec-top{display:flex !important; justify-content:space-between !important; align-items:baseline !important; margin-bottom:6px !important;}
.cprec-slider-row label{font-size:15px !important; color:var(--cprec-ink-soft) !important;}
.cprec-val{font-size:16px !important; font-weight:700 !important; color:var(--cprec-purple) !important;}
.cprec-wrap input[type=range]{width:100% !important; accent-color:var(--cprec-purple) !important;}
.cprec-slider-big .cprec-val{font-size:22px !important;}

.cprec-toggle{display:flex !important; border:1px solid var(--cprec-line) !important; border-radius:8px !important; overflow:hidden !important; margin-bottom:30px !important;}
.cprec-toggle button{flex:1 !important; border:none !important; background:var(--cprec-paper-alt) !important; padding:10px 8px !important; font-size:14px !important; color:var(--cprec-ink-soft) !important; cursor:pointer !important; font-family:inherit !important;}
.cprec-toggle button.active{background:var(--cprec-gradient) !important; color:#fff !important; font-weight:600 !important;}

/* ações (botões de navegação) */
.cprec-actions{display:flex !important; justify-content:space-between !important; align-items:center !important; margin-top:24px !important; gap:16px !important;}
.cprec-cta{background:var(--cprec-gradient) !important; color:#fff !important; border:none !important; border-radius:8px !important; padding:12px 22px !important; font-size:16px !important; font-weight:600 !important; cursor:pointer !important; box-shadow:0 4px 14px rgba(92,60,151,.28) !important;}
.cprec-cta:hover{filter:brightness(1.06) !important;}
.cprec-cta-block{width:100% !important;}
.cprec-secondary{background:var(--cprec-paper-alt) !important; border:1px solid var(--cprec-line) !important; border-radius:8px !important; padding:12px 20px !important; font-size:15px !important; color:var(--cprec-ink) !important; cursor:pointer !important; font-family:inherit !important;}
.cprec-secondary:hover{border-color:var(--cprec-purple) !important; color:var(--cprec-purple) !important;}
.cprec-fineprint{font-size:13px !important; color:var(--cprec-ink-mute) !important; margin-top:10px !important;}

/* recibo de resultado */
.cprec-receipt{background:var(--cprec-paper-raised) !important; border:1px solid var(--cprec-line) !important; border-radius:var(--cprec-radius) !important; overflow:hidden !important; margin-bottom:26px !important;}
.cprec-receipt-head{background:var(--cprec-gradient) !important; color:#fff !important; padding:24px !important;}
.cprec-label{font-size:15px !important; opacity:.85 !important; margin:0 0 4px !important; color:#fff !important;}
.cprec-price{font-size:36px !important; font-weight:700 !important; margin:0 !important; color:#fff !important;}
.cprec-receipt-body{padding:26px 28px 8px !important;}
.cprec-rline{display:flex !important; justify-content:space-between !important; gap:10px !important; padding:10px 0 !important; font-size:15px !important; border-bottom:1px dotted var(--cprec-line) !important;}
.cprec-lbl{color:var(--cprec-ink-soft) !important;}
.cprec-amt{color:var(--cprec-ink) !important; white-space:nowrap !important; font-weight:500 !important;}
.cprec-deduction .cprec-amt{color:var(--cprec-lilac-dark) !important;}
.cprec-total{border-bottom:none !important; border-top:1px solid var(--cprec-ink) !important; margin-top:6px !important; padding-top:14px !important; font-size:16px !important;}
.cprec-total .cprec-lbl{color:var(--cprec-ink) !important; font-weight:600 !important;}
.cprec-total .cprec-amt{color:var(--cprec-purple) !important; font-weight:700 !important; font-size:18px !important;}
.cprec-margin-badge{display:inline-block !important; margin:16px 24px 20px !important; background:var(--cprec-purple-tint) !important; color:var(--cprec-purple-dark) !important; font-size:14px !important; font-weight:700 !important; padding:7px 14px !important; border-radius:20px !important;}

/* captura de lead */
.cprec-required{color:var(--cprec-purple) !important; font-weight:700 !important;}
.cprec-field-error{display:none; font-size:12px !important; color:#B3261E !important; margin-top:5px !important;}
.cprec-field.error input{border-color:#B3261E !important;}
.cprec-field.error .cprec-field-error{display:block !important;}

.cprec-lead-card{background:var(--cprec-paper-raised) !important; border:1px solid var(--cprec-line) !important; border-radius:var(--cprec-radius) !important; padding:30px !important; display:grid !important; grid-template-columns:1.1fr 1fr !important; gap:30px !important; align-items:center !important; margin-bottom:26px !important;}
@media (max-width:760px){ .cprec-lead-card{grid-template-columns:1fr !important;} }
.cprec-lead-card h3{font-size:21px !important; margin:0 0 8px !important;}
.cprec-lead-card p{color:var(--cprec-ink-soft) !important; font-size:16px !important; max-width:420px !important;}
.cprec-privacy{font-size:14px !important; color:var(--cprec-ink-mute) !important; margin-top:12px !important;}

/* relatório liberado */
.cprec-report{display:none !important;}
.cprec-report.show{display:block !important;}
.cprec-report-card{background:var(--cprec-paper-raised) !important; border:1px solid var(--cprec-line) !important; border-radius:var(--cprec-radius) !important; padding:30px !important; margin-bottom:8px !important;}
.cprec-report-card h3{font-size:20px !important; margin:0 0 4px !important;}
.cprec-confirm{display:inline-block !important; background:var(--cprec-purple-tint) !important; color:var(--cprec-purple-dark) !important; font-size:14px !important; font-weight:700 !important; padding:5px 12px !important; border-radius:20px !important; margin-bottom:18px !important;}
.cprec-report-grid{display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:14px !important; margin:16px 0 6px !important;}
@media (max-width:640px){ .cprec-report-grid{grid-template-columns:1fr 1fr !important;} }
.cprec-stat{background:var(--cprec-paper-alt) !important; border-radius:8px !important; padding:14px !important;}
.cprec-stat .cprec-k{font-size:14px !important; color:var(--cprec-ink-soft) !important; margin:0 0 4px !important;}
.cprec-stat .cprec-v{font-size:18px !important; font-weight:700 !important; margin:0 !important; color:var(--cprec-ink) !important;}
.cprec-report-actions{display:flex !important; gap:10px !important; margin-top:18px !important; flex-wrap:wrap !important;}

.cprec-print-header{display:none;}

/* título do resultado */
.cprec-result-title{text-align:center !important; max-width:560px !important; margin:0 auto 20px !important;}
.cprec-result-kicker{display:inline-block !important; background:var(--cprec-purple-tint) !important; color:var(--cprec-purple-dark) !important; font-size:14px !important; font-weight:700 !important; padding:6px 14px !important; border-radius:20px !important; margin-bottom:12px !important;}
.cprec-result-title h2{font-size:24px !important; font-weight:700 !important; margin:0 0 8px !important; color:var(--cprec-ink) !important;}

.cprec-receipt-big .cprec-price{font-size:42px !important;}
.cprec-health-badge{display:inline-block !important; margin-top:10px !important; background:rgba(255,255,255,.18) !important; color:#fff !important; font-size:14px !important; font-weight:700 !important; padding:5px 12px !important; border-radius:20px !important;}

/* barra de proporção visual */
.cprec-bar{display:flex !important; width:100% !important; height:14px !important; border-radius:8px !important; overflow:hidden !important; margin-bottom:10px !important;}
.cprec-bar-legend{display:flex !important; flex-wrap:wrap !important; gap:12px !important; margin-bottom:18px !important;}
.cprec-bar-legend span{display:flex !important; align-items:center !important; gap:6px !important; font-size:13px !important; color:var(--cprec-ink-soft) !important;}
.cprec-bar-legend i{width:9px !important; height:9px !important; border-radius:2px !important; display:inline-block !important;}

.cprec-breakeven .cprec-amt{color:var(--cprec-ink-soft) !important; font-weight:600 !important;}

/* insight educativo */
.cprec-insight{display:flex !important; gap:14px !important; background:var(--cprec-purple-tint) !important; border:1px solid var(--cprec-line) !important; border-radius:var(--cprec-radius) !important; padding:22px 26px !important; margin-bottom:20px !important; align-items:flex-start !important;}
.cprec-insight-icon{font-size:20px !important; line-height:1 !important;}
.cprec-insight p{font-size:15px !important; color:var(--cprec-ink) !important; line-height:1.6 !important;}
.cprec-insight strong{color:var(--cprec-purple-dark) !important;}

/* comparativo entre marketplaces */
.cprec-compare{margin-bottom:26px !important;}
.cprec-compare h3{font-size:19px !important; margin:0 0 4px !important;}
.cprec-compare-grid{display:grid !important; grid-template-columns:repeat(5,1fr) !important; gap:10px !important; margin-top:14px !important;}
@media (max-width:760px){ .cprec-compare-grid{grid-template-columns:repeat(2,1fr) !important;} }
.cprec-compare-card{background:var(--cprec-paper-raised) !important; border:1px solid var(--cprec-line) !important; border-radius:10px !important; padding:14px 12px !important; text-align:center !important;}
.cprec-compare-card.best{border-color:var(--cprec-purple) !important; background:var(--cprec-purple-tint) !important;}
.cprec-compare-logo{width:38px !important; height:38px !important; border-radius:11px !important; display:flex !important; align-items:center !important; justify-content:center !important; font-size:15px !important; font-weight:800 !important; letter-spacing:.02em !important; margin:0 auto 8px !important; box-shadow:0 3px 8px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25) !important; text-shadow:0 1px 1px rgba(0,0,0,.12) !important;}
.cprec-compare-card .cprec-cn{font-size:12px !important; color:var(--cprec-ink-soft) !important; margin:0 0 4px !important;}
.cprec-compare-card .cprec-cv{font-size:16px !important; font-weight:700 !important; color:var(--cprec-ink) !important; margin:0 !important;}
.cprec-compare-card .cprec-best-tag{display:block !important; font-size:11px !important; color:var(--cprec-purple) !important; font-weight:700 !important; margin-top:4px !important;}

@media (max-width:480px){
  .cprec-wrap{padding:0 4px !important;}
  .cprec-title-block h1{font-size:22px !important;}
  .cprec-sub{font-size:14px !important;}
  .cprec-step-panel{padding:18px !important;}
  .cprec-row2{grid-template-columns:1fr !important;}
  .cprec-chips{grid-template-columns:1fr 1fr !important; gap:8px !important;}
  .cprec-chip{padding:10px 8px !important; font-size:12px !important; flex-direction:column !important; text-align:center !important; gap:6px !important;}
  .cprec-chip-logo{margin:0 auto !important;}
  .cprec-stepper{gap:2px !important;}
  .cprec-step-line{width:14px !important;}
  .cprec-step-dot em{display:none !important;}
  .cprec-actions{flex-direction:column-reverse !important; align-items:stretch !important;}
  .cprec-actions .cprec-cta,.cprec-actions .cprec-secondary{width:100% !important; text-align:center !important;}
  .cprec-receipt-big .cprec-price{font-size:30px !important;}
  .cprec-compare-grid{grid-template-columns:1fr 1fr !important;}
  .cprec-report-grid{grid-template-columns:1fr 1fr !important;}
  .cprec-lead-card{padding:18px !important;}
  input[type=range]{height:28px !important;}
  .cprec-field input{font-size:16px !important; padding:12px !important;}
}

@media print{
  @page{ margin:16mm; }

  html, body{ background:#fff !important; }

  /* Esconde absolutamente tudo da página (cabeçalho/rodapé/menu do site,
     WhatsApp flutuante, ícones de pagamento etc.) e mostra só o relatório */
  body *{ visibility:hidden !important; }
  .cprec-print-area, .cprec-print-area *{ visibility:visible !important; }
  .cprec-print-area{
    position:absolute !important; left:0 !important; top:0 !important;
    width:100% !important; max-width:100% !important; margin:0 !important; padding:0 !important;
  }

  * { -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }

  .cprec-print-header{
    display:flex !important; justify-content:space-between !important; align-items:baseline !important;
    border-bottom:2px solid var(--cprec-purple) !important; padding-bottom:10px !important; margin-bottom:22px !important;
  }
  .cprec-print-brand{ font-weight:700 !important; font-size:16px !important; color:var(--cprec-purple) !important; }
  .cprec-print-date{ font-size:12px !important; color:var(--cprec-ink-soft) !important; }

  .cprec-print-area .cprec-result-title{ text-align:left !important; max-width:100% !important; margin-bottom:20px !important; }
  .cprec-print-area .cprec-result-title h2{ font-size:19px !important; }
  .cprec-print-area .cprec-hint{ margin-bottom:14px !important; }

  .cprec-print-area .cprec-receipt{ box-shadow:none !important; border:1px solid var(--cprec-line) !important; break-inside:avoid !important; }
  .cprec-print-area .cprec-receipt-head{
    background:var(--cprec-purple-tint) !important; color:var(--cprec-purple-dark) !important;
    padding:16px 20px !important;
  }
  .cprec-print-area .cprec-receipt-head .cprec-label,
  .cprec-print-area .cprec-receipt-head .cprec-price{ color:var(--cprec-purple-dark) !important; }
  .cprec-print-area .cprec-price{ font-size:28px !important; }
  .cprec-print-area .cprec-health-badge{ background:rgba(92,60,151,.12) !important; color:var(--cprec-purple-dark) !important; }
  .cprec-print-area .cprec-receipt-body{ padding:14px 20px 4px !important; }
  .cprec-print-area .cprec-rline{ padding:5px 0 !important; font-size:12.5px !important; }

  .cprec-print-area .cprec-insight{
    box-shadow:none !important; border:1px solid var(--cprec-line) !important; background:#fff !important;
    padding:14px 18px !important; margin-bottom:16px !important; break-inside:avoid !important;
  }
  .cprec-print-area .cprec-insight p{ font-size:12px !important; }

  .cprec-print-area .cprec-compare{ break-inside:avoid !important; margin-bottom:16px !important; }
  .cprec-print-area .cprec-compare-grid{ gap:8px !important; }
  .cprec-print-area .cprec-compare-card{ box-shadow:none !important; padding:10px 6px !important; }

  .cprec-print-area .cprec-report{ display:block !important; }
  .cprec-print-area .cprec-report-card{ box-shadow:none !important; border:1px solid var(--cprec-line) !important; break-inside:avoid !important; }
}
