@layer components{.fn h1,.fn h2,.fn h3{font-family:var(--serif);letter-spacing:-.02em;font-weight:400}.fn .eyebrow{display:block}.fn-icon{width:100%;height:auto;display:block}.fn-masthead{gap:var(--s-7);padding-bottom:var(--s-7);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 200px;align-items:end;display:grid}.fn-masthead h1{margin-top:var(--s-3);font-size:clamp(2.2rem,5vw,3.6rem);line-height:1}.fn-masthead-art{justify-self:end;width:200px}.fn-lede{max-width:58ch;margin-top:var(--s-4);color:var(--ink-2);font-size:clamp(1rem,1.4vw,1.15rem)}.fn-byline{margin-top:var(--s-3);color:var(--ink-3);font-size:14px}.fn-byline a{text-underline-offset:3px;text-decoration:underline}.fn-stamp{border:1.5px solid var(--art-coral);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--art-coral);border-radius:4px;padding:3px 9px;font-size:11.5px;display:inline-block;transform:rotate(-2deg)}.fn-read{color:var(--ink-3);font-size:13px}.fn-tags{flex-wrap:wrap;gap:6px;display:flex}.fn-tags span{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.06em;color:var(--ink-3);border-radius:999px;padding:2px 8px;font-size:11px}.fn-cards{gap:var(--s-5);margin-top:var(--s-7);grid-template-columns:1fr 1fr;display:grid}.fn-card{gap:var(--s-5);padding:var(--s-5) var(--s-5) var(--s-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--paper);transition:transform .2s var(--ease), border-color .2s var(--ease);border-top-width:3px;grid-template-columns:84px minmax(0,1fr);display:grid;position:relative}.fn-card:hover{border-color:var(--line-2);transform:translateY(-2px)}.fn-card[data-accent=blue]{border-top-color:var(--art-blue)}.fn-card[data-accent=coral]{border-top-color:var(--art-coral)}.fn-card[data-accent=sage]{border-top-color:var(--art-sage)}.fn-card[data-accent=ochre]{border-top-color:var(--art-ochre)}.fn-card-icon{background:var(--surface-2);border-radius:14px;width:84px;padding:8px}.fn-card-body{gap:var(--s-3);align-content:start;display:grid}.fn-card-meta{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.fn-card h2{font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.12}.fn-card p{color:var(--ink-2);font-size:14.5px;line-height:1.6}.fn-card-foot{justify-content:space-between;align-items:center;gap:var(--s-3);padding-top:var(--s-3);border-top:1px dotted var(--line-2);display:flex}.fn-card-cta{color:var(--blue);font-size:13.5px;font-weight:500}.fn-desk{gap:var(--s-5);margin-top:var(--s-8);grid-template-columns:1fr 1fr;display:grid}.fn-desk-card{gap:var(--s-3);padding:var(--s-5);border:1px dashed var(--line-2);border-radius:var(--r-lg);color:var(--ink-2);align-content:start;font-size:14.5px;line-height:1.6;display:grid}.fn-desk-card .btn{justify-self:start}.fn-desk-card a:not(.btn){text-underline-offset:3px;text-decoration:underline}.fn-back{color:var(--ink-3);align-items:center;gap:8px;font-size:14px;display:inline-flex}.fn-back:hover{color:var(--ink)}.fn-head{gap:var(--s-5);margin-top:var(--s-5);padding-bottom:var(--s-6);border-bottom:1px solid var(--line);grid-template-columns:96px minmax(0,1fr);align-items:start;display:grid}.fn-head-icon{background:var(--surface-2);border-radius:16px;width:96px;padding:10px}.fn-head-meta{align-items:center;gap:var(--s-3);color:var(--ink-3);flex-wrap:wrap;font-size:13px;display:flex}.fn-head h1{max-width:20ch;margin-top:var(--s-3);font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.02}.fn-grid{gap:var(--s-8);margin-top:var(--s-6);grid-template-columns:minmax(0,1fr) 280px;align-items:start;display:grid}.fn-main{max-width:68ch}.fn-short{padding:var(--s-5) var(--s-6);border-left:4px solid var(--blue);border-radius:0 var(--r-lg) var(--r-lg) 0;background:var(--surface-2);position:relative}.fn-short h2{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:12px}.fn-short p{margin-top:var(--s-3);font-size:clamp(1.02rem,1.4vw,1.15rem);line-height:1.65}.fn-section{margin-top:var(--s-8);position:relative}.fn-section h2{align-items:baseline;gap:var(--s-3);font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.15;display:flex}.fn-num{font-family:var(--mono);letter-spacing:.1em;color:var(--art-coral);flex:none;font-size:13px}.fn-section p{margin-top:var(--s-4);color:var(--ink);font-size:16.5px;line-height:1.72}.fn-section ul{margin-top:var(--s-4);padding-left:1.2em;line-height:1.7}.fn-note{float:right;clear:right;width:190px;margin:var(--s-4) 0 var(--s-3) var(--s-5);padding:var(--s-3) 0 var(--s-3) var(--s-4);border-left:2px solid var(--art-coral);font-family:var(--serif);color:var(--ink-2);font-size:15px;font-style:italic;line-height:1.5}.fn-note .eyebrow{margin-bottom:6px;font-style:normal}.fn-week{margin-top:var(--s-8);padding:var(--s-5) var(--s-6);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--blue-soft);color:var(--ink)}.fn-week h2{font-size:1.35rem}.fn-week ol{margin:var(--s-4) 0 0;counter-reset:week;gap:var(--s-3);padding:0;list-style:none;display:grid}.fn-week li{counter-increment:week;padding-left:2.2em;line-height:1.6;position:relative}.fn-week li:before{content:counter(week);border:1.5px solid var(--blue);width:1.5em;height:1.5em;font-family:var(--mono);color:var(--blue);border-radius:50%;place-items:center;font-size:12px;display:grid;position:absolute;top:1px;left:0}.fn-terms{margin-top:var(--s-8)}.fn-terms h2,.fn-faq h2{font-size:1.35rem}.fn-terms dl{gap:var(--s-3);margin:var(--s-4) 0 0;display:grid}.fn-terms dl>div{gap:var(--s-3);padding-top:var(--s-3);border-top:1px dotted var(--line-2);grid-template-columns:150px minmax(0,1fr);display:grid}.fn-terms dt{font-family:var(--serif);font-size:1.05rem;font-style:italic}.fn-terms dd{color:var(--ink-2);margin:0;font-size:15px;line-height:1.6}.fn-faq{margin-top:var(--s-8)}.fn-qa{margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--line)}.fn-qa h3{font-family:var(--sans);letter-spacing:0;font-size:1.02rem;font-weight:600}.fn-qa p{margin-top:var(--s-2);color:var(--ink-2);font-size:15.5px;line-height:1.65}.fn-rail{top:calc(var(--nav-h) + var(--s-5));gap:var(--s-4);display:grid;position:sticky}.fn-rail-card{padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);color:var(--ink-2);font-size:14px;line-height:1.6}.fn-rail-card .fn-tags{margin-top:var(--s-2)}.fn-lessons{margin-top:var(--s-3);flex-wrap:wrap;gap:8px;display:flex}.fn-lessons .btn{height:34px;padding-inline:12px;font-size:13px}.fn-next{gap:var(--s-3);margin-top:var(--s-3);display:grid}.fn-next a{gap:var(--s-3);color:var(--ink);grid-template-columns:40px minmax(0,1fr);align-items:center;display:grid}.fn-next a:hover{color:var(--blue)}.fn-next .fn-icon{background:var(--surface-2);border-radius:9px;width:40px;padding:4px}.fn-next span{font-family:var(--serif);font-size:1rem;line-height:1.2}.fn-pager{gap:var(--s-4);margin-top:var(--s-9);padding-top:var(--s-5);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.fn-pager a{font-family:var(--serif);gap:4px;font-size:1.15rem;line-height:1.2;display:grid}.fn-pager a:hover{color:var(--blue)}.fn-pager-next{text-align:right;justify-self:end}.fn-fig{margin:var(--s-8) 0 0;padding:var(--s-4) var(--s-4) var(--s-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2)}.fn-fig svg{width:100%;height:auto;font-family:var(--sans);display:block}.fn-fig figcaption{margin-top:var(--s-3);color:var(--ink-3);font-size:13.5px}.fn-fig text{fill:var(--ink-2);font-size:13px}.fn-axis path{stroke:var(--ink-3);stroke-width:1.5px;fill:none}.fn-axis text{fill:var(--ink-3);font-size:12px}.fn-guide{stroke:var(--line-2);stroke-width:1px;stroke-dasharray:4 5;fill:none}.fn-guide-label{fill:var(--ink-3);font-size:11.5px}.fn-curve{fill:none;stroke-width:4px;stroke-linecap:round;stroke-dasharray:700;stroke-dashoffset:700px;animation:7s ease-in-out infinite fn-draw}.fn-curve-good{stroke:var(--blue)}.fn-curve-bad{stroke:var(--art-coral);stroke-dasharray:700;animation-name:fn-draw-dashed}@keyframes fn-draw{0%{stroke-dashoffset:700px;opacity:1}45%{stroke-dashoffset:0}90%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes fn-draw-dashed{0%{stroke-dashoffset:700px;opacity:1}45%{stroke-dashoffset:0}90%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.fn-rider{stroke:var(--paper);stroke-width:2px;offset-rotate:0deg;animation:7s ease-in-out infinite fn-ride}.fn-rider-good{fill:var(--blue);offset-path:path("M60 40C120 110 170 150 230 166S330 176 410 177S560 178 610 178")}.fn-rider-bad{fill:var(--art-coral);offset-path:path("M60 40C120 120 180 160 230 170S380 215 470 232S580 246 610 248")}@keyframes fn-ride{0%{offset-distance:0%;opacity:1}45%{offset-distance:100%}90%{offset-distance:100%;opacity:1}to{offset-distance:100%;opacity:0}}.fn-label{opacity:0;font-size:12.5px;animation:7s ease-in-out infinite fn-fade}.fn-label-good{fill:var(--blue)}.fn-label-bad{fill:var(--art-coral)}@keyframes fn-fade{0%,40%{opacity:0}55%,90%{opacity:1}to{opacity:0}}.fn-card-0,.fn-card-1,.fn-card-2{opacity:0;animation:9s ease-out infinite fn-pop}.fn-card-1{animation-delay:.5s}.fn-card-2{animation-delay:1s}.fn-fig-extract .fn-card-0 rect,.fn-fig-extract .fn-card-1 rect,.fn-fig-extract .fn-card-2 rect{fill:var(--paper);stroke:var(--line-2)}.fn-fig-extract .fn-card-0 path,.fn-fig-extract .fn-card-1 path,.fn-fig-extract .fn-card-2 path{stroke:var(--line-2);stroke-width:3px;stroke-linecap:round}.fn-fig-extract .fn-stars path{fill:var(--art-ochre);stroke:none}@keyframes fn-pop{0%{opacity:0;transform:translateY(8px)}6%,85%{opacity:1;transform:none}95%,to{opacity:0}}.fn-arrow path{stroke:var(--ink-3);stroke-width:2.5px;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;animation:9s ease-out infinite fn-fade-arrow}@keyframes fn-fade-arrow{0%,15%{opacity:0}22%,85%{opacity:1}95%,to{opacity:0}}.fn-table-bg{fill:var(--paper);stroke:var(--line-2)}.fn-table-head text{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;fill:var(--ink-3);font-size:11px}.fn-table-head path,.fn-row path{stroke:var(--line);stroke-width:1px}.fn-row{opacity:0;animation:9s ease-out infinite fn-row}.fn-row text{fill:var(--ink);font-size:12.5px}.fn-row-0{animation-delay:0s}.fn-row-1{animation-delay:.7s}.fn-row-2{animation-delay:1.4s}.fn-row-3{animation-delay:2.1s}@keyframes fn-row{0%,28%{opacity:0;transform:translate(6px)}33%,85%{opacity:1;transform:none}95%,to{opacity:0}}.fn-cluster rect{fill:var(--art-coral);fill-opacity:.14;stroke:var(--art-coral);stroke-width:1.5px}.fn-cluster path{stroke:var(--art-coral);stroke-width:1.5px;stroke-dasharray:3 4}.fn-cluster text{fill:var(--art-coral);font-size:11px}.fn-cluster{opacity:0;animation:9s ease-out infinite fn-cluster}@keyframes fn-cluster{0%,62%{opacity:0}70%,85%{opacity:1}95%,to{opacity:0}}.fn-day rect{fill:var(--paper);stroke:var(--line-2);stroke-width:1.5px}.fn-day-name{font-family:var(--mono);letter-spacing:.1em;fill:var(--ink-3);font-size:11px}.fn-day-verb{font-family:var(--serif);fill:var(--ink);font-size:20px}.fn-day-sub{fill:var(--ink-3);font-size:11px}.fn-day-dot{fill:var(--line)}.fn-day{animation:10s ease-in-out infinite fn-day}.fn-day-0{animation-delay:0s}.fn-day-1{animation-delay:1.3s}.fn-day-2{animation-delay:2.6s}.fn-day-3{animation-delay:3.9s}.fn-day-4{animation-delay:5.2s}@keyframes fn-day{0%,8%{transform:none}12%{transform:translateY(-6px)}20%{transform:none}}.fn-day .fn-day-dot{animation:10s ease-in-out infinite fn-dot;animation-delay:inherit}@keyframes fn-dot{0%,9%{fill:var(--line)}13%,88%{fill:var(--art-coral)}to{fill:var(--line)}}.fn-week-track{stroke:var(--line-2);stroke-width:2px;stroke-dasharray:600;stroke-dashoffset:600px;animation:10s linear infinite fn-track}@keyframes fn-track{0%{stroke-dashoffset:600px}60%{stroke-dashoffset:0}92%{stroke-dashoffset:0}to{stroke-dashoffset:600px}}.fn-memo rect{fill:var(--paper);stroke:var(--blue);stroke-width:2px}.fn-memo path{stroke:var(--blue);stroke-width:2px;stroke-linecap:round}.fn-memo{opacity:0;animation:10s ease-out infinite fn-memo}@keyframes fn-memo{0%,58%{opacity:0;transform:translateY(10px)}66%,90%{opacity:1;transform:none}to{opacity:0}}.fn-week-note{fill:var(--ink-3);font-size:12px}.fn-ring{fill:none;stroke:var(--line-2);stroke-width:3px}.fn-node circle{fill:var(--paper);stroke:var(--ink-3);stroke-width:2px}.fn-node text{fill:var(--ink);font-size:12.5px}.fn-node{animation:5s linear infinite fn-node}.fn-node-0{animation-delay:0s}.fn-node-1{animation-delay:1s}.fn-node-2{animation-delay:2s}.fn-node-3{animation-delay:3s}.fn-node-4{animation-delay:4s}@keyframes fn-node{0%{transform:scale(1)}4%{transform:scale(1.12)}14%{transform:scale(1)}}.fn-node-0 circle{animation:5s linear infinite fn-node-fill}.fn-node-1 circle{animation:5s linear 1s infinite fn-node-fill}.fn-node-2 circle{animation:5s linear 2s infinite fn-node-fill}.fn-node-3 circle{animation:5s linear 3s infinite fn-node-fill}.fn-node-4 circle{animation:5s linear 4s infinite fn-node-fill}@keyframes fn-node-fill{0%{fill:var(--paper)}4%,12%{fill:var(--blue-soft);stroke:var(--blue)}20%{fill:var(--paper)}}.fn-pulse{fill:var(--blue);offset-path:path("M320 40a120 120 0 1 1-.1 0");animation:5s linear infinite fn-pulse}@keyframes fn-pulse{0%{offset-distance:0%}to{offset-distance:100%}}.fn-tally-head{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;fill:var(--ink-3);font-size:11px}.fn-tally-foot{font-family:var(--serif);fill:var(--ink);opacity:0;font-size:15px;animation:15s linear infinite fn-tally-foot}@keyframes fn-tally-foot{0%,94%{opacity:0}97%,to{opacity:1}}.fn-tick rect{fill:var(--paper);stroke:var(--line-2);stroke-width:1.5px}.fn-tick path{stroke:var(--art-sage-deep);stroke-width:2.5px;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0}.fn-tick-0 path{animation:15s linear infinite fn-tick}.fn-tick-1 path{animation:15s linear 5s infinite fn-tick}.fn-tick-2 path{animation:15s linear 10s infinite fn-tick}@keyframes fn-tick{0%,32%{opacity:0}33%,99%{opacity:1}to{opacity:0}}.fn-node{transform-box:fill-box;transform-origin:50%}.fn-day,.fn-memo,.fn-card-0,.fn-card-1,.fn-card-2,.fn-row{transform-origin:0 0}@media (prefers-reduced-motion:reduce){.fn-fig *{opacity:1!important;stroke-dashoffset:0!important;animation:none!important}.fn-rider{offset-distance:100%}.fn-pulse{offset-distance:0%}}@media (max-width:1100px){.fn-note{float:none;width:auto;margin:var(--s-4) 0 0}}@media (max-width:900px){.fn-masthead{grid-template-columns:1fr}.fn-masthead-art{display:none}.fn-cards{grid-template-columns:1fr}.fn-card{gap:var(--s-4);grid-template-columns:64px minmax(0,1fr)}.fn-card-icon{width:64px;padding:6px}.fn-head{gap:var(--s-4);grid-template-columns:64px minmax(0,1fr)}.fn-head-icon{width:64px;padding:6px}.fn-grid{gap:var(--s-6);grid-template-columns:1fr}.fn-rail{position:static}.fn-desk{grid-template-columns:1fr}.fn-terms dl>div{grid-template-columns:1fr;gap:4px}.fn-pager{grid-template-columns:1fr}.fn-pager-next{text-align:left;justify-self:start}}}
