.nfa3-surface{max-width:1120px;margin:0 auto}.nfa3-calculator,.nfa3-guide{display:grid;gap:20px}.nfa3-intro{max-width:850px}.nfa3-intro h2,.nfa3-intro p{margin:.35rem 0}.nfa3-kicker{font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#315b8a}.nfa3-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.nfa3-field{display:grid;gap:.35rem}.nfa3-field span{font-weight:800}.nfa3-field small,.nfa3-field em{color:var(--muted);font-size:.8rem}.nfa3-field em{font-style:normal;line-height:1.45}.nfa3-field input{width:100%;padding:.75rem;border:1px solid var(--line);border-radius:10px;font:inherit}.nfa3-field input:focus{outline:3px solid #d8e9ff;border-color:#315b8a}.nfa3-error{padding:12px 14px;border-radius:10px;background:#fff1ed;color:#8f291d}.nfa3-calculator [hidden]{display:none!important}.nfa3-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.nfa3-result{padding:1rem;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.nfa3-result-primary{background:#fff4d8;border-color:#e0bb55}.nfa3-result span{display:block;color:var(--muted);font-size:.85rem}.nfa3-result strong{display:block;margin-top:.35rem;font-size:1.2rem;overflow-wrap:anywhere}.nfa3-decision{padding:1rem;border-left:4px solid #315b8a;background:#eef6ff;border-radius:9px}.nfa3-illustration{margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.nfa3-illustration picture,.nfa3-illustration img{display:block;width:100%}.nfa3-illustration img{height:auto;aspect-ratio:16/9;object-fit:contain}.nfa3-illustration figcaption{padding:12px 15px;border-top:1px solid var(--line);color:var(--muted)}.nfa3-live-visual{padding:1rem;border:1px solid var(--line);border-radius:12px}.nfa3-live-visual p{margin:.55rem 0 0}.nfa3-signal-track{height:18px;background:#e7edf2;border-radius:999px;overflow:hidden;margin-top:.6rem}.nfa3-signal-track span{display:block;height:100%;width:50%;background:linear-gradient(90deg,#315b8a,#ff5d45);transition:width .2s ease}.nfa3-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}.nfa3-table{width:100%;min-width:720px;border-collapse:collapse}.nfa3-table caption{text-align:left;font-weight:800;padding:1rem;background:#f5f7f9}.nfa3-table th,.nfa3-table td{padding:.7rem .8rem;border-top:1px solid var(--line);text-align:right;white-space:nowrap}.nfa3-table th:first-child,.nfa3-table td:first-child{text-align:left}.nfa3-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.nfa3-actions button{padding:.72rem 1rem;border:1px solid #243b50;border-radius:10px;background:#fff;font-weight:800;cursor:pointer}.nfa3-actions button.primary{background:#ff5d45;border-color:#ff5d45;color:#fff}.nfa3-actions button:disabled{opacity:.45;cursor:not-allowed}.nfa3-section{padding:1.5rem 0;border-top:1px solid var(--line)}.nfa3-section p,.nfa3-section li{line-height:1.7}.nfa3-formula{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#17212b;color:#fff;padding:1rem;border-radius:10px;overflow:auto}.nfa3-process{display:grid;gap:.7rem}.nfa3-check,.nfa3-evidence{padding:1rem;background:#fff8e8;border-radius:10px}.nfa3-card-grid,.nfa3-term-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.nfa3-card,.nfa3-term-grid>div{padding:1rem;border:1px solid var(--line);border-radius:12px}.nfa3-card h3,.nfa3-card p{margin:.2rem 0}.nfa3-term-grid dt{font-weight:850}.nfa3-term-grid dd{margin:.35rem 0 0;line-height:1.55}.nfa3-symbols{width:100%;border-collapse:collapse}.nfa3-symbols th,.nfa3-symbols td{text-align:left;padding:.65rem;border-bottom:1px solid var(--line)}.nfa3-faq details{border-top:1px solid var(--line);padding:.85rem 0}.nfa3-faq summary{font-weight:800;cursor:pointer}.nfa3-related{display:flex;flex-wrap:wrap;gap:.6rem}.nfa3-related a{padding:.55rem .75rem;border:1px solid var(--line);border-radius:999px;text-decoration:none}@media(max-width:850px){.nfa3-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.nfa3-form,.nfa3-results,.nfa3-card-grid,.nfa3-term-grid{grid-template-columns:1fr}.nfa3-actions button{flex:1 1 45%}.nfa3-table{font-size:.84rem}}.nfa3-faq{display:grid;gap:10px}.nfa3-faq details{background:#fafafe;border:1px solid var(--line);border-radius:8px;padding:14px 16px}.nfa3-faq summary{color:#000;font-size:14px;font-weight:800;cursor:pointer}.nfa3-faq p{margin:10px 0 0}
