:root{--navy:#1F2A44;--soft:#EAF1FB;--green:#2E7D67;--lightgray:#F6F7F9;--text:#1F2933;--white:#FFFFFF;--bg:var(--lightgray);--panel:var(--white);--panel2:#F1F5FA;--line:#E1E7EF;--muted:#5B6672;--faint:#8A94A0;--accent:var(--navy);--ok:#2E7D67;--ok-bg:#E7F2EE;--warn:#B7791F;--warn-bg:#FBF3E4;--risk:#C0492F;--risk-bg:#FBEBE7;--neutral:#5B6672;--neutral-bg:#EEF1F5;--pass:#2E7D67;--concern:#B7791F;--critical:#C0492F;--unknown:#8A94A0;--strong:#2E7D67;--review:#B7791F;--caution:#C0492F;--ineligible:#C0492F}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--navy)}.app{max-width:1080px;margin:0 auto;padding:24px 24px 64px}.container{max-width:1080px;margin:0 auto}.topnav{display:flex;align-items:center;gap:22px;margin-bottom:24px;border-bottom:1px solid var(--line);padding:4px 0 14px}.brand{font-weight:800;letter-spacing:.2px;color:var(--navy);cursor:pointer;font-size:17px}.topnav .spacer{flex:1}.topnav button.link{background:none;border:none;color:var(--muted);cursor:pointer;font-size:13.5px;padding:4px 2px}.topnav button.link:hover{color:var(--navy)}.role{font-size:12px;color:var(--faint)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;padding:8px 12px;border-radius:0 0 6px;z-index:1000}.skip-link:focus{left:0}h2{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:6px;letter-spacing:-.2px}h3{font-size:12px;margin:0 0 12px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-weight:700}h4{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.subtitle{color:var(--muted);font-size:14px;margin-bottom:18px;max-width:640px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:0 1px 2px #1f2a440a}.card.click{cursor:pointer;transition:border-color .12s,box-shadow .12s}.card.click:hover{border-color:#c9d6e6;box-shadow:0 3px 10px #1f2a4414}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;box-shadow:0 1px 2px #1f2a440a}.stat .num{font-size:30px;font-weight:800;color:var(--navy);line-height:1.1}.stat .lbl{font-size:12.5px;color:var(--muted);margin-top:4px}.stat.accent{background:var(--soft);border-color:#d6e4f7}@media (max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}button.primary{background:var(--navy);border:1px solid var(--navy);color:#fff;padding:9px 16px;border-radius:8px;cursor:pointer;font-size:13.5px;font-weight:600}button.primary:hover{background:#172037}button.primary:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:var(--white);border:1px solid var(--line);color:var(--navy);padding:8px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600}button.ghost:hover{background:var(--panel2);border-color:#c9d6e6}.cta{background:var(--green);border-color:var(--green)}.cta:hover{background:#276b58}input,select,textarea{background:var(--white);border:1px solid #D5DDE7;color:var(--text);border-radius:8px;padding:9px 11px;font-size:13.5px;width:100%;font-family:inherit}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px #1f2a4414}label{display:block;font-size:12px;color:var(--muted);margin:12px 0 5px;font-weight:600}.row{display:flex;gap:14px}.row>*{flex:1}.muted{color:var(--muted)}.faint{color:var(--faint)}.ok{color:var(--green);font-size:13px;margin:8px 0;font-weight:600}.center{min-height:70vh;display:flex;align-items:center;justify-content:center}.login{width:380px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid transparent;white-space:nowrap}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.badge.ready,.badge.complete{color:var(--ok);background:var(--ok-bg);border-color:#cbe6dc}.badge.followup{color:var(--warn);background:var(--warn-bg);border-color:#f0dfbe}.badge.risk{color:var(--risk);background:var(--risk-bg);border-color:#f1cfc6}.badge.neutral{color:var(--neutral);background:var(--neutral-bg);border-color:#dde3ea}.rec{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;font-weight:700;font-size:14px}.rec.fund{color:var(--ok);background:var(--ok-bg)}.rec.conditions,.rec.followup{color:var(--warn);background:var(--warn-bg)}.rec.decline{color:var(--risk);background:var(--risk-bg)}.scorehead{display:flex;gap:22px;align-items:center}.gauge{width:98px;height:98px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:7px solid var(--line);background:var(--white)}.gauge .n{font-size:30px;font-weight:800;color:var(--navy)}.gauge .l{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.tier{display:inline-flex;align-items:center;gap:8px;padding:5px 13px;border-radius:999px;font-weight:700;font-size:13px;width:fit-content}.tier .dot{width:8px;height:8px;border-radius:50%;background:currentColor}.tier.strong{color:var(--ok);background:var(--ok-bg)}.tier.review{color:var(--warn);background:var(--warn-bg)}.tier.caution,.tier.ineligible{color:var(--risk);background:var(--risk-bg)}.tier.insufficient{color:var(--neutral);background:var(--neutral-bg)}.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:6px 0 4px}.cat{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:14px}.cat h4{margin-bottom:6px}.cat .v{font-size:24px;font-weight:800;color:var(--navy)}.cat .cstatus{font-size:11.5px;font-weight:700;margin-top:2px}.flag{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;overflow:hidden;background:var(--white)}.flag .fh{display:flex;align-items:center;gap:11px;padding:11px 13px;cursor:pointer}.flag .fh:hover{background:var(--panel2)}.st{width:9px;height:9px;border-radius:2px;flex-shrink:0}.st.pass{background:var(--pass)}.st.concern{background:var(--concern)}.st.critical{background:var(--critical)}.st.unknown{background:var(--unknown)}.fname{flex:1;font-weight:600;text-transform:capitalize}.fcat{font-size:11px;color:var(--faint);text-transform:capitalize}.sl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.3px}.sl.pass{color:var(--pass)}.sl.concern{color:var(--concern)}.sl.critical{color:var(--critical)}.sl.unknown{color:var(--unknown)}.fbody{display:none;padding:11px 13px 13px 34px;border-top:1px solid var(--line);background:var(--panel2)}.flag.open .fbody{display:block}.src{background:var(--white);border-left:3px solid var(--green);border-radius:0 8px 8px 0;padding:9px 12px;margin-top:6px}.src .q{font-style:italic;color:var(--text)}.src .c{font-size:11px;color:var(--faint);margin-top:4px}ul.clean{list-style:none;margin:4px 0}ul.clean li{padding:7px 0;border-bottom:1px solid var(--line);display:flex;gap:8px;align-items:flex-start}ul.clean li:last-child{border-bottom:none}.tick{color:var(--ok);font-weight:800}.miss{color:var(--warn);font-weight:800}table{width:100%;border-collapse:collapse;font-size:13.5px}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.4px}tbody tr:hover{background:var(--panel2)}.note{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:14px}.note .meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.note .who{font-weight:700;color:var(--navy)}.note .when{font-size:12px;color:var(--faint)}.disc{font-size:11.5px;color:var(--muted);margin-top:16px;padding:11px 13px;background:var(--warn-bg);border:1px solid #F0DFBE;border-radius:9px}.err{color:var(--risk);font-size:13px;margin:8px 0;font-weight:600}.empty{color:var(--faint);text-align:center;padding:28px;font-size:13.5px}.kv{display:flex;gap:24px;flex-wrap:wrap;margin-top:4px}.kv .k{font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.4px}.kv .val{font-size:15px;font-weight:700;color:var(--navy)}.pill{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);font-size:12px;font-weight:600;color:var(--muted)}
