:root{--ink:#231f20;--ink-soft:#5e5c61;--line:#ebebeb;--line-strong:#dcddde;--bg:#fff;--bg-soft:#f7f7f7;--purple:#8917f2;--purple-text:#7414ce;--purple-deep:#4e0d8a;--purple-darkest:#3e0a6d;--purple-tint:#f7efff;--purple-tint-2:#ebddf9;--purple-border:#d8bff0;--lime:#c1f901;--on-dark-soft:#dcddde;--radius:16px;--max:1200px;--font:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg);margin:0;line-height:1.5}a{color:var(--purple-text);text-decoration:none}a:hover{color:var(--purple-deep);text-decoration:underline}:focus-visible{outline:3px solid var(--purple);outline-offset:2px;border-radius:4px}img{max-width:100%}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}@media (width<=600px){.wrap{padding:0 16px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);font-size:13px;font-weight:700}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header .wrap{flex-wrap:wrap;align-items:center;gap:24px;min-height:68px;padding-top:10px;padding-bottom:10px;display:flex}.logo{color:var(--ink);align-items:baseline;gap:10px;display:flex}.logo:hover{color:var(--ink);text-decoration:none}.logo b{letter-spacing:-.5px;font-size:26px;font-weight:800}.logo span{color:var(--ink-soft);font-size:15px;font-weight:600}.tabs{flex-wrap:wrap;gap:6px;display:flex}.tabs a{color:var(--ink);border-radius:999px;padding:8px 14px;font-size:15px;font-weight:600}.tabs a[aria-current=true]{background:var(--purple-tint);color:var(--purple-text);font-weight:700}.tabs a:hover{background:var(--bg-soft);text-decoration:none}.spacer{flex-grow:1}.search-trigger{font:inherit;border:1px solid var(--line-strong);background:var(--bg);width:100%;max-width:380px;height:44px;color:var(--ink-soft);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;padding:0 10px 0 14px;font-size:15px;display:flex}.search-trigger:hover{border-color:var(--ink-soft)}.search-trigger .label{flex-grow:1}kbd{color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:5px;padding:2px 7px;font-family:inherit;font-size:12px;font-weight:700}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:15px;font-weight:700;display:inline-flex}.btn:hover{text-decoration:none}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{color:#fff;background:#000}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{color:#fff;background:var(--purple-text)}.btn-ghost{background:var(--bg);color:var(--ink);border-color:var(--line-strong)}.btn-ghost:hover{color:var(--ink);border-color:var(--ink-soft)}.hero{background:var(--ink);color:#fff}.hero .wrap{text-align:center;flex-direction:column;align-items:center;gap:20px;padding-top:88px;padding-bottom:96px;display:flex}.hero .eyebrow{color:var(--lime);letter-spacing:1.5px;font-size:14px}.hero h1{letter-spacing:-1.5px;margin:0;font-size:clamp(36px,6vw,56px);font-weight:800;line-height:1.1}.hero p{color:var(--on-dark-soft);max-width:560px;margin:0;font-size:19px}.hero .search-trigger{border:none;border-radius:12px;gap:14px;max-width:680px;height:64px;margin-top:12px;padding:0 12px 0 20px;font-size:18px}.hero-popular{color:var(--on-dark-soft);flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:15px;display:flex}.hero-popular a{color:#fff;font-weight:600;text-decoration:underline}@media (width<=600px){.hero .wrap{padding-top:48px;padding-bottom:56px}.hero .search-trigger{height:54px;font-size:16px}.hero .search-trigger kbd{display:none}}.section{padding-top:64px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:28px;display:flex}.section h2,.section-head h2{letter-spacing:-.5px;margin:0;font-size:28px;font-weight:800}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:16px;padding:28px;display:flex}.icon-tile{background:var(--purple-tint);width:48px;height:48px;color:var(--purple);border-radius:12px;flex:0 0 48px;justify-content:center;align-items:center;display:flex}.card h3{margin:0 0 6px;font-size:21px;font-weight:800}.card h3 a{color:var(--ink)}.card p{color:var(--ink-soft);margin:0;font-size:15px}.card ul{flex-direction:column;gap:12px;margin:0;padding:0;font-size:16px;font-weight:600;list-style:none;display:flex}.card .more{color:var(--ink);margin-top:auto;font-size:15px;font-weight:700}.video-card{color:var(--ink);flex-direction:column;gap:14px;display:flex}.video-card:hover{color:var(--ink);text-decoration:none}.video-card:hover .video-title{text-decoration:underline}.thumb{aspect-ratio:16/9;background:var(--purple-darkest) center / cover no-repeat;border-radius:14px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.play-dot{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 4px 18px #00000040}.video-title{font-size:18px;font-weight:700}.video-meta{color:var(--ink-soft);margin-top:4px;font-size:14px}.stuck{background:var(--bg-soft);border-radius:20px;flex-wrap:wrap;align-items:center;gap:24px 32px;margin:72px 0 88px;padding:40px;display:flex}.stuck-dot{background:var(--lime);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.stuck h2{margin:0 0 6px;font-size:24px;font-weight:800}.stuck p{color:var(--ink-soft);margin:0}.stuck .actions{flex-wrap:wrap;gap:12px;display:flex}@media (width<=600px){.stuck{padding:24px}}.doc{flex-wrap:wrap;align-items:flex-start;gap:48px;padding-top:40px;padding-bottom:96px;display:flex}.doc-nav{flex-direction:column;flex:220px;gap:22px;max-width:260px;font-size:15px;display:flex}.doc-nav .group{flex-direction:column;gap:2px;display:flex}.doc-nav .eyebrow{padding:0 10px 8px;font-size:12px}.doc-nav a{color:var(--ink);border-radius:8px;padding:8px 10px}.doc-nav a:hover{background:var(--bg-soft);text-decoration:none}.doc-nav a[aria-current=page]{background:var(--purple-tint);color:var(--purple-text);font-weight:700}.doc-main{flex:999 560px;min-width:0}.doc-aside{flex-direction:column;flex:180px;gap:10px;max-width:200px;font-size:14px;display:flex;position:sticky;top:24px}.doc-aside a{color:var(--ink)}@media (width<=1100px){.doc-aside{display:none}}@media (width<=860px){.doc{gap:24px}.doc-nav{border-top:1px solid var(--line);order:2;max-width:none;padding-top:24px}}.crumbs{color:var(--ink-soft);margin-bottom:18px;font-size:14px}.crumbs a{color:var(--ink-soft)}.page-title{letter-spacing:-1px;margin:0 0 12px;font-size:clamp(32px,5vw,44px);font-weight:800;line-height:1.15}.lede{color:var(--ink-soft);max-width:640px;margin:0 0 36px;font-size:18px}.q-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.q-list li{border-bottom:1px solid var(--line)}.q-list a{color:var(--ink);align-items:center;gap:20px;padding:22px 4px;display:flex}.q-list a:hover{background:var(--bg-soft);text-decoration:none}.q-list .q{margin-bottom:4px;font-size:19px;font-weight:700}.q-list .s{color:var(--ink-soft);font-size:15px}.pill{color:var(--purple-text);background:var(--purple-tint);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700}.chev{color:var(--ink-soft);font-size:20px}.feature-video{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:40px;padding:20px;display:flex}.feature-video:hover{color:var(--ink);border-color:var(--line-strong);text-decoration:none}.feature-video .thumb{flex:0 0 260px;max-width:100%}.feature-video .play-dot{width:52px;height:52px}.ask-band{background:var(--bg-soft);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding:24px;font-weight:600;display:flex}.meta{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:28px;font-size:14px;display:flex}.link-btn{font:inherit;color:var(--purple-text);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.quick{background:var(--purple-tint);border-radius:14px;margin-bottom:32px;padding:20px 24px}.quick .eyebrow{color:var(--purple-text);margin-bottom:6px;font-weight:800}.quick p{margin:0;font-size:17px;line-height:1.55}.yt{margin:0 0 36px}.yt-frame{aspect-ratio:16/9;background:var(--ink);border-radius:14px;position:relative;overflow:hidden}.yt-frame iframe,.yt-frame .yt-poster{border:0;width:100%;height:100%;position:absolute;inset:0}.yt-poster{cursor:pointer;background:var(--ink) center / cover no-repeat;justify-content:center;align-items:center;padding:0;display:flex}.yt-poster .play-dot{width:76px;height:76px}.yt-poster:hover .play-dot{transform:scale(1.06)}.yt figcaption{color:var(--ink-soft);flex-wrap:wrap;gap:8px 12px;margin-top:12px;font-size:14px;display:flex}.prose{font-size:17px;line-height:1.65}.prose h2{margin:40px 0 14px;font-size:24px;font-weight:800;line-height:1.25}.prose h3{margin:28px 0 10px;font-size:19px;font-weight:800}.prose p{margin:0 0 18px}.prose ul{margin:0 0 20px;padding-left:22px}.prose li{margin-bottom:6px}.prose ol{counter-reset:step;flex-direction:column;gap:18px;margin:0 0 28px;padding:0;list-style:none;display:flex}.prose ol>li{counter-increment:step;margin:0;padding-top:3px;padding-left:48px;position:relative}.prose ol>li:before{content:counter(step);background:var(--ink);width:32px;height:32px;color:var(--lime);border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex;position:absolute;top:0;left:0}.prose blockquote{border:1px solid var(--line);border-radius:12px;margin:0 0 28px;padding:18px 20px 18px 56px;font-size:16px;position:relative}.prose blockquote:before{content:"";background:var(--purple);width:22px;height:22px;position:absolute;top:20px;left:20px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E") 50%/contain no-repeat}.prose blockquote p:last-child{margin:0}.prose img{border:1px solid var(--line);border-radius:12px}.prose code{background:var(--bg-soft);border-radius:5px;padding:2px 6px;font-size:.9em}.feedback{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:40px 0;padding:24px 0}.feedback .row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.feedback .row strong{margin-right:8px;font-size:17px}.vote{font:inherit;border:1px solid var(--line-strong);background:var(--bg);min-height:44px;color:var(--ink);cursor:pointer;border-radius:999px;padding:10px 22px;font-size:15px;font-weight:700}.vote:hover{border-color:var(--ink-soft)}.feedback textarea{font:inherit;border:1px solid var(--line-strong);resize:vertical;border-radius:10px;width:100%;margin:8px 0 12px;padding:12px;font-size:15px}.related{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px;display:grid}.related a{border:1px solid var(--line);color:var(--ink);border-radius:12px;padding:18px;font-weight:700}.related a:hover{border-color:var(--line-strong);background:var(--bg-soft);text-decoration:none}.site-footer{border-top:1px solid var(--line)}.site-footer .wrap{color:var(--ink-soft);flex-wrap:wrap;gap:12px 24px;padding-top:32px;padding-bottom:32px;font-size:14px;display:flex}.site-footer a{color:var(--ink-soft)}.search-dialog{width:min(760px,100vw - 32px);max-height:calc(100vh - 96px);color:var(--ink);font-family:var(--font);border:none;border-radius:18px;margin:64px auto auto;padding:0;overflow:hidden}.search-dialog::backdrop{background:#231f2099}.search-dialog[open]{flex-direction:column;display:flex}.sd-bar{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:14px;height:68px;padding:0 20px;display:flex}.sd-bar input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:none;outline:none;flex-grow:1;font-size:19px}.sd-scope{flex-wrap:wrap;gap:6px;padding:12px 20px 0;display:flex}.sd-scope button{font:inherit;border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600}.sd-scope button[aria-pressed=true]{background:var(--purple-tint);border-color:var(--purple-border);color:var(--purple-text);font-weight:700}.sd-body{flex:auto;padding:16px 20px 20px;overflow-y:auto}.sd-results{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.sd-results a{color:var(--ink);border-radius:10px;align-items:flex-start;gap:14px;padding:14px;display:flex}.sd-results a:hover,.sd-results a[aria-selected=true]{background:var(--bg-soft);text-decoration:none}.sd-results .t{margin-bottom:3px;font-size:16px;font-weight:700}.sd-results .x{color:var(--ink-soft);font-size:14px}.sd-results mark{background:var(--purple-tint-2);color:var(--ink);border-radius:3px;padding:0 2px}.sd-results .c{color:var(--ink-soft);white-space:nowrap;margin-top:3px;margin-left:auto;font-size:12px;font-weight:700}.sd-empty{color:var(--ink-soft);margin:0;padding:14px}.sd-foot{border-top:1px solid var(--line);background:var(--bg-soft);color:var(--ink-soft);flex-wrap:wrap;flex:none;gap:20px;padding:12px 20px;font-size:13px;display:flex}.sd-foot strong{color:var(--ink)}.chooser{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:20px;width:100%;max-width:680px;margin-top:8px;display:grid}.chooser a{text-align:left;color:var(--ink);background:#fff;border-radius:16px;flex-direction:column;gap:6px;padding:24px;display:flex}.chooser a:hover{outline:3px solid var(--lime);text-decoration:none}.chooser b{font-size:22px;font-weight:800}.chooser span{color:var(--ink-soft);font-size:15px}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;color:var(--ink-soft);margin:64px 0 96px;padding:40px}
