/* Interactive niche finder (/guides/best-niches-for-ai-voice-agents). Page-specific classes only; shared components come from tokens.css. */
.nf-shell{max-width:1180px;margin-inline:auto;padding-inline:1.5rem}
.nf-hero{position:relative;background:radial-gradient(circle at 78% 18%,rgba(22,202,187,.2),transparent 29%),radial-gradient(circle at 16% 82%,rgba(20,134,235,.25),transparent 34%),linear-gradient(135deg,#071827 0%,#0a3044 52%,#075e5d 100%)}
.nf-hero .dotgrid{opacity:.14!important;filter:invert(1)}
.nf-hero .eyebrow{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#ddfff5}
.nf-hero .eyebrow .dot{box-shadow:0 0 0 4px rgba(80,255,205,.13)}
.nf-hero h1{color:#fff}
.nf-hero .guide-dek{color:#d8eaf0}
.nf-hero .guide-dek+div{color:#b9d2da!important}
.nf-hero .mono{color:#a8c2cc!important}
.nf-hero .nf-board--choice{border:1px solid rgba(255,255,255,.35);box-shadow:0 22px 48px rgba(0,0,0,.25)}
.nf-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:3rem;align-items:start}
.nf-aside{position:sticky;top:7rem}
.nf-section{scroll-margin-top:6.5rem;padding-block:3.5rem}
.nf-section+.nf-section{border-top:1px solid var(--line)}
.nf-section-head{max-width:720px;margin-bottom:1.75rem}
.nf-section-head .nf-kicker{display:inline-flex;align-items:center;gap:.6rem;color:var(--brand-deep);font:600 .68rem/1 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase}
.nf-section-head .nf-kicker b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:var(--brand);color:#fff;font-weight:700}
.nf-section-head h2{margin-top:.9rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.7rem,3.4vw,2.35rem);font-weight:600;letter-spacing:-.03em;line-height:1.08;color:var(--ink)}
.nf-section-head p{margin-top:.75rem;color:var(--ink-soft);font-size:1rem;line-height:1.7}
.nf-fine{margin-top:1.1rem;color:var(--ink-faint);font-size:.76rem;line-height:1.55}
.nf-link{padding:0;border:0;background:none;color:var(--brand-deep);font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.nf-step{color:var(--ink-faint);font:600 .68rem/1 'JetBrains Mono',monospace;letter-spacing:.09em;text-transform:uppercase}
.nf-sub{margin-top:.25rem;color:var(--ink-faint);font-size:.82rem}

/* Hero scoreboard teaser */
.nf-board{display:grid;gap:.42rem;padding:1.1rem;border-radius:22px;background:var(--paper);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 2px rgba(7,23,39,.04)}
.nf-board--choice{grid-template-columns:minmax(0,1fr) minmax(170px,.78fr);align-items:center;gap:1.1rem;padding:1.25rem;background:linear-gradient(135deg,#fff,#f0fbff)}
.nf-board--choice img{width:100%;max-width:250px;justify-self:center;height:auto;mix-blend-mode:multiply}
.nf-board--choice span{display:block;color:var(--brand-deep);font:600 .66rem/1 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase}
.nf-board--choice strong{display:block;margin-top:.7rem;color:var(--ink);font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.08;letter-spacing:-.025em}
.nf-board--choice small{display:block;margin-top:.55rem;color:var(--ink-faint);font-size:.82rem;line-height:1.45}
.nf-board-row{display:grid;grid-template-columns:130px 1fr 28px;align-items:center;gap:.7rem;font-size:.74rem;color:var(--ink-soft)}
.nf-board-row i{display:block;height:9px;border-radius:999px;background:var(--mist);position:relative;overflow:hidden}
.nf-board-row i::after{content:'';position:absolute;inset:0;width:var(--w);border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--cyan),var(--mint));transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.32,.72,0,1)}
.nf-board-row--hard i::after{background:linear-gradient(90deg,#9a2b3a,#c9455a)}
.nf-board.is-in .nf-board-row i::after{transform:scaleX(1)}
.nf-board-row b{text-align:right;font-family:'JetBrains Mono',monospace;font-size:.78rem;color:var(--ink)}
.nf-board-row--hard span,.nf-board-row--hard b{color:var(--ink-faint)}
.nf-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.5rem}
.nf-stat-row div{padding:1.05rem 1.2rem;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.nf-stat-row b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.7rem;font-weight:600;letter-spacing:-.03em;color:var(--brand-deep)}
.nf-stat-row small{display:block;margin-top:.15rem;color:var(--ink-faint);font-size:.72rem;line-height:1.4}
.nf-lessons{padding-block:1.25rem}.nf-lessons .bezel{position:relative;overflow:hidden;border-color:transparent;transition:transform .3s ease,box-shadow .3s ease}.nf-lessons .bezel:hover{transform:translateY(-5px);box-shadow:0 18px 35px -25px rgba(7,23,39,.4)}.nf-lessons .bezel:nth-child(1){background:linear-gradient(145deg,#edf9ff 0%,#fff 72%)}.nf-lessons .bezel:nth-child(2){background:linear-gradient(145deg,#f0fffa 0%,#fff 72%)}.nf-lessons .bezel:nth-child(3){background:linear-gradient(145deg,#fff7e9 0%,#fff 72%)}.nf-lessons .bezel::after{content:'';position:absolute;right:-2.5rem;bottom:-3rem;width:9rem;height:9rem;border-radius:50%;opacity:.65;filter:blur(1px);animation:nf-float 5s ease-in-out infinite}.nf-lessons .bezel:nth-child(1)::after{background:#bceaff}.nf-lessons .bezel:nth-child(2)::after{background:#b9f4df;animation-delay:-1.7s}.nf-lessons .bezel:nth-child(3)::after{background:#ffe1a6;animation-delay:-3.2s}.nf-lessons .bezel-inner{position:relative;z-index:1;padding:2rem!important}.nf-lesson-icon{display:grid;place-items:center;width:2.55rem;height:2.55rem;margin-bottom:1.1rem;border-radius:.9rem;font-size:1.3rem;font-weight:800}.nf-lessons .bezel:nth-child(1) .nf-lesson-icon{background:#cfefff;color:#0878bf}.nf-lessons .bezel:nth-child(2) .nf-lesson-icon{background:#c8f8e5;color:#057955}.nf-lessons .bezel:nth-child(3) .nf-lesson-icon{background:#ffe6b9;color:#a95d00}.nf-lessons .nf-step{display:block;margin-bottom:.9rem}.nf-lessons h2{font-size:clamp(1.35rem,2vw,1.65rem)!important;line-height:1.12}.nf-lessons p{margin-top:1rem!important;font-size:.98rem!important;line-height:1.65!important}.nf-lessons+.nf-stat-row{margin-top:1.25rem}.nf-lessons+.nf-stat-row div{padding:1.2rem 1.35rem;border-top-width:4px}.nf-lessons+.nf-stat-row div:nth-child(1){border-top-color:var(--brand);background:#f4fbff}.nf-lessons+.nf-stat-row div:nth-child(2){border-top-color:var(--mint);background:#f2fffa}.nf-lessons+.nf-stat-row div:nth-child(3){border-top-color:#f1ad32;background:#fffaf0}@keyframes nf-float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-.7rem,-.55rem) scale(1.08)}}@media(prefers-reduced-motion:reduce){.nf-lessons .bezel::after{animation:none}.nf-lessons .bezel:hover{transform:none}}

.nf-board-legend{margin:.6rem .4rem .1rem;color:var(--ink-faint);font-size:.72rem;line-height:1.5}
.nf-board-legend b.is-green{color:var(--mint-deep)}
.nf-board-legend b.is-hard{color:#9A2B3A}
.nf-skip{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:0;border:0;background:none;color:var(--ink-mute);font-size:.82rem;font-weight:600;cursor:pointer}
.nf-skip::before{content:'';width:16px;height:16px;border:1.5px solid var(--mist-line);border-radius:5px;background:#fff}
.nf-skip.is-on::before{background:var(--ink);border-color:var(--ink);box-shadow:inset 0 0 0 3px #fff}

/* Score badge and bands */
.nf-score{display:inline-flex;align-items:baseline;gap:.2rem;padding:.35rem .6rem;border-radius:12px;background:var(--brand-soft);color:var(--brand-deep);font-family:'Bricolage Grotesque',system-ui,sans-serif;line-height:1}
.nf-score b{font-size:1.35rem;font-weight:700;letter-spacing:-.03em}
.nf-score small{font-size:.62rem;font-family:'JetBrains Mono',monospace;opacity:.75}
.nf-score--lg{padding:.55rem .8rem;border-radius:14px}
.nf-score--lg b{font-size:2rem}
.nf-score--green{background:var(--mint-soft);color:var(--mint-deep)}
.nf-score--amber{background:#FFF3D6;color:#8A5A00}
.nf-score--hard{background:#FBE4E7;color:#9A2B3A}
.nf-band{display:inline-flex;align-items:center;gap:.4rem;margin-top:.75rem;padding:.35rem .65rem;border-radius:999px;font:600 .64rem/1 'JetBrains Mono',monospace;letter-spacing:.07em;text-transform:uppercase}
.nf-band::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.nf-band--green{background:var(--mint-soft);color:var(--mint-deep)}
.nf-band--amber{background:#FFF3D6;color:#8A5A00}
.nf-band--hard{background:#FBE4E7;color:#9A2B3A}

/* Survey: the one card on the page that has to be impossible to miss. */
.nf-survey{padding:3px;border-radius:28px;background:linear-gradient(135deg,var(--brand) 0%,var(--cyan) 55%,var(--mint) 100%);box-shadow:0 30px 70px -30px rgba(7,150,255,.55),0 1px 2px rgba(7,23,39,.06)}
.nf-survey-inner{padding:1.1rem 1.1rem 1.6rem;border-radius:25px;background:linear-gradient(180deg,#EEF7FF 0%,#FFFFFF 38%)}
.nf-survey-top{display:flex;align-items:center;gap:1.1rem;padding:.85rem 1.1rem;border-radius:18px;background:var(--ink);color:#fff}
.nf-qcount{display:inline-flex;align-items:baseline;gap:.4rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;line-height:1}
.nf-qcount b{font-size:2rem;font-weight:700;letter-spacing:-.04em;color:var(--mint)}
.nf-qcount small{font-size:.8rem;font-weight:600;color:rgba(255,255,255,.75)}
.nf-steps{display:flex;flex:1;gap:.35rem}
.nf-steps i{flex:1;height:9px;border-radius:999px;background:rgba(255,255,255,.18);transition:background .3s}
.nf-steps i.is-done{background:var(--mint)}
.nf-steps i.is-now{background:#fff;box-shadow:0 0 0 3px rgba(11,222,177,.35);animation:nfPulse 1.8s ease-in-out infinite}
@keyframes nfPulse{0%,100%{box-shadow:0 0 0 3px rgba(11,222,177,.35)}50%{box-shadow:0 0 0 5px rgba(11,222,177,.12)}}
.nf-qname{padding:.4rem .7rem;border-radius:999px;background:rgba(255,255,255,.1);color:var(--mint);font:600 .66rem/1 'JetBrains Mono',monospace;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.nf-survey-inner .nf-survey-head{margin-top:1.5rem;padding-inline:.5rem}
.nf-survey-inner .nf-survey-head h3{font-size:clamp(1.45rem,2.8vw,1.95rem)}
.nf-survey-inner .nf-survey-head p{font-size:.92rem;color:var(--ink-mute)}
.nf-survey-inner .nf-options{padding-inline:.5rem}
.nf-survey-inner .nf-option{background:#fff}
.nf-survey-inner .nf-survey-nav{padding-inline:.5rem}
.nf-survey-inner .nf-slider-wrap{padding-inline:.5rem}
.nf-survey-inner .nf-saved{margin:0 0 .8rem}
@media(max-width:640px){.nf-survey-top{flex-wrap:wrap;gap:.6rem .9rem}.nf-steps{order:3;flex-basis:100%}.nf-qname{margin-left:auto}}

/* Survey */
.nf-saved{margin-bottom:1rem;padding:.7rem .9rem;border-radius:12px;background:var(--mint-soft);color:var(--mint-deep);font-size:.82rem;font-weight:600}
.nf-saved a{text-decoration:underline;text-underline-offset:3px}
.nf-card{padding:1.6rem;border:1px solid var(--line);border-radius:24px;background:var(--paper);box-shadow:0 1px 2px rgba(7,23,39,.04),0 18px 50px -30px rgba(8,33,50,.18)}
.nf-progress{height:6px;border-radius:999px;background:var(--mist);overflow:hidden}
.nf-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--mint));transition:width .4s cubic-bezier(.32,.72,0,1)}
.nf-survey-head{margin-top:1.4rem}
.nf-survey-head h3{margin-top:.6rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.3rem,2.6vw,1.75rem);font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--ink)}
.nf-survey-head p{margin-top:.5rem;color:var(--ink-faint);font-size:.88rem;line-height:1.6}
.nf-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.65rem;margin-top:1.4rem}
.nf-option{display:flex;flex-direction:column;gap:.25rem;padding:.95rem 1.05rem;border:1px solid var(--line);border-radius:16px;background:var(--frost);text-align:left;cursor:pointer;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}
.nf-option b{color:var(--ink);font-size:.92rem;line-height:1.3}
.nf-option small{color:var(--ink-faint);font-size:.76rem;line-height:1.45}
.nf-option:hover{border-color:rgba(7,150,255,.35);background:#fff;transform:translateY(-1px)}
.nf-option.is-on{border-color:var(--brand);background:linear-gradient(135deg,var(--brand-soft),var(--mint-soft));box-shadow:0 0 0 3px rgba(7,150,255,.14)}
.nf-option.is-on b::after{content:' ✓';color:var(--brand-deep)}
.nf-survey-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem}
.nf-survey-nav [disabled]{opacity:.45;cursor:not-allowed;transform:none!important}
.nf-back{padding:.5rem .2rem;border:0;background:none;color:var(--ink-mute);font-size:.85rem;font-weight:600;cursor:pointer}

/* Range inputs (survey slider, calculator, game) */
.nf-slider-wrap{margin-top:1.6rem}
.nf-slider-out{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(2.2rem,5vw,3.2rem);font-weight:700;letter-spacing:-.04em;color:var(--ink)}
input[type=range].nf-range,.nf-slider-wrap input[type=range],.nf-field--range input[type=range],.nf-game-card input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:10px;margin:.9rem 0 .4rem;border-radius:999px;background:linear-gradient(90deg,var(--brand) 0,var(--mint) var(--p,50%),var(--mist) var(--p,50%));outline:none}
.nf-slider-wrap input[type=range]::-webkit-slider-thumb,.nf-field--range input[type=range]::-webkit-slider-thumb,.nf-game-card input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;border:3px solid #fff;background:var(--ink);box-shadow:0 2px 8px rgba(7,23,39,.3);cursor:grab}
.nf-slider-wrap input[type=range]::-moz-range-thumb,.nf-field--range input[type=range]::-moz-range-thumb,.nf-game-card input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;border:3px solid #fff;background:var(--ink);box-shadow:0 2px 8px rgba(7,23,39,.3);cursor:grab}
.nf-slider-scale{display:flex;justify-content:space-between;color:var(--ink-faint);font:500 .68rem/1 'JetBrains Mono',monospace}
.nf-slider-verdict{margin-top:1rem;padding:.7rem .9rem;border-radius:12px;font-size:.85rem;font-weight:600;line-height:1.5}
.nf-slider-verdict.is-green{background:var(--mint-soft);color:var(--mint-deep)}
.nf-slider-verdict.is-amber{background:#FFF3D6;color:#8A5A00}
.nf-slider-verdict.is-hard{background:#FBE4E7;color:#9A2B3A}

/* Gate */
.nf-gate{display:none;padding:2.5rem 0 1rem;scroll-margin-top:6.5rem}
.nf-locked.nf-gate-open .nf-gate{display:block}
.nf-locked .nf-gated{display:none}
.nf-gate-card{position:relative;overflow:hidden;display:block;max-width:800px;margin-inline:auto;padding:2rem;border:1px solid rgba(70,239,203,.45);border-radius:28px;background:linear-gradient(135deg,#08283a 0%,#075d5d 58%,#087560 100%);box-shadow:0 26px 76px rgba(4,47,54,.3)}
.nf-gate-card::before{content:"";position:absolute;right:-110px;top:-130px;width:320px;height:320px;border-radius:50%;background:rgba(94,255,211,.2);pointer-events:none}
.nf-gate-card>*{position:relative;z-index:1}
.nf-gate-label{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .7rem;border-radius:999px;background:var(--mint);color:var(--ink);font:600 .63rem/1 'JetBrains Mono',monospace;letter-spacing:.07em;text-transform:uppercase}
.nf-gate-card h2{margin-top:.8rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:650;letter-spacing:-.04em;line-height:1.02;color:#fff}
.nf-gate-card p{margin-top:.8rem;color:#d7f6ed;font-size:.95rem;line-height:1.7;max-width:540px}
.nf-gate-form{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(190px,1fr) auto;gap:.6rem;margin-top:1.2rem;max-width:720px}
.nf-gate-form .field{flex:1;background:#fff;border-color:rgba(255,255,255,.68)}
.nf-gate-list,.nf-gate-visual-wrap{display:none}.nf-gate-list{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:1.2rem}
.nf-gate-list span{display:flex;align-items:flex-start;gap:.5rem;color:var(--ink);font-size:.78rem;font-weight:650;line-height:1.45}
.nf-gate-list span::before{content:'✓';display:grid;place-items:center;flex:0 0 19px;height:19px;border-radius:50%;background:var(--mint);color:var(--ink);font-size:.65rem;font-weight:800}
.nf-gate-visual{display:grid;gap:.6rem}
.nf-gate-visual .nf-pick{filter:blur(2.5px);opacity:.75;pointer-events:none;transform:scale(.96)}
.nf-gate-visual .nf-pick:nth-child(2){transform:scale(.92);opacity:.5}
.nf-gate-seal{position:absolute;inset:0;display:grid;place-items:center;text-align:center}
.nf-gate-seal>div{padding:1rem 1.3rem;border-radius:18px;background:rgba(7,23,39,.92);color:#fff;box-shadow:0 18px 40px rgba(7,23,39,.35)}
.nf-gate-seal span{font-size:1.5rem}
.nf-gate-seal strong{display:block;margin-top:.2rem;font-family:'Bricolage Grotesque',system-ui,sans-serif}
.nf-gate-seal small{display:block;color:var(--mint);font-size:.7rem}
.nf-gate-visual-wrap{position:relative}

/* Results */
.nf-shortlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.nf-pick{display:flex;flex-direction:column;padding:1.3rem;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 1px 2px rgba(7,23,39,.04)}
.nf-pick.is-top{border-color:rgba(11,222,177,.6);box-shadow:0 0 0 4px rgba(11,222,177,.14),0 24px 50px -30px rgba(8,33,50,.3)}
.nf-pick header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}
.nf-rank{color:var(--ink-faint);font:600 .66rem/1 'JetBrains Mono',monospace;letter-spacing:.09em;text-transform:uppercase}
.nf-pick.is-top .nf-rank{color:var(--mint-deep)}
.nf-pick h3{margin-top:1rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.3rem;font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--ink)}
.nf-reasons{margin:1rem 0 0;padding:0;list-style:none;display:grid;gap:.4rem}
.nf-reasons li{position:relative;padding-left:1.2rem;color:var(--ink-soft);font-size:.83rem;line-height:1.5}
.nf-reasons li::before{content:'✓';position:absolute;left:0;color:var(--mint-deep);font-weight:800}
.nf-reasons-none{margin-top:1rem;color:var(--ink-faint);font-size:.8rem;line-height:1.5}
.nf-pair{margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.8rem;line-height:1.5}
.nf-pair b{color:var(--ink)}
.nf-pick-actions{display:flex;align-items:center;gap:1rem;margin-top:auto;padding-top:1.2rem}
.nf-empty{padding:2rem;border:1px dashed var(--mist-line);border-radius:22px;text-align:center;color:var(--ink-soft)}
.nf-empty a{display:inline-block;margin-top:1rem}
.nf-callout{margin-top:1.25rem;padding:1rem 1.2rem;border-left:4px solid var(--brand);border-radius:0 16px 16px 0;background:var(--frost)}
.nf-callout b{display:block;color:var(--ink);font-size:.9rem}
.nf-callout p{margin-top:.35rem;color:var(--ink-soft);font-size:.86rem;line-height:1.6}
.nf-callout--hard{border-left-color:#C9455A}

/* Explorer */
.nf-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem}
.nf-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .8rem .5rem .5rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink-soft);font-size:.8rem;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.nf-chip b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:var(--mint-soft);color:var(--mint-deep);font-family:'JetBrains Mono',monospace;font-size:.72rem}
.nf-chip--amber b{background:#FFF3D6;color:#8A5A00}
.nf-chip--hard b{background:#FBE4E7;color:#9A2B3A}
.nf-chip:hover{border-color:rgba(7,150,255,.35);transform:translateY(-1px)}
.nf-chip.is-on{border-color:var(--ink);background:var(--ink);color:#fff}
.nf-panel{border:1px solid var(--line);border-radius:24px;background:var(--paper);overflow:hidden;box-shadow:0 1px 2px rgba(7,23,39,.04),0 24px 60px -34px rgba(8,33,50,.25)}
.nf-panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1.6rem;background:linear-gradient(135deg,var(--brand) 0%,#3DAEFF 100%);color:#fff}
.nf-panel-head--hard{background:linear-gradient(135deg,#7A1F2E 0%,#C9455A 100%)}
.nf-panel-head--amber{background:linear-gradient(135deg,#8A5A00 0%,#D99A1E 100%)}
.nf-panel-head h3{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.25rem,2.4vw,1.6rem);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.nf-panel-head p{margin-top:.25rem;font-size:.8rem;opacity:.85}
.nf-panel-head .nf-score{background:rgba(255,255,255,.18);color:#fff}
.nf-tabs{display:flex;gap:.25rem;padding:.6rem .9rem 0;border-bottom:1px solid var(--line);overflow-x:auto}
.nf-tabs button{padding:.7rem .9rem;border:0;border-bottom:2px solid transparent;background:none;color:var(--ink-mute);font-size:.84rem;font-weight:600;white-space:nowrap;cursor:pointer}
.nf-tabs button.is-on{color:var(--brand-deep);border-bottom-color:var(--brand)}
.nf-panel-body{padding:1.5rem 1.6rem}
.nf-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.nf-fact{padding:.85rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--frost)}
.nf-fact small{display:block;color:var(--brand-deep);font-size:.72rem;font-weight:700}
.nf-fact b{display:block;margin-top:.2rem;color:var(--ink);font-size:.9rem;line-height:1.4}
.nf-why{margin-top:1.2rem;color:var(--ink-soft);font-size:.92rem;line-height:1.7}
.nf-why b{color:var(--ink)}
.nf-pricing{margin-top:1.4rem;padding:1rem 1.1rem;border-radius:16px;background:var(--ink);color:#fff}
.nf-pricing>small{display:block;color:var(--mint);font:600 .64rem/1 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.nf-pricing>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:.8rem}
.nf-pricing i{display:block;font-style:normal;font-size:.7rem;opacity:.7}
.nf-pricing b{display:block;margin-top:.15rem;font-size:.9rem;line-height:1.35}
.nf-factors{display:grid;gap:.6rem}
.nf-factor{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:1rem}
.nf-factor-name{color:var(--ink);font-size:.86rem;font-weight:600}
.nf-factor-bar{display:flex;gap:.3rem}
.nf-factor-bar i{flex:1;height:12px;border-radius:4px;background:var(--mist)}
.nf-factor-bar i.on{background:var(--brand)}
.nf-factor-bar i.on.lv5{background:var(--mint-deep)}
.nf-factor-bar i.on.lv4{background:var(--brand)}
.nf-factor-bar i.on.lv3{background:#D99A1E}
.nf-factor-bar i.on.lv2,.nf-factor-bar i.on.lv1{background:#C9455A}
.nf-factor-val{color:var(--ink-faint);font-size:.78rem}
.nf-factor-val b{color:var(--ink);font-family:'JetBrains Mono',monospace}
.nf-stack{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem}
.nf-block{position:relative;padding:.9rem .85rem;border:1px solid var(--line);border-radius:14px;background:var(--frost);opacity:.45}
.nf-block.is-on{opacity:1;background:var(--paper)}
.nf-block.is-lead{border-color:var(--mint);background:linear-gradient(160deg,var(--mint-soft),#fff);box-shadow:0 0 0 3px rgba(11,222,177,.18)}
.nf-block-lead{position:absolute;top:-.55rem;left:.7rem;padding:.2rem .5rem;border-radius:999px;background:var(--ink);color:var(--mint);font:600 .56rem/1 'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.nf-block b{display:block;color:var(--ink);font-size:.82rem;line-height:1.3}
.nf-block p{margin-top:.35rem;color:var(--ink-faint);font-size:.7rem;line-height:1.45}
.nf-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.nf-chips span{padding:.35rem .65rem;border-radius:999px;background:var(--brand-soft);color:var(--brand-deep);font-size:.72rem;font-weight:600}
.nf-chips span:nth-child(3n){background:var(--mint-soft);color:var(--mint-deep)}
.nf-quote{padding:1.1rem 1.2rem;border-radius:16px;background:var(--frost);border:1px solid var(--line)}
.nf-quote+.nf-quote{margin-top:.8rem}
.nf-quote small{display:block;color:var(--brand-deep);font:600 .64rem/1 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.nf-quote p{margin-top:.5rem;color:var(--ink);font-size:.95rem;font-style:italic;line-height:1.65}
.nf-quote--hook{background:var(--ink);border-color:var(--ink)}
.nf-quote--hook small{color:var(--mint)}
.nf-quote--hook p{color:#fff}
.nf-copy{margin-top:.8rem;padding:.5rem .9rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:.76rem;font-weight:600;cursor:pointer}
.nf-panel-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.6rem;border-top:1px solid var(--line);background:var(--frost);font-size:.84rem}
.nf-panel-foot a{color:var(--brand-deep);font-weight:600}

/* Calculator */
.nf-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;padding:1.5rem;border:1px solid var(--line);border-radius:24px;background:var(--paper)}
.nf-calc-controls{display:grid;gap:1rem;align-content:start}
.nf-field{display:block}
.nf-field>span{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.4rem;color:var(--ink);font-size:.82rem;font-weight:600}
.nf-field output{color:var(--brand-deep);font-family:'JetBrains Mono',monospace}
.nf-calc-out{display:grid;gap:1rem;align-content:start}
.nf-verdict{padding:1.1rem 1.2rem;border-radius:16px}
.nf-verdict b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.3rem;letter-spacing:-.02em}
.nf-verdict p{margin-top:.4rem;font-size:.88rem;line-height:1.6}
.nf-verdict--green{background:var(--mint-soft);color:var(--mint-deep)}
.nf-verdict--amber{background:#FFF3D6;color:#8A5A00}
.nf-verdict--hard{background:#FBE4E7;color:#9A2B3A}
.nf-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.nf-stat{padding:.9rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--frost)}
.nf-stat b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.55rem;font-weight:600;letter-spacing:-.03em;color:var(--ink)}
.nf-stat small{display:block;margin-top:.15rem;color:var(--ink-faint);font-size:.72rem;line-height:1.4}

/* Score your own */
.nf-own{padding:1.5rem;border:1px solid var(--line);border-radius:24px;background:var(--paper)}
.nf-own-grid{display:grid;gap:.6rem;margin-top:1.2rem}
.nf-own-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--frost)}
.nf-own-row b{display:block;color:var(--ink);font-size:.86rem;line-height:1.35}
.nf-own-row small{display:block;margin-top:.15rem;color:var(--ink-faint);font-size:.72rem}
.nf-own-pick{display:flex;gap:.3rem}
.nf-own-pick button{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink-mute);font-family:'JetBrains Mono',monospace;font-size:.82rem;font-weight:700;cursor:pointer;transition:transform .15s,background .15s,color .15s}
.nf-own-pick button:hover{transform:translateY(-1px);border-color:rgba(7,150,255,.4)}
.nf-own-pick button.is-on{color:#fff;border-color:transparent}
.nf-own-pick button.is-on.lv5{background:var(--mint-deep)}
.nf-own-pick button.is-on.lv4{background:var(--brand)}
.nf-own-pick button.is-on.lv3{background:#D99A1E}
.nf-own-pick button.is-on.lv2,.nf-own-pick button.is-on.lv1{background:#C9455A}
.nf-own-total{display:flex;align-items:center;gap:1rem;margin-top:1.2rem;padding:1rem 1.2rem;border-radius:16px;background:var(--frost);border:1px solid var(--line)}
.nf-own-total--green{background:var(--mint-soft);border-color:rgba(6,122,98,.2)}
.nf-own-total--amber{background:#FFF3D6;border-color:rgba(138,90,0,.2)}
.nf-own-total--hard{background:#FBE4E7;border-color:rgba(154,43,58,.2)}
.nf-own-total b{color:var(--ink)}
.nf-own-total div b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.15rem}
.nf-own-total p{margin-top:.2rem;color:var(--ink-soft);font-size:.84rem;line-height:1.5}

/* Guess the score */
.nf-game-card{padding:1.6rem;border:1px solid var(--line);border-radius:24px;background:var(--paper)}
.nf-game-card h3{margin-top:.7rem;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--ink)}
.nf-guess{display:flex;align-items:baseline;gap:.4rem;margin-top:1.2rem}
.nf-guess output{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:3rem;font-weight:700;letter-spacing:-.04em;color:var(--ink);line-height:1}
.nf-guess span{color:var(--ink-faint);font-family:'JetBrains Mono',monospace}
.nf-game-actions{margin-top:1.2rem}
.nf-game-reveal{margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.nf-game-result{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem;padding:1rem 1.2rem;border-radius:16px;background:var(--frost)}
.nf-game-result--green{background:var(--mint-soft)}
.nf-game-result--hard{background:#FBE4E7}
.nf-game-result div b{display:block;color:var(--ink);font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.15rem}
.nf-game-result p{margin-top:.2rem;color:var(--ink-soft);font-size:.86rem;line-height:1.5}
.nf-game-done{padding:2rem;border:1px solid var(--line);border-radius:24px;background:var(--paper);text-align:center}
.nf-game-done b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.5rem;color:var(--ink)}
.nf-game-done p{margin:.5rem auto 1.2rem;max-width:460px;color:var(--ink-soft);font-size:.9rem;line-height:1.6}

/* 90-day plan */
.nf-plan{border:1px solid var(--line);border-radius:24px;background:var(--paper);overflow:hidden}
.nf-plan-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.nf-plan-tabs button{position:relative;display:grid;gap:.15rem;padding:1rem 1.1rem;border:0;border-bottom:3px solid transparent;border-right:1px solid var(--line);background:var(--frost);text-align:left;cursor:pointer}
.nf-plan-tabs button:last-child{border-right:0}
.nf-plan-tabs small{color:var(--ink-faint);font:600 .62rem/1 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.nf-plan-tabs b{color:var(--ink);font-size:.88rem;line-height:1.3}
.nf-plan-tabs i{position:absolute;top:.8rem;right:.9rem;font-style:normal;color:var(--ink-faint);font-family:'JetBrains Mono',monospace;font-size:.68rem}
.nf-plan-tabs button.is-on{background:var(--paper);border-bottom-color:var(--brand)}
.nf-plan-tabs button.is-done i{color:var(--mint-deep)}
.nf-plan-tabs button.is-done i::after{content:' ✓'}
.nf-plan-progress{height:5px;background:var(--mist)}
.nf-plan-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--mint));transition:width .4s}
.nf-plan-phase{padding:1.2rem 1.5rem .6rem}
.nf-plan-phase ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.nf-plan-phase li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:start;padding:.9rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--frost)}
.nf-plan-phase li.is-done{opacity:.55}
.nf-plan-phase li.is-done label{text-decoration:line-through}
.nf-plan-phase input{width:20px;height:20px;margin-top:.15rem;accent-color:var(--brand)}
.nf-plan-phase label{color:var(--ink-soft);font-size:.9rem;line-height:1.55;cursor:pointer}
.nf-plan-phase label b{color:var(--ink)}
.nf-plan-phase label em{color:var(--ink)}
.nf-plan-phase label a{color:var(--brand-deep);font-weight:600;white-space:nowrap}
.nf-plan .nf-fine{padding:0 1.5rem 1.2rem}

/* Closer and sources */
.nf-closer{margin-top:3rem;padding:2.2rem;border-radius:28px;background:var(--ink);color:#fff}
.nf-closer h2{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:600;letter-spacing:-.03em;line-height:1.08}
.nf-closer h2 span{color:var(--mint)}
.nf-closer p{margin-top:.8rem;max-width:620px;color:rgba(255,255,255,.78);font-size:.95rem;line-height:1.7}
.nf-closer-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}
.nf-sources{margin-top:2rem;padding:1.1rem 1.3rem;border:1px solid var(--line);border-radius:16px;background:var(--frost);color:var(--ink-mute);font-size:.78rem;line-height:1.65}
.nf-sources a{color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px}

@media(max-width:1024px){.nf-shortlist{grid-template-columns:1fr}.nf-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.nf-calc{grid-template-columns:1fr}.nf-gate-card{grid-template-columns:1fr}.nf-gate-visual-wrap{display:none}}
@media(max-width:900px){.nf-layout{grid-template-columns:1fr;gap:1.5rem}.nf-aside{position:static}.nf-plan-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.nf-plan-tabs button{border-bottom:1px solid var(--line)}.nf-factor{grid-template-columns:1fr;gap:.3rem}.nf-facts,.nf-pricing>div{grid-template-columns:1fr}.nf-own-row{grid-template-columns:1fr}.nf-stat-row{grid-template-columns:1fr}.nf-board-row{grid-template-columns:110px 1fr 28px}}
@media(max-width:640px){.nf-board--choice{grid-template-columns:1fr;text-align:center}.nf-board--choice img{max-width:210px}.nf-board--choice strong{margin-inline:auto;max-width:260px}}
@media(max-width:640px){.nf-shell{padding-inline:1rem}.nf-card,.nf-panel-body,.nf-calc,.nf-own,.nf-game-card{padding:1.1rem}.nf-panel-head{padding:1.1rem}.nf-gate-card{padding:1.4rem}.nf-gate-form{grid-template-columns:1fr}.nf-gate-list{grid-template-columns:1fr}.nf-stats{grid-template-columns:1fr}.nf-pick-actions{flex-wrap:wrap}.nf-panel-foot{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.nf-board-row i::after,.nf-progress i,.nf-plan-progress i{transition:none}}
.nf-locked .checklist-toc a[data-gated]{color:var(--ink-faint);cursor:default}
.nf-locked .checklist-toc a[data-gated]::after{content:'🔒';margin-left:auto;font-size:.65rem}
.nf-locked .checklist-toc a[data-gated]:hover{border-color:transparent;background:none;color:var(--ink-faint)}
