@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");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;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");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;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");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;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");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;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");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;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");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;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");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;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");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;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");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;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");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;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.-IWRBq_className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.-IWRBq_variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.-fjg1W_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.-fjg1W_variable{--font-jbmono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#f7f5fc;--surface:#fff;--surface-2:#f1ecfb;--line:#e4dcf5;--line-strong:#d3c6ee;--text:#1a1330;--muted:#625885;--faint:#8e84ae;--accent:#d81e50;--accent-soft:#ffe6ee;--accent-fill:#ff3b6b;--violet:#5b3df0;--violet-soft:#ece7ff;--hero-1:#1e1338;--hero-2:#2a1b4a;--hero-3:#3b2470;--hero-text:#fff;--hero-muted:#c9b8f0;--ring:#ff3b6b;--shadow:0 1px 2px #28145a0f,0 8px 24px -8px #28145a24;--shadow-lg:0 2px 4px #28145a0f,0 24px 48px -16px #28145a47;--cat-gs:#0891b2;--cat-create:#5b3df0;--cat-ai:#d81e50;--cat-brand:#059669;--cat-insights:#b45309;--tip:#5b3df0;--tip-bg:#f1ecff;--note:#0e7490;--note-bg:#e6f7fb;--warn:#a15c07;--warn-bg:#fff4e0;--font:var(--font-jakarta),"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-jbmono),"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f0a1f;--surface:#18112d;--surface-2:#221840;--line:#2e2350;--line-strong:#41336e;--text:#f4f0ff;--muted:#b9abe0;--faint:#8c80b3;--accent:#ff6a8e;--accent-soft:#3a1630;--accent-fill:#ff3b6b;--violet:#a895ff;--violet-soft:#2a2152;--shadow:0 1px 2px #0000004d,0 8px 24px -8px #00000080;--shadow-lg:0 24px 48px -16px #0009;--cat-gs:#22d3ee;--cat-create:#a895ff;--cat-ai:#ff6a8e;--cat-brand:#34d399;--cat-insights:#fbbf24;--tip:#b8a8ff;--tip-bg:#231b45;--note:#5edcf2;--note-bg:#0f2a33;--warn:#fcc560;--warn-bg:#2f2310;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f0a1f;--surface:#18112d;--surface-2:#221840;--line:#2e2350;--line-strong:#41336e;--text:#f4f0ff;--muted:#b9abe0;--faint:#8c80b3;--accent:#ff6a8e;--accent-soft:#3a1630;--accent-fill:#ff3b6b;--violet:#a895ff;--violet-soft:#2a2152;--shadow:0 1px 2px #0000004d,0 8px 24px -8px #00000080;--shadow-lg:0 24px 48px -16px #0009;--cat-gs:#22d3ee;--cat-create:#a895ff;--cat-ai:#ff6a8e;--cat-brand:#34d399;--cat-insights:#fbbf24;--tip:#b8a8ff;--tip-bg:#231b45;--note:#5edcf2;--note-bg:#0f2a33;--warn:#fcc560;--warn-bg:#2f2310;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}:focus-visible{outline:2px solid var(--violet);outline-offset:2px;border-radius:6px}h1,h2,h3{text-wrap:balance;letter-spacing:-.02em;margin:0;line-height:1.2}p{margin:0}mark.hl{background:linear-gradient(92deg,#ff3b6b,#9b7bff);color:#0000;-webkit-background-clip:text;background-clip:text}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.top{top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--surface) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky}.top-in{align-items:center;gap:14px;max-width:1440px;margin:0 auto;padding:12px 20px;display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;font-size:17px;font-weight:800;display:flex}.brand .logo{box-shadow:0 0 0 1px var(--line);background:#fff;border-radius:10px;padding:5px 8px;display:flex}.brand .logo img{width:auto;height:22px;display:block}.brand .learn{color:var(--muted);font-weight:600}.nav{gap:4px;margin-left:12px;display:flex}.nav a{color:var(--muted);border-radius:9px;padding:7px 12px;font-size:14.5px;font-weight:600}.nav a:hover,.nav a.on{background:var(--surface-2);color:var(--text)}.search-btn{background:var(--surface-2);border:1px solid var(--line);min-width:260px;color:var(--faint);border-radius:12px;align-items:center;gap:10px;margin-left:auto;padding:9px 12px;font-size:14.5px;display:flex}.search-btn:hover{border-color:var(--line-strong)}.search-btn kbd,.kbd{font-family:var(--mono);border:1px solid var(--line-strong);color:var(--muted);background:var(--surface);border-radius:6px;margin-left:auto;padding:1px 6px;font-size:11.5px}.icon-btn{border:1px solid var(--line);background:var(--surface);border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.icon-btn:hover{border-color:var(--line-strong)}.icon-btn svg{width:18px;height:18px}.btn{white-space:nowrap;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:14.5px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn svg{width:16px;height:16px}.btn-primary{color:#fff;background:linear-gradient(135deg,#ff3b6b,#c2296f);box-shadow:0 6px 18px -6px #ff3b6b99}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px -8px #ff3b6bb3}.btn-violet{color:#fff;background:#4b2fd6;box-shadow:0 6px 18px -6px #4b2fd699}.btn-ghost{background:var(--surface);border:1px solid var(--line-strong);color:var(--text)}.btn-ghost:hover{background:var(--surface-2)}.menu-btn{display:none}.shell{grid-template-columns:272px minmax(0,1fr) 240px;gap:40px;max-width:1440px;margin:0 auto;padding-inline:20px;display:grid}.side{padding-block:24px 40px;align-self:start;height:calc(100vh - 73px);padding-right:6px;position:sticky;top:73px;overflow:auto}.side .prog{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:20px;padding:14px}.prog-top{justify-content:space-between;font-size:13px;font-weight:700;display:flex}.prog-top span:last-child{color:var(--muted);font-weight:600}.bar{background:var(--surface-2);border-radius:99px;height:7px;margin-top:9px;overflow:hidden}.bar i{background:linear-gradient(90deg,#ff3b6b,#9b7bff);border-radius:99px;width:0;height:100%;transition:width .4s;display:block}.cat-h{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);align-items:center;gap:8px;margin:18px 8px 6px;font-size:11.5px;font-weight:800;display:flex}.cat-h i{background:var(--c);border-radius:3px;width:8px;height:8px}.side a.g{color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:7px 10px;font-size:14.5px;font-weight:500;display:flex}.side a.g:hover{background:var(--surface-2);color:var(--text)}.side a.g.on{background:var(--violet-soft);color:var(--text);font-weight:700}.side a.g .n{font-family:var(--mono);color:var(--faint);width:18px;font-size:11.5px}.side a.g .d{font-family:var(--mono);color:var(--faint);margin-left:auto;font-size:11.5px}.side a.g.on .n{color:var(--violet)}.toc{align-self:start;max-height:calc(100vh - 73px);padding-block:28px;position:sticky;top:73px;overflow:auto}.toc h4{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);margin:0 0 10px;font-size:11.5px;font-weight:800}.toc a{border-left:2px solid var(--line);color:var(--muted);align-items:flex-start;gap:10px;padding:5px 10px;font-size:13.5px;line-height:1.4;display:flex}.toc a:hover{color:var(--text)}.toc a.on{border-color:var(--accent-fill);color:var(--text);font-weight:600}.toc a .t{font-family:var(--mono);color:var(--faint);margin-left:auto;padding-top:2px;font-size:11px}.toc a.playing .t{color:var(--accent);font-weight:600}.toc a.done .k{color:#10b981}.toc .k{flex-shrink:0;width:14px;padding-top:1px;font-size:12px}.toc .sep{height:14px}main{min-width:0;padding-block:24px 80px}.crumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:500;display:flex}.crumb a:hover{color:var(--text)}.chip-cat{color:var(--c);align-items:center;gap:6px;font-weight:700;display:inline-flex}.chip-cat i{background:var(--c);border-radius:3px;width:8px;height:8px}.hero{background:radial-gradient(120% 140% at 0% 0%,var(--hero-3) 0%,var(--hero-2) 45%,var(--hero-1) 100%);color:var(--hero-text);isolation:isolate;border-radius:24px;margin-top:14px;padding:32px 32px 0;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;background-image:radial-gradient(#ffffff17 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}.orb{filter:blur(60px);z-index:-1;opacity:.45;border-radius:50%;animation:18s ease-in-out infinite alternate drift;position:absolute}.orb.a{background:#7c5cff;width:340px;height:340px;top:-120px;right:8%}.orb.b{opacity:.3;background:#ff3b6b;width:260px;height:260px;animation-duration:22s;top:40px;right:-80px}.orb.c{opacity:.18;background:#22d3ee;width:220px;height:220px;bottom:-60px;left:-60px}@keyframes drift{to{transform:translate(-40px,30px)scale(1.08)}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#ff7a9a;font-size:12.5px;font-weight:800}.hero h1{margin-top:10px;font-size:clamp(30px,4.4vw,46px);font-weight:800}.hero h1 mark.hl{background:linear-gradient(92deg,#ff5a82,#b49cff);-webkit-background-clip:text;background-clip:text}.hero .sub{color:var(--hero-muted);max-width:60ch;margin-top:10px;font-size:18px}.meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.meta span{color:#ede6ff;background:#ffffff17;border:1px solid #ffffff24;border-radius:99px;align-items:center;gap:7px;padding:6px 12px;font-size:13.5px;font-weight:600;display:inline-flex}.meta svg{opacity:.85;width:15px;height:15px}.player{background:#0b0716;border:1px solid #ffffff1f;border-bottom:0;border-radius:16px 16px 0 0;margin-top:26px;position:relative;overflow:hidden;box-shadow:0 -10px 40px -10px #00000080}.player video{aspect-ratio:16/9;background:#0b0716;width:100%;max-width:100%;display:block}.play-cover{cursor:pointer;background:linear-gradient(#0000 50%,#0a06188c);place-items:center;display:grid;position:absolute;inset:0}.play-cover .pb{background:linear-gradient(135deg,#ff3b6b,#c2296f);border-radius:50%;place-items:center;width:84px;height:84px;transition:transform .2s;display:grid;box-shadow:0 0 0 10px #ff3b6b38,0 18px 40px -10px #ff3b6bb3}.play-cover:hover .pb{transform:scale(1.06)}.play-cover .pb svg{color:#fff;width:30px;height:30px;margin-left:4px}.play-cover .yt{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;border-radius:9px;align-items:center;gap:8px;padding:6px 11px;font-size:13px;font-weight:600;display:flex;position:absolute;bottom:16px;left:18px}.play-cover .yt b{font-family:var(--mono);font-weight:600}.chapters{background:var(--surface);border:1px solid var(--line);scrollbar-width:thin;border-top:0;border-radius:0 0 18px 18px;gap:8px;padding:14px 16px;display:flex;overflow-x:auto}.chapters .lbl{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);white-space:nowrap;align-self:center;padding-right:6px;font-size:12px;font-weight:800}.chap{border:1px solid var(--line);color:var(--muted);background:var(--surface);border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:7px 11px;font-size:13px;font-weight:600;display:flex}.chap .mono{color:var(--faint);font-size:11.5px}.chap:hover{border-color:var(--line-strong);color:var(--text)}.chap.on{background:var(--accent-soft);color:var(--accent);border-color:#0000}.chap.on .mono{color:var(--accent)}.intro-grid{grid-template-columns:1.15fr 1fr;gap:16px;margin-top:28px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px 22px}.panel h3{align-items:center;gap:9px;font-size:15px;font-weight:800;display:flex}.panel h3 .ic{background:var(--violet-soft);width:28px;height:28px;color:var(--violet);border-radius:9px;place-items:center;display:grid}.panel h3 .ic svg{width:15px;height:15px}.checks{gap:9px;margin:14px 0 0;padding:0;list-style:none;display:grid}.checks li{gap:10px;font-size:15px;line-height:1.5;display:flex}.checks li:before{content:"";background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF3B6B' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;border-radius:6px;flex-shrink:0;width:18px;height:18px;margin-top:2px}.pre{gap:10px;margin-top:14px;display:grid}.pre a{background:var(--surface-2);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:14.5px;font-weight:600;display:flex}.pre a:hover{outline:1px solid var(--line-strong)}.pre a small{color:var(--muted);font-size:13px;font-weight:500;display:block}.pre a .num{font-family:var(--mono);color:var(--violet);background:var(--surface);border-radius:8px;flex-shrink:0;padding:4px 7px;font-size:12px}.pre a svg{width:16px;height:16px;color:var(--faint);flex-shrink:0;margin-left:auto}.steps-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-top:46px;display:flex}.steps-head h2{font-size:28px;font-weight:800}.steps-head p{color:var(--muted);margin-top:4px}.seg{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:4px;display:inline-flex}.seg button{color:var(--muted);border-radius:9px;align-items:center;gap:7px;padding:7px 14px;font-size:13.5px;font-weight:700;display:flex}.seg button svg{width:15px;height:15px}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.steps{gap:22px;margin-top:22px;display:grid;position:relative}.step{background:var(--surface);border:1px solid var(--line);border-radius:22px;gap:16px;padding:24px;scroll-margin-top:90px;transition:border-color .3s,box-shadow .3s;display:grid}.step.on{border-color:var(--line-strong);box-shadow:var(--shadow)}.step-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pill{background:var(--accent-fill);color:#fff;letter-spacing:.04em;border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:800;display:inline-flex}.pill.tip{background:linear-gradient(135deg,#7c5cff,#5b3df0)}.pill .of{opacity:.75;font-weight:600}.watch{color:var(--accent);background:var(--accent-soft);border-radius:10px;align-items:center;gap:7px;margin-left:auto;padding:6px 11px;font-size:13px;font-weight:700;display:inline-flex}.watch svg{width:13px;height:13px}.watch .mono{font-size:12px}.watch:hover{filter:brightness(.97)}.done-btn{color:var(--muted);border:1px solid var(--line);border-radius:10px;align-items:center;gap:7px;padding:6px 11px;font-size:13px;font-weight:700;display:inline-flex}.done-btn .box{border:2px solid var(--line-strong);border-radius:5px;place-items:center;width:16px;height:16px;display:grid}.done-btn.on{color:#047857;background:#ecfdf5;border-color:#a7f3d0}:root[data-theme=dark] .done-btn.on{color:#6ee7b7;background:#062c22;border-color:#065f46}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .done-btn.on{color:#6ee7b7;background:#062c22;border-color:#065f46}}.done-btn.on .box{background:#10b981;border-color:#10b981}.done-btn .box svg{color:#fff;opacity:0;width:11px;height:11px}.done-btn.on .box svg{opacity:1}.step h3{font-size:23px;font-weight:800}.step .body{color:var(--muted);max-width:66ch;font-size:16px}.step .body b{color:var(--text);font-weight:700}.bul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.bul li{background:var(--surface-2);border-radius:11px;align-items:center;gap:8px;padding:7px 12px;font-size:14px;font-weight:600;display:flex}.bul li:before{content:"";background:var(--accent-fill);border-radius:50%;width:7px;height:7px}.frame{border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);cursor:zoom-in;background:#fff;border-radius:14px;position:relative;overflow:hidden}.frame .chrome{background:#f3f0fa;border-bottom:1px solid #e4dcf5;align-items:center;gap:6px;padding:9px 12px;display:flex}.frame .chrome i{background:#e2daf2;border-radius:50%;width:10px;height:10px}.frame .chrome i:first-child{background:#ff6b6b}.frame .chrome i:nth-child(2){background:#ffc145}.frame .chrome i:nth-child(3){background:#3dd68c}.frame .url{max-width:340px;font-family:var(--mono);color:#6e6590;background:#fff;border:1px solid #e4dcf5;border-radius:7px;flex:1;margin-left:10px;padding:3px 10px;font-size:11.5px}.frame .zoom{color:#6e6590;align-items:center;gap:5px;margin-left:auto;font-size:12px;font-weight:600;display:flex}.frame .zoom svg{width:13px;height:13px}.shot{aspect-ratio:16/9;max-width:100%;position:relative}.shot img{object-fit:cover;width:100%;height:100%;display:block}.shot .dim{pointer-events:none;position:absolute;inset:0}.ring{border:3px solid var(--ring);pointer-events:none;border-radius:12px;animation:2.4s ease-in-out infinite pulse;position:absolute;box-shadow:0 0 0 4px #ff3b6b2e,0 0 24px #ff3b6b73}.ring .tag{background:var(--ring);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12.5px;font-weight:800;display:grid;position:absolute;top:-13px;left:-13px;box-shadow:0 4px 10px #ff3b6b80}@keyframes pulse{50%{box-shadow:0 0 0 7px #ff3b6b1f,0 0 30px #ff3b6b8c}}.callout{background:var(--cb);color:var(--text);border-radius:14px;gap:12px;padding:14px 16px;font-size:15px;line-height:1.55;display:flex}.callout .ci{background:var(--cc);color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.callout .ci svg{width:15px;height:15px}.callout b{color:var(--cc)}.callout a{color:var(--violet);text-underline-offset:3px;font-weight:700;text-decoration:underline}.c-tip{--cb:var(--tip-bg);--cc:var(--tip)}.c-note{--cb:var(--note-bg);--cc:var(--note)}.c-warn{--cb:var(--warn-bg);--cc:var(--warn)}:root[data-theme=dark] .callout .ci{color:#120c24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .callout .ci{color:#120c24}}.wt-stage{display:none}.steps.walk{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);align-items:start;column-gap:26px}.steps.walk .step{opacity:.55;grid-column:1;align-content:start;gap:12px;min-height:46vh;padding:20px}.steps.walk .step.on{opacity:1}.steps.walk .step .frame{display:none}.steps.walk .step h3{font-size:20px}.steps.walk .step .body{font-size:15px}.steps.walk .wt-stage{grid-area:1/2/span 20;display:block;position:sticky;top:96px}.wt-stage .count{color:var(--muted);justify-content:space-between;align-items:center;margin-top:12px;font-size:13.5px;font-weight:600;display:flex}.wt-stage .dots{gap:5px;display:flex}.wt-stage .dots i{background:var(--line-strong);border-radius:99px;width:7px;height:7px;transition:all .3s}.wt-stage .dots i.on{background:var(--accent-fill);width:22px}.wt-stage img{transition:opacity .25s}.recap{color:var(--hero-text);background:linear-gradient(135deg,var(--hero-3),var(--hero-1));isolation:isolate;border-radius:24px;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-top:34px;padding:30px;display:grid;position:relative;overflow:hidden}.recap .orb.a{top:-160px;right:-60px}.recap h2{font-size:30px;font-weight:800}.recap p{color:var(--hero-muted);max-width:58ch;margin-top:8px}.recap .flow{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.recap .flow span{background:#ffffff1a;border:1px solid #ffffff24;border-radius:99px;padding:5px 11px;font-size:13px;font-weight:600}.recap .flow em{color:#ff7a9a;align-self:center;font-style:normal}.sec-h{margin-top:48px;font-size:24px;font-weight:800}.faq{gap:10px;margin-top:14px;display:grid}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:0 18px}.faq summary{cursor:pointer;align-items:center;gap:12px;padding:16px 0;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--faint);margin-left:auto;font-size:22px;font-weight:500;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--muted);max-width:68ch;padding-bottom:16px}.transcript{margin-top:10px}.transcript p{color:var(--muted);padding-bottom:10px;font-size:15px}.transcript p .mono{color:var(--accent);margin-right:8px;font-size:12px}.feedback{border:1px dashed var(--line-strong);border-radius:18px;flex-wrap:wrap;align-items:center;gap:14px;margin-top:40px;padding:18px 20px;display:flex}.feedback b{font-size:16px}.feedback .fb{gap:8px;display:flex}.feedback .fb button{border:1px solid var(--line-strong);background:var(--surface);border-radius:11px;align-items:center;gap:7px;padding:8px 14px;font-size:14px;font-weight:700;display:flex}.feedback .fb button:hover{background:var(--surface-2)}.feedback .fb button svg{width:16px;height:16px}.feedback .upd{color:var(--faint);margin-left:auto;font-size:13.5px}.pn{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.pn a{background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:2px;padding:16px 18px;transition:border-color .2s,transform .2s;display:grid}.pn a:hover{border-color:var(--line-strong);transform:translateY(-2px)}.pn small{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-size:12.5px;font-weight:700}.pn span{font-size:17px;font-weight:800}.pn a:last-child{text-align:right}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.gcard{background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.gcard:hover{box-shadow:var(--shadow-lg);border-color:var(--line-strong);transform:translateY(-3px)}.gcard .th{aspect-ratio:16/9;background:var(--hero-1);max-width:100%;position:relative}.gcard .th img{object-fit:cover;width:100%;height:100%;display:block}.gcard .th .dur{font-family:var(--mono);color:#fff;background:#0a0618bf;border-radius:7px;padding:3px 7px;font-size:11.5px;font-weight:600;position:absolute;bottom:10px;right:10px}.gcard .th .pl{opacity:0;background:#0a061840;place-items:center;transition:opacity .2s;display:grid;position:absolute;inset:0}.gcard:hover .th .pl{opacity:1}.gcard .th .pl span{background:#ff3b6b;border-radius:50%;place-items:center;width:50px;height:50px;display:grid;box-shadow:0 8px 20px #ff3b6b80}.gcard .th .pl svg{color:#fff;width:20px;height:20px;margin-left:3px}.gcard .tx{gap:4px;padding:14px 16px 16px;display:grid}.gcard .tx b{font-size:16px;line-height:1.3}.gcard .tx p{color:var(--muted);font-size:14px;line-height:1.45}.gcard .tx .chip-cat{letter-spacing:.06em;text-transform:uppercase;font-size:12px}.home{max-width:1240px;margin:0 auto;padding-block:24px 80px;padding-inline:20px}.hhero{text-align:center;background:radial-gradient(120% 140% at 50% 0%,var(--hero-3) 0%,var(--hero-2) 45%,var(--hero-1) 100%);color:var(--hero-text);isolation:isolate;border-radius:28px;padding:64px 40px 56px;position:relative;overflow:hidden}.hhero:before{content:"";z-index:-1;background-image:radial-gradient(#ffffff17 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 80% at 50% 30%,#000,#0000);mask-image:radial-gradient(70% 80% at 50% 30%,#000,#0000)}.hhero .orb.a{top:-140px;left:6%;right:auto}.hhero .orb.b{top:120px;right:4%}.hhero h1{margin-top:14px;font-size:clamp(34px,5.6vw,60px);font-weight:800}.hhero h1 mark.hl{background:linear-gradient(92deg,#ff5a82,#b49cff);-webkit-background-clip:text;background-clip:text}.hhero .sub{color:var(--hero-muted);max-width:52ch;margin:14px auto 0;font-size:19px}.bigsearch{color:#7a6f9c;text-align:left;background:#fff;border-radius:18px;align-items:center;gap:12px;width:100%;max-width:620px;margin:30px auto 0;padding:16px 18px;font-size:16.5px;display:flex;box-shadow:0 20px 50px -14px #0000008c}.bigsearch svg{color:#5b3df0;flex-shrink:0;width:20px;height:20px}.bigsearch .kbd{color:#6e6590;background:#f3f0fa;border-color:#dcd3ef}.qchips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.qchips a{color:#ede6ff;background:#ffffff1a;border:1px solid #ffffff29;border-radius:99px;padding:7px 13px;font-size:14px;font-weight:600}.qchips a:hover{background:#ffffff2e}.hstats{flex-wrap:wrap;justify-content:center;gap:34px;margin-top:34px;display:flex}.hstats div{display:grid}.hstats b{font-size:26px;font-weight:800}.hstats span{color:var(--hero-muted);font-size:13.5px;font-weight:600}.hsec{margin-top:56px}.hsec-h{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.hsec-h h2{font-size:clamp(24px,3vw,30px);font-weight:800}.hsec-h p{color:var(--muted);margin-top:4px}.hsec-h a{color:var(--violet);align-items:center;gap:6px;font-size:14.5px;font-weight:700;display:flex}.start{background:var(--surface);border:1px solid var(--line);border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;padding:24px;display:grid;position:relative}.sp{background:var(--surface-2);border-radius:16px;gap:10px;padding:16px;transition:transform .2s;display:grid;position:relative}.sp:hover{transform:translateY(-2px)}.sp .no{background:var(--surface);width:34px;height:34px;color:var(--violet);border:1px solid var(--line);border-radius:11px;place-items:center;font-weight:800;display:grid}.sp.done .no{color:#fff;background:#10b981;border-color:#10b981}.sp.next{outline:2px solid var(--accent-fill);background:var(--accent-soft)}.sp.next .no{background:var(--accent-fill);color:#fff;border-color:var(--accent-fill)}.sp b{font-size:16px;line-height:1.3}.sp p{color:var(--muted);font-size:13.5px;line-height:1.45}.sp .ft{color:var(--faint);justify-content:space-between;font-size:12.5px;font-weight:700;display:flex}.sp.next .ft span:last-child{color:var(--accent)}.cats{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.cat{background:var(--surface);border:1px solid var(--line);border-radius:20px;align-content:start;gap:10px;padding:20px;transition:transform .2s,box-shadow .2s;display:grid;position:relative;overflow:hidden}.cat:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.cat:after{content:"";background:var(--c);opacity:.12;border-radius:50%;width:160px;height:160px;position:absolute;top:-70px;right:-60px}.cat .ic{background:var(--c);color:#fff;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}:root[data-theme=dark] .cat .ic{color:#120c24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cat .ic{color:#120c24}}.cat .ic svg{width:22px;height:22px}.cat b{font-size:17px;line-height:1.25}.cat p{color:var(--muted);font-size:13.5px;line-height:1.45}.cat .ft{color:var(--faint);gap:10px;margin-top:4px;font-size:12.5px;font-weight:700;display:flex}.paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.path{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px 20px}.path b{font-size:16.5px}.path p{color:var(--muted);margin-top:2px;font-size:14px}.path .tr{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.path .tr a{background:var(--surface-2);border-radius:9px;padding:5px 10px;font-size:13px;font-weight:600}.path .tr a:hover{background:var(--violet-soft)}.path .tr em{color:var(--faint);font-size:12px;font-style:normal}.vwall{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:14px;margin-top:18px;padding:4px 2px 16px;display:flex;overflow-x:auto}.vwall .gcard{scroll-snap-align:start;flex:0 0 280px}.vtabs{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.vtabs button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:99px;padding:7px 13px;font-size:13.5px;font-weight:700}.vtabs button.on{background:var(--text);color:var(--bg);border-color:var(--text)}.help{background:var(--surface);border:1px solid var(--line);border-radius:24px;flex-wrap:wrap;align-items:center;gap:20px;margin-top:56px;padding:30px;display:flex}.help .ic{color:#fff;background:linear-gradient(135deg,#ff3b6b,#7c5cff);border-radius:16px;place-items:center;width:54px;height:54px;display:grid}.help .ic svg{width:26px;height:26px}.help h3{font-size:21px;font-weight:800}.help p{color:var(--muted)}.help .acts{flex-wrap:wrap;gap:10px;margin-left:auto;display:flex}footer{border-top:1px solid var(--line);text-align:center;color:var(--faint);padding:26px 20px;font-size:13.5px}dialog{background:0 0;border:0;max-width:none;max-height:none;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c061c9e}.sd{background:var(--surface);width:min(640px,100vw - 32px);color:var(--text);box-shadow:var(--shadow-lg);border:1px solid var(--line);border-radius:20px;margin-top:10vh;overflow:hidden}.sd .in{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.sd .in svg{width:20px;height:20px;color:var(--violet)}.sd input{font:inherit;color:var(--text);background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:17px}.sd .res{max-height:min(420px,60vh);padding:8px;overflow:auto}.sd .res a{border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.sd .res a.sel,.sd .res a:hover{background:var(--surface-2)}.sd .res a .ty{letter-spacing:.08em;text-transform:uppercase;color:var(--c);flex-shrink:0;width:58px;font-size:11px;font-weight:800}.sd .res a span{font-size:15px;font-weight:600}.sd .res a small{color:var(--muted);font-size:13px;font-weight:500;display:block}.sd .res .empty{text-align:center;color:var(--muted);padding:24px}.sd .foot{border-top:1px solid var(--line);color:var(--faint);gap:16px;padding:10px 16px;font-size:12.5px;display:flex}.lb{width:min(1280px,100vw - 32px)}.lb .frame{cursor:zoom-out}.lb .cap{color:#fff;justify-content:space-between;gap:12px;margin-top:12px;font-weight:600;display:flex}.lb .cap span{color:#c9b8f0;font-weight:500}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));opacity:0;background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);z-index:100;pointer-events:none;border-radius:12px;max-width:calc(100vw - 32px);padding:11px 18px;font-size:14.5px;font-weight:600;transition:all .25s;position:fixed;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.reveal{animation:.5s ease-out both up}@keyframes up{0%{opacity:.001;transform:translateY(10px)}}@media (max-width:1280px){.shell{grid-template-columns:250px minmax(0,1fr)}.toc{display:none}}@media (max-width:1100px){.cats{grid-template-columns:repeat(3,minmax(0,1fr))}.seg .wt{display:none}}@media (max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.side{z-index:60;background:var(--surface);width:min(320px,86vw);height:100%;box-shadow:var(--shadow-lg);padding:24px 16px;display:none;position:fixed;inset:0 auto 0 0}.side.open{display:block}.menu-btn{display:grid}.nav{display:none}.search-btn{flex:1;min-width:0}.search-btn .lbl,.search-btn kbd{display:none}.intro-grid,.paths{grid-template-columns:minmax(0,1fr)}.cards,.start{grid-template-columns:repeat(2,minmax(0,1fr))}.recap{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){body{font-size:15.5px}.top-in{gap:8px;padding:10px 16px}.brand .learn,.open-app span{display:none}.search-btn{flex:0;justify-content:center;width:40px;min-width:40px;height:40px;margin-left:auto;padding:0}.shell,.home{padding-inline:16px}.hero{border-radius:20px;padding:24px 18px 0}.hero .sub{font-size:16px}.hhero{border-radius:22px;padding:44px 18px 40px}.cats,.cards,.start{grid-template-columns:minmax(0,1fr)}.step{border-radius:18px;padding:16px}.step h3{font-size:20px}.watch{margin-left:0}.frame .url,.frame .zoom{display:none}.pn{grid-template-columns:minmax(0,1fr)}.pn a:last-child{text-align:left}.chapters{border-radius:0 0 14px 14px}.recap{padding:22px}.feedback .upd{margin-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}img{max-width:100%}.prose a{color:var(--violet);text-underline-offset:3px;font-weight:600;text-decoration:underline}.step .body p+p{margin-top:10px}.step .body code,.prose code{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.88em}.step .body pre{font-family:var(--mono);background:var(--hero-1);color:#ede6ff;border-radius:12px;padding:14px 16px;font-size:13.5px;overflow-x:auto}.step .body pre code{color:inherit;background:0 0;border:0;padding:0}.step .body ul,.step .body ol{margin:8px 0 0;padding-left:22px}.step .callout,.callout p{margin:0}.soon{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.02em;background:#0a061899;border-radius:9px;align-items:center;gap:8px;padding:6px 11px;font-size:12.5px;font-weight:700;display:flex;position:absolute;top:16px;left:18px}.soon i{background:#fbbf24;border-radius:50%;width:8px;height:8px}.player .poster{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.player iframe{aspect-ratio:16/9;border:0;width:100%;display:block}.watch[disabled]{opacity:.45;cursor:not-allowed}.side-backdrop{display:none}@media (max-width:960px){.side-backdrop.open{z-index:55;background:#0c061c73;display:block;position:fixed;inset:0}}.page{max-width:1240px;margin:0 auto;padding-block:28px 80px;padding-inline:20px}.page-h{gap:8px;margin-bottom:8px;display:grid}.page-h h1{font-size:clamp(30px,4vw,42px);font-weight:800}.page-h p{color:var(--muted);max-width:62ch;font-size:17px}.vgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}@media (max-width:1100px){.vgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:820px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.vgrid{grid-template-columns:minmax(0,1fr)}}.nf{text-align:center;justify-items:center;gap:14px;max-width:640px;margin:0 auto;padding:80px 20px;display:grid}.nf h1{font-size:40px;font-weight:800}.nf p{color:var(--muted)}.gcard .tx .done-mark{color:#10b981;font-size:12px;font-weight:800}.callout>div>p:first-of-type{display:inline}.vwall>.vw-item{display:contents}.vwall[data-tab=getting-started]>.vw-item:not([data-cat=getting-started]),.vwall[data-tab=create]>.vw-item:not([data-cat=create]),.vwall[data-tab=ai]>.vw-item:not([data-cat=ai]),.vwall[data-tab=brand]>.vw-item:not([data-cat=brand]),.vwall[data-tab=insights]>.vw-item:not([data-cat=insights]){display:none}.cat-ic{background:var(--c);color:#fff;border-radius:14px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.cat-ic svg{width:22px;height:22px}:root[data-theme=dark] .cat-ic{color:#120c24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cat-ic{color:#120c24}}footer a{color:var(--muted);font-weight:600}.prog-sub{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:8px;font-size:12.5px}.side a.g .d.part{color:var(--accent);font-weight:600}.side a.g.done .n{color:#10b981;font-weight:800}
