.xp{--xp-bg:#f4f6fb;--xp-panel:#fff;--xp-ink:#0b0d12;--xp-text-2:#2b303c;--xp-muted:#4a505c;--xp-line:#e1e5ee;--xp-grid:#e1e5ee;--xp-axis:#c9cfdc;--xp-accent:#2d5bff;--xp-accent-strong:#1a3fd6;--xp-accent-soft:#eef2ff;--xp-accent-light:#a8bbff;--xp-warm:#ff8a4c;--xp-warm-soft:#fff3ec;--xp-soft:#eef3ff;--xp-soft-line:#bfd0ff;--xp-soft-ink:#1a3fd6;--fp-k3:#1a3fd6;--fp-k2:#2d5bff;--fp-k1:#6f8fff;--fp-k0:#b4c4ff;--fp-presumed:#d9d3f5;--fp-missed:#ff8a4c;--fp-unseen:#e8e7e2;--heat-0:#eceef3;--heat-1:#c9d5ff;--heat-2:#8ea6ff;--heat-3:#2d5bff;--heat-4:#1a3fd6;--ok:#147a4b;--ok-soft:#e8f5ee;--ko:#b3261e;--ko-soft:#fceceb;--tol:#b25e09;--tol-soft:#fdf1e3;--track:#e8e7e2;--es:#d4642a;--ca:#b8860b;--en:#2f6fb5;--de:#4a4a52;--hero-bg:linear-gradient(180deg, #f3f6ff 0%, #fff 100%);--hero-line:#dbe3fb;--hero-shadow:0 1px 2px #1a3fd60d, 0 14px 32px -20px #1a3fd647;--btn-bg:linear-gradient(180deg, #3d67ff 0%, #2449e6 100%);--btn-bg-hover:linear-gradient(180deg, #2f59f5 0%, #1a3fd6 100%);--btn-shadow:inset 0 1px 0 #ffffff2e, 0 1px 2px #1a3fd640, 0 6px 16px -6px #1a3fd673;--xp-display:"Space Grotesk", system-ui, sans-serif;--xp-body:"Figtree", system-ui, sans-serif;color:var(--xp-ink);font-family:var(--xp-body)}.xp *,.xp :before,.xp :after{box-sizing:border-box}.xp-hero{background:var(--hero-bg);border-bottom:1px solid var(--hero-line)}.xp-hero-in{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:48px;padding-top:40px;padding-bottom:64px;display:grid}.xp-hero h1{font-family:var(--xp-display);letter-spacing:-.04em;margin:0;font-size:clamp(36px,4.6vw,58px);font-weight:700;line-height:1.02}.xp-hero h1 em{color:var(--xp-accent);font-style:normal}.xp-hero .xp-lead{max-width:540px;font-size:19px}.xp-hero-text{flex-direction:column;gap:22px;display:flex}.xp-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.xp-fact{background:var(--xp-panel);border:1px solid var(--hero-line);border-radius:14px;flex-direction:column;flex:120px;min-width:0;padding:10px 14px;display:flex}.xp-fact b{font-family:var(--xp-display);letter-spacing:-.02em;color:var(--xp-accent-strong);font-size:24px}.xp-fact span{color:var(--xp-muted);font-size:13px;line-height:1.3}.xp-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--xp-accent);font-size:13px;font-weight:700}.xp-lead{color:var(--xp-text-2);margin:0;font-size:18px;line-height:1.55}.xp-note{color:var(--xp-muted);margin:0;font-size:14px}.xp p{margin:0}.xp-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.xp-btn{background:var(--btn-bg);color:#fff;min-height:52px;box-shadow:var(--btn-shadow);font-family:var(--xp-display);border-radius:14px;justify-content:center;align-items:center;padding:14px 26px;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.xp-btn:hover{background:var(--btn-bg-hover);color:#fff}.xp-pill{background:var(--xp-soft);border:1px solid var(--xp-soft-line);min-height:40px;color:var(--xp-soft-ink);border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.xp-pill:hover{color:var(--xp-soft-ink);background:#e2eaff}.xp-toc{scrollbar-width:none;gap:8px;padding-top:28px;padding-bottom:4px;display:flex;overflow-x:auto}.xp-toc::-webkit-scrollbar{display:none}.xp-toc a{background:var(--xp-panel);border:1px solid var(--xp-line);color:var(--xp-text-2);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:8px;padding:7px 14px 7px 8px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.xp-toc a:hover{border-color:var(--xp-soft-line);background:var(--xp-soft);color:var(--xp-soft-ink)}.xp-toc a span{background:var(--xp-accent-soft);width:22px;height:22px;color:var(--xp-accent-strong);font-size:12px;font-family:var(--xp-display);border-radius:999px;place-items:center;display:inline-grid}.xp-sec{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:56px;padding-top:72px;padding-bottom:72px;scroll-margin-top:16px;display:grid}.xp-sec.xp-flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.xp-sec.xp-flip>.xp-text{order:2}.xp-sec.xp-wide{grid-template-columns:minmax(0,1fr);gap:28px}.xp-sec.xp-wide>.xp-text{max-width:760px}.xp-tint{background:var(--xp-bg)}.xp-text{flex-direction:column;gap:16px;display:flex}.xp-text h2{font-family:var(--xp-display);letter-spacing:-.03em;margin:0;font-size:clamp(28px,3.4vw,42px);font-weight:700;line-height:1.08}.xp-points{flex-direction:column;gap:10px;margin:4px 0 0;padding:0;list-style:none;display:flex}.xp-points li{color:var(--xp-text-2);padding-left:26px;font-size:16px;line-height:1.45;position:relative}.xp-points li:before{content:"";background:var(--xp-accent);border-radius:3px;width:10px;height:10px;position:absolute;top:7px;left:4px}.xp-points b{color:var(--xp-ink)}.xp-source{color:var(--xp-muted);font-size:13px}.xp-source code{background:var(--xp-accent-soft);color:var(--xp-accent-strong);border-radius:6px;padding:1px 6px;font-size:12px}.xp-fig{background:var(--xp-panel);border:1px solid var(--xp-line);border-radius:20px;flex-direction:column;gap:16px;min-width:0;margin:0;padding:22px;display:flex;box-shadow:0 1px 2px #1414140a,0 18px 40px -28px #1a3fd640}.xp-fig-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.xp-fig-head>div{flex-direction:column;gap:2px;min-width:0;display:flex}.xp-fig-head strong{font-family:var(--xp-display);letter-spacing:-.01em;font-size:18px}.xp-fig-head small{color:var(--xp-muted);font-size:13px}.xp-tag{background:var(--xp-accent-soft);color:var(--xp-accent-strong);letter-spacing:.02em;border-radius:999px;flex:none;padding:4px 10px;font-size:12px;font-weight:700}.xp-tag.sim{background:var(--xp-warm-soft);color:#9a4310}.xp-fig figcaption{color:var(--xp-muted);font-size:14px;line-height:1.45}.xp-fig svg{width:100%;height:auto;display:block;overflow:visible}.xp-figs{gap:20px;min-width:0;display:grid}.xp-figs-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.xp svg text{font-family:var(--xp-body)}.xp .g-grid{stroke:var(--xp-grid);stroke-width:1px}.xp .g-axis{stroke:var(--xp-axis);stroke-width:1px}.xp .g-target{stroke:var(--xp-muted);stroke-width:1.2px;stroke-dasharray:4 4}.xp .g-tick{fill:var(--xp-muted);font-size:13px}.xp .g-lab{fill:var(--xp-ink);font-size:13px;font-weight:700}.xp .g-lab-muted{fill:var(--xp-muted);font-size:13px;font-weight:600}.xp .g-line{fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.xp .g-dash{stroke-dasharray:5 5}.xp .g-dot{stroke:var(--xp-panel);stroke-width:2px}.xp .g-big{font-family:var(--xp-display);fill:var(--xp-ink);font-weight:700}.xp-legend{color:var(--xp-text-2);flex-wrap:wrap;gap:8px 16px;font-size:13px;display:flex}.xp-legend span{align-items:center;gap:6px;display:inline-flex}.xp-legend i{border-radius:4px;flex:none;width:12px;height:12px;display:inline-block}.xp-legend i.line{border-radius:2px;width:16px;height:3px}.xp-legend i.dash{border-top:2px dashed;border-radius:0;width:16px;height:0}.xp-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.xp-tile{border:1px solid var(--xp-line);background:var(--xp-panel);border-radius:16px;flex-direction:column;gap:6px;min-width:0;padding:14px;display:flex}.xp-tile span{color:var(--xp-muted);font-size:13px;line-height:1.3}.xp-tile b{font-family:var(--xp-display);letter-spacing:-.02em;font-size:28px;line-height:1}.xp-tile b small{color:var(--xp-muted);font-size:15px;font-weight:600}.xp-tile svg{margin-top:auto}.xp-rings{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.xp-ring{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.xp-ring svg{width:84px;height:84px}.xp-ring b{font-size:13px;line-height:1.25}.xp-ring small{color:var(--xp-muted);font-size:12px;line-height:1.25}.xp-rows{flex-direction:column;gap:12px;display:flex}.xp-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;display:grid}.xp-row>span{color:var(--xp-text-2);min-width:0;font-size:14px}.xp-row>b{font-family:var(--xp-display);text-align:right;white-space:nowrap;font-size:15px}.xp-bar{background:var(--track);border-radius:999px;grid-column:1/-1;height:10px;position:relative;overflow:visible}.xp-bar>i{background:var(--xp-accent);border-radius:999px;position:absolute;top:0;bottom:0;left:0}.xp-bar>em{background:var(--xp-ink);border-radius:1px;width:2px;position:absolute;top:-4px;bottom:-4px}.xp-stack{background:var(--xp-panel);border-radius:999px;gap:2px;height:16px;display:flex;overflow:hidden}.xp-stack i{min-width:2px;height:100%;display:block}.xp-stack i:first-child{border-radius:999px 0 0 999px}.xp-stack i:last-child{border-radius:0 999px 999px 0}.xp-squares{grid-template-columns:repeat(20,minmax(0,1fr));gap:4px;display:grid}.xp-squares i{aspect-ratio:1;color:#fff;font-size:12px;font-style:normal;font-weight:700;font-family:var(--xp-display);contain:size;border-radius:5px;place-items:center;min-width:0;line-height:1;display:grid;overflow:hidden}.xp-squares .new{background:var(--xp-warm)}.xp-squares .review{background:var(--xp-accent)}.xp-squares .redo{background:var(--xp-panel);color:var(--xp-accent-strong);box-shadow:inset 0 0 0 2px var(--xp-accent-light)}.xp-squares .miss{background:var(--xp-panel);color:var(--ko);box-shadow:inset 0 0 0 2px #f2b8b4}.xp-chips{flex-wrap:wrap;gap:6px;display:flex}.xp-chip{border:1px solid var(--xp-line);color:var(--xp-text-2);background:var(--xp-panel);border-radius:999px;padding:5px 11px;font-size:13px;font-weight:600}.xp-chip.on{background:var(--xp-accent);border-color:var(--xp-accent);color:#fff}.xp-flow{flex-direction:column;gap:0;display:flex}.xp-flow-step{background:var(--xp-panel);border:1px solid var(--xp-line);border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.xp-flow-step>span{background:var(--xp-accent-soft);width:40px;height:40px;color:var(--xp-accent-strong);font-family:var(--xp-display);border-radius:12px;place-items:center;font-weight:700;display:grid}.xp-flow-step div{flex-direction:column;gap:2px;min-width:0;display:flex}.xp-flow-step div b{font-size:15px}.xp-flow-step div small{color:var(--xp-muted);font-size:13px;line-height:1.35}.xp-flow-step>em{font-style:normal;font-family:var(--xp-display);color:var(--xp-accent-strong);background:var(--xp-accent-soft);white-space:nowrap;border-radius:10px;padding:6px 10px;font-size:15px;font-weight:700}.xp-flow-step.ok>em{background:var(--ok-soft);color:var(--ok)}.xp-flow-step.last{background:var(--xp-accent);border-color:var(--xp-accent);color:#fff}.xp-flow-step.last>span{color:#fff;background:#ffffff2e}.xp-flow-step.last div small{color:#dfe6ff}.xp-flow-step.last>em{color:var(--xp-accent-strong);background:#fff}.xp-flow-arrow{border-left:2px dashed var(--xp-accent-light);height:16px;margin-left:33px}.xp-case{border:1px solid var(--xp-line);border-radius:16px;flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.xp-case-head{flex-direction:column;gap:4px;display:flex}.xp-case-head b{font-size:15px}.xp-typed{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.xp-typed code{font-family:var(--xp-body);background:var(--ko-soft);color:var(--ko);border-radius:8px;padding:3px 9px;font-size:15px;font-weight:700}.xp-typed code.ok{background:var(--ok-soft);color:var(--ok)}.xp-typed code mark{color:inherit;background:#ffd98a;border-radius:3px;padding:0 1px}.xp-verdict{border-radius:10px;padding:6px 10px;font-size:13px;font-weight:700}.xp-verdict.keep{background:var(--ok-soft);color:var(--ok)}.xp-verdict.relearn{background:var(--tol-soft);color:var(--tol)}.xp-end-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.xp-search{border:1px solid var(--xp-line);color:var(--xp-muted);border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.xp-search svg{flex:none;width:16px;height:16px}.xp-list{flex-direction:column;gap:8px;display:flex}.xp-item{border:1px solid var(--xp-line);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:12px 14px;display:grid}.xp-item>div{flex-direction:column;gap:3px;min-width:0;display:flex}.xp-item b{font-size:14px}.xp-item small{color:var(--xp-muted);font-size:13px}.xp-item small s{color:var(--ko);text-decoration-thickness:1.5px}.xp-item small strong{color:var(--ok)}.xp-attempts{justify-content:flex-end;gap:3px;display:flex}.xp-attempts i{background:var(--ok);border-radius:3px;width:10px;height:22px}.xp-attempts i.ko{background:var(--ko)}.xp-attempts i.tol{background:var(--tol)}.xp-table{border-collapse:collapse;width:100%;font-size:14px}.xp-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--xp-muted);padding:0 8px 8px;font-size:12px;font-weight:700}.xp-table td{border-top:1px solid var(--xp-line);vertical-align:middle;padding:10px 8px}.xp-table td:last-child,.xp-table th:last-child{text-align:right}.xp-prog{align-items:center;gap:8px;font-weight:700;display:flex}.xp-prog i{border-radius:999px;flex:none;width:10px;height:10px}.xp-prog small{color:var(--xp-muted);font-size:12px;font-weight:500;display:block}.xp-state{background:var(--xp-accent-soft);color:var(--xp-accent-strong);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700}.xp-state.done{background:var(--ok-soft);color:var(--ok)}.xp-state.left{background:var(--track);color:var(--xp-muted)}.xp-goals{grid-template-columns:96px repeat(14,minmax(0,1fr));align-items:center;gap:4px;font-size:13px;display:grid}.xp-goals>span{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.xp-goals i{aspect-ratio:1;background:var(--track);border-radius:4px}.xp-goals i.held{background:var(--ok)}.xp-goals i.started{background:#9fd6b9}.xp-show-sm{display:none!important}.xp-thread{flex-direction:column;gap:10px;display:flex}.xp-bubble{border:1px solid var(--xp-line);border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.45}.xp-bubble small{color:var(--xp-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.xp-bubble.team{background:var(--xp-accent-soft);border-color:var(--xp-soft-line)}.xp-steps{flex-wrap:wrap;gap:6px;display:flex}.xp-steps span{background:var(--track);color:var(--xp-muted);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.xp-steps span.on{background:var(--ok-soft);color:var(--ok)}.xp-ladder{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;display:grid}.xp-ladder i{background:var(--track);border-radius:3px;height:10px}.xp-ladder i.on{background:var(--xp-accent)}.xp-ladder i.half{background:linear-gradient(90deg, var(--xp-accent) 60%, var(--track) 60%)}.xp-badges{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.xp-badge{border:1px solid var(--xp-line);border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:10px;display:flex}.xp-badge b{font-size:13px;line-height:1.25}.xp-badge small{color:var(--xp-muted);font-size:12px}.xp-badge .xp-bar{height:6px}.xp-badge.got{border-color:var(--xp-soft-line);background:var(--xp-soft)}.xp-cta{background:var(--hero-bg);border-top:1px solid var(--hero-line)}.xp-cta-in{text-align:center;flex-direction:column;align-items:center;gap:18px;padding-top:64px;padding-bottom:72px;display:flex}.xp-cta h2{font-family:var(--xp-display);letter-spacing:-.03em;max-width:720px;margin:0;font-size:clamp(28px,3.4vw,42px);line-height:1.08}.xp-cta .xp-lead{max-width:620px}@media (width<=980px){.xp-hero-in,.xp-sec{grid-template-columns:minmax(0,1fr);gap:28px}.xp-sec.xp-flip{grid-template-columns:minmax(0,1fr)}.xp-sec.xp-flip>.xp-text{order:0}.xp-sec{padding-top:52px;padding-bottom:52px}}@media (width<=640px){.xp-figs-2{grid-template-columns:minmax(0,1fr)}.xp-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.xp-rings{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.xp-fig{border-radius:18px;padding:16px}.xp-end-top{grid-template-columns:repeat(3,minmax(0,1fr))}.xp-end-top .xp-tile b{font-size:22px}.xp-end-top .xp-tile{padding:10px}.xp-end-top .xp-tile span{font-size:12px}.xp-squares{grid-template-columns:repeat(10,minmax(0,1fr))}.xp-goals{grid-template-columns:72px repeat(14,minmax(0,1fr));gap:3px}.xp-hero-in{padding-top:24px;padding-bottom:44px}.xp-facts{gap:6px}.xp-fact{padding:8px 10px}.xp-fact b{font-size:20px}.xp-fact span{font-size:12px}.xp-flow-step{grid-template-columns:34px minmax(0,1fr)}.xp-flow-step>span{width:34px;height:34px}.xp-flow-step>em{grid-column:2;justify-self:start}.xp-flow-arrow{margin-left:30px}.xp .xp-hide-sm{display:none!important}.xp .xp-show-sm{display:block!important}.xp-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.xp .g-tick,.xp .g-lab,.xp .g-lab-muted{font-size:19px}.xp-donut{grid-template-columns:minmax(0,1fr)!important}.xp-donut svg{max-width:200px;margin:0 auto}.xp-thresholds{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
