/* App-only additions on top of assets/styles.css */
.dev-banner{background:#FFF3CD;border-bottom:2px solid #FFD666;color:#7A5B00;padding:12px 24px;text-align:center;font-family:var(--cond);font-size:16px;font-weight:600;position:sticky;top:0;z-index:100}
.dev-banner code{background:#fff;padding:2px 10px;border-radius:6px;font-size:18px;letter-spacing:3px;color:#0D2345;margin:0 6px}
.err{color:#B42318;font-size:14px;margin-top:10px;display:none}
.err.show{display:block}
.ok-msg{color:var(--green);font-size:14px;margin-top:10px;display:none}
.ok-msg.show{display:block}
.codes input.c{width:62px;height:74px;border:1.5px solid #c9ced6;border-radius:12px;text-align:center;font-family:var(--cond);font-size:36px;font-weight:700;color:var(--navy);background:#fff}
.codes input.c:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(13,35,69,.14)}
button.btn{font-family:var(--body);cursor:pointer}
button.btn:disabled{opacity:.55;cursor:not-allowed}
.rec{cursor:pointer;transition:border-color .15s,box-shadow .15s}
.rec:hover,.rec.selected{border-color:var(--green);box-shadow:0 6px 18px rgba(57,100,29,.12)}
.rec .tag button{background:none;border:0;color:var(--navy);font-weight:600;cursor:pointer;font-size:12.5px;padding:0;font-family:var(--body)}
.checkrow{cursor:pointer}
.checkrow input{width:20px;height:20px;accent-color:var(--mint-2)}
.consent input{cursor:pointer}
.rate-warn{background:#FFF8F0;border:1px solid #F0D9B5;border-radius:12px;padding:12px 16px;margin-bottom:18px;color:#8A4B08;font-size:14.5px}
.report-footer-links{text-align:center;margin-top:28px;font-size:13px;color:var(--grey-3)}
.report-footer-links a{color:var(--navy);font-weight:600;text-decoration:underline}
.privacy-page{max-width:760px;margin:0 auto;padding:48px 24px 72px}
.privacy-page h1{font-family:var(--cond);font-size:40px;margin:0 0 8px}
.privacy-page h2{font-family:var(--cond);font-size:24px;margin:32px 0 10px}
.privacy-page .card{padding:36px 40px}
.privacy-form{margin-top:16px;display:grid;gap:14px}
.privacy-form .grid-2{gap:14px}
.loading{opacity:.6;pointer-events:none}


/* Printable report brand (logo + contact) */
.report-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;margin-bottom:8px;border-bottom:1px solid #e1e4e8}
.report-brand-logo{height:40px;width:auto;display:block}
.report-brand-contact{font-family:var(--cond);font-size:14px;line-height:1.35;color:#000;text-align:right}
.report-brand-name{font-weight:700;font-size:16px;margin-bottom:2px;color:var(--navy)}
.report-brand-links{margin-top:4px}
.report-brand-links a{color:var(--navy);font-weight:600;text-decoration:underline}

@media (max-width:640px){
  .report-brand{flex-direction:column;align-items:flex-start}
  .report-brand-contact{text-align:left}
}
/* Print / PDF */
@media print{
  .chrome,.site-header,.site-footer,.newsletter,.dev-banner,.tool-hero .stepper,.report-actions,.cta,.no-print,.back{display:none!important}
  .tool-hero{padding:16px 24px!important;background:#0D2345!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .wrap{padding:12px 0!important;max-width:100%!important}
  .card{box-shadow:none!important;border:1px solid #ccc!important;border-radius:0!important;padding:20px!important}
  .kpi.hl,.pass,.cta,.btn-help{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{font-size:12pt}
  a[href]:after{content:""}
  .report-brand{display:flex!important;page-break-inside:avoid;break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .report-brand-logo{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* Pay-mode toggle chips (quantify) */
.pay-toggle{display:inline-flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.pay-chip{appearance:none;border:1.5px solid #c9ced6;background:#fff;color:var(--navy);font-family:var(--body);font-size:14.5px;font-weight:600;padding:10px 18px;border-radius:999px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.pay-chip:hover{border-color:var(--green)}
.pay-chip.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 4px 12px rgba(13,35,69,.18)}

/* High-level build approach bullets */
.build-bullets{margin:14px 0 0;padding:0 0 0 20px;display:grid;gap:10px}
.build-bullets li{font-size:15px;line-height:1.45;color:#222}

/* Locked / teaser blueprint panel */
.locked-panel{margin-top:22px;border:1.5px dashed #b7c4a8;border-radius:20px;padding:24px 28px;background:linear-gradient(180deg,#F7FAF4 0%,#fff 70%);position:relative}
.locked-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px}
.locked-head h4{font-family:var(--cond);font-size:22px;margin:0 0 4px;color:var(--navy)}
.lock-ic{font-size:22px;line-height:1;margin-top:2px}
.locked-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.locked-list li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:#445;padding:10px 12px;background:rgba(255,255,255,.85);border:1px solid #e4ebd9;border-radius:12px}
.lock-mini{opacity:.7;flex-shrink:0}
.locked-cta-hint{margin:14px 0 0;font-size:13.5px;color:var(--grey-3)}
.locked-unlock-btn{margin-top:16px}

/* Related opportunities on report */
.related-section{margin-top:22px}
.related-section h4{font-family:var(--cond);font-size:24px;margin:0 0 4px;color:var(--navy)}
.related-recs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.related-card{border:1px solid #e1e4e8;border-radius:16px;padding:18px 20px;background:#fff}
.related-card h5{font-family:var(--cond);font-size:18px;margin:0 0 6px;color:var(--navy)}
.related-card p{font-size:14px;color:#444;margin:0 0 10px;line-height:1.4}
.related-card .tag{font-size:12.5px;color:var(--green);font-weight:600}

@media (max-width:900px){
  .related-recs{grid-template-columns:1fr}
}

@media print{
  .locked-panel,.related-section,.build-bullets{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .locked-panel{break-inside:avoid}
  .related-recs{grid-template-columns:1fr 1fr 1fr}
}

/* One-click help CTA feedback */
.help-status{margin-top:8px;font-size:13.5px;max-width:280px}
.report-actions .help-status{width:100%;text-align:right}
.btn.help-sent{background:#2f5a18!important;border-color:#2f5a18!important;opacity:1!important}
.cta .btn.help-sent{background:#D2E4C7!important;color:#0D2345!important;border-color:#D2E4C7!important}

/* Explainer: typical completion time — bold, top of hero copy */
.time-callout{
  margin:0 0 14px;
  font-size:18px;
  line-height:1.35;
  letter-spacing:.2px;
  color:#fff;
}
.time-callout b{font-weight:800}
