.nos-roadmap{max-width:980px;margin:40px auto;font-family:inherit;color:#1d2530;font-size:17px;line-height:1.65}.nos-card{background:#fff;border:1px solid #e4e8ee;border-radius:18px;padding:36px;margin:0 0 26px;box-shadow:0 8px 28px rgba(20,35,55,.06)}.nos-hidden{display:none!important}.nos-eyebrow{font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.nos-card h2,.nos-question-title{font-size:31px!important;line-height:1.3!important;margin:0 0 14px!important;color:#172b4d!important;font-weight:800!important}.nos-card h3,.nos-subquestion h3{font-size:22px!important;line-height:1.4!important;color:#172b4d!important;margin:28px 0 8px!important}.nos-question-help{font-size:17px!important;line-height:1.6!important;color:#4c5968!important;margin:0 0 18px!important}.nos-muted{color:#66717d!important;font-size:15px}.nos-btn{display:inline-block;border:0;border-radius:10px;padding:14px 22px;font:inherit;font-size:17px;font-weight:800;cursor:pointer;text-decoration:none}.nos-primary{background:#172b4d;color:#fff!important}.nos-secondary{background:#eef1f5;color:#172b4d}.nos-progress{font-size:14px;font-weight:800;margin-bottom:30px}.nos-progress>div{height:7px;background:#edf0f4;border-radius:20px;margin-top:8px;overflow:hidden}.nos-progress i{display:block;height:100%;background:#172b4d;width:20%;transition:.2s}.nos-choices{display:grid;gap:13px;margin:22px 0}.nos-choices.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.nos-choice{text-align:left;border:1px solid #dfe4ea;background:#fff;border-radius:12px;padding:18px;cursor:pointer;color:#1d2530!important;font-size:16px;line-height:1.5}.nos-choice strong,.nos-choice span{display:block}.nos-choice strong{font-size:17px}.nos-choice span{font-size:15px;margin-top:7px;color:#55616f;line-height:1.55}.nos-choice.selected{outline:3px solid #172b4d;border-color:#172b4d;background:#f7f9fc}.nos-choice:disabled{opacity:.35;cursor:not-allowed}.nos-nav{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.nos-field{display:block;margin-top:26px;font-size:17px}.nos-field span,.nos-subquestion span{font-weight:400;color:#6c7580}.nos-field textarea,.nos-field input{width:100%;box-sizing:border-box;border:1px solid #dfe4ea;border-radius:10px;padding:14px;margin-top:9px;font:inherit;font-size:16px}.nos-error{color:#a32626;font-weight:800}.nos-path{display:flex;align-items:center;justify-content:center;gap:16px;margin:30px 0;padding:26px;background:#f6f8fa;border-radius:14px}.nos-path div{text-align:center;flex:1}.nos-path small,.nos-path strong{display:block}.nos-path small{font-size:12px;letter-spacing:.08em;font-weight:800;margin-bottom:6px}.nos-path strong{font-size:18px}.nos-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0}.nos-stats div{background:#f6f8fa;border-radius:12px;padding:20px}.nos-stats span,.nos-stats strong{display:block}.nos-stats span{font-size:14px;color:#66717d;margin-bottom:5px}.nos-stats strong{font-size:19px}.nos-alert{padding:17px;border:1px solid #e4c989;background:#fffaf0;border-radius:12px}.nos-phase{padding:24px 0;border-top:1px solid #e7eaf0;break-inside:avoid}.nos-phase:first-of-type{border-top:0}.nos-phase-no{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.nos-material{padding:13px 0;break-inside:avoid}.nos-material a{font-size:15px}.nos-practice{background:#f6f8fa;border-radius:12px;padding:21px;margin-top:17px;break-inside:avoid}.nos-level-table-wrap{overflow-x:auto;margin-top:20px}.nos-level-table,.nos-benchmark table{width:100%;border-collapse:collapse;font-size:15px}.nos-level-table th,.nos-level-table td,.nos-benchmark th,.nos-benchmark td{border:1px solid #d9dee5;padding:13px;text-align:left;vertical-align:top}.nos-level-table th,.nos-benchmark th{background:#f1f3f5;font-weight:800}.nos-level-table td:first-child{width:120px}.nos-level-table td:nth-child(2){width:220px}.nos-level-table em{display:block;font-style:normal;font-size:11px;letter-spacing:.04em;margin-top:5px;color:#172b4d}.nos-level-table tr.is-current{background:#eaf5fb}.nos-level-table tr.is-target{background:#eaf8f3}.nos-level-table tr.is-current.is-target{background:#eef2ff}.nos-footnote{font-size:14px;color:#66717d;margin:10px 0 0}.nos-benchmark table{margin:20px 0}.nos-benchmark td:last-child,.nos-benchmark th:last-child{text-align:right}.nos-benchmark .nos-total{background:#f6f8fa;font-size:17px}.nos-download-row{text-align:center;padding:10px 0 30px}.nos-download-note{font-size:14px;color:#66717d;margin:8px 0 0}.nos-download-row button:disabled{opacity:.6;cursor:wait}
@media(max-width:650px){.nos-roadmap{font-size:16px;margin:24px auto}.nos-card{padding:24px}.nos-card h2,.nos-question-title{font-size:26px!important}.nos-card h3,.nos-subquestion h3{font-size:20px!important}.nos-choices.compact,.nos-stats{grid-template-columns:1fr}.nos-path{flex-direction:column}.nos-nav .nos-btn{flex:1}.nos-level-table{min-width:720px}.nos-benchmark table{font-size:14px}}
/* PDF rendering: larger, cleaner text and page-friendly sections */
#nos-pdf-content{background:#fff}#nos-pdf-content .nos-card{font-size:17px}#nos-pdf-content h2{font-size:30px!important}#nos-pdf-content h3{font-size:21px!important}#nos-pdf-content .nos-muted,#nos-pdf-content .nos-footnote{font-size:14px}#nos-pdf-content .nos-level-table,#nos-pdf-content .nos-benchmark table{font-size:14px}

/* V3 interaction and PDF export */
.nos-loading{text-align:center;padding:72px 28px!important;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.nos-loading.nos-hidden{display:none!important}
.nos-loading h2{font-size:30px!important;line-height:1.25;margin:22px 0 10px!important;color:#17345f!important}
.nos-loading p{font-size:18px!important;line-height:1.6;max-width:620px;margin:0 auto!important}
.nos-spinner{width:48px;height:48px;border:5px solid #e7edf5;border-top-color:#17345f;border-radius:50%;animation:nos-spin .8s linear infinite}
@keyframes nos-spin{to{transform:rotate(360deg)}}
.nos-pdf-holder{position:absolute!important;left:0!important;top:0!important;width:640px!important;max-width:640px!important;margin:0!important;padding:0!important;background:#fff!important;z-index:-9999;pointer-events:none;overflow:visible!important;transform:none!important}
.nos-pdf-export{font-size:16px!important;line-height:1.5!important;color:#182333!important}
.nos-pdf-export .nos-card{box-shadow:none!important;margin:0 0 18px!important;padding:24px!important;border:1px solid #dfe5ec!important;break-inside:auto!important;page-break-inside:auto!important}
.nos-pdf-export h2{font-size:25px!important;line-height:1.25!important}
.nos-pdf-export h3{font-size:20px!important;line-height:1.3!important}
.nos-pdf-export p,.nos-pdf-export td,.nos-pdf-export th,.nos-pdf-export span,.nos-pdf-export a{font-size:15px!important;line-height:1.45!important}
.nos-pdf-export .nos-phase,.nos-pdf-export .nos-material,.nos-pdf-export .nos-practice,.nos-pdf-export .nos-stats>div{break-inside:avoid!important;page-break-inside:avoid!important}
.nos-pdf-export table{break-inside:auto!important;page-break-inside:auto!important}
.nos-pdf-export tr{break-inside:avoid!important;page-break-inside:avoid!important}

.nos-start-time{color:#1769aa!important;font-size:16px!important;font-weight:800!important;}

.nos-path-arrow{font-size:24px;line-height:1;font-weight:800;color:#172b4d;flex:0 0 auto}
.nos-pdf-export{width:640px!important;max-width:640px!important;margin:0!important;transform:none!important;overflow:visible!important}
.nos-pdf-export .nos-path{flex-direction:row!important}
@media(max-width:650px){.nos-path-arrow{transform:rotate(90deg)}}

/* V7 PDF containment: prevent horizontal clipping in html2canvas/html2pdf */
.nos-pdf-holder,.nos-pdf-holder *,.nos-pdf-export,.nos-pdf-export *{box-sizing:border-box!important;}
.nos-pdf-export{width:640px!important;max-width:640px!important;overflow:visible!important;}
.nos-pdf-export .nos-card{width:100%!important;max-width:100%!important;overflow:hidden!important;}
.nos-pdf-export table{width:100%!important;max-width:100%!important;table-layout:fixed!important;}
.nos-pdf-export th,.nos-pdf-export td,.nos-pdf-export p,.nos-pdf-export strong,.nos-pdf-export a{overflow-wrap:anywhere!important;word-break:normal!important;}
.nos-pdf-export .nos-level-table td:first-child{width:20%!important;}
.nos-pdf-export .nos-level-table td:nth-child(2){width:32%!important;}
.nos-pdf-export .nos-level-table td:nth-child(3){width:48%!important;}
.nos-pdf-export .nos-path>div{min-width:0!important;}
.nos-pdf-export .nos-path strong{overflow-wrap:anywhere!important;}
