/* FHJCIS Reference Finder (tool page). Scoped under .rf-* */
.rf-app{max-width:1060px;margin:0 auto}
.rf-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 -1px;padding:0 6px;position:relative;z-index:2}
.rf-tab{border:1px solid #d3dbf2;border-bottom:0;background:#e9eeff;color:#31407a;border-radius:16px 16px 0 0;padding:13px 22px;font:inherit;font-family:var(--display);font-weight:700;font-size:.95rem;cursor:pointer}
.rf-tab[aria-selected=true]{background:#fff;color:#0b1236;box-shadow:0 -4px 14px rgba(37,71,232,.08)}
.rf-tab:focus-visible{outline:3px solid #2547e8;outline-offset:-3px}
.rf-app .tool-card{border-radius:0 24px 24px 24px;margin-bottom:0}
.rf-app .tool-card label{margin-top:12px}
.rf-app .tool-card .tool-grid label{margin-top:0}
.rf-app .tool-card input[type=checkbox]{width:auto;margin-right:8px;vertical-align:-2px}
.rf-app .tool-card label.rf-chk{display:flex;align-items:flex-start;gap:6px;font-family:inherit;font-weight:600;font-size:.9rem;margin-top:12px}
.rf-hint{color:#5d6a92;font-size:.83rem;margin:6px 0 0}
.rf-privacy{background:#eefaf3;border:1px solid #bfe8cf;color:#17512d;border-radius:14px;padding:11px 15px;font-size:.88rem;margin:14px 0 4px}
.rf-adv{margin:14px 0 4px;border:1px solid #e3e8f8;border-radius:14px;padding:10px 16px;background:#fafbff}
.rf-adv summary{cursor:pointer;font-family:var(--display);font-weight:700;font-size:.9rem;color:#1b2a8f}
.rf-actions{margin-top:10px}
.rf-actions .btn[hidden]{display:none}
.rf-live{margin-top:18px;border:1px solid #e3e8f8;border-radius:16px;padding:14px 16px;background:#f8faff}
.rf-status{font-weight:600;font-size:.92rem;color:#0b1236;margin-bottom:8px;overflow-wrap:anywhere}
.rf-progress{height:8px;background:#e1e8ff;border-radius:99px;overflow:hidden}
.rf-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#34d399,#2547e8);transition:width .4s}
.rf-logd{margin-top:10px}
.rf-logd summary{cursor:pointer;font-size:.85rem;color:#31407a;font-weight:600}
.rf-log,.rf-diag{margin:8px 0 0;max-height:240px;overflow:auto;background:#0b1236;color:#d7e0ff;border-radius:12px;padding:12px 14px;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.rf-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:6px 0 16px}
.rf-kpi{background:#f1f4ff;border-radius:16px;padding:14px 16px}
.rf-kpi b{display:block;font-family:var(--display);font-size:1.5rem;color:#1b2a8f;letter-spacing:-.03em}
.rf-kpi span{color:#5d6a92;font-size:.82rem}
.rf-dl{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 14px}
.rf-scroll{overflow-x:auto;border:1px solid #e3e8f8;border-radius:16px;margin-bottom:16px;-webkit-overflow-scrolling:touch}
.rf-table{width:100%;border-collapse:collapse;font-size:.86rem;min-width:860px;background:#fff}
.rf-table th{position:sticky;top:0;text-align:left;background:#eef2ff;color:#1b2a8f;font-family:var(--display);font-size:.78rem;letter-spacing:.02em;padding:10px 12px;white-space:nowrap}
.rf-table td{padding:10px 12px;border-top:1px solid #edf0fb;vertical-align:top;color:#18224f}
.rf-table td.rf-t{min-width:240px;max-width:420px;overflow-wrap:anywhere}
.rf-table td.rf-d{min-width:190px;overflow-wrap:anywhere}
.rf-table a{color:#2547e8;text-decoration:underline;overflow-wrap:anywhere}
.rf-badge{display:inline-block;border-radius:99px;padding:3px 10px;font-weight:700;font-size:.76rem;white-space:nowrap}
.rf-badge.ok{background:#dcfce7;color:#14532d}.rf-badge.warn{background:#fef3c7;color:#78350f}.rf-badge.bad{background:#fee2e2;color:#991b1b}.rf-badge.info{background:#e0e7ff;color:#312e81}
.rf-more{margin:6px 0 14px;border:1px solid #e3e8f8;border-radius:14px;padding:10px 16px;background:#fafbff}
.rf-more summary{cursor:pointer;font-weight:700;font-size:.9rem;color:#1b2a8f}
.rf-more p{margin:8px 0;color:#4b587f;font-size:.9rem}
.rf-cta{margin-top:14px;border-radius:18px;background:#0b1236;color:#e8edff;padding:18px 20px}
.rf-cta p{color:#c9d3f5;margin:0 0 6px;font-size:.93rem}
.rf-fileinfo{font-size:.85rem;color:#17512d;margin-top:6px}.rf-fileinfo.err{color:#a12a1f}
.rf-limits{border-left:5px solid #f59e0b;background:#fff8e6;border-radius:0 18px 18px 0;padding:18px 22px;color:#4a3f14}
.rf-limits h3{margin:0 0 6px;font-size:1.15rem;color:#3d2e06}.rf-limits p{margin:0 0 8px}
.rf-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;counter-reset:rfs}
.rf-step{background:#fff;border:1px solid #e3e8f8;border-radius:20px;padding:20px 20px 18px;box-shadow:0 10px 28px rgba(11,18,54,.06)}
.rf-step:before{counter-increment:rfs;content:counter(rfs);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(120deg,#b7f34a,#22d3ee);color:#06102a;font-family:var(--display);font-weight:800;margin-bottom:10px}
.rf-step h3{font-size:1.05rem;margin:0 0 4px;color:#0b1236}.rf-step p{margin:0;color:#4b587f;font-size:.92rem}
.rf-dlcard{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:26px;align-items:start;background:#fff;border:1px solid #dbe4ff;border-radius:26px;padding:28px;box-shadow:0 14px 40px rgba(11,18,54,.08)}
.rf-dlcard h2{margin:0 0 8px}.rf-dlcard ol{margin:10px 0 0 20px;color:#18224f}.rf-dlcard li{margin:6px 0}
.rf-dlcard .rf-sum{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.76rem;color:#4b587f;overflow-wrap:anywhere;margin-top:10px}
.rf-compare{width:100%;border-collapse:collapse;font-size:.9rem}.rf-compare th,.rf-compare td{border-top:1px solid #e3e8f8;padding:9px 10px;text-align:left;vertical-align:top;color:#18224f}.rf-compare th{background:#eef2ff;color:#1b2a8f;font-family:var(--display);font-size:.8rem}
.rf-noscript{padding:16px;border-radius:14px;background:#fff1f0;border:1px solid #f5c2bd;color:#a12a1f}
@media (max-width:820px){.rf-dlcard{grid-template-columns:minmax(0,1fr);padding:22px}}
@media (max-width:560px){.rf-tab{padding:11px 14px;font-size:.88rem}.rf-app .tool-card{border-radius:0 18px 18px 18px}}
@media print{.rf-live,.rf-actions{display:none}}
