/* Free Readiness Check: front-end design (purple step form).
   Change the colours here, in one place. */
.frc{
  --frc-accent:#4c17f7;      /* purple: icon, Next button, selected check */
  --frc-accent-dark:#3d0fd6;
  --frc-soft:#f3efff;        /* selected option background */
  --frc-soft-border:#c9b8ff; /* selected option border */
  --frc-bg:#ecedf0;          /* grey panel behind the cards */
  --frc-ink:#0f1222;
  --frc-mut:#6b7280;
  --frc-line:#ececf1;
  max-width:1040px;margin:0 auto;padding:28px;background:var(--frc-bg);border-radius:20px;
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--frc-ink);box-sizing:border-box;line-height:1.45
}
.frc *{box-sizing:border-box}
.frc img{height:14px;width:auto;vertical-align:middle;display:inline-block}

/* ----- header: purple icon + title + small text ----- */
.frc .frc-top{display:flex;align-items:center;gap:14px;margin:0 0 18px}
.frc .frc-ico{flex:none;width:46px;height:46px;border-radius:12px;background:var(--frc-accent);display:flex;align-items:center;justify-content:center}
.frc .frc-ico svg{width:22px;height:22px}
.frc .frc-top-text{flex:1;min-width:0}
.frc .frc-top h2{margin:0;font-size:26px;line-height:1.2;font-weight:700;color:var(--frc-ink)}
.frc .frc-top p{margin:3px 0 0;font-size:14px;color:var(--frc-mut)}
.frc .page-counttotal{flex:none;background:#fff;border-radius:99px;padding:6px 14px;font-size:13px;font-weight:600;color:var(--frc-accent)}

/* ----- progress ----- */
.frc .frc-prog{height:5px;background:#dcdce4;border-radius:99px;margin:0 0 18px;overflow:hidden}
.frc .frc-prog i{display:block;height:100%;background:var(--frc-accent);border-radius:99px;transition:width .3s}

/* ----- white cards ----- */
.frc .frc-card{background:#fff;border-radius:18px;padding:26px;margin:0 0 18px}
.frc .frc-card-title{margin:0 0 4px;font-size:20px;font-weight:700}
.frc .frc-sub{margin:0 0 18px;color:var(--frc-mut);font-size:14px}
.frc .frc-gt{margin:0 0 14px;font-size:12px;font-weight:600;color:var(--frc-accent);letter-spacing:.01em}
.frc .frc-qbox+.frc-qbox{margin-top:26px}
.frc .frc-q{margin:0 0 12px;font-size:16px;font-weight:700;color:var(--frc-ink)}

/* ----- answer options (radio rows) ----- */
.frc .frc-opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid var(--frc-line);border-radius:10px;padding:15px 16px;margin:0 0 10px;font-size:14.5px;color:#2b2f3a;cursor:pointer;transition:background .15s,border-color .15s;font-family:inherit;line-height:1.4;box-shadow:0 1px 2px rgba(15,18,34,.03)}
.frc .frc-opt:hover{border-color:var(--frc-soft-border)}
.frc .frc-radio{flex:none;width:20px;height:20px;border-radius:50%;border:1.5px solid #d4d4dc;background:#fff;position:relative}
.frc .frc-opt.sel{background:var(--frc-soft);border-color:var(--frc-soft-border);color:var(--frc-ink);font-weight:500}
.frc .frc-opt.sel .frc-radio{background:var(--frc-accent);border-color:var(--frc-accent)}
.frc .frc-opt.sel .frc-radio:after{content:"";position:absolute;left:6px;top:2.5px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* ----- buttons ----- */
.frc .frc-nav{display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.frc .frc-btn{display:inline-flex;align-items:center;gap:8px;background:var(--frc-accent);color:#fff;border:0;border-radius:8px;padding:12px 22px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}
.frc .frc-btn:hover{background:var(--frc-accent-dark)}
.frc .frc-btn[disabled]{opacity:.45;cursor:not-allowed}
.frc .frc-ghost{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--frc-ink);border:1px solid #d9d9e1;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit}
.frc .frc-ghost:hover{border-color:var(--frc-accent)}
.frc .frc-err{color:#b91c1c;font-size:13px;margin:0 0 10px;min-height:18px}
.frc .frc-ok{color:#065f46;background:#d1fae5;padding:12px;border-radius:8px;font-size:14px;margin-top:12px}

/* ----- "Before we start" form ----- */
.frc .frc-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.frc label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.frc input[type=text],.frc input[type=email]{width:100%;padding:12px 14px;border:1px solid #dcdce4;border-radius:8px;font-size:14px;margin:0 0 4px;background:#fff;font-family:inherit;height:auto}
.frc input:focus{outline:2px solid var(--frc-accent);border-color:transparent}
.frc .frc-row+.frc-err{margin-top:12px}

/* ----- report ----- */
.frc .frc-h{margin:26px 0 12px;font-size:19px;font-weight:700}
.frc .frc-score{text-align:center}
.frc .frc-pct{font-size:56px;font-weight:800;line-height:1}
.frc .frc-status{display:inline-block;margin-top:10px;padding:5px 14px;border-radius:99px;font-size:13px;font-weight:700}
.frc .frc-statusmsg{margin:10px 0 0;font-size:14px;color:#475569}
.frc .st-Production-Ready{background:#d1fae5;color:#065f46}
.frc .st-Nearly-Ready{background:#dbeafe;color:#1e40af}
.frc .st-Needs-Work{background:#ffedd5;color:#9a3412}
.frc .st-Not-Ready{background:#fee2e2;color:#991b1b}
.frc .frc-cat{background:#fff;border-radius:12px;padding:16px 18px;margin-bottom:10px}
.frc .frc-cat-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px;font-weight:600}
.frc .frc-bar{height:6px;background:#eef0f4;border-radius:99px;overflow:hidden}
.frc .frc-bar i{display:block;height:100%;border-radius:99px}
.frc .frc-badge{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:99px}
.frc .lv-critical{background:#fee2e2;color:#991b1b}.frc .bar-critical{background:#b91c1c}
.frc .lv-high{background:#fef3c7;color:#92400e}.frc .bar-high{background:#b45309}
.frc .lv-medium{background:#dbeafe;color:#1e40af}.frc .bar-medium{background:#1d4ed8}
.frc .lv-low{background:#d1fae5;color:#065f46}.frc .bar-low{background:#10b981}
.frc .frc-sug{background:#fff;border-left:4px solid var(--frc-line);border-radius:8px;padding:12px 14px;margin:0 0 10px;font-size:13.5px;color:#374151}
.frc .frc-sug b{display:block;color:var(--frc-ink);margin-bottom:3px}
.frc .frc-sug.s-critical{border-color:#b91c1c}.frc .frc-sug.s-high{border-color:#b45309}.frc .frc-sug.s-medium{border-color:#1d4ed8}
.frc .frc-note{background:var(--frc-soft);border:1px solid var(--frc-soft-border);border-radius:12px;padding:18px;font-size:13.5px;color:#374151;margin:22px 0}
.frc .frc-note b{display:block;color:var(--frc-accent);margin-bottom:6px;font-size:15px}
.frc .frc-note p{margin:0 0 8px}.frc .frc-note p:last-child{margin:0}
.frc .frc-cta{text-align:center;margin-top:18px}

@media(max-width:640px){
  .frc{padding:14px;border-radius:14px}
  .frc .frc-card{padding:18px;border-radius:14px}
  .frc .frc-row{grid-template-columns:1fr}
  .frc .frc-top h2{font-size:20px}
  .frc .frc-ico{width:40px;height:40px}
}

/* space reserved for the reCAPTCHA badge above the Start button */
.frc .frc-captcha-slot{height:60px;margin:0 0 14px}
