@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/plus-jakarta-sans-cyrillic-ext-wght-normal-lLTsRRxN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f6f1ea;--paper-2:#eee6da;--card:#fffdf9;--ink:#1d1a17;--ink-2:#4a433c;--muted:#857b70;--line:#e3d9cb;--red:#e2202d;--red-deep:#b3121c;--red-soft:#fbe5e3;--gold:#d6b06a;--night:#141010;--night-2:#1e1817;--night-3:#2a2220;--night-line:#3a302c;--night-ink:#f4ede6;--night-muted:#a99d93;--display:"Bricolage Grotesque Variable", "Plus Jakarta Sans Variable", ui-sans-serif, sans-serif;--body:"Plus Jakarta Sans Variable", ui-sans-serif, system-ui, sans-serif;--r:22px;--r-sm:14px;--sh-1:0 1px 2px #1d1a170d, 0 3px 10px #1d1a170d;--sh-2:0 2px 4px #1d1a170a, 0 18px 40px -14px #1d1a1738;--sh-3:0 4px 10px #1d1a170f, 0 40px 80px -24px #1d1a1761;--ease:cubic-bezier(.2, .8, .2, 1);--top:68px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body.px{font-family:var(--body);color:var(--ink);background:radial-gradient(1100px 600px at 85% -10%, #e2202d17, transparent 60%), radial-gradient(900px 500px at -10% 30%, #d6b06a1f, transparent 60%), var(--paper);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}body.px:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(#1d1a1712 1px,#0000 1px);background-size:22px 22px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 70%);mask-image:linear-gradient(#000,#0000 70%)}body.px>*{z-index:1;position:relative}.px-sprite{position:absolute}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}svg{flex:none;width:1.15em;height:1.15em}h1,h2,h3{font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:650;line-height:1.05}p{margin:0}b{font-weight:700}em{color:var(--red);font-style:normal}.px-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-size:.74rem;font-weight:700}.px-lead{color:var(--ink-2);max-width:60ch;font-size:clamp(1.02rem,.95rem + .3vw,1.18rem)}.px-rise{animation:px-rise .9s var(--ease) both;animation-delay:calc(var(--d,0) * 90ms)}@keyframes px-rise{0%{opacity:0;transform:translateY(22px)scale(.985)}}.px-top{z-index:30;height:var(--top);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);background:#f6f1ead1;border-bottom:1px solid #e3d9cbb3;justify-content:space-between;align-items:center;gap:16px;padding:0 clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.px-brand{align-items:center;gap:12px;display:flex}.px-brand img{width:40px;height:auto}.px-brand span{line-height:1.15;display:grid}.px-brand b{font-family:var(--display);letter-spacing:-.01em;font-size:1.05rem}.px-brand small{color:var(--muted);letter-spacing:.04em;font-size:.72rem}.px-top__progress{color:var(--ink-2);align-items:center;gap:12px;font-size:.82rem;font-weight:600;display:flex}.px-top__progress i{background:var(--paper-2);border-radius:99px;width:clamp(80px,14vw,180px);height:8px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #1d1a171f}.px-top__progress i:after{content:"";width:var(--p);border-radius:inherit;background:linear-gradient(90deg, var(--red-deep), var(--red));animation:px-grow 1.2s var(--ease) both;position:absolute;inset:0 auto 0 0}@keyframes px-grow{0%{width:0}}.px-notice{background:var(--ink);color:#fff;width:fit-content;max-width:calc(100% - 32px);box-shadow:var(--sh-2);border-radius:99px;margin:16px auto 0;padding:10px 18px;font-size:.88rem}.px-btn{--bg:var(--card);border:1px solid var(--line);background:var(--bg);min-height:48px;color:var(--ink);font:700 .95rem/1 var(--body);cursor:pointer;transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .2s;box-shadow:var(--sh-1);border-radius:99px;justify-content:center;align-items:center;gap:10px;padding:0 22px;display:inline-flex}.px-btn:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}.px-btn:active{transform:translateY(0)scale(.98)}.px-btn--primary{color:#fff;background:linear-gradient(180deg, #ee3340, var(--red) 55%, var(--red-deep));border-color:#0000;box-shadow:inset 0 1px #ffffff59,0 10px 24px -8px #e2202db3}.px-btn--primary:hover{box-shadow:inset 0 1px #ffffff59,0 16px 32px -10px #e2202dcc}.px-btn--ghost{box-shadow:none;background:0 0}.px-btn--big{min-height:58px;padding:0 30px;font-size:1.02rem}.px-btn[disabled]{opacity:.35;pointer-events:none}.px-link{color:var(--red);align-items:center;gap:8px;font-size:.92rem;font-weight:700;display:inline-flex}.px-link:hover{text-decoration:underline}.px-pill{background:var(--paper-2);color:var(--ink-2);white-space:nowrap;border-radius:99px;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:700;display:inline-flex}.px-meta{color:var(--muted);align-items:center;gap:8px;font-size:.88rem;display:inline-flex}[data-tilt]{--rx:0deg;--ry:0deg;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .5s var(--ease), box-shadow .4s var(--ease);transform-style:preserve-3d;will-change:transform}[data-tilt].is-tilting{transition:transform 80ms linear, box-shadow .4s var(--ease)}.px-home{max-width:1320px;margin:0 auto;padding:0 clamp(16px,4vw,48px) 48px}.px-hero{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,5vw,72px);padding:clamp(40px,7vw,96px) 0 clamp(36px,5vw,64px);display:grid}.px-hero h1{margin:14px 0 22px;font-size:clamp(2.5rem,1.3rem + 4vw,5rem)}.px-hero__cta{flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:30px;display:flex}.px-hero__ring{background:linear-gradient(160deg, var(--card), #f9f3eb);border:1px solid var(--line);box-shadow:var(--sh-3);border-radius:30px;padding:34px 30px 28px}.px-ring{aspect-ratio:1;width:min(230px,70%);margin:0 auto 22px;position:relative}.px-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.px-ring circle{fill:none;stroke-width:11px}.px-ring__track{stroke:var(--paper-2)}.px-ring__bar{stroke:var(--red);stroke-linecap:round;stroke-dasharray:calc(var(--p) * 1) 100;animation:px-ring 1.6s var(--ease) both .3s;filter:drop-shadow(0 4px 10px #e2202d66)}@keyframes px-ring{0%{stroke-dasharray:0 100}}.px-ring__label{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.px-ring__label b{font-family:var(--display);letter-spacing:-.04em;font-size:3.1rem;line-height:1}.px-ring__label span{color:var(--muted);font-size:.8rem;font-weight:600}.px-ring__legend{gap:8px;margin:0;padding:0;list-style:none;display:grid}.px-ring__legend li{background:#eee6da8c;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;font-weight:600;display:flex}.px-ring__legend b{font-variant-numeric:tabular-nums;margin-left:auto}.px-ring__legend i{background:var(--red);border-radius:3px;width:10px;height:10px}.px-ring__legend .is-dark i{background:var(--night)}.px-ring__legend .is-key i{background:var(--gold)}.px-track{padding:clamp(36px,5vw,64px) 0}.px-track__head{gap:10px;max-width:760px;margin-bottom:30px;display:grid}.px-track__head h2{font-size:clamp(2rem,1.4rem + 2.2vw,3.3rem)}.px-track__head p:last-child{color:var(--ink-2);font-size:1.05rem}.px-track--dark{color:var(--night-ink);background:radial-gradient(800px 400px at 90% 0%, #e2202d38, transparent 60%), radial-gradient(600px 400px at 0% 100%, #d6b06a1a, transparent 60%), var(--night);box-shadow:var(--sh-3);border-radius:36px;margin:0 calc(-1*clamp(16px,4vw,48px));padding-inline:clamp(16px,4vw,48px)}.px-track--dark .px-track__head p:last-child{color:var(--night-muted)}.px-track--dark .px-kicker{color:#ff5a63}.px-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.px-tile{border-radius:var(--r);background:var(--card);border:1px solid var(--line);height:100%;min-height:250px;box-shadow:var(--sh-2);isolation:isolate;flex-direction:column;gap:10px;padding:24px 24px 20px;display:flex;position:relative;overflow:hidden}.px-tile:before{content:"";z-index:-1;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%), #e2202d1a, transparent 45%);opacity:0;transition:opacity .4s;position:absolute;inset:0}a.px-tile:hover{box-shadow:var(--sh-3)}a.px-tile:hover:before{opacity:1}.px-tile__num{font-family:var(--display);letter-spacing:-.06em;color:#0000;-webkit-text-stroke:1.5px var(--line);font-size:4.4rem;font-weight:800;line-height:.8;position:absolute;top:18px;right:18px;transform:translateZ(40px)}.px-tile__state{background:var(--paper-2);width:fit-content;color:var(--ink-2);border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:.74rem;font-weight:700;display:inline-flex;transform:translateZ(30px)}.px-tile h3{margin-top:18px;font-size:1.45rem;transform:translateZ(24px)}.px-tile p{color:var(--ink-2);font-size:.93rem}.px-tile__foot{color:var(--muted);align-items:center;gap:6px;margin-top:auto;padding-top:10px;font-size:.8rem;font-weight:600;display:inline-flex}.px-tile.is-open{border-color:var(--red);box-shadow:0 0 0 4px #e2202d1f, var(--sh-3)}.px-tile.is-open .px-tile__state{background:var(--red);color:#fff;animation:2.2s ease-in-out infinite px-pulse}@keyframes px-pulse{50%{box-shadow:0 0 0 7px #e2202d29}}.px-tile.is-done .px-tile__state{color:#15803d;background:#e3f3e7}.px-tile.is-done .px-tile__num{-webkit-text-stroke-color:#b9dcc4}.px-tile.is-locked{opacity:.62;filter:saturate(.4);cursor:not-allowed}.px-track--dark .px-tile{background:linear-gradient(170deg, var(--night-3), var(--night-2));border-color:var(--night-line);box-shadow:0 30px 60px -30px #000c}.px-track--dark .px-tile p{color:var(--night-muted)}.px-track--dark .px-tile__num{-webkit-text-stroke-color:var(--night-line)}.px-track--dark .px-tile__state{background:var(--night-line);color:var(--night-ink)}.px-track--dark .px-tile.is-done .px-tile__state{color:#6ee79a;background:#22c55e29}.px-track--dark .px-tile.is-open{border-color:#ff4553}.px-track--dark .px-tile.is-open .px-tile__state{background:var(--red);color:#fff}.px-track--dark .px-tile__foot{color:var(--night-muted)}.px-finale{background:var(--card);border:1px dashed var(--gold);box-shadow:var(--sh-2);border-radius:30px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;margin-top:clamp(36px,5vw,64px);padding:30px clamp(20px,3vw,40px);display:grid}.px-finale h2{margin:6px 0 8px;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.4rem)}.px-finale p:last-child{color:var(--ink-2);max-width:60ch}.px-finale__key{background:linear-gradient(145deg, #2a2220, var(--night));width:88px;height:88px;color:var(--gold);box-shadow:var(--sh-3), inset 0 1px 0 #ffffff14;border-radius:26px;place-items:center;display:grid}.px-finale__key svg{width:44px;height:44px}.px-finale__key.is-ready{animation:2.4s ease-in-out infinite px-key}@keyframes px-key{50%{transform:perspective(600px)rotateY(18deg)translateY(-4px)}}.px-foot{text-align:center;color:var(--muted);padding:48px 0 0;font-size:.8rem}.px-course{grid-template-columns:300px minmax(0,1fr);gap:clamp(20px,3vw,44px);max-width:1440px;margin:0 auto;padding:28px clamp(16px,3vw,40px) 0;display:grid}.px-outline{top:calc(var(--top) + 20px);max-height:calc(100vh - var(--top) - 40px);align-self:start;position:sticky;overflow:auto}.px-outline__toggle{display:none}.px-outline__body{border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--sh-1);background:#fffdf9bf;padding:18px}.px-outline__home{color:var(--red);align-items:center;gap:8px;margin-bottom:14px;font-size:.88rem;font-weight:700;display:inline-flex}.px-outline__track{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:14px 0 8px;font-size:.7rem;font-weight:800}.px-outline ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.px-outline li>a,.px-outline li>span{color:var(--ink-2);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:.88rem;font-weight:600;line-height:1.3;display:flex}.px-outline li>a:hover{background:var(--paper-2)}.px-outline li i{background:var(--paper-2);border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:.75rem;font-style:normal;font-weight:800;display:grid}.px-outline li i svg{width:14px;height:14px}.px-outline .is-done i{color:#15803d;background:#e3f3e7}.px-outline .is-locked{opacity:.5}.px-outline .is-current>a{background:var(--ink);color:#fff}.px-outline .is-current i{background:var(--red);color:#fff}.px-player{min-width:0;padding-bottom:110px}.px-player__head{gap:10px;margin-bottom:26px;display:grid}.px-player__head h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.6rem)}.px-steps{gap:6px;margin-top:10px;display:flex}.px-steps button{cursor:pointer;background:0 0;border:0;flex:1;align-items:center;height:28px;padding:0;display:grid}.px-steps button[disabled]{cursor:default}.px-steps i{background:var(--paper-2);border-radius:99px;height:6px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #1d1a171a}.px-steps i:after{content:"";transform-origin:0;background:var(--red);border-radius:inherit;transition:transform .6s var(--ease);position:absolute;inset:0;transform:scaleX(0)}.px-steps .is-seen i:after{opacity:.45;transform:scaleX(1)}.px-steps .is-on i:after{opacity:1;transform:scaleX(1)}.px-stage{position:relative}.px-step{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);align-items:center;gap:clamp(22px,4vw,56px);min-height:480px;display:grid}.px-step[hidden]{display:none}.px-step.is-in-next{animation:px-in-next .6s var(--ease) both}.px-step.is-in-prev{animation:px-in-prev .6s var(--ease) both}@keyframes px-in-next{0%{opacity:0;transform:translate(48px)}}@keyframes px-in-prev{0%{opacity:0;transform:translate(-48px)}}.px-step--text{grid-template-columns:minmax(0,1fr);max-width:760px;min-height:380px}.px-step__count{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px;font-size:.78rem;font-weight:700}.px-step__text h2{margin-bottom:16px;font-size:clamp(1.7rem,1.2rem + 1.6vw,2.6rem)}.px-step__body{color:var(--ink-2);font-size:1.08rem}.px-step--text .px-step__body{font-size:1.2rem}.px-points{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.px-points li{align-items:flex-start;gap:12px;font-size:.98rem;display:flex}.px-points svg{background:var(--red-soft);width:24px;height:24px;color:var(--red);border-radius:8px;margin-top:1px;padding:5px}.px-why{border-radius:var(--r-sm);background:linear-gradient(135deg, #fff, var(--red-soft));box-shadow:var(--sh-1);border:1px solid #f6cfcb;margin-top:24px;padding:18px 20px}.px-why b{color:var(--red-deep);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:4px;font-size:.8rem;display:inline-flex}.px-why p{color:var(--ink);font-size:.98rem}.px-shot{--rx:2deg;--ry:-7deg;margin:0}.px-shot:hover{--rx:0deg;--ry:0deg}.px-shot__device{background:#fff;border:1px solid #1d1a171f;border-radius:18px;overflow:hidden;box-shadow:inset 0 1px #fff9,0 2px 6px #1d1a170f,0 30px 60px -20px #1d1a1759,0 60px 120px -40px #1d1a174d}.px-shot__bar{background:#f1ece5;border-bottom:1px solid #e3dbd0;align-items:center;gap:6px;padding:10px 14px;display:flex}.px-shot__bar i{background:#d9cfc3;border-radius:50%;width:10px;height:10px}.px-shot__bar i:first-child{background:#ef6b5f}.px-shot__bar i:nth-child(2){background:#f2bd4f}.px-shot__bar i:nth-child(3){background:#5fc466}.px-shot__bar span{color:var(--muted);background:#fff;border-radius:99px;margin:0 auto;padding:3px 14px;font-size:.72rem;font-weight:600}.px-shot__img{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block;position:relative}.px-shot__zoom{color:#fff;font:700 .76rem/1 var(--body);opacity:0;transition:.3s var(--ease);background:#1d1a17c7;border-radius:99px;align-items:center;gap:6px;padding:7px 12px;display:inline-flex;position:absolute;bottom:12px;right:12px;transform:translateY(6px)}.px-shot__img:hover .px-shot__zoom,.px-shot__img:focus-visible .px-shot__zoom{opacity:1;transform:none}.px-shot figcaption{text-align:center;color:var(--muted);margin-top:14px;font-size:.82rem}.px-shot--phone{justify-items:center;display:grid}.px-shot--phone .px-shot__device{background:linear-gradient(160deg,#2b2523,#0f0c0b);border:0;border-radius:44px;width:min(330px,100%);padding:12px;position:relative}.px-shot--phone .px-shot__device:before{content:"";z-index:2;background:#0b0908;border-radius:99px;width:84px;height:22px;margin-left:-42px;position:absolute;top:20px;left:50%}.px-shot--phone .px-shot__img{border-radius:34px;max-height:640px;overflow:hidden}.px-shot--phone .px-shot__img img{object-fit:cover;object-position:top;width:100%}.px-step--recap{grid-template-columns:minmax(0,1fr);justify-items:center}.px-recap{background:var(--card);border:1px solid var(--line);width:min(720px,100%);box-shadow:var(--sh-3);text-align:center;border-radius:30px;padding:clamp(28px,4vw,48px)}.px-recap h2{margin-bottom:26px;font-size:clamp(1.7rem,1.2rem + 1.6vw,2.5rem)}.px-recap ol{text-align:left;gap:10px;margin:0 0 30px;padding:0;list-style:none;display:grid}.px-recap li{background:var(--paper);animation:px-rise .7s var(--ease) both;animation-delay:calc(var(--d) * .11s + .15s);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;font-weight:600;display:flex}.px-recap li span{background:var(--red);color:#fff;width:32px;height:32px;font-family:var(--display);border-radius:10px;flex:none;place-items:center;font-weight:800;display:grid}.px-controls{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:var(--sh-3);background:#fffdf9db;border-radius:99px;align-items:center;gap:14px;padding:8px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.px-controls__hint{color:var(--muted);padding:0 6px;font-size:.78rem;font-weight:600}.px-controls [hidden]{display:none}body.px--dark{color:var(--night-ink);background:radial-gradient(1000px 600px at 90% -10%, #e2202d33, transparent 60%), radial-gradient(800px 500px at -10% 40%, #d6b06a14, transparent 60%), var(--night)}body.px--dark:before{background-image:radial-gradient(#ffffff0d 1px,#0000 1px)}.px--dark .px-top{border-bottom-color:var(--night-line);background:#141010cc}.px--dark .px-brand small,.px--dark .px-top__progress{color:var(--night-muted)}.px--dark .px-top__progress i{background:var(--night-3)}.px--dark .px-outline__body{border-color:var(--night-line);background:#1e1817cc}.px--dark .px-outline li>a,.px--dark .px-outline li>span{color:var(--night-muted)}.px--dark .px-outline li>a:hover,.px--dark .px-outline li i{background:var(--night-3)}.px--dark .px-outline .is-done i{color:#6ee79a;background:#22c55e29}.px--dark .px-outline .is-current>a{background:var(--night-ink);color:var(--night)}.px--dark .px-kicker{color:#ff5a63}.px--dark .px-step__body,.px--dark .px-points li{color:#d9cec4}.px--dark .px-step__count{color:var(--night-muted)}.px--dark .px-steps i{background:var(--night-3)}.px--dark .px-points svg{color:#ff6b73;background:#e2202d2e}.px--dark .px-why{background:linear-gradient(135deg, var(--night-2), #e2202d24);border-color:#e2202d4d}.px--dark .px-why b{color:#ff6b73}.px--dark .px-why p{color:var(--night-ink)}.px--dark .px-shot__device{border-color:var(--night-line);box-shadow:0 30px 70px -20px #000000e6,0 0 0 1px #ffffff0a}.px--dark .px-shot__bar{border-bottom-color:var(--night-line);background:#221b19}.px--dark .px-shot__bar span{background:var(--night-3);color:var(--night-muted)}.px--dark .px-shot figcaption{color:var(--night-muted)}.px--dark .px-recap{background:var(--night-2);border-color:var(--night-line)}.px--dark .px-recap li{background:var(--night-3)}.px--dark .px-controls{border-color:var(--night-line);background:#1e1817db}.px--dark .px-btn{background:var(--night-2);color:var(--night-ink);border-color:var(--night-line)}.px--dark .px-btn--primary{background:linear-gradient(180deg, #ee3340, var(--red) 55%, var(--red-deep));color:#fff;border-color:#0000}.px--dark .px-btn--ghost{background:0 0}.px--dark .px-notice{background:var(--night-ink);color:var(--night)}.px-finish,.px-login{max-width:1100px;margin:0 auto;padding:clamp(36px,6vw,80px) clamp(16px,4vw,48px) 64px}.px-finish__intro{text-align:center;justify-items:center;gap:14px;display:grid}.px-finish__intro h1{font-size:clamp(2.4rem,1.3rem + 4vw,4.6rem)}.px-keycard{width:min(640px,100%);color:var(--night-ink);background:radial-gradient(500px 260px at 100% 0%, #e2202d59, transparent 60%), radial-gradient(400px 260px at 0% 100%, #d6b06a2e, transparent 60%), linear-gradient(160deg, #2a2220, var(--night));border-radius:32px;margin:40px auto 0;padding:clamp(28px,4vw,44px);position:relative;overflow:hidden;box-shadow:0 50px 100px -30px #141010b3,inset 0 1px #ffffff14}.px-keycard:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff1f 45%,#0000 60%);animation:3.5s ease-in-out 1s infinite px-shine;position:absolute;inset:0;transform:translate(-100%)}@keyframes px-shine{60%,to{transform:translate(100%)}}.px-keycard__chip{background:linear-gradient(145deg, #f3d79c, var(--gold) 50%, #9f7c3b);color:#2a1f10;border-radius:20px;place-items:center;width:64px;height:64px;margin-bottom:26px;display:grid;transform:translateZ(40px);box-shadow:0 12px 26px -8px #d6b06a99,inset 0 1px #ffffff80}.px-keycard__chip svg{width:32px;height:32px}.px-keycard dl{gap:14px;margin:0;display:grid}.px-keycard dl>div{border-bottom:1px solid var(--night-line);gap:4px;padding-bottom:14px;display:grid}.px-keycard dt{letter-spacing:.14em;text-transform:uppercase;color:var(--night-muted);font-size:.72rem;font-weight:700}.px-keycard dd{align-items:center;gap:10px;margin:0;display:flex}.px-keycard code{color:#fff;word-break:break-all;font:600 clamp(1.05rem,.9rem + .7vw,1.45rem)/1.3 ui-monospace,SF Mono,Menlo,monospace}.px-keycard__note{color:var(--night-muted);margin-top:18px;font-size:.9rem}.px-keycard__note code{font-size:.9rem}.px-keycard__actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.px-keycard .px-btn--ghost{color:var(--night-ink);border-color:var(--night-line)}.px-copy{border:1px solid var(--night-line);background:var(--night-3);width:40px;height:40px;color:var(--night-ink);cursor:pointer;border-radius:12px;flex:none;place-items:center;margin-left:auto;transition:all .2s;display:grid}.px-copy:hover{background:var(--red);border-color:var(--red)}.px-copy.is-copied{background:#15803d;border-color:#15803d}.px-next{background:var(--card);border:1px solid var(--line);width:min(640px,100%);box-shadow:var(--sh-2);border-radius:26px;margin:40px auto 0;padding:clamp(24px,3vw,36px)}.px-next h2{margin-bottom:18px;font-size:1.6rem}.px-next ol{color:var(--ink-2);gap:10px;margin:0 0 18px;padding-left:1.2em;display:grid}.px-next p{color:var(--ink-2);margin-bottom:18px}.px-login{min-height:calc(100vh - var(--top));place-items:center;display:grid}.px-login__card{background:var(--card);border:1px solid var(--line);width:min(460px,100%);box-shadow:var(--sh-3);border-radius:30px;gap:12px;padding:clamp(28px,4vw,44px);display:grid}.px-login__card h1{font-size:2.4rem}.px-login__card>p{color:var(--ink-2)}.px-login__card .px-keycard__chip{margin-bottom:6px}.px-form{gap:14px;margin:10px 0 6px;display:grid}.px-form label{gap:6px;font-size:.85rem;font-weight:700;display:grid}.px-form input{border:1px solid var(--line);min-height:50px;font:500 1rem var(--body);color:var(--ink);background:#fff;border-radius:14px;outline:none;padding:0 16px;transition:border-color .2s,box-shadow .2s}.px-form input:focus{border-color:var(--red);box-shadow:0 0 0 4px #e2202d24}.px-error{color:var(--red-deep);font-size:.88rem;font-weight:600}.px-zoom{background:0 0;border:0;max-width:96vw;max-height:94vh;padding:0;overflow:visible}.px-zoom::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#141010d1}.px-zoom img{max-width:96vw;max-height:90vh;animation:px-rise .4s var(--ease) both;border-radius:14px;box-shadow:0 40px 100px #0009}.px-zoom__close{cursor:pointer;width:44px;height:44px;box-shadow:var(--sh-2);z-index:2;background:#fff;border:0;border-radius:50%;font-size:1.6rem;line-height:1;position:absolute;top:-14px;right:-14px}@media (width<=1060px){.px-course{grid-template-columns:minmax(0,1fr);padding-top:16px}.px-outline{max-height:none;position:static}.px-outline__toggle{border:1px solid var(--line);background:var(--card);width:100%;min-height:48px;font:700 .92rem var(--body);color:inherit;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.px--dark .px-outline__toggle{background:var(--night-2);border-color:var(--night-line)}.px-outline__toggle svg{transition:transform .3s;transform:rotate(90deg)}.px-outline.is-open .px-outline__toggle svg{transform:rotate(-90deg)}.px-outline__body{margin-top:8px;display:none}.px-outline.is-open .px-outline__body{display:block}.px-step,.px-step--text{grid-template-columns:minmax(0,1fr);min-height:0}.px-shot{--rx:0deg;--ry:0deg}}@media (width<=820px){.px-hero{grid-template-columns:minmax(0,1fr)}.px-finale{grid-template-columns:minmax(0,1fr);justify-items:start}.px-controls__hint,.px-top__progress span{display:none}.px-controls{justify-content:space-between;left:16px;right:16px;transform:none}.px-tile{min-height:0}.px-brand small{display:none}}.px-outline{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.px--dark .px-outline{scrollbar-color:var(--night-line) transparent}.px-ring[style*="--p: 0;"] .px-ring__bar{opacity:0}.px-btn:focus-visible,.px-copy:focus-visible,.px-steps button:focus-visible,.px-shot__img:focus-visible{outline-offset:3px;outline:3px solid #e2202d73}.px-btn:focus:not(:focus-visible){outline:none}.px-shot--phone .px-shot__device{padding:34px 12px 12px}.px-shot--phone .px-shot__device:before{width:70px;height:14px;margin-left:-35px;top:11px}.px-demo-note{color:#3b2a00;background:repeating-linear-gradient(-45deg,#0000000b 0 12px,#0000 12px 24px),linear-gradient(90deg,#ffd65a,#ffc23d);border-radius:18px;align-items:center;gap:16px;width:min(640px,100%);margin:34px auto 0;padding:16px 20px;display:flex;box-shadow:0 14px 30px -14px #ffbe3cb3}.px-demo-note span{color:#ffd65a;letter-spacing:.12em;text-transform:uppercase;background:#1b1306;border-radius:99px;flex:none;padding:6px 12px;font-size:.7rem;font-weight:800}.px-demo-note p{font-size:.93rem;line-height:1.5}@media (width<=640px){.px-demo-note{flex-direction:column;align-items:flex-start}}
