.pfsp-app{--blue:#174ea6;--ink:#172033;--muted:#667085;--line:#e3e8ef;max-width:900px;margin:24px auto;padding:clamp(18px,3vw,30px);border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);font:inherit;box-sizing:border-box}.pfsp-app *{box-sizing:border-box}.pfsp-intro{margin-bottom:28px}.pfsp-eyebrow{margin:0 0 8px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.1em}.pfsp-intro h2{margin:0 0 10px;font-size:clamp(25px,4vw,34px);line-height:1.2}.pfsp-intro p,.pfsp-section-heading p{color:var(--muted);line-height:1.6;margin:0}.pfsp-section-heading{margin:25px 0 15px}.pfsp-section-heading h3{font-size:19px;margin:0 0 5px}.pfsp-section-heading p{font-size:14px}.pfsp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pfsp-field{min-width:0}.pfsp-wide{grid-column:1/-1}.pfsp-field label{display:block;font-weight:650;font-size:14px;margin-bottom:7px}.pfsp-field input,.pfsp-field select{width:100%;min-height:46px;border:1px solid #cfd6e0;border-radius:9px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit}.pfsp-field input:focus,.pfsp-field select:focus{outline:3px solid #dbeafe;border-color:var(--blue)}.pfsp-field small{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:6px}.pfsp-actions,.pfsp-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.pfsp-button{border:0;border-radius:9px;padding:12px 17px;font:inherit;font-weight:700;cursor:pointer;min-height:44px}.pfsp-primary{background:var(--blue);color:#fff}.pfsp-secondary{background:#edf2f8;color:#1f3556}.pfsp-text-button{background:transparent;color:var(--muted)}.pfsp-button:focus-visible{outline:3px solid #86b7ff;outline-offset:2px}.pfsp-error{min-height:20px;margin:12px 0 0;color:#b42318;font-size:14px}.pfsp-success-message{color:#167647}.pfsp-results{margin-top:30px;padding:22px;border-radius:14px;background:#f7f9fc;border:1px solid var(--line)}.pfsp-result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.pfsp-result-top h3{margin:0;font-size:22px}.pfsp-status{display:inline-block;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#e8eef8;color:#24436d}.pfsp-status.is-alert{background:#fee4e2;color:#912018}.pfsp-status.is-warning{background:#fff0c2;color:#7a4b00}.pfsp-status.is-good{background:#dcfae6;color:#05603a}.pfsp-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.pfsp-metric{padding:15px;background:#fff;border:1px solid var(--line);border-radius:10px}.pfsp-metric span{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}.pfsp-metric strong{font-size:clamp(17px,2.8vw,23px);line-height:1.3;overflow-wrap:anywhere}.pfsp-explanation{padding:14px;border-left:3px solid var(--blue);background:#fff;line-height:1.55}.pfsp-breakdown{margin-top:18px}.pfsp-breakdown h4{margin:0 0 8px}.pfsp-breakdown ul{padding-left:20px;margin:0;color:var(--muted);line-height:1.8}.pfsp-breakdown strong{color:var(--ink)}.pfsp-disclaimer,.pfsp-privacy{font-size:12px;color:var(--muted);line-height:1.6;margin:16px 0 0}.pfsp-privacy{border-top:1px solid var(--line);padding-top:14px}@media(max-width:600px){.pfsp-grid,.pfsp-metrics{grid-template-columns:1fr}.pfsp-actions,.pfsp-result-actions{display:grid;grid-template-columns:1fr}.pfsp-button{width:100%}.pfsp-result-top{display:block}.pfsp-status{margin-top:12px}}@media print{body *{visibility:hidden!important}.pfsp-results,.pfsp-results *{visibility:visible!important}.pfsp-results{position:absolute;left:0;top:0;width:100%;border:0;background:#fff}.pfsp-result-actions,.pfsp-privacy{display:none!important}}