/* NEP Dental case study: animated eligibility flow (Fig. 01) and a 3rd TOC level.
   Added by jszymula, 2026-10-22. Loaded only on this route via routes.json "v2css". */
.toc a.sub2{padding-left:36px;font-size:12.5px;color:var(--muted)}
.post-body>.flowfig{margin-top:1.4em}
.flowfig,.flowfig *,.flowfig ::before,.flowfig ::after{box-sizing:border-box}
.flowfig{--ink:#15181A;--line-strong:#AEB6B7;--yellow:#F2C230;--ok:#7CCB8E;--no:#F0705C;--paper:#FBFAF5;--type:#1E2022;--faint-type:#6D6F68;--rule-type:#D9D6CB;container:flow/inline-size;--P:5.5s;margin:0;background:var(--paper);color:var(--type);border:1px solid var(--line-strong);box-shadow:0 1px 0 rgba(0,0,0,.05),0 18px 36px -24px rgba(21,24,26,.45)}
.flowfig .afig-head,.flowfig .foot{display:flex;justify-content:space-between;gap:12px;font:500 10px/1.4 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint-type)}
.flowfig .afig-head{padding:12px 24px;border-bottom:1px dashed var(--rule-type)}
.flowfig .afig-body{padding:24px}
.flowfig .foot{margin-top:24px;padding-top:12px;border-top:1px dashed var(--rule-type);flex-wrap:wrap;row-gap:8px;align-items:center}
:where(.flowfig) img{border:0;background:none;margin:0}
:where(.flowfig) :is(ol,ul){list-style:none;margin:0;padding:0}
:where(.flowfig) li{margin:0;padding:0}
:where(.flowfig) li::before{content:none}
.flowfig .ttl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:700 16px/1 var(--f-body);letter-spacing:-.01em;text-transform:none;color:#23252E}
.flowfig .ttl img{height:24px;width:auto}
.flowfig .ttl img.fb{height:18px}
.flowfig .ttl .x{font:400 14px/1 var(--f-mono);color:var(--faint-type);margin-inline:4px}
@property --sec{syntax:"<integer>";inherits:false;initial-value:0}
.flowfig .timer{display:flex;align-items:center;gap:8px;white-space:nowrap}
.flowfig .timer .swap{min-width:72px}
.flowfig .tm{display:flex;align-items:center;gap:8px;color:var(--type);font-weight:700;opacity:0;counter-reset:sec var(--sec)}
.flowfig .tm::before{content:"00:" counter(sec,decimal-leading-zero)}
.flowfig .tk{display:inline-grid;place-items:center;width:20px;height:20px;background:var(--ok);color:#15181A;font-size:11px;opacity:0}
.flowfig .stage{--hh:36px;--rh:48px;--gap:40px;--clear:8px;--top:calc(var(--hh) + var(--rh) * 2);--axis:calc(1.5px + var(--top) + var(--rh) * .5);display:grid;grid-template-columns:minmax(0,30fr) var(--gap) minmax(0,70fr);align-items:start}
.flowfig .k{font:600 10px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint-type)}
.flowfig .pl{background:#fff;border:1.5px solid var(--type)}
.flowfig .pl>.k{height:var(--hh);padding:0 12px;display:flex;align-items:center;border-bottom:1px solid var(--rule-type);box-sizing:border-box}
.flowfig .win{position:relative;height:240px;overflow:hidden}
.flowfig .win::before{content:"";position:absolute;left:0;right:0;top:96px;height:48px;background:var(--yellow)}
.flowfig .win::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#fff 0,rgba(255,255,255,0) 30%,rgba(255,255,255,0) 70%,#fff 100%)}
.flowfig .list{margin:0;padding:0;position:absolute;top:0;left:0;right:0;animation:nf-scroll 33.0s infinite}
.flowfig .row{height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;border-bottom:1px solid var(--rule-type);box-sizing:border-box}
.flowfig .who{display:grid;line-height:1.25}
.flowfig .who b{font-size:14px}
.flowfig .who span{font-size:12px;color:var(--faint-type)}
.flowfig .st{font:700 10px/12px var(--f-mono);letter-spacing:.04em;padding:4px 8px;color:#15181A;white-space:nowrap;opacity:0}
.flowfig .st.ok{background:var(--ok)}
.flowfig .st.no{background:var(--no)}
.flowfig .st.on{opacity:1}
.flowfig .st.off{opacity:0}
.flowfig .ar{position:relative;height:2px;width:calc(100% - var(--clear) * 2 - 5px);justify-self:start;margin-left:var(--clear);align-self:start;margin-top:calc(var(--axis) - 1px);background:var(--type);clip-path:inset(-6px 100% -6px 0)}
.flowfig .ar::before{content:"";position:absolute;right:-5px;top:-4px;border:5px solid transparent;border-left:7px solid var(--type);border-right:0}
.flowfig .ar0{animation:nf-a0 var(--P) linear infinite}
.flowfig .ar1{animation:nf-a1 var(--P) linear infinite}
.flowfig .ar2{animation:nf-a2 var(--P) linear infinite}
.flowfig .proc{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr var(--gap) 1fr var(--gap) 1fr;align-items:start}
.flowfig .s{background:#fff;border:1.5px solid var(--type);padding:0 12px;display:grid;grid-template-rows:var(--top) var(--rh) calc(var(--rh) * 2);min-width:0}
.flowfig .s1{animation:nf-lift1 var(--P) infinite}
.flowfig .s2{animation:nf-lift2 var(--P) infinite}
.flowfig .s3{animation:nf-lift3 var(--P) infinite}
.flowfig .s .top{display:grid;gap:8px;align-content:start;padding-top:12px}
.flowfig .s .axis{display:grid;align-items:center}
.flowfig .s .bot{display:grid;gap:8px;align-content:start;padding:0 0 12px}
.flowfig .n{width:24px;height:24px;display:grid;place-items:center;border:1.5px solid var(--type);font:600 10px var(--f-mono)}
.flowfig .s1 .n{animation:nf-b1 var(--P) infinite}
.flowfig .s2 .n{animation:nf-b2 var(--P) infinite}
.flowfig .s3 .n{animation:nf-b3 var(--P) infinite}
.flowfig .s b{font-size:16px;line-height:1.2}
.flowfig .s .d{font-size:12px;line-height:1.4;color:var(--faint-type)}
.flowfig .swap{display:grid;min-height:2.5em;align-items:center}
.flowfig .swap>*{grid-area:1/1;opacity:0}
.flowfig .lg{display:block;height:auto;max-width:100%;object-fit:contain;object-position:left center}
.flowfig .lg.dx,.flowfig .sw,.flowfig .res,.flowfig .pdf,.flowfig .st{transform-origin:left center}
.flowfig .lg.nep{width:auto;height:40px;max-height:40px}
.flowfig .sw{display:grid;gap:4px;transform-origin:left center}
.flowfig .pay{font:600 9.5px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint-type)}
.flowfig .swap{min-height:0}
.flowfig .pdfaxis{justify-items:center}
.flowfig .pdf{display:grid;place-items:center;transform-origin:center}
.flowfig .pdf i{position:relative;width:44px;height:56px;border:1.5px solid var(--type);background:#fff;font:700 10px/1 var(--f-mono);font-style:normal;color:var(--type);display:grid;place-items:end center;padding-bottom:8px;clip-path:polygon(0 0,68% 0,100% 24%,100% 100%,0 100%)}
.flowfig .pdf i::before{content:"";position:absolute;right:-1px;top:-1px;width:15px;height:15px;background:var(--rule-type)}
.flowfig .fnames{justify-items:center;margin-top:12px}
.flowfig .stat3{justify-items:center}
.flowfig .res.ok{background:var(--ok)}
.flowfig .res.no{background:var(--no)}
.flowfig .stat3 .res{justify-self:center;transform-origin:center}
.flowfig .fname{font:600 10px/1.3 var(--f-mono);color:var(--faint-type);text-align:center}
.flowfig .res{font:700 10px/12px var(--f-mono);letter-spacing:.04em;padding:4px 8px;color:#15181A;justify-self:start}
.flowfig .res.neutral{background:#fff;box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--faint-type);opacity:0;animation:nf-neutral var(--P) infinite}
.flowfig .checks{display:grid;gap:4px;font-size:12px;line-height:16px;color:var(--ink)}
.flowfig .checks li{opacity:0;display:flex;gap:6px;align-items:center;white-space:nowrap}
.flowfig .checks li::before{content:"✓";flex:none;width:14px;height:14px;display:grid;place-items:center;color:var(--ink);font:700 10px/1 var(--f-mono)}
.flowfig .s2 .checks li::before{background:var(--ok);color:#15181A;font-size:9px}
.flowfig .s2 .checks li.x::before{content:"✗";background:var(--no)}
.flowfig .d1{animation:nf-d1 var(--P) infinite}
.flowfig .d2{animation:nf-d2 var(--P) infinite}
.flowfig .d3{animation:nf-d3 var(--P) infinite}
.flowfig .swap>.checks{opacity:0}
.flowfig .c1{animation:nf-c1 var(--P) infinite}
.flowfig .c2{animation:nf-c2 var(--P) infinite}
.flowfig .c3{animation:nf-c3 var(--P) infinite}
@keyframes nf-scroll{0.000%{transform:translateY(0px)}15.455%{transform:translateY(0px)}16.667%{transform:translateY(-48px)}32.121%{transform:translateY(-48px)}33.333%{transform:translateY(-96px)}48.788%{transform:translateY(-96px)}50.000%{transform:translateY(-144px)}65.455%{transform:translateY(-144px)}66.667%{transform:translateY(-192px)}82.121%{transform:translateY(-192px)}83.333%{transform:translateY(-240px)}98.788%{transform:translateY(-240px)}100%{transform:translateY(-288px)}}
@keyframes nf-a0{0.000%{clip-path:inset(-6px 100% -6px 0)}2.727%{clip-path:inset(-6px 100% -6px 0)}10.000%{clip-path:inset(-6px -40% -6px 0)}90.909%{clip-path:inset(-6px -40% -6px 0)}92.364%{clip-path:inset(-6px 100% -6px 0)}100.000%{clip-path:inset(-6px 100% -6px 0)}}
@keyframes nf-a1{0.000%{clip-path:inset(-6px 100% -6px 0)}28.182%{clip-path:inset(-6px 100% -6px 0)}35.455%{clip-path:inset(-6px -40% -6px 0)}90.909%{clip-path:inset(-6px -40% -6px 0)}92.364%{clip-path:inset(-6px 100% -6px 0)}100.000%{clip-path:inset(-6px 100% -6px 0)}}
@keyframes nf-a2{0.000%{clip-path:inset(-6px 100% -6px 0)}62.727%{clip-path:inset(-6px 100% -6px 0)}70.000%{clip-path:inset(-6px -40% -6px 0)}90.909%{clip-path:inset(-6px -40% -6px 0)}92.364%{clip-path:inset(-6px 100% -6px 0)}100.000%{clip-path:inset(-6px 100% -6px 0)}}
@keyframes nf-lift1{0.000%{transform:translateY(0)}10.909%{transform:translateY(0)}13.091%{transform:translateY(-5px)}28.182%{transform:translateY(-5px)}29.455%{transform:translateY(0)}100.000%{transform:translateY(0)}}
@keyframes nf-b1{0.000%{background:#fff;border-color:var(--type)}10.000%{background:#fff;border-color:var(--type)}10.909%{background:var(--yellow);border-color:var(--yellow)}28.182%{background:var(--yellow);border-color:var(--yellow)}29.091%{background:#fff;border-color:var(--type)}100.000%{background:#fff;border-color:var(--type)}}
@keyframes nf-lift2{0.000%{transform:translateY(0)}37.273%{transform:translateY(0)}39.455%{transform:translateY(-5px)}62.727%{transform:translateY(-5px)}64.000%{transform:translateY(0)}100.000%{transform:translateY(0)}}
@keyframes nf-b2{0.000%{background:#fff;border-color:var(--type)}36.364%{background:#fff;border-color:var(--type)}37.273%{background:var(--yellow);border-color:var(--yellow)}62.727%{background:var(--yellow);border-color:var(--yellow)}63.636%{background:#fff;border-color:var(--type)}100.000%{background:#fff;border-color:var(--type)}}
@keyframes nf-lift3{0.000%{transform:translateY(0)}71.818%{transform:translateY(0)}74.000%{transform:translateY(-5px)}90.909%{transform:translateY(-5px)}92.182%{transform:translateY(0)}100.000%{transform:translateY(0)}}
@keyframes nf-b3{0.000%{background:#fff;border-color:var(--type)}70.909%{background:#fff;border-color:var(--type)}71.818%{background:var(--yellow);border-color:var(--yellow)}90.909%{background:var(--yellow);border-color:var(--yellow)}91.818%{background:#fff;border-color:var(--type)}100.000%{background:#fff;border-color:var(--type)}}
@keyframes nf-d1{0.000%{opacity:0;transform:translateY(6px)}13.636%{opacity:0;transform:translateY(6px)}16.364%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-d2{0.000%{opacity:0;transform:translateY(6px)}18.182%{opacity:0;transform:translateY(6px)}20.909%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-d3{0.000%{opacity:0;transform:translateY(6px)}22.727%{opacity:0;transform:translateY(6px)}25.455%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-neutral{0.000%{opacity:0;transform:translateY(6px)}40.909%{opacity:0;transform:translateY(6px)}43.636%{opacity:1;transform:translateY(0)}58.000%{opacity:1;transform:translateY(0)}58.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-c1{0.000%{opacity:0;transform:translateY(6px)}44.545%{opacity:0;transform:translateY(6px)}47.273%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-c2{0.000%{opacity:0;transform:translateY(6px)}49.091%{opacity:0;transform:translateY(6px)}51.818%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-c3{0.000%{opacity:0;transform:translateY(6px)}53.636%{opacity:0;transform:translateY(6px)}56.364%{opacity:1;transform:translateY(0)}90.909%{opacity:1;transform:translateY(0)}92.182%{opacity:0;transform:translateY(0)}100.000%{opacity:0;transform:translateY(6px)}}
@keyframes nf-lbl{0%{opacity:0;transform:translateY(6px)}6.364%{opacity:0;transform:translateY(6px)}6.818%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-res2{0%{opacity:0;transform:translateY(6px)}9.697%{opacity:0;transform:translateY(6px)}10.152%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-pdf{0%{opacity:0;transform:translateY(6px)}12.273%{opacity:0;transform:translateY(6px)}12.727%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-cloxx{0.000%{opacity:0}16.636%{opacity:0}16.667%{opacity:0}33.303%{opacity:0}33.333%{opacity:0}49.970%{opacity:0}50.000%{opacity:0}66.636%{opacity:0}66.667%{opacity:1}83.303%{opacity:1}83.333%{opacity:0}99.970%{opacity:0}100%{opacity:0}}
@keyframes nf-cloox{0.000%{opacity:0}16.636%{opacity:0}16.667%{opacity:0}33.303%{opacity:0}33.333%{opacity:1}49.970%{opacity:1}50.000%{opacity:0}66.636%{opacity:0}66.667%{opacity:0}83.303%{opacity:0}83.333%{opacity:0}99.970%{opacity:0}100%{opacity:0}}
@keyframes nf-clooo{0.000%{opacity:1}16.636%{opacity:1}16.667%{opacity:1}33.303%{opacity:1}33.333%{opacity:0}49.970%{opacity:0}50.000%{opacity:1}66.636%{opacity:1}66.667%{opacity:0}83.303%{opacity:0}83.333%{opacity:1}99.970%{opacity:1}100%{opacity:1}}
@keyframes nf-tm0{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:42;opacity:1}15.152%{--sec:42;opacity:1}15.364%{--sec:42;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tm1{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:57;opacity:1}15.152%{--sec:57;opacity:1}15.364%{--sec:57;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tm2{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:48;opacity:1}15.152%{--sec:48;opacity:1}15.364%{--sec:48;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tm3{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:39;opacity:1}15.152%{--sec:39;opacity:1}15.364%{--sec:39;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tm4{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:53;opacity:1}15.152%{--sec:53;opacity:1}15.364%{--sec:53;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tm5{0%{--sec:0;opacity:0}0.152%{--sec:0;opacity:1}13.333%{--sec:45;opacity:1}15.152%{--sec:45;opacity:1}15.364%{--sec:45;opacity:0}100%{--sec:0;opacity:0}}
@keyframes nf-tick{0%{opacity:0;transform:translateY(6px)}13.333%{opacity:0;transform:translateY(6px)}13.788%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-res-ok{0%{opacity:0;transform:translateY(6px)}12.879%{opacity:0;transform:translateY(6px)}13.333%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-res-no{0%{opacity:0;transform:translateY(6px)}12.879%{opacity:0;transform:translateY(6px)}13.333%{opacity:1;transform:translateY(0)}15.152%{opacity:1;transform:translateY(0)}15.364%{opacity:0;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@keyframes nf-st0{0%{opacity:0}13.303%{opacity:0}13.333%{opacity:1}100%{opacity:1}}
@keyframes nf-st1{0%{opacity:0}29.970%{opacity:0}30.000%{opacity:1}100%{opacity:1}}
@keyframes nf-st2{0%{opacity:0}46.636%{opacity:0}46.667%{opacity:1}100%{opacity:1}}
@keyframes nf-st3{0%{opacity:0}63.303%{opacity:0}63.333%{opacity:1}100%{opacity:1}}
@keyframes nf-st4{0%{opacity:0}79.970%{opacity:0}80.000%{opacity:1}100%{opacity:1}}
@keyframes nf-st5{0%{opacity:0}96.636%{opacity:0}96.667%{opacity:1}100%{opacity:1}}
@container flow (max-width:820px){
.flowfig .stage{grid-template-columns:minmax(0,1fr);--top:64px}
.flowfig .stage>.ar0{width:19px;justify-self:center;margin:19px 0;transform:rotate(90deg)}}
@container flow (max-width:600px){
.flowfig .afig-head{padding:12px 16px}
.flowfig .afig-body{padding:16px}
.flowfig .proc{grid-template-columns:minmax(0,1fr)}
.flowfig .proc>.ar{width:19px;justify-self:center;margin:19px 0;transform:rotate(90deg)}
.flowfig .s{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);row-gap:12px;padding:12px}
.flowfig .s .top{display:flex;align-items:center;gap:8px;padding:0}
.flowfig .s .axis{min-height:40px}
.flowfig .s .bot{padding:0}
.flowfig .s3 .axis{min-height:56px}}
@container flow (max-width:420px){
.flowfig .ttl{font-size:14px}
.flowfig .ttl img{height:20px}
.flowfig .ttl img.fb{height:15px}}
@media (prefers-reduced-motion:reduce){
.flowfig *{animation:none!important}
.flowfig .st{opacity:1}
.flowfig .swap>*:last-child{opacity:1}
.flowfig .checks li,.flowfig .checks li{opacity:1}
.flowfig .timer{display:none}
.flowfig .ar{clip-path:none}}
