.wrap{max-width:72.5rem;margin:0 auto;padding:0 1.5rem}html{scroll-behavior:smooth}[id]{scroll-margin-top:5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.site-bar{z-index:10;backdrop-filter:blur(.75rem);background:#0d1712d1;border-bottom:1px solid #0000;transition:border-color .2s;position:sticky;top:0}.site-bar.scrolled{border-bottom-color:var(--line)}.site-bar .wrap{align-items:center;gap:1.5rem;height:4.25rem;display:flex}.site-nav{gap:.25rem;margin-right:auto;display:flex}.site-nav a{color:var(--muted);border-radius:62.4375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:600;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);background:var(--raise)}.site-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}.site-nav+.site-actions{margin-left:0}.btn-lg{padding:.75rem 1.375rem;font-size:1rem}@media (width<=52rem){.site-nav{display:none}}.site-actions .btn{white-space:nowrap}.narrow-only{display:none}@media (width<=26rem){.wide-only{display:none}.narrow-only{display:inline}.site-bar .wrap{gap:.75rem}}.eyebrow{color:var(--sage);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:currentColor;border-radius:1rem;width:1.5rem;height:.125rem}.landing-hero{isolation:isolate;grid-template-columns:1.05fr 1fr;align-items:center;gap:3.5rem;padding:4.5rem 0 5rem;display:grid;position:relative}.landing-hero:before,.auth-main:before{content:"";z-index:-1;pointer-events:none;background:conic-gradient(#f2edd808 25%, transparent 0 50%, #f2edd808 0 75%, transparent 0) 0 0 / 9rem 9rem;position:absolute;inset:-4.25rem -1.5rem 0;-webkit-mask-image:radial-gradient(34rem 26rem at 76% 46%,#000 20%,#0000 100%);mask-image:radial-gradient(34rem 26rem at 76% 46%,#000 20%,#0000 100%)}.landing-hero h1,.feature-hero h1{letter-spacing:-.04em;font-variation-settings:"opsz" 96;text-wrap:balance;margin:1.125rem 0 1.375rem;font-size:clamp(2.6rem,1.4rem + 4.6vw,5rem);font-weight:800;line-height:.98}.landing-hero h1 em,.feature-hero h1 em{color:var(--sage);font-style:normal}.lead{color:var(--muted);text-wrap:pretty;max-width:34rem;font-size:1.1875rem}.cta-row{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.fine{color:var(--faint);margin-top:1rem;font-size:.875rem}@media (width<=60rem){.landing-hero{grid-template-columns:1fr;gap:2.5rem;padding-top:3rem}}.screen{background:var(--raise);border:1px solid var(--line-2);border-radius:1.25rem;padding:1.5rem;position:relative;box-shadow:0 2rem 4rem -1.5rem #0009}.screen-dots{gap:.375rem;margin-bottom:1.25rem;display:flex}.screen-dots i{background:var(--line-2);border-radius:50%;width:.5625rem;height:.5625rem}.mock-head{letter-spacing:-.035em;margin-bottom:1.25rem;font-size:clamp(1.5rem,1rem + 1.6vw,2.1rem);font-weight:800;line-height:1.05}.mock-head b{color:var(--loss);font-weight:800}.mock-cols{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.mock-col{border-top:.1875rem solid var(--c);padding-top:.625rem}.mock-col small{color:var(--muted);align-items:center;gap:.375rem;font-size:.8125rem;font-weight:600;display:flex}.mock-col small svg{width:.875rem;height:.875rem;color:var(--c)}.mock-col strong{letter-spacing:-.04em;font-size:2.25rem;font-weight:800;line-height:1.1;display:block}.mock-col span{color:var(--loss);font-size:.875rem;font-weight:600}.wdl{border-radius:1rem;gap:.125rem;height:.3125rem;margin-top:.5rem;display:flex;overflow:hidden}.wdl i:first-child{background:var(--win)}.wdl i:nth-child(2){background:var(--draw)}.wdl i:nth-child(3){background:var(--loss)}.heat{grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:.1875rem;margin-top:1.5rem;display:grid}.heat i{aspect-ratio:1;background:var(--line);border-radius:.1875rem}.heat i[data-l="1"]{background:#4b5a3a}.heat i[data-l="2"]{background:#6f8a4f}.heat i[data-l="3"]{background:var(--win)}.float-chip{color:#04211f;background:#1baca6;border-radius:62.4375rem;align-items:center;gap:.5rem;padding:.3125rem .875rem .3125rem .3125rem;font-size:.8125rem;font-weight:700;animation:4s ease-in-out infinite chip-bob;display:flex;position:absolute;top:-1rem;right:-.75rem;box-shadow:0 .75rem 1.5rem -.5rem #00000080}.hero-visual .wdl{animation:draw-x .9s var(--ease-out) .45s both}.hero-visual .heat i{animation:cell-in .5s var(--ease-out) calc(.4s + var(--d,0) * 24ms) both}@keyframes cell-in{0%{opacity:0;transform:scale(.3)}}.hero-visual .float-chip{animation:chip-in .6s var(--ease-out) 1.35s both, chip-bob 4s ease-in-out 1.95s infinite}@keyframes chip-in{0%{opacity:0;transform:translateY(.75rem)scale(.7)}}@media (width>=60rem) and (hover:hover){.hero-visual{perspective:75rem}.hero-visual .screen{transform:rotateX(var(--rx,2deg)) rotateY(var(--ry,-6deg));transition:transform .6s var(--ease-out), box-shadow .4s var(--ease);box-shadow:1.5rem 2.5rem 4.5rem -1.75rem #000000bf}}.float-chip i{letter-spacing:-.06em;color:#2fd1c4;background:#04211f;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-style:normal;font-weight:800;display:grid}@keyframes chip-bob{50%{transform:translateY(-.25rem)rotate(-1deg)}}.mini-board{aspect-ratio:1;border-radius:.5rem;grid-template-columns:repeat(8,1fr);width:100%;display:grid;position:relative;overflow:hidden}.mini-board>i{background:#eeebd0;position:relative}.mini-board>i.d{background:#5b8a63}.mini-board>i.hl{box-shadow:inset 0 0 0 100vmax #6cd49a8c}.mini-board>i img{width:92%;height:92%;position:absolute;inset:4%}.mini-board svg.arrows{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.board-row{grid-template-columns:1.5rem 1fr;gap:.5rem;display:grid}.evalbar{background:#2a2a2a;border-radius:.375rem;flex-direction:column;display:flex;overflow:hidden}.evalbar i{height:var(--w,58%);background:#f4efe4;margin-top:auto}.lines{gap:.375rem;margin-top:1rem;font-size:.875rem;display:grid}.lines p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:.625rem;display:flex;overflow:hidden}.lines b{text-align:center;color:#0d1712;background:#f4efe4;border-radius:.3125rem;flex:none;min-width:3.25rem;padding:.0625rem .375rem;font-weight:700}.palette{background:var(--bg);border-radius:.625rem;justify-content:space-between;gap:.25rem;margin:.625rem 0;padding:.5rem;display:flex}.palette img{aspect-ratio:1;border-radius:.375rem;width:11%}.palette img.on{outline:.125rem solid var(--sage);background:#6cd49a40}.chips{flex-wrap:wrap;gap:.375rem;margin-top:1rem;display:flex}.chips span{border:1px solid var(--line-2);color:var(--muted);border-radius:62.4375rem;padding:.3125rem .75rem;font-size:.8125rem;font-weight:600}.chips span.on{background:var(--sage);color:var(--sage-ink);border-color:var(--sage)}.acc{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.acc div{background:var(--bg);border-radius:.875rem;padding:.875rem 1rem}.acc small{color:var(--muted);font-size:.8125rem;font-weight:600}.acc strong{letter-spacing:-.04em;font-size:2.25rem;font-weight:800;line-height:1.1;display:block}.acc div:first-child strong{color:var(--sage)}.graph{background:#2a2a2a;border-radius:.625rem;width:100%;height:5.5rem;margin:1rem 0;display:block}.moves{gap:.375rem;display:grid}.moves p{background:var(--bg);border-radius:.625rem;align-items:center;gap:.625rem;padding:.4375rem .625rem;font-size:.9375rem;display:flex}.moves p b{font-weight:700}.moves p span{color:var(--k);margin-left:auto;font-size:.8125rem;font-weight:700}.tag{background:var(--k);color:#0d1712;border-radius:50%;flex:none;place-items:center;width:1.375rem;height:1.375rem;font-size:.6875rem;font-weight:800;display:grid}.features-intro{text-align:center;padding:3rem 0 1rem}.features-intro h2,.cta-band h2,.section-title{letter-spacing:-.04em;text-wrap:balance;font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem);font-weight:800;line-height:1.02}.features-intro p{color:var(--muted);max-width:36rem;margin:.875rem auto 0;font-size:1.0625rem}.feature{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:5rem 0;display:grid}.feature:last-of-type{border-bottom:0}.feature{content-visibility:auto;contain-intrinsic-size:auto 36rem}.feature:nth-of-type(2n) .feature-copy{order:2}.feature-num{color:var(--faint);letter-spacing:.08em;align-items:center;gap:.75rem;font-size:.8125rem;font-weight:700;display:inline-flex}.piece-count{color:inherit;align-items:flex-end;display:inline-flex}.piece-count svg{flex:none;width:1.375rem;height:1.375rem;margin-right:-.375rem}.piece-count svg:last-child{margin-right:0}.feature h3{letter-spacing:-.035em;text-wrap:balance;margin:.625rem 0 1rem;font-size:clamp(1.75rem,1.2rem + 1.8vw,2.5rem);font-weight:800;line-height:1.05}.feature-copy>p{color:var(--muted);text-wrap:pretty;font-size:1.0625rem}.ticks{gap:.625rem;margin:1.5rem 0 1.75rem;padding:0;list-style:none;display:grid}.ticks li{align-items:flex-start;gap:.75rem;display:flex}.ticks li:before{content:"";background:#6cd49a29 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23c6ceb2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/.875rem no-repeat;border-radius:50%;flex:none;width:1.25rem;height:1.25rem;margin-top:.125rem}.more{color:var(--sage);align-items:center;gap:.375rem;font-weight:700;text-decoration:none;display:inline-flex}.feature-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.access{letter-spacing:.02em;border:1px solid var(--line-2);color:var(--muted);border-radius:62.4375rem;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:700;display:inline-flex}.access:before{content:"";background:var(--faint);border-radius:50%;width:.4375rem;height:.4375rem}.access[data-account=no]{color:var(--win);border-color:#a5d86a66}.access[data-account=no]:before{background:var(--win)}.feature-eyebrow{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.feature-visual-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.access-note{color:var(--faint);margin-top:.875rem;font-size:.875rem}.more:hover{text-underline-offset:.25rem;text-decoration:underline}@media (width<=52rem){.feature{grid-template-columns:1fr;gap:2.25rem;padding:3.5rem 0}.feature:nth-of-type(2n) .feature-copy{order:0}.feature{contain-intrinsic-size:auto 58rem}}.feature-hero{text-align:center;padding:4.5rem 0 3rem}.feature-hero .lead{margin:0 auto}.feature-hero .cta-row{justify-content:center}.showcase{max-width:40rem;margin:0 auto 5rem}.points{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0 5rem;display:grid}.point{background:var(--raise);border:1px solid var(--line);border-radius:1rem;padding:1.5rem}.point h3{letter-spacing:-.015em;margin-bottom:.5rem;font-size:1.125rem;font-weight:700}.point p{color:var(--muted);font-size:.9375rem}.steps{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:2rem;margin:2rem 0 5rem;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;color:var(--muted)}.steps li:before{content:counter(step);background:var(--sage);width:2.25rem;height:2.25rem;color:var(--sage-ink);border-radius:50%;place-items:center;margin-bottom:.875rem;font-weight:800;display:grid}.steps b{color:var(--ink);margin-bottom:.25rem;font-size:1.0625rem;display:block}.next-feature{border:1px solid var(--line-2);border-radius:1.25rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:5rem;padding:1.75rem 2rem;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex}.next-feature:hover{background:var(--raise);border-color:var(--faint)}.next-feature small{color:var(--faint);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.next-feature strong{letter-spacing:-.03em;font-size:1.5rem;font-weight:800;display:block}.next-feature svg{width:1.75rem;height:1.75rem;color:var(--sage);flex:none}@media (width<=52rem){.points,.steps{grid-template-columns:1fr}}.cta-band{text-align:center;background:var(--sage);color:var(--sage-ink);isolation:isolate;border-radius:1.75rem;margin:2rem 0 5rem;padding:4.5rem 1.5rem;position:relative;overflow:hidden}.cta-band:before{content:"";z-index:-1;pointer-events:none;background:conic-gradient(#04240f12 25%, transparent 0 50%, #04240f12 0 75%, transparent 0) 50% 0 / 9rem 9rem;position:absolute;inset:0;-webkit-mask-image:radial-gradient(closest-side,#0000 55%,#000 130%);mask-image:radial-gradient(closest-side,#0000 55%,#000 130%)}.cta-band .btn-ink{box-shadow:var(--lift)}.cta-band .btn-ink:hover:not(:active){transform:translateY(-1px)}.cta-band p{color:#3b4630;max-width:32rem;margin:.875rem auto 0;font-size:1.0625rem}.cta-band .cta-row{justify-content:center}.cta-band .btn{border-color:var(--sage-ink)}.cta-band .btn:hover{background:#04240f14}.btn-ink{background:var(--sage-ink);color:var(--sage)}.cta-band .btn-ink:hover{background:#2c3622}.site-foot{border-top:1px solid var(--line);color:var(--muted);padding:3.5rem 0 2.5rem;font-size:.9375rem}.foot-grid{grid-template-columns:1.6fr repeat(3,1fr);gap:2rem;display:grid}.foot-grid p{max-width:20rem;margin-top:.875rem}.foot-grid .foot-name b{color:var(--ink)}.foot-grid h2{font-family:var(--font);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-bottom:.875rem;font-size:.75rem;font-weight:700}.foot-grid ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.foot-grid a{text-decoration:none}.foot-grid ul a:hover{color:var(--ink);text-underline-offset:.1875rem;text-decoration:underline}.foot-base{border-top:1px solid var(--line);color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-top:3rem;padding-top:1.5rem;font-size:.8125rem;display:flex}@media (width<=52rem){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>div:first-child{grid-column:1/-1}}.auth-page{grid-template-rows:auto 1fr auto;min-height:100vh;display:grid}.auth-top{padding:1.25rem 1.5rem}.auth-main{isolation:isolate;place-items:center;padding:1.5rem 1rem 4rem;display:grid;position:relative}.auth-main:before{inset:0;-webkit-mask-image:radial-gradient(40rem 30rem at 50% 42%,#000 10%,#0000 100%);mask-image:radial-gradient(40rem 30rem at 50% 42%,#000 10%,#0000 100%)}.auth-card{background:var(--raise);border:1px solid var(--line-2);width:100%;max-width:28rem;animation:rise .6s var(--ease-out) both;border-radius:1.5rem;padding:2.25rem 2.25rem 1.75rem;box-shadow:0 2.5rem 5rem -2rem #000c,inset 0 1px #ffffff0a}.auth-card .field input,.auth-card .auth-note{background:var(--bg)}@media (width<=30rem){.auth-card{border-radius:1.25rem;padding:1.5rem 1.25rem 1.25rem}}.auth-card h1{letter-spacing:-.04em;font-size:clamp(2rem,1.5rem + 2vw,2.75rem);font-weight:800;line-height:1.02}.auth-card>p{color:var(--muted);margin:.625rem 0 2rem}.field{margin-bottom:1.125rem;display:block}.field-label{justify-content:space-between;align-items:baseline;margin-bottom:.4375rem;font-size:.875rem;font-weight:600;display:flex}.field-label small{color:var(--faint);font-weight:500}.field-input{position:relative}.field input{background:var(--raise);border:1px solid var(--line-2);border-radius:.75rem;width:100%;padding:.8125rem .9375rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.field input::placeholder{color:var(--faint)}.field input:focus{border-color:var(--sage);outline:none;box-shadow:0 0 0 .1875rem #6cd49a33}.field input[type=password],.field input.has-reveal{padding-right:4.5rem}.pw-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:700;position:absolute;top:50%;right:.375rem;transform:translateY(-50%)}.pw-toggle:hover{color:var(--ink);background:var(--line)}.auth-submit{justify-content:center;width:100%;margin-top:.5rem}.auth-status{min-height:1.5rem;margin-top:1rem;font-size:.9375rem;font-weight:500}.auth-status[data-kind=bad]{color:var(--loss)}.auth-status[data-kind=ok]{color:var(--win)}.auth-status[data-kind=busy]{color:var(--muted)}.auth-switch{color:var(--muted);text-align:center;margin-top:1.5rem}.auth-switch a{color:var(--sage);font-weight:700}.field-link{color:var(--sage);font-size:.8125rem;font-weight:600;text-decoration:none}.field-link:hover{text-underline-offset:.1875rem;text-decoration:underline}.auth-legal{color:var(--faint);text-align:center;margin-top:.875rem;font-size:.8125rem}.auth-legal a{color:var(--muted)}.auth-note{background:var(--raise);color:var(--faint);border-radius:.75rem;gap:.625rem;margin-top:2rem;padding:.875rem 1rem;font-size:.8125rem;display:flex}.auth-note svg{width:1rem;height:1rem;color:var(--sage);flex:none;margin-top:.125rem}@keyframes rise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}.landing-hero .hero-visual,.showcase{animation:rise .7s var(--ease) 50ms both}.can-reveal .reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(1.5rem)}.can-reveal .reveal.shown,.can-reveal .feature-copy.reveal{opacity:1;transform:none}.can-reveal .feature-copy.reveal>*{opacity:0;transition:opacity .6s var(--ease-out) calc(var(--i,0) * 70ms), transform .6s var(--ease-out) calc(var(--i,0) * 70ms);transform:translateY(1rem)}.can-reveal .feature-copy.reveal.shown>*{opacity:1;transform:none}.feature-copy>:nth-child(2){--i:1}.feature-copy>:nth-child(3){--i:2}.feature-copy>:nth-child(4){--i:3}.feature-copy>:nth-child(5){--i:4}.can-reveal .feature-visual.reveal{transition-delay:.1s;transform:translateY(1.5rem)scale(.96)}.can-reveal .feature-visual.reveal.shown{transform:none}.screen{transition:transform .4s var(--ease), box-shadow .4s var(--ease)}.feature-visual .screen:hover,.showcase .screen:hover{transform:translateY(-.25rem);box-shadow:0 2.5rem 5rem -1.5rem #000000b3}.point{transition:border-color .2s var(--ease), transform .3s var(--ease)}.point:hover{border-color:var(--line-2);transform:translateY(-.125rem)}.more svg{transition:transform .2s var(--ease)}.more:hover svg,.next-feature:hover svg{transform:translate(.25rem)}.next-feature svg{transition:transform .2s var(--ease)}@media (prefers-reduced-motion:reduce){.float-chip{animation:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.prose{max-width:44rem;color:var(--muted);margin:3.5rem auto 4rem;font-size:1.0625rem}.prose h1{color:var(--ink);letter-spacing:-.04em;font-size:clamp(2.25rem,1.5rem + 2.5vw,3.25rem);font-weight:800;line-height:1.05}.prose-date{color:var(--faint);margin:.75rem 0 2rem;font-size:.875rem}.prose h2{color:var(--ink);letter-spacing:-.02em;margin:2.25rem 0 .75rem;font-size:1.375rem;font-weight:700}.prose p{text-wrap:pretty;margin:0 0 1rem}.prose ul{gap:.5rem;margin:0 0 1rem;padding-left:1.25rem;display:grid}.prose b{color:var(--ink);font-weight:600}.prose a{color:var(--sage)}.lic{border-collapse:collapse;width:100%;margin:1.5rem 0;font-size:.9375rem}.lic th{text-align:left;color:var(--faint);text-transform:uppercase;letter-spacing:.06em;padding:0 .75rem .5rem 0;font-size:.75rem}.lic td{border-top:1px solid var(--line);vertical-align:top;padding:.75rem .75rem .75rem 0}@media (width<=40em){.lic thead{display:none}.lic td{border:0;padding:.125rem 0;display:block}.lic tr{border-top:1px solid var(--line);padding:.75rem 0;display:block}}.tm-card{background:#f47a6814;border:1px solid #f47a6873;border-radius:.875rem;gap:.5rem;padding:.875rem 1rem;display:grid}.tm-h{color:var(--loss);font-weight:700}.tm-h b{color:var(--loss)}.tm-row{color:var(--muted);align-items:center;gap:.5rem;font-size:.9375rem;display:flex}.tm-row b{color:var(--ink)}.tm-train{grid-template-columns:9rem 1fr;align-items:center;gap:1rem;margin-top:1rem;display:grid}.tm-side{gap:.375rem;display:grid}.tm-side small{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.tm-side strong{font-size:1.125rem;line-height:1.2}.tm-ok{color:var(--win);font-weight:700}.tm-next{color:var(--muted);font-size:.875rem}.bm-weeks{grid-template-columns:repeat(12,1fr);align-items:end;gap:.25rem;height:4rem;margin-bottom:1rem;display:grid}.bm-weeks i{background:#1baca6;border-radius:.1875rem .1875rem 0 0}.bm-item{background:var(--bg);border-radius:.875rem;grid-template-columns:8rem 1fr;align-items:center;gap:1rem;padding:.75rem;display:grid}.bm-item strong{font-size:1.375rem;font-weight:800;display:block}.bm-item em{color:#1baca6;font-style:normal}.bm-item small{color:var(--muted);font-size:.875rem;display:block}.auth-status a{color:var(--sage)}.fine a{color:var(--muted)}
