/* Scoped, accessible editorial design — NettaVibes Trust Fund Workshop */
.nvtw{--nvtw-navy:#17243d;--nvtw-purple:#6c55c9;--nvtw-violet:#45348f;--nvtw-blue:#2b76ab;--nvtw-gold:#bb8635;--nvtw-green:#2d7864;--nvtw-ink:#24314a;--nvtw-muted:#59677b;--nvtw-cream:#f8f7f2;--nvtw-border:#dddfee;--nvtw-white:#fff;max-width:1250px;margin:0 auto 2rem;line-height:1.65;color:var(--nvtw-ink);font:normal 16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;isolation:isolate}
.nvtw *{box-sizing:border-box}
.nvtw h2,.nvtw h3,.nvtw h4,.nvtw p,.nvtw label{color:inherit}
.nvtw h2,.nvtw h3,.nvtw h4{line-height:1.22;letter-spacing:-.02em}
.nvtw h3{font-size:clamp(1.5rem,3vw,2rem);margin:.2em 0 .6em;font-weight:760}
.nvtw h4{font-size:1.23rem;margin:.2em 0 .7em;font-weight:735}
.nvtw p{margin:.55em 0 1.05em}
.nvtw button{color:var(--nvtw-violet);background:#fff;border:1px solid #bfc2dc;border-radius:12px;font:inherit;font-weight:660;padding:.7rem 1rem;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s;min-height:44px;line-height:1.3}
.nvtw button:hover:not(:disabled){background:#f4efff;box-shadow:0 1px 10px #cfc6f36a}
.nvtw button:focus-visible,.nvtw a:focus-visible,.nvtw textarea:focus-visible,.nvtw input:focus-visible,.nvtw select:focus-visible{outline:3px solid #ad8028;outline-offset:3px}
.nvtw button:disabled{opacity:.5;cursor:not-allowed}
.nvtw button.nvtw-primary{background:var(--nvtw-purple);border-color:var(--nvtw-purple);color:white;box-shadow:0 3px 10px #6c55c92a}
.nvtw button.nvtw-primary:hover:not(:disabled){background:#49349d;color:#fff}
.nvtw .nvtw-hero{border-radius:24px 24px 10px 10px;background:radial-gradient(ellipse at 96% 6%,#7c6cce 0%,transparent 45%),linear-gradient(123deg,#14203c 8%,#372a7a 60%,#5b4ba4 100%);padding:clamp(1.4rem,4.5vw,3.3rem);color:#fff;position:relative;overflow:hidden;box-shadow:0 12px 42px #17243d1b}
.nvtw .nvtw-hero:after{content:"";position:absolute;right:-95px;bottom:-135px;width:300px;height:300px;border:1px solid #ddbe7b99;transform:rotate(35deg);border-radius:65px;pointer-events:none}
.nvtw .nvtw-smallcaps{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:#6a59a8;margin:0 0 .8rem}
.nvtw .nvtw-hero .nvtw-smallcaps{color:#e5d4a3}
.nvtw .nvtw-hero h2{font-size:clamp(2.1rem,5vw,3.7rem);max-width:860px;font-weight:760;letter-spacing:-.04em;margin:0 0 .7rem;color:white}
.nvtw .nvtw-hero h2 span{color:#f1d2a0}
.nvtw .nvtw-hero p{font-size:1.08rem;color:#f4f2ff;max-width:690px;margin:0 0 1.25rem}
.nvtw .nvtw-meta{display:flex;flex-wrap:wrap;gap:.45rem}
.nvtw .nvtw-meta span{padding:.24rem .73rem;border:1px solid #ffffff53;color:#fff;border-radius:99px;background:#ffffff12;font-size:.81rem;font-weight:620}
.nvtw .nvtw-nav{position:sticky;top:0;z-index:15;display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-start;background:rgba(248,247,252,.97);backdrop-filter:blur(8px);padding:.8rem .65rem;border:1px solid var(--nvtw-border);border-radius:0 0 16px 16px;margin-bottom:.6rem;box-shadow:0 3px 9px #17243d0c}
.nvtw .nvtw-nav button{background:transparent;border-color:transparent;color:#394a68;font-size:.85rem;min-height:42px;padding:.55rem .78rem}
.nvtw .nvtw-nav button.is-current{background:#e8e4fc;color:#392a86;border:1px solid #d4ccf6}
.nvtw .nvtw-main{background:linear-gradient(#fff,#fcfcff);border-radius:16px;min-height:390px;border:1px solid #ecedfa}
.nvtw .nvtw-space{padding:clamp(1.05rem,2.7vw,2.35rem)}
.nvtw .nvtw-section-heading{display:flex;gap:1rem;justify-content:space-between;align-items:flex-start;margin-bottom:1.1rem;flex-wrap:wrap}
.nvtw .nvtw-count{color:#4d4280;background:#f1eefe;font-size:.82rem;font-weight:700;border-radius:30px;padding:.45rem .85rem}
.nvtw .nvtw-grid{display:grid;gap:1rem}
.nvtw .nvtw-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nvtw .nvtw-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nvtw .nvtw-feature,.nvtw .nvtw-panel,.nvtw .nvtw-type{padding:1.3rem;background:#fff;border:1px solid var(--nvtw-border);border-radius:18px;box-shadow:0 3px 18px #18273e0a}
.nvtw .nvtw-feature{border-top:3px solid #7d63da}
.nvtw .nvtw-feature:nth-child(2){border-color:#5d8eb8}
.nvtw .nvtw-feature:nth-child(3){border-color:#c59c54}
.nvtw .nvtw-feature .nvtw-ornament{font-size:1.5rem;color:#7a65bd;font-weight:800;letter-spacing:-.05em}
.nvtw .nvtw-feature h4{margin:.35rem 0 .6rem}
.nvtw .nvtw-feature p{min-height:4.3em;color:var(--nvtw-muted)}
.nvtw .nvtw-block-pair{display:grid;grid-template-columns:1.1fr 1fr;gap:1rem;margin-top:1.2rem}
.nvtw .nvtw-steps{padding-left:1.25rem;line-height:1.85;margin:.5rem 0}
.nvtw .nvtw-legend{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.5rem 0 1rem}
.nvtw .nvtw-legend span{display:flex;align-items:center;gap:.5rem;font-size:.9rem}
.nvtw .nvtw-legend i{display:inline-block;min-width:17px;height:17px;border-radius:6px}
.nvtw .nvtw-note{margin:1.4rem 0 .1rem;padding:.95rem 1rem;border-radius:10px;border-left:4px solid var(--nvtw-gold);background:#fcf7eb;color:#634d2b;font-size:.93rem}
.nvtw .nvtw-progress{height:10px;background:#e8eafa;border-radius:20px;overflow:hidden;margin:.6rem 0 1.6rem}
.nvtw .nvtw-progress span{display:block;height:100%;background:linear-gradient(90deg,#547eb7,#795acd,#bb8e45);transition:width .2s}
.nvtw .nvtw-label{display:block;color:#32415d;font-weight:650;margin:.8rem 0 1rem;font-size:.91rem}
.nvtw textarea,.nvtw input[type=search],.nvtw select{font:inherit;display:block;width:100%;margin-top:.35rem;padding:.78rem .85rem;color:#23304a;background:#fff;border:1px solid #b8c4d8;border-radius:10px;box-shadow:none;max-width:100%}
.nvtw textarea{resize:vertical;min-height:86px;line-height:1.5}
.nvtw .nvtw-form-panel{max-width:950px}
.nvtw .nvtw-form-panel h4{font-size:1.4rem}
.nvtw .nvtw-buttonbar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin:1.35rem 0 .7rem}
.nvtw .nvtw-subtle{color:var(--nvtw-muted);font-size:.88rem}
.nvtw .nvtw-course-layout{display:grid;grid-template-columns:minmax(200px,290px) minmax(0,1fr);gap:1.1rem;align-items:start}
.nvtw .nvtw-lesson-index{background:#f7f6fd;border:1px solid #e1e0f1;padding:1rem;border-radius:16px;max-height:680px;overflow:auto}
.nvtw .nvtw-lesson-index .nvtw-lessons{display:flex;flex-direction:column;gap:.27rem;padding-top:.6rem}
.nvtw .nvtw-lesson-index button{display:block;text-align:left;width:100%;padding:.59rem .65rem;border:1px solid transparent;background:transparent;color:#45526d;min-height:40px;font-size:.86rem;line-height:1.45}
.nvtw .nvtw-lesson-index button.is-current{background:#e8e3fa;color:#3d3086;border:1px solid #d4c9f4}
.nvtw .nvtw-article{padding:.45rem 1.2rem 1rem;border-left:2px solid #efe9fd;min-width:0}
.nvtw .nvtw-article h4{font-size:clamp(1.35rem,2.5vw,1.8rem);margin:.3rem 0 1.2rem}
.nvtw .nvtw-article p{line-height:1.82;margin:0 0 1.18rem;color:#334159}
.nvtw .nvtw-type{padding:1.2rem;border-top:2px solid #c7bee8}
.nvtw .nvtw-type-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:.5rem}
.nvtw .nvtw-number{color:#6c55c9;font-size:1.1rem;font-weight:850}
.nvtw .nvtw-type-label{font-size:.72rem;border-radius:15px;padding:.2rem .55rem;color:#604f84;background:#f1edf9;font-weight:700}
.nvtw .nvtw-type p{font-size:.9rem;line-height:1.6}
.nvtw .nvtw-caution{color:#74511c!important;background:#fff8e8;padding:.75rem;border-radius:8px;font-size:.89rem}
.nvtw .nvtw-sidebar-note{color:#59677c;border-top:1px solid #dddfee;padding-top:.9rem;margin-top:1rem;font-size:.82rem}
.nvtw .nvtw-milestone{display:flex!important;align-items:center;gap:.8rem;padding:1rem .2rem;border-bottom:1px solid #ecedf3;cursor:pointer;font-weight:650}
.nvtw .nvtw-milestone input{width:20px;height:20px;accent-color:#6c55c9;flex-shrink:0}
.nvtw .nvtw-milestone>span{flex:1;display:block}
.nvtw .nvtw-milestone span span{margin-right:.35rem}
.nvtw .nvtw-milestone small{display:block;color:#56657b;font-size:.81rem;font-weight:400;margin-left:1.7rem}
.nvtw .nvtw-milestone em{font-style:normal;color:#7d5b22;background:#fff4da;border-radius:20px;font-size:.67rem;letter-spacing:.06em;padding:.3rem .5rem}
.nvtw .nvtw-milestone em.planning{color:#6155ab;background:#f1eefe}
.nvtw .nvtw-choices{display:grid;gap:.65rem}
.nvtw .nvtw-choices label{border:1px solid #c9ccde;border-radius:11px;padding:.9rem .95rem;display:flex;gap:.8rem;align-items:flex-start;cursor:pointer;font-weight:520}
.nvtw .nvtw-choices input{margin-top:.35rem;accent-color:#674db5}
.nvtw .nvtw-choices .is-correct{border:2px solid #2d7864;background:#eff8f2}
.nvtw .nvtw-choices .is-wrong{border:2px solid #ba724a;background:#fff0e9}
.nvtw .nvtw-feedback{background:#eef8f4;color:#215846;padding:1rem;border-radius:9px}
.nvtw .nvtw-text-btn{border:none;background:transparent;text-decoration:underline;font-size:.86rem;padding:.4rem 0;min-height:auto}
.nvtw .nvtw-sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.nvtw .nvtw-sources a{color:#2a3664;display:flex;flex-direction:column;gap:.2rem;background:#fff;border:1px solid #deddec;border-radius:12px;padding:.8rem 1rem;text-decoration:none;overflow-wrap:anywhere}
.nvtw .nvtw-sources a:hover{text-decoration:underline;background:#f7f5ff}
.nvtw .nvtw-sources a .nvtw-smallcaps{margin:0;font-size:.65rem}
.nvtw .nvtw-sources a small{color:#6b788b;font-size:.76rem}
.nvtw .nvtw-banner{padding:.7rem 1rem;border:1px solid #bad8c9;background:#eff9f2;border-radius:8px;color:#245d44}
.nvtw .nvtw-footer{background:linear-gradient(100deg,#17243d,#2d2a56);color:#fff;border-radius:0 0 16px 16px;padding:1.3rem 1.7rem;font-size:.78rem;line-height:1.8}
.nvtw .nvtw-footer div+div{margin-top:.4rem;color:#eee6ce}
.nvtw .nvtw-overlay{position:fixed;inset:0;z-index:999999;background:#0e1736bd;padding:1.5rem;display:flex;align-items:center;justify-content:center}
.nvtw .nvtw-dialog{max-width:910px;width:100%;max-height:94vh;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;color:#1e273e;box-shadow:0 12px 75px #0004}
.nvtw .nvtw-dialog-top,.nvtw .nvtw-dialog-bottom{padding:.8rem 1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #ddd;flex-wrap:wrap}
.nvtw .nvtw-dialog-top h3{font-size:1.13rem;margin:0;line-height:1.45;max-width:80%}
.nvtw .nvtw-dialog-top button{font-size:1.7rem;padding:.1rem .7rem}
.nvtw .nvtw-dialog-bottom{border-top:1px solid #ddd;border-bottom:0;justify-content:flex-end}
.nvtw .nvtw-dialog-bottom p{font-size:.81rem;flex:1;margin:.25rem 0}
.nvtw .nvtw-print-preview{background:#e7e8ef;overflow:auto;padding:1.2rem;min-height:170px}
.nvtw .nvtw-print-sheet{background:white;color:#1d2737;margin:0 auto 1rem;max-width:780px;min-height:8in;padding:.85in .78in;border:1px solid #d9dce6;box-shadow:0 2px 16px #0001;font:normal 13px/1.5 Georgia,"Times New Roman",serif;overflow-wrap:anywhere}
.nvtw .nvtw-print-sheet h2{font:700 21px/1.3 Georgia,serif;color:#263459;margin:.3rem 0 1rem}
.nvtw .nvtw-print-sheet .nvtw-print-overline{color:#726394;letter-spacing:.14em;font:700 10px system-ui;text-transform:uppercase}
.nvtw .nvtw-print-sheet .nvtw-print-field{padding:.8rem 0;border-bottom:1px solid #dadde8}
.nvtw .nvtw-print-field strong{display:block;margin-bottom:.4rem;color:#33416b;font-size:12px}
.nvtw .nvtw-print-field div{white-space:normal;overflow-wrap:anywhere;min-height:24px}
.nvtw .nvtw-print-intro{font-size:12px;color:#526073}
.nvtw .nvtw-print-warning{margin-top:1rem;font-size:11px;color:#805d26}
.nvtw .nvtw-print-footer{border-top:1px solid #ccc;margin-top:1.5rem;padding-top:.5rem;font-size:10px;color:#647083}
.nvtw .nvtw-print-check{border-bottom:1px solid #ddd;padding:.48rem 0;break-inside:avoid}
.nvtw .nvtw-blank{color:#999}
.nvtw-print-output{display:none}
@media(max-width:850px){.nvtw .nvtw-grid-3{grid-template-columns:1fr}.nvtw .nvtw-grid-2,.nvtw .nvtw-block-pair{grid-template-columns:1fr}.nvtw .nvtw-course-layout{grid-template-columns:1fr}.nvtw .nvtw-lesson-index{max-height:270px}.nvtw .nvtw-article{padding:1rem .2rem;border-left:0}.nvtw .nvtw-sources{grid-template-columns:1fr}.nvtw .nvtw-feature p{min-height:0}}
@media(max-width:560px){.nvtw .nvtw-hero{border-radius:14px 14px 0 0}.nvtw .nvtw-nav{gap:.15rem;padding:.45rem .25rem;position:static}.nvtw .nvtw-nav button{padding:.5rem .53rem;font-size:.76rem}.nvtw .nvtw-legend{grid-template-columns:1fr}.nvtw .nvtw-dialog{max-height:98vh}.nvtw .nvtw-overlay{padding:.35rem}.nvtw .nvtw-print-preview{padding:.35rem}.nvtw .nvtw-print-sheet{padding:.3in;min-height:auto}.nvtw .nvtw-dialog-bottom{gap:.35rem}.nvtw .nvtw-dialog-bottom p{flex-basis:100%}}
@media print{body *{visibility:hidden!important}.nvtw-print-output,.nvtw-print-output *{visibility:visible!important}.nvtw-print-output{display:block!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;background:#fff!important}.nvtw-print-output .nvtw-print-sheet{margin:0!important;max-width:none!important;min-height:0!important;box-shadow:none!important;border:none!important;padding:0!important;break-after:page!important}.nvtw-print-output .nvtw-print-sheet:last-child{break-after:auto!important}.nvtw-print-output .nvtw-print-field,.nvtw-print-output .nvtw-print-check{break-inside:avoid!important}@page{size:auto;margin:14mm}}
/* Printable content lives in <body> temporarily, so it must have standalone styles. */
.nvtw-print-output .nvtw-print-sheet{font:normal 13px/1.5 Georgia,"Times New Roman",serif;color:#1d2737;background:white;overflow-wrap:anywhere}
.nvtw-print-output .nvtw-print-sheet h2{font:bold 21px/1.3 Georgia,"Times New Roman",serif;color:#263459;margin:.3rem 0 1rem}
.nvtw-print-output .nvtw-print-overline{font:bold 10px system-ui;letter-spacing:.14em;text-transform:uppercase;color:#726394}
.nvtw-print-output .nvtw-print-field{padding:.8rem 0;border-bottom:1px solid #dadde8}
.nvtw-print-output .nvtw-print-field strong{display:block;margin-bottom:.4rem;color:#33416b;font-size:12px}
.nvtw-print-output .nvtw-print-field div{min-height:24px;overflow-wrap:anywhere}
.nvtw-print-output .nvtw-print-warning{margin-top:1rem;color:#805d26;font-size:11px}
.nvtw-print-output .nvtw-print-footer{border-top:1px solid #ccc;margin-top:1.5rem;padding-top:.5rem;font-size:10px;color:#647083}
.nvtw-print-output .nvtw-print-check{border-bottom:1px solid #ddd;padding:.5rem 0;break-inside:avoid}
