.learn-root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--learn-paper:#faf6f1;--learn-surface:#fff;--learn-surface-2:#f4ede5;--learn-rule:#e2d7ca;--learn-rule-strong:#988b7e;--learn-ink:#2a211a;--learn-ink-muted:#5e5145;--learn-on-ink:#faf6f1;--learn-accent:#3557d6;--learn-accent-hover:#2a46b8;--learn-on-accent:#fff;--learn-accent-soft:#e2e3ee;--learn-focus:#3557d6;--learn-warn:#90610c;--learn-warn-soft:#f6ecdb;--learn-role-context:#4a5a62;--learn-role-model:#3557d6;--learn-role-harness:#111a1f;--learn-role-stop:#c0394a;--learn-role-verified:#187b4e;--learn-role-context-soft:#4a5a621a;--learn-role-model-soft:#e2e3ee;--learn-role-harness-soft:#111a1f0f;--learn-role-stop-soft:#f3dfdd;--learn-role-verified-soft:#dfeadf;--learn-ok:var(--learn-role-verified);--learn-err:var(--learn-role-stop);--learn-track-1:var(--learn-ink-muted);--learn-track-2:var(--learn-ink-muted);--learn-track-3:var(--learn-ink-muted);--learn-code-bg:#171310;--learn-output-bg:#120f0c;--learn-code-rule:#3b342e;--learn-syn-keyword:#f28c5c;--learn-syn-string:#8fd6a6;--learn-syn-function:#e8c26a;--learn-syn-comment:#a39a90;--learn-syn-output:#cfe9d9;--learn-font-body:var(--font-learn-sans), system-ui, sans-serif;--learn-font-display:var(--font-learn-display), var(--learn-font-body);--learn-font-mono:var(--font-learn-mono), ui-monospace, monospace;--learn-fs-label:11px;--learn-ls-label:.08em;--learn-fs-small:14px;--learn-fs-body:15px;--learn-lh-body:1.7;--learn-fs-lede:16.5px;--learn-fs-h3:17px;--learn-fs-h2:26px;--learn-fs-h1:38px;--learn-ls-display:-.015em;--learn-s1:4px;--learn-s2:8px;--learn-s3:12px;--learn-s4:16px;--learn-s5:20px;--learn-s6:24px;--learn-s8:32px;--learn-s10:40px;--learn-s12:48px;--learn-s16:64px;--learn-s24:96px;--learn-space-block:var(--learn-s5);--learn-space-section:var(--learn-s12);--learn-space-footer:var(--learn-s16);--learn-r-sm:4px;--learn-r-md:8px;--learn-r-lg:12px;--learn-r-pill:999px;--learn-control-h:40px;--learn-control-h-lg:48px;--learn-topbar-h:56px;--learn-strip-h:44px;--learn-measure:816px;--learn-wide-w:816px;--learn-gutter:var(--learn-s10);--learn-max-w:1360px;--learn-dur-fast:.12s;--learn-dur-base:.2s;--learn-dur-slow:.32s;--learn-ease-out:cubic-bezier(.2, .7, .2, 1);--learn-ease-in-out:cubic-bezier(.4, 0, .2, 1);--learn-ease-in:cubic-bezier(.4, 0, 1, 1);--learn-stagger:60ms;--learn-press-scale:.98}html:has(.learn-root){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--learn-paper:#faf6f1;--learn-surface:#fff;--learn-surface-2:#f4ede5;--learn-rule:#e2d7ca;--learn-rule-strong:#988b7e;--learn-ink:#2a211a;--learn-ink-muted:#5e5145;--learn-on-ink:#faf6f1;--learn-accent:#3557d6;--learn-accent-hover:#2a46b8;--learn-on-accent:#fff;--learn-accent-soft:#e2e3ee;--learn-focus:#3557d6;--learn-warn:#90610c;--learn-warn-soft:#f6ecdb;--learn-role-context:#4a5a62;--learn-role-model:#3557d6;--learn-role-harness:#111a1f;--learn-role-stop:#c0394a;--learn-role-verified:#187b4e;--learn-role-context-soft:#4a5a621a;--learn-role-model-soft:#e2e3ee;--learn-role-harness-soft:#111a1f0f;--learn-role-stop-soft:#f3dfdd;--learn-role-verified-soft:#dfeadf;--learn-ok:var(--learn-role-verified);--learn-err:var(--learn-role-stop);--learn-track-1:var(--learn-ink-muted);--learn-track-2:var(--learn-ink-muted);--learn-track-3:var(--learn-ink-muted);--learn-code-bg:#171310;--learn-output-bg:#120f0c;--learn-code-rule:#3b342e;--learn-syn-keyword:#f28c5c;--learn-syn-string:#8fd6a6;--learn-syn-function:#e8c26a;--learn-syn-comment:#a39a90;--learn-syn-output:#cfe9d9;--learn-font-body:var(--font-learn-sans), system-ui, sans-serif;--learn-font-display:var(--font-learn-display), var(--learn-font-body);--learn-font-mono:var(--font-learn-mono), ui-monospace, monospace;--learn-fs-label:11px;--learn-ls-label:.08em;--learn-fs-small:14px;--learn-fs-body:15px;--learn-lh-body:1.7;--learn-fs-lede:16.5px;--learn-fs-h3:17px;--learn-fs-h2:26px;--learn-fs-h1:38px;--learn-ls-display:-.015em;--learn-s1:4px;--learn-s2:8px;--learn-s3:12px;--learn-s4:16px;--learn-s5:20px;--learn-s6:24px;--learn-s8:32px;--learn-s10:40px;--learn-s12:48px;--learn-s16:64px;--learn-s24:96px;--learn-space-block:var(--learn-s5);--learn-space-section:var(--learn-s12);--learn-space-footer:var(--learn-s16);--learn-r-sm:4px;--learn-r-md:8px;--learn-r-lg:12px;--learn-r-pill:999px;--learn-control-h:40px;--learn-control-h-lg:48px;--learn-topbar-h:56px;--learn-strip-h:44px;--learn-measure:816px;--learn-wide-w:816px;--learn-gutter:var(--learn-s10);--learn-max-w:1360px;--learn-dur-fast:.12s;--learn-dur-base:.2s;--learn-dur-slow:.32s;--learn-ease-out:cubic-bezier(.2, .7, .2, 1);--learn-ease-in-out:cubic-bezier(.4, 0, .2, 1);--learn-ease-in:cubic-bezier(.4, 0, 1, 1);--learn-stagger:60ms;--learn-press-scale:.98}html[data-docs-theme=dark] .learn-root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--learn-paper:#14110f;--learn-surface:#1d1916;--learn-surface-2:#272220;--learn-rule:#3b342e;--learn-rule-strong:#7e7368;--learn-ink:#f2ede7;--learn-ink-muted:#b6aba0;--learn-on-ink:#14110f;--learn-accent:#7c9cff;--learn-accent-hover:#a3b9ff;--learn-on-accent:#14110f;--learn-accent-soft:#252735;--learn-focus:#7c9cff;--learn-warn:#f0b454;--learn-warn-soft:#2a2116;--learn-role-context:#9aabb2;--learn-role-model:#7c9cff;--learn-role-harness:#e6ecea;--learn-role-stop:#ef7180;--learn-role-verified:#5fd69a;--learn-role-context-soft:#9aabb224;--learn-role-model-soft:#252735;--learn-role-harness-soft:#e6ecea14;--learn-role-stop-soft:#331e1f;--learn-role-verified-soft:#1f2d22}html[data-docs-theme=dark]:has(.learn-root){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--learn-paper:#14110f;--learn-surface:#1d1916;--learn-surface-2:#272220;--learn-rule:#3b342e;--learn-rule-strong:#7e7368;--learn-ink:#f2ede7;--learn-ink-muted:#b6aba0;--learn-on-ink:#14110f;--learn-accent:#7c9cff;--learn-accent-hover:#a3b9ff;--learn-on-accent:#14110f;--learn-accent-soft:#252735;--learn-focus:#7c9cff;--learn-warn:#f0b454;--learn-warn-soft:#2a2116;--learn-role-context:#9aabb2;--learn-role-model:#7c9cff;--learn-role-harness:#e6ecea;--learn-role-stop:#ef7180;--learn-role-verified:#5fd69a;--learn-role-context-soft:#9aabb224;--learn-role-model-soft:#252735;--learn-role-harness-soft:#e6ecea14;--learn-role-stop-soft:#331e1f;--learn-role-verified-soft:#1f2d22}.learn-root :is(.codecard,.code,.out,.fix,.pc-code,.st-code,.trace .stdout,.pair>div){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--learn-ink:#f2ede7;--learn-ink-muted:#a39a90;--learn-rule:var(--learn-code-rule);--learn-rule-strong:#7e7368;--learn-surface:var(--learn-code-bg);--learn-surface-2:#272220;--learn-paper:var(--learn-code-bg);--learn-on-ink:#14110f;--learn-accent:#7c9cff;--learn-accent-hover:#a3b9ff;--learn-on-accent:#14110f;--learn-focus:#7c9cff;--learn-role-context:#9aabb2;--learn-role-model:#7c9cff;--learn-role-harness:#e6ecea;--learn-role-stop:#ef7180;--learn-role-verified:#5fd69a;--learn-role-context-soft:#9aabb224;--learn-role-model-soft:#252735;--learn-role-harness-soft:#e6ecea14;--learn-role-stop-soft:#331e1f;--learn-role-verified-soft:#1f2d22;color:var(--learn-ink)}@media (max-width:860px){.learn-root{--learn-fs-h1:30px;--learn-fs-h2:21px;--learn-topbar-h:52px;--learn-gutter:var(--learn-s6)}html:has(.learn-root){--learn-fs-h1:30px;--learn-fs-h2:21px;--learn-topbar-h:52px;--learn-gutter:var(--learn-s6)}}@media (prefers-reduced-motion:reduce){.learn-root{--learn-dur-base:0s;--learn-dur-slow:0s;--learn-stagger:0s;--learn-press-scale:1}html:has(.learn-root){--learn-dur-base:0s;--learn-dur-slow:0s;--learn-stagger:0s;--learn-press-scale:1}}html[data-docs-theme-switching] .learn-root *,html[data-docs-theme-switching] .learn-root :before,html[data-docs-theme-switching] .learn-root :after{transition:none!important}
@layer learn-reset{html:has(.learn-root){-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth;max-width:100%;height:100%;line-height:1.5;overflow-x:clip}html:has(.learn-root) body{flex-direction:column;max-width:100%;min-height:100%;margin:0;display:flex;overflow-x:clip}.learn-root,.learn-root *,.learn-root :before,.learn-root :after,.learn-root ::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}.learn-root :where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit}.learn-root :where(a){color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}.learn-root :where(b,strong){font-weight:bolder}.learn-root :where(code,kbd,samp,pre){font-family:var(--learn-font-mono);font-size:1em}.learn-root :where(small){font-size:80%}.learn-root :where(table){text-indent:0;border-color:inherit;border-collapse:collapse}.learn-root :where(hr){height:0;color:inherit;border-top-width:1px}.learn-root :where(ol,ul,menu){list-style:none}.learn-root :where(img,svg,video,canvas,audio,iframe,embed,object){vertical-align:middle;display:block}.learn-root :where(img,video){max-width:100%;height:auto}.learn-root :where(button,input,select,textarea){font:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}.learn-root :where(button,input:where([type=button],[type=reset],[type=submit])){appearance:button}.learn-root ::placeholder{opacity:1;color:color-mix(in oklab, currentcolor 50%, transparent)}.learn-root :where(textarea){resize:vertical}.learn-root :where([hidden]:not([hidden=until-found])){display:none!important}}@media (prefers-reduced-motion:reduce){html:has(.learn-root){scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html:has(.learn-root) *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html:has(.learn-root) :before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html:has(.learn-root) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html:has(>body .learn-root){background-color:var(--learn-paper)}html:has(>body .learn-root) body{background-color:var(--learn-paper)}html:has(.learn-root){scroll-padding-top:calc(var(--learn-topbar-h) + var(--learn-strip-h) + var(--learn-s4))}.learn-root{background:var(--learn-paper);min-height:100dvh;color:var(--learn-ink);font:400 var(--learn-fs-body) / var(--learn-lh-body) var(--learn-font-body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;flex-direction:column;flex:1;display:flex}:where(.learn-root) :where(*){box-sizing:border-box}:where(.learn-root) :where(h1,h2,h3,p,ol,ul,dl,dd){margin:0;padding:0}:where(.learn-root) :where(ol,ul){list-style:none}:where(.learn-root) :where(a){color:var(--learn-accent);text-underline-offset:3px}:where(.learn-root) :where(a:hover){color:var(--learn-ink)}:where(.learn-root) :where(button){font:inherit;color:inherit;cursor:pointer}.learn-root :focus-visible{outline:2px solid var(--learn-focus);outline-offset:3px;border-radius:var(--learn-r-sm)}.learn-root h1[tabindex="-1"]:focus{outline:none}.learn-root .sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.learn-root .skip{left:var(--learn-s4);top:var(--learn-s3);z-index:30;padding:var(--learn-s2) var(--learn-s3);background:var(--learn-ink);color:var(--learn-on-ink);border-radius:var(--learn-r-md);position:absolute;transform:translateY(-300%)}.learn-root .skip:focus{transform:none}.learn-root .label{font:600 var(--learn-fs-label) / 1 var(--learn-font-mono);letter-spacing:.06em;color:var(--learn-ink-muted);text-transform:uppercase}.learn-root .label.verified{color:var(--learn-role-verified)}.learn-root .ui-label{font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .ui-label:has(>svg){align-items:center;gap:var(--learn-s2);display:inline-flex}.learn-root .ui-label>svg{flex:none}.learn-root .ui-label.verified{color:var(--learn-role-verified)}.learn-root .ui-label.warn{color:var(--learn-warn)}.learn-root .mark{gap:var(--learn-s1);flex:none;width:24px;display:inline-grid}.learn-root .mark i{border-radius:var(--learn-r-sm);height:3px;display:block}.learn-root .mark i:first-child{background:var(--learn-role-context);width:16px}.learn-root .mark i:nth-child(2){width:12px;margin-left:var(--learn-s2);background:var(--learn-role-model)}.learn-root .mark i:nth-child(3){width:8px;margin-left:var(--learn-s3);background:var(--learn-role-harness)}.learn-root .mark i:nth-child(4){width:4px;margin-left:var(--learn-s5);background:var(--learn-warn)}.learn-root .topbar{z-index:20;border-bottom:1px solid var(--learn-rule);background:color-mix(in srgb, var(--learn-paper) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0}.learn-root .tb-row{align-items:center;gap:var(--learn-s5);height:var(--learn-topbar-h);padding:0 var(--learn-s6);display:flex}.learn-root .course-id{align-items:center;gap:var(--learn-s3);min-width:0;color:var(--learn-ink);flex:0 auto;text-decoration:none;display:inline-flex}.learn-root .course-id .title{min-width:0;font:700 15px / 1 var(--learn-font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.learn-root .course-id .by{padding-left:var(--learn-s3);border-left:1px solid var(--learn-rule-strong);font:400 var(--learn-fs-small) / 1 var(--learn-font-body);color:var(--learn-ink-muted);white-space:nowrap}.learn-root .tb-spacer{flex:1}.learn-root .progress{align-items:center;gap:var(--learn-s3);font:500 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);white-space:nowrap;display:inline-flex}.learn-root .progress:empty{display:none}.learn-root .theme{align-items:center;gap:var(--learn-s2);min-height:var(--learn-control-h);padding:0 var(--learn-s3);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);background:var(--learn-paper);font:500 13px / 1 var(--learn-font-mono);display:inline-flex}.learn-root .theme:hover{border-color:var(--learn-ink)}.learn-root .theme .sw{border:1.5px solid var(--learn-rule-strong);border-radius:var(--learn-r-pill);background:var(--learn-surface-2);width:32px;height:20px;transition:background-color var(--learn-dur-fast) var(--learn-ease-in-out), border-color var(--learn-dur-fast) var(--learn-ease-in-out);position:relative}.learn-root .theme .sw:after{content:"";top:50%;left:var(--learn-s1);background:var(--learn-ink-muted);width:12px;height:12px;transition:transform var(--learn-dur-fast) var(--learn-ease-in-out);border-radius:50%;position:absolute;transform:translateY(-50%)}html[data-docs-theme=dark] .learn-root .theme .sw{background:var(--learn-accent);border-color:var(--learn-accent)}html[data-docs-theme=dark] .learn-root .theme .sw:after{background:var(--learn-paper);transform:translate(12px,-50%)}.learn-root .home{font:500 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);white-space:nowrap;text-decoration:none}.learn-root .home:hover{color:var(--learn-accent);text-decoration:underline}.learn-root .pagenav ol{gap:var(--learn-s1);padding:var(--learn-s1) var(--learn-s5) var(--learn-s3);scrollbar-width:thin;scrollbar-color:var(--learn-rule) transparent;margin:0;list-style:none;display:flex;position:relative;overflow-x:auto}.learn-root .pagenav li{flex:none}.learn-root .pn-btn{padding:6px var(--learn-s3);border-radius:var(--learn-r-pill);color:var(--learn-ink-muted);font:500 12.5px / 1.2 var(--learn-font-mono);white-space:nowrap;border:1px solid #0000;align-items:baseline;gap:6px;text-decoration:none;display:inline-flex}.learn-root .pn-btn:focus-visible{outline-offset:0}.learn-root a.pn-btn:hover{background:var(--learn-surface-2);color:var(--learn-ink)}.learn-root .pn-btn[aria-current=page]{border-color:color-mix(in srgb, var(--learn-accent) 45%, transparent);background:var(--learn-accent-soft);color:var(--learn-ink);font-weight:600}.learn-root .pn-btn .pn{color:var(--learn-ink-muted);font-weight:500}.learn-root .pn-btn[aria-current=page] .pn{color:var(--learn-accent)}.learn-root .pn-btn .ok{color:var(--learn-role-verified);font-weight:600}.learn-root .pn-btn.pending{cursor:default}.learn-root .pn-btn .soon{letter-spacing:.06em;text-transform:uppercase;font-size:10.5px}.learn-root .shell{--learn-content-w:var(--learn-wide-w);width:100%;max-width:var(--learn-max-w);flex-direction:column;flex:1;margin:0 auto;display:flex}.learn-root :where(.track ol)>li>:is(a,.pending){align-items:baseline;gap:var(--learn-s2);padding:7px var(--learn-s2);border-radius:var(--learn-r-md);color:var(--learn-ink-muted);font:400 15px / 1.35 var(--learn-font-body);grid-template-columns:26px minmax(0,1fr) 18px;text-decoration:none;display:grid}.learn-root .track .pn{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root :where(.track ol)>li>a{color:var(--learn-ink)}.learn-root :where(.track ol)>li>a:hover{background:var(--learn-surface-2)}.learn-root :where(.track ol)>li>a:active{background:var(--learn-rule)}.learn-root .track .pending{color:var(--learn-ink-muted);cursor:default;grid-template-columns:26px minmax(0,1fr) auto}.learn-root .track .soon{font:500 11px / 1 var(--learn-font-mono);letter-spacing:.06em;text-transform:uppercase;justify-self:end}.learn-root .done{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);width:14px;height:14px;transition:background-color var(--learn-dur-fast) var(--learn-ease-out), border-color var(--learn-dur-fast) var(--learn-ease-out);place-self:center end}.learn-root .course:not([data-progress]) .track .done{display:none}.learn-root .course{flex-direction:column;flex:1;display:flex}.learn-root .main{min-width:0;padding:var(--learn-space-section) var(--learn-gutter) var(--learn-space-footer);flex:1}.learn-root .content{max-width:var(--learn-content-w);margin-inline:auto}.learn-root .footer{padding:0 var(--learn-gutter) var(--learn-s10)}.learn-root .ft-inner{gap:var(--learn-s6) var(--learn-s8);max-width:var(--learn-content-w);padding-top:var(--learn-s8);border-top:1px solid var(--learn-rule);grid-template-columns:minmax(0,1fr) auto;margin-inline:auto;display:grid}.learn-root .ft-brand{align-items:flex-start;gap:var(--learn-s3);display:flex}.learn-root .ft-brand .mark{margin-top:6px}.learn-root .ft-title{font:600 17px / 1.3 var(--learn-font-mono);letter-spacing:-.01em}.learn-root .ft-by{margin-top:var(--learn-s1);font-size:var(--learn-fs-small);color:var(--learn-ink-muted)}.learn-root .ft-by a{color:var(--learn-ink)}.learn-root .ft-links{justify-self:end;gap:var(--learn-s2) var(--learn-s5);font:500 13px / 1.6 var(--learn-font-mono);flex-wrap:wrap;padding:0;list-style:none;display:flex}.learn-root :is(.ft-links,.ft-by) a{color:var(--learn-ink);text-decoration:underline;-webkit-text-decoration-color:var(--learn-rule-strong);text-decoration-color:var(--learn-rule-strong);text-underline-offset:3px}.learn-root :is(.ft-links,.ft-by) a:hover{color:var(--learn-accent);text-decoration-color:currentColor}.learn-root .ft-meta{gap:var(--learn-s2) var(--learn-s5);font:500 12.5px / 1.4 var(--learn-font-mono);color:var(--learn-ink-muted);flex-wrap:wrap;grid-column:1/-1;display:flex}.learn-root .eyebrow{font:500 11.5px / 1.5 var(--learn-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--learn-ink-muted)}.learn-root .eyebrow b{color:inherit;font-weight:600}.learn-root :is(.l-head,.hub-head){gap:0;display:grid}.learn-root :is(.l-head,.hub-head) h1{margin-top:var(--learn-s3);font:700 var(--learn-fs-h1) / 1.15 var(--learn-font-display);letter-spacing:var(--learn-ls-display)}.learn-root .headline .h-a{color:var(--learn-accent)}.learn-root .headline .h-b{color:var(--learn-role-verified)}.learn-root .byline{margin-top:var(--learn-s3);font:500 12.5px / 1.4 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .byline a{color:var(--learn-ink);text-underline-offset:3px;text-decoration:underline}.learn-root .byline a:hover{color:var(--learn-accent)}.learn-root .intro{max-width:640px;margin-top:var(--learn-s3);font:400 var(--learn-fs-lede) / var(--learn-lh-body) var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .sec-h{align-items:center;gap:var(--learn-s2) 14px;margin-block:var(--learn-space-section) var(--learn-s3);flex-wrap:wrap;display:flex}.learn-root :is(.sec-h h2,.lesson-body>h2){font:700 var(--learn-fs-h2) / 1.3 var(--learn-font-display);letter-spacing:-.01em}.learn-root .sec-h .eyebrow{margin-left:auto}.learn-root :is(.kicker:not(.chapter),.lvl-chip){padding:var(--learn-s1) var(--learn-s3);border:1px solid color-mix(in srgb, var(--learn-accent) 35%, transparent);border-radius:var(--learn-r-pill);background:var(--learn-accent-soft);font:600 var(--learn-fs-label) / 1.5 var(--learn-font-mono);letter-spacing:var(--learn-ls-label);text-transform:uppercase;color:var(--learn-accent);justify-self:start;display:inline-block}.learn-root .lvl-chip{padding:5px var(--learn-s3);border-color:color-mix(in srgb, var(--learn-accent) 40%, transparent);border-radius:var(--learn-r-md);letter-spacing:.05em;font-size:12px}.learn-root .prose{margin-top:var(--learn-space-section)}.learn-root .foot{align-items:center;gap:var(--learn-s3);margin-top:var(--learn-space-section);padding-top:var(--learn-space-block);border-top:1px solid var(--learn-rule);flex-wrap:wrap;display:flex}.learn-root :is(.prev,.next){min-width:0;max-width:100%}.learn-root :is(.pv-t,.nx-t){text-overflow:ellipsis;min-width:0;overflow:hidden}.learn-root :is(.prev,.next,.also) .pn{margin-right:var(--learn-s2);font-weight:500}.learn-root .prev .pn{color:var(--learn-ink-muted)}.learn-root .next .nx-l{font-weight:500}.learn-root .foot-next{justify-content:flex-end;gap:var(--learn-s3);flex-wrap:wrap;min-width:0;max-width:100%;margin-left:auto;display:flex}.learn-root .cta-row{align-items:center;gap:var(--learn-s4);margin-top:var(--learn-s6);flex-wrap:wrap;display:flex}.learn-root .hint{font:400 var(--learn-fs-small) / 1.5 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root :is(.btn,.run,.copy,.retry,.mark-done,.prev,.next){justify-content:center;align-items:center;gap:var(--learn-s2);min-height:var(--learn-control-h);padding:0 var(--learn-s4);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);color:var(--learn-ink);font:600 13px / 1 var(--learn-font-mono);white-space:nowrap;cursor:pointer;background:0 0;text-decoration:none;display:inline-flex}.learn-root :is(.btn,.copy,.retry,.mark-done,.prev):hover{border-color:var(--learn-ink);background:var(--learn-surface-2);color:var(--learn-ink)}.learn-root :is(.btn.primary,.run,.next){border-color:var(--learn-accent);background:var(--learn-accent);color:var(--learn-on-accent)}.learn-root :is(.btn.primary,.run,.next):hover{border-color:var(--learn-accent-hover);background:var(--learn-accent-hover);color:var(--learn-on-accent)}.learn-root :is(.btn.lg,.foot :is(.prev,.next,.mark-done,.also)){min-height:var(--learn-control-h-lg);padding:0 var(--learn-s5);font-size:14px}.learn-root .stat-row{gap:var(--learn-s2) var(--learn-s5);margin-top:var(--learn-s5);font:500 13px / 1.4 var(--learn-font-mono);color:var(--learn-ink-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.learn-root .stat-row b{color:var(--learn-ink);font-weight:600}.learn-root .path{gap:var(--learn-s4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.learn-root :is(.track,.howto>div,.agents,.course-card){border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface)}.learn-root .track{transition:border-color var(--learn-dur-fast) var(--learn-ease-out), transform var(--learn-dur-fast) var(--learn-ease-out);overflow:hidden}.learn-root .track:has(a:hover){border-color:var(--learn-ink);transform:translateY(-2px)}.learn-root [data-learn-reveal=pending]>*{opacity:0;transform:translateY(8px)}.learn-root [data-learn-reveal=in]>*{transition:opacity var(--learn-dur-slow) var(--learn-ease-out), transform var(--learn-dur-slow) var(--learn-ease-out);transition-delay:calc(var(--learn-reveal-i,0) * var(--learn-stagger))}.learn-root .track-h{padding:var(--learn-s3) var(--learn-s4);border-bottom:1px solid var(--learn-rule);font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .track ol{padding:var(--learn-s2)}.learn-root .track a{color:var(--learn-ink)}.learn-root .howto{gap:var(--learn-s4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.learn-root .howto>div{background:0 0;border:0;padding:0}.learn-root .howto-icon{color:var(--learn-ink-muted)}.learn-root .howto-icon.gate{color:var(--learn-warn)}.learn-root .howto-icon.verified{color:var(--learn-role-verified)}.learn-root :is(.howto,.course-card) h3{margin-top:var(--learn-s3);font:600 17px / 1.3 var(--learn-font-body)}.learn-root :is(.howto,.agents) p{margin-top:var(--learn-s2);color:var(--learn-ink-muted)}.learn-root .agents{align-items:center;gap:var(--learn-s6);padding:var(--learn-s6);grid-template-columns:minmax(0,1fr) auto;display:grid}.learn-root .agents h3{font:600 19px / 1.3 var(--learn-font-body)}.learn-root .agents.teaser{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--learn-dur-fast) var(--learn-ease-out)}.learn-root .agents.teaser:hover{border-color:var(--learn-ink)}.learn-root .agents.teaser{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.learn-root .teaser .tz-gate{border-radius:var(--learn-r-md);background:var(--learn-warn-soft);width:44px;height:44px;color:var(--learn-warn);place-items:center;display:grid}.learn-root .teaser .tz-l{margin-bottom:var(--learn-s1);font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-warn);display:block}.learn-root .teaser .tz-t{font:600 19px / 1.3 var(--learn-font-body);display:block}.learn-root .teaser .tz-p{margin-top:var(--learn-s2);color:var(--learn-ink-muted);display:block}.learn-root .teaser .btn{justify-self:start}.learn-root .agents .links{gap:var(--learn-s3);flex-wrap:wrap;display:flex}.learn-root .mono{font-family:var(--learn-font-mono)}.learn-root .courses{gap:var(--learn-s4);margin-top:var(--learn-s10);display:grid}.learn-root .course-card{gap:var(--learn-s2);padding:var(--learn-s6);color:var(--learn-ink);text-decoration:none;display:grid}.learn-root .course-card h2{font:600 var(--learn-fs-h2) / 1.2 var(--learn-font-mono);letter-spacing:-.02em}.learn-root .course-card p{max-width:var(--learn-measure);color:var(--learn-ink-muted)}.learn-root .course-card h2 a{color:var(--learn-ink);text-decoration:none}.learn-root .course-card:hover{border-color:var(--learn-ink)}.learn-root .course-card h2 a:hover{color:var(--learn-accent);text-decoration:underline}.learn-root :is(.btn,.theme,.home,.prev,.next,.pn-btn,.course-card,.track a,.ft-row a,.byline a){transition:color var(--learn-dur-fast) var(--learn-ease-out), background-color var(--learn-dur-fast) var(--learn-ease-out), border-color var(--learn-dur-fast) var(--learn-ease-out), box-shadow var(--learn-dur-fast) var(--learn-ease-out), transform var(--learn-dur-fast) var(--learn-ease-out)}.learn-root :is(.btn,.theme,.next,.prev):active{transform:scale(var(--learn-press-scale))}.learn-root .enter{animation:learn-enter var(--learn-dur-base) var(--learn-ease-out) both}@keyframes learn-enter{0%{opacity:0;transform:translateY(4px)}}html:has(.learn-root)::view-transition-old(root){animation-duration:var(--learn-dur-base);animation-timing-function:var(--learn-ease-in-out)}html:has(.learn-root)::view-transition-new(root){animation-duration:var(--learn-dur-base);animation-timing-function:var(--learn-ease-in-out)}@media (max-width:1180px){.learn-root .path{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.learn-root .tb-row{gap:var(--learn-s3);padding:0 var(--learn-s4)}.learn-root :is(.course-id .by,.course-id .mark,.home,.theme .tl){display:none}.learn-root .course-id .title{font-size:15px}.learn-root .main{padding:var(--learn-s8) var(--learn-gutter) var(--learn-space-footer)}.learn-root :is(.l-head,.hub-head){gap:var(--learn-s5);padding-bottom:var(--learn-s6);grid-template-columns:1fr}.learn-root .sec-h{margin-top:var(--learn-s10);flex-wrap:wrap}.learn-root .sec-h .eyebrow{flex-basis:100%;margin-left:0}.learn-root .agents.teaser{gap:var(--learn-s4);grid-template-columns:auto minmax(0,1fr)}.learn-root .teaser .btn{grid-column:1/-1}.learn-root .foot{flex-direction:column;align-items:stretch}.learn-root .foot-next{flex-direction:column;order:-1;margin-left:0}.learn-root .pagenav ol{padding-inline:var(--learn-s3)}.learn-root :is(.path,.howto,.agents){grid-template-columns:1fr}.learn-root .footer{padding:0 var(--learn-gutter) var(--learn-s8)}.learn-root .ft-inner{grid-template-columns:minmax(0,1fr)}.learn-root .ft-links{justify-self:start}}.learn-root .nowrap{white-space:nowrap}@media (prefers-reduced-motion:reduce){.learn-root .track:has(a:hover){transform:none}}
html:has(>body .learn-root) body:before{content:none}.learn-root .lesson-body{grid-template-columns:min(var(--learn-measure), 100%) minmax(0, 1fr);max-width:none;display:grid}.learn-root .lesson-body>*{grid-column:1;min-width:0;margin-block:0}.learn-root .lesson-body>:is(.sec-h,.codecard,.compare,.table-wrap,.lesson-predict,.stepper,.drill,.decoder,.fc-wrap,.glossary,.term-grid,.diagram,.stages,.card-grid,.rules,.decide){grid-column:1/-1}.learn-root .lesson-body>.decide+.decide{margin-top:0}.learn-root .lesson-body>*+*{margin-top:var(--learn-space-block)}.learn-root .lesson-body>:is(p,ul,ol)+:is(p,ul,ol){margin-top:var(--learn-s4)}.learn-root .lesson-body>:is(h2,.sec-h,.kicker){margin-top:var(--learn-space-section)}.learn-root .lesson-body>:first-child{margin-top:0}.learn-root .lesson-body>.kicker+:is(h2,.sec-h){margin-top:var(--learn-s3)}.learn-root .kicker{font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .kicker.chapter{align-items:flex-end;gap:var(--learn-s4);padding-top:var(--learn-s5);border-top:2px solid var(--learn-ink);display:flex}.learn-root .ch-n{font:700 56px / .85 var(--learn-font-display);letter-spacing:-.04em;color:var(--learn-ink)}.learn-root .ch-t{gap:2px;display:grid}.learn-root .ch-name:first-letter{text-transform:uppercase}.learn-root .ch-name{color:var(--learn-ink)}.learn-root .lesson-body>.kicker.chapter+h2{margin-top:var(--learn-s4);font-size:calc(var(--learn-fs-h2) * 1.25)}.learn-root .lesson-body>h2{font:700 var(--learn-fs-h2) / 1.3 var(--learn-font-display);letter-spacing:-.01em}.learn-root .lesson-body>h3{font:600 var(--learn-fs-h3) / 1.4 var(--learn-font-display)}.learn-root .lesson-body>:is(p,ul:not([class]),ol:not([class]),.lvl-desc){color:var(--learn-ink-muted)}.learn-root .lesson-body :where(p,li) :where(strong,b){color:var(--learn-ink)}.learn-root .lesson-body>:is(.sec-h,h2,h3)+*{margin-top:var(--learn-s4)}.learn-root .lesson-body :where(ul,ol){padding-left:var(--learn-s6)}.learn-root .lesson-body :where(ul){list-style:outside}.learn-root .lesson-body :where(ol){list-style:decimal}.learn-root .lesson-body :where(li)+:where(li){margin-top:var(--learn-s2)}.learn-root .lesson-body :where(li)::marker{color:var(--learn-ink-muted);font-family:var(--learn-font-mono)}.learn-root .lesson-body :where(strong,b){font-weight:600}.learn-root .lesson-body :where(a){color:var(--learn-accent);transition:color var(--learn-dur-fast) var(--learn-ease-out);text-decoration:underline;text-decoration-thickness:1px}.learn-root .lesson-body :where(a:hover){color:var(--learn-ink)}.learn-root .lesson-body :where(:not(pre)>code){padding:1px var(--learn-s1);border:1px solid var(--learn-rule);border-radius:var(--learn-r-sm);background:var(--learn-surface-2);font:400 .9em / 1 var(--learn-font-mono)}.learn-root .lesson-body :where(blockquote){padding-left:var(--learn-s4);border-left:3px solid var(--learn-rule-strong);color:var(--learn-ink-muted)}.learn-root .lesson-body :where(hr){margin:var(--learn-s10) 0;border:0;border-top:1px solid var(--learn-rule)}.learn-root .lvl-desc{color:var(--learn-ink-muted)}.learn-root .kick{margin-top:var(--learn-s4);font:400 21px / 1.35 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .facts{gap:var(--learn-s2) var(--learn-s6);margin-top:var(--learn-s5);font:500 13px / 1.2 var(--learn-font-mono);color:var(--learn-ink-muted);flex-wrap:wrap;display:flex}.learn-root .codecard{border:1px solid var(--learn-code-rule);border-radius:var(--learn-r-lg);background:var(--learn-code-bg);overflow:hidden}.learn-root .cc-bar{align-items:center;gap:var(--learn-s4);padding:var(--learn-s3) var(--learn-s5);border-bottom:1px solid var(--learn-code-rule);background:var(--learn-output-bg);display:flex}.learn-root .cc-title{font:600 17px / 1.3 var(--learn-font-body);margin:0}.learn-root .cc-actions{gap:var(--learn-s3);margin-left:auto;display:inline-flex}.learn-root .cc-chip{padding:var(--learn-s1) var(--learn-s2);border:1px solid var(--learn-rule);border-radius:var(--learn-r-sm);font:500 12.5px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);white-space:nowrap}.learn-root .cc-chip.ok{color:var(--learn-role-verified);border-color:currentColor}.learn-root .cc-chip.err{color:var(--learn-role-stop);border-color:currentColor}.learn-root .run{letter-spacing:.04em}.learn-root .run:before{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:8px solid}.learn-root :is(.run,.copy){transition:color var(--learn-dur-fast) var(--learn-ease-out), background-color var(--learn-dur-fast) var(--learn-ease-out), border-color var(--learn-dur-fast) var(--learn-ease-out), transform var(--learn-dur-fast) var(--learn-ease-out)}.learn-root :is(.run,.copy):active{transform:scale(var(--learn-press-scale))}.learn-root .cc-body{grid-template-columns:minmax(0,1fr);display:grid}.learn-root .code{min-width:0;padding:var(--learn-s4) 0;background:var(--learn-code-bg);counter-reset:ln;font:400 14px / 1.75 var(--learn-font-mono);font-variant-ligatures:none;margin:0;overflow-x:auto}.learn-root .code::-webkit-scrollbar{height:10px}.learn-root .code::-webkit-scrollbar-track{background:var(--learn-output-bg)}.learn-root .code::-webkit-scrollbar-thumb{border:2px solid var(--learn-output-bg);border-radius:var(--learn-r-pill);background:var(--learn-rule-strong)}@supports not selector(::-webkit-scrollbar){.learn-root .code{scrollbar-color:var(--learn-rule-strong) var(--learn-output-bg);scrollbar-width:thin}}.learn-root .code .ln{width:max-content;min-width:100%;padding-right:var(--learn-s5);white-space:pre;display:block}.learn-root .code .ln:before{content:counter(ln);counter-increment:ln;width:44px;margin-right:var(--learn-s3);padding-right:var(--learn-s4);color:var(--learn-ink-muted);text-align:right;border-right:3px solid #0000;display:inline-block}.learn-root .cc-code{background:var(--learn-code-bg);flex-direction:column;min-width:0;display:flex}.learn-root .cc-code .code{flex:1}.learn-root :is(.code .ln,.legend>span)[data-role=context]{--learn-mark:var(--learn-role-context);--learn-mark-soft:var(--learn-role-context-soft)}.learn-root :is(.code .ln,.legend>span)[data-role=model]{--learn-mark:var(--learn-role-model);--learn-mark-soft:var(--learn-role-model-soft)}.learn-root :is(.code .ln,.legend>span)[data-role=harness]{--learn-mark:var(--learn-role-harness);--learn-mark-soft:var(--learn-role-harness-soft)}.learn-root :is(.code .ln,.legend>span)[data-role=stop]{--learn-mark:var(--learn-role-stop);--learn-mark-soft:var(--learn-role-stop-soft)}.learn-root :is(.code .ln,.legend>span)[data-role=verified]{--learn-mark:var(--learn-role-verified);--learn-mark-soft:var(--learn-role-verified-soft)}.learn-root .code .ln[data-role]{background:var(--learn-mark-soft)}.learn-root .code .ln[data-role]:before{border-right-color:var(--learn-mark)}.learn-root .legend{gap:var(--learn-s2) var(--learn-s5);padding:var(--learn-s3) var(--learn-s5);border-top:1px solid var(--learn-rule);font:500 12.5px / 1.4 var(--learn-font-mono);color:var(--learn-ink-muted);flex-wrap:wrap;display:flex}.learn-root .legend i{width:10px;height:10px;margin-right:var(--learn-s2);vertical-align:-1px;background:var(--learn-mark);display:inline-block}.learn-root .legend .label{color:var(--learn-mark)}.learn-root .code .k{color:var(--learn-syn-keyword)}.learn-root .code .s{color:var(--learn-syn-string)}.learn-root .code .f{color:var(--learn-syn-function)}.learn-root .code .c{color:var(--learn-syn-comment);font-style:italic}.learn-root .out{border-left:1px solid var(--learn-code-rule);background:var(--learn-output-bg);flex-direction:column;min-width:0;display:flex}.learn-root .codecard .out{border-top:1px solid var(--learn-code-rule);border-left:0}.learn-root .codecard .pane-h .label{color:var(--learn-role-verified)}.learn-root .pane-h{align-items:center;gap:var(--learn-s3);padding:var(--learn-s3) var(--learn-s5);border-bottom:1px solid var(--learn-rule);display:flex}.learn-root .pane-h .meta{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);margin-left:auto}.learn-root .out-empty{padding:var(--learn-s5);font:400 var(--learn-fs-small) / 1.5 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .stdout{padding:var(--learn-s4) var(--learn-s5);color:var(--learn-syn-output);font:400 13.5px / 1.75 var(--learn-font-mono);font-variant-ligatures:none;overflow-x:auto}.learn-root .stdout .o{white-space:pre-wrap;animation:learn-line-in var(--learn-dur-fast) var(--learn-ease-out) both;animation-delay:calc(var(--learn-line-i,0) * var(--learn-stagger));display:block}.learn-root .stdout.tb .o{white-space:pre}.learn-root .stdout .o.exc{color:var(--learn-role-stop);font-weight:600}@keyframes learn-line-in{0%{opacity:0}}.learn-root .stages{gap:var(--learn-s4) 14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:0;list-style:none;display:grid}.learn-root .stage{--learn-stage-c:var(--learn-ink);padding:var(--learn-s5);border:1px solid var(--learn-rule);border-top:4px solid var(--learn-stage-c);border-radius:var(--learn-r-lg);background:var(--learn-surface);margin:0}.learn-root .stage[data-role=context]{--learn-stage-c:var(--learn-role-context)}.learn-root .stage[data-role=model]{--learn-stage-c:var(--learn-role-model)}.learn-root .stage[data-role=harness]{--learn-stage-c:var(--learn-role-harness)}.learn-root .stage[data-role=stop]{--learn-stage-c:var(--learn-role-stop)}.learn-root .stage[data-role=verified]{--learn-stage-c:var(--learn-role-verified)}.learn-root .stage .label{color:var(--learn-stage-c)}.learn-root .stage h3{margin-top:var(--learn-s3);font:600 20px / 1.1 var(--learn-font-mono);letter-spacing:-.02em}.learn-root .stage .label+h3{margin-top:var(--learn-s3)}.learn-root .stage>div{margin-top:var(--learn-s3);font:400 15px / 1.5 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .loopback{padding:var(--learn-s3);border:1px dashed var(--learn-rule-strong);border-radius:var(--learn-r-md);font:500 13px / 1.3 var(--learn-font-mono);color:var(--learn-ink-muted);text-align:center;grid-column:1/-1;margin:0}.learn-root .loopback b{color:var(--learn-ink)}.learn-root .term-grid{gap:0 var(--learn-s8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.learn-root .term-card{padding:var(--learn-s5) 0;border-top:1px solid var(--learn-rule)}.learn-root .term-card dt{font:600 16px / 1.3 var(--learn-font-mono);letter-spacing:-.01em}.learn-root .term-card dd{margin-top:var(--learn-s2);font-size:15.5px;line-height:1.55}.learn-root .term-card .used{margin-top:var(--learn-s2);color:var(--learn-ink-muted);font-size:14.5px}.learn-root .term-card .used-l{margin-right:var(--learn-s1);font-weight:600}.learn-root .rules{border:1px solid color-mix(in srgb, var(--learn-accent) 40%, transparent);border-radius:var(--learn-r-lg);background:color-mix(in srgb, var(--learn-accent) 7%, var(--learn-paper));padding:18px 22px}.learn-root .rules h3{font:600 11.5px / 1.5 var(--learn-font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--learn-accent)}.learn-root .rules li{font-size:var(--learn-fs-body)}.learn-root .rules ol{margin-top:var(--learn-s4);counter-reset:rule;padding:0;list-style:none}.learn-root .rules li{padding:var(--learn-s3) 0 0 32px;border-top:1px dashed var(--learn-rule);counter-increment:rule;position:relative}.learn-root .rules li+li{margin-top:var(--learn-s3)}.learn-root .rules li:before{content:counter(rule, decimal-leading-zero);top:var(--learn-s3);font:600 13px / 1.9 var(--learn-font-mono);color:var(--learn-accent);position:absolute;left:0}.learn-root :is(.try,.callout,.story){max-width:var(--learn-measure);border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);font-size:var(--learn-fs-small);color:var(--learn-ink-muted);padding:14px 18px}.learn-root .aside-h{align-items:center;gap:var(--learn-s2);font:600 var(--learn-fs-label) / 1.4 var(--learn-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--learn-accent);margin-bottom:6px;display:flex}.learn-root .aside-h svg{color:currentColor;flex:none}.learn-root :is(.try,.callout,.story) :where(strong,b){color:var(--learn-ink)}.learn-root .callout.trap{border-color:color-mix(in srgb, var(--learn-warn) 35%, transparent);background:var(--learn-warn-soft)}.learn-root .callout.trap .aside-h,.learn-root .callout.trap .aside-h svg{color:var(--learn-warn)}.learn-root .story{background:0 0;border:0;padding:0}.learn-root .story .aside-h{color:var(--learn-ink-muted)}.learn-root .story-body{font-size:var(--learn-fs-lede);line-height:1.6}.learn-root :is(.try,.callout,.story) :where(p)+:where(p){margin-top:var(--learn-s3)}.learn-root .own{max-width:var(--learn-measure);padding-top:var(--learn-s5);border-top:2px solid var(--learn-ink);margin-inline:0}.learn-root .own figcaption{font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .own blockquote{margin:var(--learn-s3) 0 0;font:500 var(--learn-fs-h3) / 1.45 var(--learn-font-body);letter-spacing:-.01em;color:var(--learn-ink);border:0;padding:0}.learn-root .journey{gap:var(--learn-s3);counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));padding:0;list-style:none;display:grid}.learn-root .journey li{padding:var(--learn-s4);border-top:2px solid var(--learn-ink);counter-increment:step;margin:0}.learn-root .journey li:before{content:counter(step, decimal-leading-zero);font:600 13px / 1 var(--learn-font-mono);color:var(--learn-accent);display:block}.learn-root .journey h3{margin-top:var(--learn-s3);font:600 17px / 1.3 var(--learn-font-body)}.learn-root .journey li>div{margin-top:var(--learn-s2);color:var(--learn-ink-muted);font-size:15.5px}.learn-root .compare{gap:var(--learn-s4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.learn-root .column{border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);color:var(--learn-ink-muted);padding:17px 19px;font-size:14px}.learn-root .column h3{font:600 16.5px / 1.3 var(--learn-font-display);color:var(--learn-ink)}.learn-root .column .sub{margin-top:var(--learn-s1);font:500 13px / 1.3 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .column ul{margin-top:var(--learn-s4);padding:0;list-style:none}.learn-root .column li{padding:var(--learn-s2) 0;border-top:1px dashed var(--learn-rule)}.learn-root .column li+li{margin-top:0}.learn-root .card-grid{gap:var(--learn-s3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0;list-style:none;display:grid}.learn-root .mini-card{padding:15px var(--learn-s4);border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);margin:0}.learn-root .mini-card h3{font:600 13px / 1.4 var(--learn-font-mono);color:var(--learn-accent)}.learn-root .mini-card>div{color:var(--learn-ink-muted);margin-top:7px;font-size:13.5px;line-height:1.55}.learn-root .decide{align-items:baseline;gap:var(--learn-s4);padding:var(--learn-s4) 0;border-top:1px solid var(--learn-rule-strong);grid-template-columns:minmax(0,1.4fr) auto minmax(0,1fr);display:grid}.learn-root .decide+.decide{border-top-style:dashed;border-top-color:var(--learn-rule)}.learn-root .decide .need{font-size:16px}.learn-root .decide .choice{font:600 15px / 1.3 var(--learn-font-body)}.learn-root .decide .why{color:var(--learn-ink-muted);font-size:15px}.learn-root .diagram{padding:var(--learn-s5);border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);margin-inline:0}.learn-root .diagram-svg svg{width:100%;height:auto;display:block}.learn-root .diagram figcaption{margin-top:var(--learn-s3);font:400 11px / 1.5 var(--learn-font-mono);color:var(--learn-ink-muted);text-align:center}.learn-root .table-wrap{border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);font-size:13.5px;overflow-x:auto}.learn-root .table-wrap table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.5}.learn-root .table-wrap th{border-bottom:1px solid var(--learn-rule);background:var(--learn-surface-2);font:600 var(--learn-fs-label) / 1.5 var(--learn-font-mono);letter-spacing:.07em;color:var(--learn-accent);text-align:left;text-transform:uppercase;padding:11px 14px}.learn-root .table-wrap td{border-top:1px solid var(--learn-rule);color:var(--learn-ink-muted);vertical-align:top;padding:10px 14px}.learn-root .table-wrap td:first-child{color:var(--learn-ink);font-weight:600}.learn-root .table-wrap tr:first-child td{border-top:0}.learn-root .qa{gap:9px;display:grid}.learn-root .qa details{border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);overflow:hidden}.learn-root .qa details[open] summary{border-bottom:1px solid var(--learn-rule)}.learn-root .qa summary{align-items:center;gap:var(--learn-s3);padding:13px var(--learn-s4);cursor:pointer;font:600 14.5px / 1.5 var(--learn-font-body);list-style:none;display:flex}.learn-root .qa summary::-webkit-details-marker{display:none}.learn-root .qa .q-icon{color:var(--learn-ink-muted);flex:none}.learn-root .qa .q-text{flex:1}.learn-root .qa .q-chev{color:var(--learn-ink-muted);transition:transform var(--learn-dur-fast) var(--learn-ease-out);flex:none}.learn-root .qa summary:hover :is(.q-icon,.q-chev),.learn-root .qa details[open] .q-icon{color:var(--learn-accent)}.learn-root .qa details[open] .q-chev{transform:rotate(180deg)}.learn-root .qa .a{max-width:var(--learn-measure);padding:13px var(--learn-s4) 15px 48px;font-size:var(--learn-fs-small);color:var(--learn-ink-muted)}.learn-root .qa details[open] .a{animation:learn-line-in var(--learn-dur-fast) var(--learn-ease-out)}.learn-root .qa .a :where(p)+:where(p){margin-top:var(--learn-s3)}@media (max-width:1180px){.learn-root .term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.learn-root .cc-bar{gap:var(--learn-s2) var(--learn-s3);padding:var(--learn-s3) var(--learn-s4);flex-wrap:wrap}.learn-root .cc-title{flex-basis:100%;order:5;font-size:16px}.learn-root .code{font-size:12.5px}.learn-root .code .ln:before{width:32px;margin-right:var(--learn-s2);padding-right:var(--learn-s3)}.learn-root .out{border-top:1px solid var(--learn-code-rule);border-left:0}.learn-root .stdout{padding:var(--learn-s3) var(--learn-s4);font-size:12.5px}.learn-root .stages{gap:var(--learn-s3);grid-template-columns:minmax(0,1fr)}.learn-root .stage{gap:var(--learn-s1) var(--learn-s3);padding:var(--learn-s4);grid-template-columns:92px minmax(0,1fr);display:grid}.learn-root .stage .label{padding-top:var(--learn-s1);grid-row:1/span 2}.learn-root .stage h3,.learn-root .stage .label+h3{margin-top:0;font-size:18px}.learn-root .stage>div{grid-column:2;margin-top:0}.learn-root :is(.term-grid,.compare){grid-template-columns:minmax(0,1fr)}.learn-root .decide{gap:var(--learn-s2);grid-template-columns:minmax(0,1fr)}.learn-root .decide .choice{justify-self:start}.learn-root .qa .a{padding-left:var(--learn-s2)}.learn-root .kick{font-size:18px}.learn-root .diagram-svg{overflow-x:auto}.learn-root .diagram-svg svg{min-width:560px}}
.learn-root .meter{gap:var(--learn-s1);grid-auto-columns:10px;grid-auto-flow:column;display:inline-grid}.learn-root .meter i{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);height:14px}.learn-root .meter i.on{background:var(--learn-role-verified);border-color:var(--learn-role-verified)}.learn-root .meter[data-live] i{transition:background-color var(--learn-dur-slow) var(--learn-ease-out), border-color var(--learn-dur-slow) var(--learn-ease-out);transition-delay:calc(var(--i,0) * var(--learn-stagger))}.learn-root .progress .pshort{display:none}.learn-root .done.is-done{background:var(--learn-role-verified);border-color:var(--learn-role-verified);place-items:center;display:grid}.learn-root .done.is-done:after{content:"✓";color:var(--learn-on-ink);font:600 11px / 1 var(--learn-font-mono);animation:learn-fade var(--learn-dur-fast) var(--learn-ease-out)}@keyframes learn-fade{0%{opacity:0}}.learn-root .mark-done{gap:var(--learn-s3);letter-spacing:.03em}.learn-root .mark-done .done{width:16px;height:16px}.learn-root .mark-done:hover{background:var(--learn-surface-2)}.learn-root .mark-done[aria-pressed=true]{border-color:var(--learn-role-verified);color:var(--learn-role-verified)}.learn-root .checklist{gap:var(--learn-s2);padding:0;list-style:none;display:grid}.learn-root .checklist .ck{gap:var(--learn-s3);padding:var(--learn-s3) var(--learn-s4);border:1px solid var(--learn-rule);border-radius:var(--learn-r-md);background:var(--learn-surface);cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:baseline;display:grid;position:relative}.learn-root .checklist .ck:hover{border-color:var(--learn-ink)}.learn-root .checklist input{opacity:0;pointer-events:none;position:absolute}.learn-root .checklist .done{align-self:start;width:16px;height:16px;margin-top:4px}.learn-root .checklist input:focus-visible+.done{outline:2px solid var(--learn-focus);outline-offset:3px}.learn-root .checklist .ck.is-done .txt{color:var(--learn-ink-muted)}.learn-root .dash{gap:var(--learn-s3);margin-top:var(--learn-s3);grid-template-columns:minmax(0,1fr);display:grid}.learn-root .stack{gap:var(--learn-s3);align-content:start;display:grid}.learn-root .panel{border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);overflow:hidden}.learn-root .panel .pbody{padding:var(--learn-s4) var(--learn-s5) var(--learn-s5)}.learn-root .panel.data.first{margin-top:var(--learn-s10)}.learn-root .upnext{gap:var(--learn-s4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.learn-root .upnext p{margin-top:var(--learn-s2);color:var(--learn-ink-muted)}.learn-root .upnext p.nx-t{font:600 17px / 1.3 var(--learn-font-display);color:var(--learn-ink);margin-top:0}.learn-root .panel:has(.upnext){border-color:color-mix(in srgb, var(--learn-accent) 40%, transparent);background:color-mix(in srgb, var(--learn-accent) 8%, var(--learn-paper))}.learn-root .upnext .btn.primary{border-color:color-mix(in srgb, var(--learn-accent) 50%, transparent);background:color-mix(in srgb, var(--learn-accent) 18%, var(--learn-paper));color:var(--learn-ink);font-family:var(--learn-font-display)}.learn-root .upnext .btn.primary:hover{border-color:var(--learn-accent);background:color-mix(in srgb, var(--learn-accent) 26%, var(--learn-paper));color:var(--learn-ink)}.learn-root .lesson-rows{margin:var(--learn-s2) 0 0;padding:0;list-style:none}.learn-root .lesson-row{gap:var(--learn-s3);min-height:36px;padding:var(--learn-s2);border-top:1px dashed var(--learn-rule);color:var(--learn-ink);font:400 15px / 1.2 var(--learn-font-body);grid-template-columns:30px minmax(0,1fr) 90px 16px;align-items:center;text-decoration:none;display:grid}.learn-root a.lesson-row{transition:background-color var(--learn-dur-fast) var(--learn-ease-out)}.learn-root a.lesson-row:hover{background:var(--learn-surface-2)}.learn-root a.lesson-row:active{background:var(--learn-rule)}.learn-root .lesson-row .pn,.learn-root .lesson-row .when{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .lesson-row .when{text-align:right}.learn-root .drill-stats{gap:var(--learn-s3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.learn-root .drill-stats>div{padding:var(--learn-s3);border:1px solid var(--learn-rule);border-radius:var(--learn-r-md)}.learn-root .drill-stats dt{white-space:nowrap}.learn-root .drill-stats dd{margin:var(--learn-s2) 0 0;font:600 22px / 1 var(--learn-font-mono)}.learn-root .drill-stats dd small{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .drill-stats .acc{border:1px solid var(--learn-rule);background:var(--learn-surface-2);height:6px}.learn-root .acc i{height:100%;width:var(--p);background:var(--learn-role-verified);display:block}.learn-root .dashboard .stats{gap:var(--learn-s3);margin-top:var(--learn-s5);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.learn-root .dashboard .stats>div{padding:14px var(--learn-s4);border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);flex-direction:column;display:flex}.learn-root .dashboard .stats dt{margin-top:var(--learn-s1);font:400 var(--learn-fs-label) / 1.5 var(--learn-font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--learn-ink-muted);order:1}.learn-root .dashboard .stats dd{font:700 26px / 1.1 var(--learn-font-display);letter-spacing:-.02em}.learn-root .dashboard .stats dd small{font:500 13px / 1 var(--learn-font-display);letter-spacing:0;color:var(--learn-ink-muted);margin-left:3px}.learn-root .dashboard .stats .stat-track{border:1px solid var(--learn-rule);border-radius:var(--learn-r-pill);background:var(--learn-surface-2);order:2;height:6px;margin-top:10px;overflow:hidden}.learn-root .stat-track i{background:var(--learn-accent);height:100%;display:block}.learn-root :is(.dashboard .stats dd,.drill-stats dd){animation:learn-fade var(--learn-dur-fast) var(--learn-ease-out)}.learn-root .notice{margin-top:var(--learn-s3);font:400 var(--learn-fs-small) / 1.5 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .notice:empty{display:none}.learn-root .notice.flush{margin-top:0}.learn-root .notice.warn{padding:var(--learn-s3) var(--learn-s4);border-radius:var(--learn-r-md);background:var(--learn-warn-soft);color:var(--learn-ink)}.learn-root .data-actions{gap:var(--learn-s3);flex-wrap:wrap;display:flex}.learn-root .data-actions.spaced{margin-top:var(--learn-s3)}.learn-root .btn.danger{border-color:var(--learn-role-stop);color:var(--learn-role-stop)}.learn-root .btn.danger:hover{background:var(--learn-role-stop-soft);border-color:var(--learn-role-stop);color:var(--learn-role-stop)}.learn-root .confirm{margin-top:var(--learn-s4);padding:var(--learn-s4);border:1px solid var(--learn-role-stop);border-radius:var(--learn-r-md);animation:learn-fade var(--learn-dur-fast) var(--learn-ease-out)}.learn-root .confirm p{margin:0 0 var(--learn-s3)}.learn-root :is(.mark-done,.btn.danger):active{transform:scale(var(--learn-press-scale))}.learn-root .mark-done{transition:color var(--learn-dur-fast) var(--learn-ease-out), background-color var(--learn-dur-fast) var(--learn-ease-out), border-color var(--learn-dur-fast) var(--learn-ease-out), transform var(--learn-dur-fast) var(--learn-ease-out)}@media (max-width:1180px){.learn-root .dash{grid-template-columns:1fr}}@media (max-width:860px){.learn-root .progress :is(.ptxt,.meter){clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.learn-root .progress .pshort{font:600 13px / 1 var(--learn-font-mono);color:var(--learn-role-verified);display:inline}.learn-root .drill-stats,.learn-root .upnext{grid-template-columns:1fr}.learn-root .lesson-row{grid-template-columns:30px minmax(0,1fr) 60px 16px}}
:where(.learn-root) :where(fieldset){border:0;min-width:0;margin:0;padding:0}.learn-root .label.stop{color:var(--learn-role-stop)}.learn-root .label.keep-case{text-transform:none}.learn-root :is(kbd,.kbd){min-width:1.6em;padding:3px var(--learn-s1);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);font:600 12px / 1 var(--learn-font-mono);text-align:center;border-bottom-width:2px;display:inline-block}.learn-root :is(.vbtn,.btn) .kbd{border-color:currentColor}.learn-root .stdout .o.goal{color:var(--learn-role-verified)}.learn-root .empty{padding:var(--learn-s8) var(--learn-s5);border:1px dashed var(--learn-rule-strong);border-radius:var(--learn-r-lg);color:var(--learn-ink-muted);text-align:center}.learn-root .empty.flush{margin:var(--learn-s5)}.learn-root .count{font:500 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .pcard{margin-top:var(--learn-s6);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface);overflow:hidden}.learn-root .pcard.flat{border:0;border-radius:0;margin-top:0}.learn-root .pc-head{align-items:center;gap:var(--learn-s2) var(--learn-s4);padding:var(--learn-s4) var(--learn-s5);border-bottom:1px solid var(--learn-rule-strong);flex-wrap:wrap;display:flex}.learn-root .pc-head>.label{font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);letter-spacing:0;text-transform:none;color:var(--learn-warn)}.learn-root .pc-head .ttl{font:600 17px / 1.2 var(--learn-font-body)}.learn-root .pc-head .step{font:500 13px / 1.3 var(--learn-font-mono);color:var(--learn-ink-muted);margin-left:auto}.learn-root .pc-grid{grid-template-columns:minmax(0,1fr);display:grid}.learn-root .result{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);display:grid}.learn-root .pc-code{background:var(--learn-code-bg);min-width:0}.learn-root .pc-q{min-width:0;padding:var(--learn-s6) var(--learn-s8) var(--learn-s8)}.learn-root .pc-q h3{font:600 21px / 1.4 var(--learn-font-body);letter-spacing:-.01em}.learn-root .options{gap:var(--learn-s3);margin-top:var(--learn-s6);display:grid}.learn-root .pc-q .options{grid-template-columns:repeat(2,minmax(0,1fr))}.learn-root .options.quiz{padding:0 var(--learn-s5) var(--learn-s5);margin:0}.learn-root .opt{align-items:center;gap:var(--learn-s4);min-height:60px;padding:var(--learn-s3) var(--learn-s4);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-paper);text-align:left;display:flex}.learn-root .opt .key{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);width:28px;height:28px;font:600 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);flex:none;place-items:center;display:grid}.learn-root .opt .lbl{min-width:0;font:600 16px / 1.35 var(--learn-font-mono);letter-spacing:-.02em;white-space:pre-wrap;overflow-wrap:anywhere}.learn-root .options.quiz .opt .lbl{font:400 16px / 1.45 var(--learn-font-body);letter-spacing:0}.learn-root .opt .vd{padding:var(--learn-s1) var(--learn-s2);border-radius:var(--learn-r-sm);font:600 11.5px / 1 var(--learn-font-mono);letter-spacing:.05em;white-space:nowrap;flex:none;margin-left:auto}.learn-root .opt[aria-disabled=true]{cursor:default}.learn-root .opt.is-answer{border-color:var(--learn-role-verified);box-shadow:inset 0 0 0 1px var(--learn-role-verified)}.learn-root .opt.is-answer .key,.learn-root .opt.is-answer .vd{border-color:var(--learn-role-verified);background:var(--learn-role-verified);color:var(--learn-on-ink)}.learn-root .opt.is-wrong{border-style:dashed;border-color:var(--learn-role-stop);background:var(--learn-role-stop-soft)}.learn-root .opt.is-wrong .lbl{color:var(--learn-ink-muted);text-decoration:line-through;text-decoration-thickness:2px}.learn-root .opt.is-wrong .vd{border:1px solid var(--learn-role-stop);color:var(--learn-role-stop)}.learn-root .opt.is-muted{opacity:.55}.learn-root .pc-q .hint{margin-top:var(--learn-s5)}.learn-root .result{border-top:1px solid var(--learn-rule-strong)}.learn-root .verdict{min-width:0;padding:var(--learn-s6) var(--learn-s8) var(--learn-s8);border-right:1px solid var(--learn-rule-strong);flex-direction:column;align-items:flex-start;display:flex}.learn-root .verdict .v-head{margin-top:var(--learn-s3);font:600 24px / 1.2 var(--learn-font-mono);letter-spacing:-.03em}.learn-root .verdict .v-body{max-width:var(--learn-measure);margin-top:var(--learn-s3);color:var(--learn-ink-muted)}.learn-root .verdict .v-body b{color:var(--learn-ink);font-weight:600}.learn-root .pcard.is-answered .v-live{animation:learn-practice-rise var(--learn-dur-base) var(--learn-ease-out) both}.learn-root .v-actions{gap:var(--learn-s3);margin-top:var(--learn-s6);animation:learn-practice-rise var(--learn-dur-base) var(--learn-ease-out) both;flex-wrap:wrap;display:flex}.learn-root .trace{min-width:0;padding:var(--learn-s6) var(--learn-s8) var(--learn-s8)}.learn-root .trace .pane-h{padding:0 0 var(--learn-s3)}.learn-root .trace .stdout{margin-top:var(--learn-s3);border:1px solid var(--learn-rule);border-radius:var(--learn-r-md);background:var(--learn-output-bg)}.learn-root .stdout.masked{min-height:var(--learn-control-h-lg);position:relative}.learn-root .stdout.masked .o{color:var(--learn-ink-muted);filter:blur(5px);opacity:.5;-webkit-user-select:none;user-select:none;animation:none}.learn-root .mask-note{justify-content:center;align-items:center;gap:var(--learn-s2);font:600 var(--learn-fs-small) / 1.3 var(--learn-font-body);color:var(--learn-ink);display:flex;position:absolute;inset:0}.learn-root .drill{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface);overflow:hidden}.learn-root .dr-bar{align-items:center;gap:var(--learn-s3) var(--learn-s6);padding:var(--learn-s3) var(--learn-s5);border-bottom:1px solid var(--learn-rule-strong);flex-wrap:wrap;display:flex}.learn-root .seg{gap:var(--learn-s1);padding:var(--learn-s1);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);background:var(--learn-paper);flex-wrap:wrap;display:inline-flex}.learn-root .seg button{padding:7px var(--learn-s3);border-radius:var(--learn-r-sm);font:500 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);background:0 0;border:0}.learn-root .seg button[aria-pressed=true]{background:var(--learn-ink);color:var(--learn-on-ink)}.learn-root .readouts{gap:var(--learn-s6);margin-left:auto;display:flex}.learn-root .readout{gap:var(--learn-s1);text-align:right;display:grid}.learn-root .readout dd{font:600 20px / 1 var(--learn-font-mono);letter-spacing:-.02em}.learn-root .readout dd small{margin-left:var(--learn-s1);font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .dr-item.is-new{animation:learn-practice-rise var(--learn-dur-base) var(--learn-ease-out) both}.learn-root .dr-q{gap:var(--learn-s2);padding:var(--learn-s5) var(--learn-s5) var(--learn-s4);display:grid}.learn-root .dr-q h3{font:600 19px / 1.4 var(--learn-font-body)}.learn-root .dr-q h3:focus{outline:none}.learn-root .verdicts{align-items:center;gap:var(--learn-s3);padding:var(--learn-s4) var(--learn-s5) var(--learn-s5);border-top:1px solid var(--learn-rule);flex-wrap:wrap;display:flex}.learn-root .vbtn{align-items:center;gap:var(--learn-s3);min-height:var(--learn-control-h-lg);padding:0 var(--learn-s4);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);background:var(--learn-paper);font:600 15px / 1.2 var(--learn-font-mono);display:inline-flex}.learn-root .vbtn[aria-disabled=true]{cursor:default}.learn-root .vbtn.is-answer{border-color:var(--learn-role-verified);box-shadow:inset 0 0 0 1px var(--learn-role-verified)}.learn-root .vbtn.is-wrong{border-style:dashed;border-color:var(--learn-role-stop);background:var(--learn-role-stop-soft);color:var(--learn-ink-muted);text-decoration:line-through}.learn-root .pick{align-items:center;gap:var(--learn-s2);font:400 var(--learn-fs-small) / 1.5 var(--learn-font-body);color:var(--learn-ink-muted);display:inline-flex}.learn-root .excsel{padding:6px var(--learn-s2);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);background:var(--learn-surface);font:500 14px / 1.2 var(--learn-font-mono);color:var(--learn-ink)}.learn-root .dr-result{border-top:1px solid var(--learn-rule-strong);animation:learn-practice-rise var(--learn-dur-base) var(--learn-ease-out) both;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.learn-root .dr-result.solo{grid-template-columns:minmax(0,1fr)}.learn-root .dr-result>div{min-width:0}.learn-root .dr-why{padding:var(--learn-s5) var(--learn-s5) var(--learn-s6)}.learn-root .dr-result:not(.solo) .dr-why{border-right:1px solid var(--learn-rule-strong)}.learn-root .dr-why .v-head{margin-top:var(--learn-s2);font:600 21px / 1.25 var(--learn-font-mono);letter-spacing:-.02em}.learn-root .dr-why p:not(.label,.v-head){max-width:var(--learn-measure);margin-top:var(--learn-s3);color:var(--learn-ink-muted)}.learn-root .dr-why .nextq{margin-top:var(--learn-s5)}.learn-root .dr-result .out{border-left:0}.learn-root .fix{border-top:1px solid var(--learn-rule)}.learn-root .fix .code{background:var(--learn-surface)}.learn-root .dr-keys{padding:var(--learn-s3) var(--learn-s5);border-top:1px solid var(--learn-rule)}.learn-root .decoder-tools{align-items:center;gap:var(--learn-s3);flex-wrap:wrap;display:flex}.learn-root .search{align-items:center;gap:var(--learn-s2);min-width:280px;padding:var(--learn-s2) var(--learn-s3);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);background:var(--learn-surface);flex:0 360px;display:flex}.learn-root .search:focus-within{border-color:var(--learn-focus);box-shadow:0 0 0 1px var(--learn-focus)}.learn-root .search input{min-width:0;font:400 15px / 1.3 var(--learn-font-body);color:var(--learn-ink);background:0 0;border:0;outline:0;flex:1}.learn-root .search input::placeholder{color:var(--learn-ink-muted)}.learn-root .search .k{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .dec-grid{gap:var(--learn-s3);margin-top:var(--learn-s4);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;display:grid}.learn-root .decoder .empty,.learn-root .glossary .empty{margin-top:var(--learn-s4)}.learn-root .dec{align-content:start;gap:var(--learn-s2);padding:var(--learn-s4);border:1px solid var(--learn-rule);border-radius:var(--learn-r-lg);background:var(--learn-surface);text-align:left;display:grid}.learn-root .dec[aria-expanded=true]{border-color:var(--learn-accent);background:var(--learn-accent-soft)}.learn-root .dec .code-name{font:600 15px / 1.2 var(--learn-font-mono);color:var(--learn-role-stop);overflow-wrap:anywhere}.learn-root .dec[aria-expanded=true] .code-name{color:var(--learn-ink)}.learn-root .dec .t{font:400 15px / 1.4 var(--learn-font-body)}.learn-root .dec-open{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface);grid-column:1/-1;overflow:hidden}.learn-root .dec-open:not(.is-new) .stdout .o{animation:none}.learn-root .dec-open.is-new{animation:learn-practice-fade var(--learn-dur-fast) var(--learn-ease-out) both}.learn-root .dec-open .do-head{padding:var(--learn-s4) var(--learn-s5);border-bottom:1px solid var(--learn-rule-strong)}.learn-root .dec-open .do-head h3{margin-top:var(--learn-s2);font:600 19px / 1.3 var(--learn-font-body)}.learn-root .dec-open dl{gap:var(--learn-s2) var(--learn-s4);padding:var(--learn-s4) var(--learn-s5);grid-template-columns:110px minmax(0,1fr);display:grid}.learn-root .dec-open dt{padding-top:5px}.learn-root .dec-open dd{max-width:var(--learn-measure);color:var(--learn-ink-muted)}.learn-root .pair{border-top:1px solid var(--learn-rule-strong);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.learn-root .pair>div{background:var(--learn-output-bg);min-width:0}.learn-root .pair>div+div{border-left:1px solid var(--learn-rule-strong)}.learn-root .pair .code{border-bottom:1px solid var(--learn-rule)}.learn-root .fc-wrap{gap:var(--learn-s6);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);display:grid}.learn-root .fc-wrap>*{min-width:0}.learn-root .filters{gap:var(--learn-s2);flex-wrap:wrap;display:flex}.learn-root .fchip{min-height:var(--learn-control-h);padding:0 var(--learn-s3);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-md);background:var(--learn-surface);font:500 13px / 1 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .fchip[aria-pressed=true]{border-color:var(--learn-accent);background:var(--learn-accent-soft);color:var(--learn-ink)}.learn-root .fc-due{gap:var(--learn-s2) var(--learn-s5);margin-top:var(--learn-s4);font:500 13px / 1.3 var(--learn-font-mono);color:var(--learn-ink-muted);flex-wrap:wrap;display:flex}.learn-root .fc-due b{margin-left:var(--learn-s1);color:var(--learn-ink);font-weight:600}.learn-root .fcard{margin-top:var(--learn-s4);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface);flex-direction:column;display:flex}.learn-root .card-head{align-items:center;gap:var(--learn-s3);padding:var(--learn-s3) var(--learn-s5);border-bottom:1px solid var(--learn-rule);flex-wrap:wrap;display:flex}.learn-root .card-head .meta{font:500 12px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);margin-left:auto}.learn-root .fc-stage{perspective:1400px;flex:1}.learn-root .fc-inner{min-height:300px;transform-style:preserve-3d;transition:transform var(--learn-dur-slow) var(--learn-ease-in-out);display:grid}.learn-root .fc-stage[data-flipped] .fc-inner{transform:rotateY(180deg)}.learn-root .card-face{align-content:center;gap:var(--learn-s4);min-width:0;padding:var(--learn-s8);backface-visibility:hidden;grid-area:1/1;display:grid}.learn-root .card-face.back{align-content:start;transform:rotateY(180deg)}.learn-root .card-face .fc-term{font:600 36px / 1.1 var(--learn-font-mono);letter-spacing:-.03em;overflow-wrap:anywhere}.learn-root .card-face .fc-term.small{font-size:21px}.learn-root .card-face .fc-prompt{color:var(--learn-ink-muted)}.learn-root .back-dl{gap:var(--learn-s2);display:grid}.learn-root .back-dl dt:not(:first-child){margin-top:var(--learn-s2)}.learn-root .back-dl dd{max-width:var(--learn-measure)}.learn-root .back-dl .say{padding:var(--learn-s3) var(--learn-s4);border-radius:var(--learn-r-md);background:var(--learn-surface-2);font:500 16px / 1.5 var(--learn-font-mono)}.learn-root .card-face .code{border-radius:var(--learn-r-md)}.learn-root .card-actions{gap:var(--learn-s3);padding:var(--learn-s4) var(--learn-s5);border-top:1px solid var(--learn-rule);flex-wrap:wrap;display:flex}.learn-root .btn.again{border-color:var(--learn-role-stop);color:var(--learn-role-stop)}.learn-root .btn.got{border-color:var(--learn-role-verified);color:var(--learn-role-verified)}.learn-root .fc-empty{justify-items:center;gap:var(--learn-s4);margin-top:var(--learn-s4);display:grid}.learn-root .fc-status{min-height:1.5em;margin-top:var(--learn-s3);font:400 var(--learn-fs-small) / 1.5 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .fc-side>.ui-label{padding-top:10px}.learn-root .boxes{margin-top:var(--learn-s4);padding:var(--learn-s4) var(--learn-s5) var(--learn-s5);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface)}.learn-root .box-row{align-items:center;gap:var(--learn-s3);border-top:1px dashed var(--learn-rule);height:32px;font:500 12.5px / 1 var(--learn-font-mono);color:var(--learn-ink-muted);grid-template-columns:60px minmax(0,1fr) 40px 70px;display:grid}.learn-root .box-row.head{border-top:0}.learn-root .box-row b{color:var(--learn-ink);text-align:right;font-weight:600}.learn-root .t-bar{border-left:1px solid var(--learn-rule-strong);height:12px;position:relative}.learn-root .t-bar .bar{background:var(--learn-ink-muted);transform:scaleX(var(--p,0));transform-origin:0;transition:transform var(--learn-dur-slow) var(--learn-ease-out);position:absolute;inset:0}.learn-root .g-list{margin-top:var(--learn-s4);border-top:1px solid var(--learn-rule-strong)}.learn-root .g-item{gap:var(--learn-s4);padding:var(--learn-s3) var(--learn-s2);border-bottom:1px solid var(--learn-rule);grid-template-columns:220px 170px minmax(0,1fr);display:grid}.learn-root .g-item dt{font:600 15px / 1.5 var(--learn-font-mono);overflow-wrap:anywhere}.learn-root .g-item .cat{font:500 var(--learn-fs-small) / 1.7 var(--learn-font-body);color:var(--learn-ink-muted)}.learn-root .g-item dd:last-child{max-width:var(--learn-measure);color:var(--learn-ink-muted);font-size:15.5px}.learn-root .stepper{border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-lg);background:var(--learn-surface);overflow:hidden}.learn-root .st-tabs{margin:var(--learn-s3) var(--learn-s5)}.learn-root .st-done{color:var(--learn-role-verified)}.learn-root .seg button[aria-pressed=true] .st-done{color:inherit}.learn-root .st-grid{border-top:1px solid var(--learn-rule-strong);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);display:grid}.learn-root .st-code{border-right:1px solid var(--learn-rule-strong);background:var(--learn-code-bg);min-width:0}.learn-root .code .ln[data-state]{transition:background-color var(--learn-dur-fast) var(--learn-ease-out), color var(--learn-dur-fast) var(--learn-ease-out)}.learn-root .code .ln[data-state=pending]{color:var(--learn-ink-muted)}.learn-root .code .ln[data-state=active]{background:var(--learn-role-model-soft)}.learn-root .code .ln[data-state=active]:before{border-right-color:var(--learn-role-model);color:var(--learn-role-model)}.learn-root .st-panels{align-content:start;min-width:0;display:grid}.learn-root .st-panel+.st-panel{border-top:1px solid var(--learn-rule-strong)}.learn-root .st-vars{padding:var(--learn-s2) var(--learn-s5) var(--learn-s4)}.learn-root .st-var{align-items:baseline;gap:var(--learn-s3);padding:var(--learn-s2) 0;border-top:1px dashed var(--learn-rule);font:400 13.5px / 1.5 var(--learn-font-mono);grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr) auto;display:grid}.learn-root .st-var:first-child{border-top:0}.learn-root .st-var dt{overflow-wrap:anywhere;font-weight:600}.learn-root .st-var dd{color:var(--learn-ink-muted);overflow-wrap:anywhere}.learn-root .st-var .st-chip{padding:2px var(--learn-s2);border:1px solid var(--learn-rule-strong);border-radius:var(--learn-r-sm);font:600 11.5px / 1.4 var(--learn-font-mono);letter-spacing:.04em;text-transform:uppercase}.learn-root .st-chip[data-role=context]{border-color:var(--learn-role-context);background:var(--learn-role-context-soft);color:var(--learn-role-context)}.learn-root .st-chip[data-role=model]{border-color:var(--learn-role-model);background:var(--learn-role-model-soft);color:var(--learn-role-model)}.learn-root .st-chip[data-role=verified]{border-color:var(--learn-role-verified);background:var(--learn-role-verified-soft);color:var(--learn-role-verified)}.learn-root .st-chip[data-role=harness]{border-color:var(--learn-role-harness);background:var(--learn-role-harness-soft);color:var(--learn-role-harness)}.learn-root .st-chip[data-role=stop]{border-color:var(--learn-role-stop);background:var(--learn-role-stop-soft);color:var(--learn-role-stop)}.learn-root .st-chip[data-role=dropped]{color:var(--learn-ink-muted);border-style:dashed;text-decoration:line-through}.learn-root :is(.st-heap,.st-empty){padding:var(--learn-s3) var(--learn-s5) var(--learn-s4);font:400 13.5px / 1.6 var(--learn-font-mono);color:var(--learn-ink-muted)}.learn-root .st-heap b{color:var(--learn-ink);font-weight:600}.learn-root .st-note{gap:var(--learn-s3);padding:var(--learn-s4) var(--learn-s5);border-top:1px solid var(--learn-rule-strong);display:grid}.learn-root .st-note.is-new{animation:learn-practice-fade var(--learn-dur-fast) var(--learn-ease-out) both}.learn-root .st-note p{max-width:var(--learn-measure)}.learn-root .st-predict{color:var(--learn-ink-muted)}.learn-root .st-out{border-top:1px solid var(--learn-rule-strong);border-left:0}.learn-root .st-ctl{align-items:center;gap:var(--learn-s3);padding:var(--learn-s4) var(--learn-s5);border-top:1px solid var(--learn-rule);flex-wrap:wrap;display:flex}.learn-root .st-ctl .count{margin-left:auto}.learn-root .btn[aria-disabled=true]{cursor:default;opacity:.45}@keyframes learn-practice-rise{0%{opacity:0;transform:translateY(4px)}}@keyframes learn-practice-fade{0%{opacity:0}}.learn-root :is(.opt,.vbtn,.seg button,.fchip,.dec,.search,.retry,.excsel){transition:color var(--learn-dur-fast) var(--learn-ease-out), background-color var(--learn-dur-fast) var(--learn-ease-out), border-color var(--learn-dur-fast) var(--learn-ease-out), box-shadow var(--learn-dur-fast) var(--learn-ease-out), transform var(--learn-dur-fast) var(--learn-ease-out), opacity var(--learn-dur-fast) var(--learn-ease-out)}.learn-root :is(.opt,.vbtn):not([aria-disabled=true]):hover{border-color:var(--learn-ink);background:var(--learn-surface)}.learn-root :is(.opt,.vbtn):not([aria-disabled=true]):active,.learn-root .retry:active,.learn-root .btn:not([aria-disabled=true]):active{transform:scale(var(--learn-press-scale))}.learn-root .btn[aria-disabled=true]:active{transform:none}.learn-root .btn[aria-disabled=true]:hover{border-color:var(--learn-rule-strong)}.learn-root .btn.primary[aria-disabled=true]:hover{border-color:var(--learn-accent);background:var(--learn-accent)}.learn-root .excsel:not(:disabled):hover{border-color:var(--learn-ink)}.learn-root .retry:active{background:var(--learn-surface-2)}.learn-root :is(.seg button,.fchip):not([aria-pressed=true]):hover{color:var(--learn-ink)}.learn-root :is(.seg button,.fchip):not([aria-pressed=true]):active{background:var(--learn-surface-2)}.learn-root .dec:hover{border-color:var(--learn-ink);transform:translateY(-1px)}.learn-root .dec:active{transform:scale(.99)}.learn-root .search:hover:not(:focus-within){border-color:var(--learn-ink)}.learn-root .btn.again:hover{border-color:var(--learn-role-stop);background:var(--learn-role-stop-soft);color:var(--learn-role-stop)}.learn-root .btn.got:hover{border-color:var(--learn-role-verified);background:var(--learn-role-verified-soft);color:var(--learn-role-verified)}@media (max-width:1180px){.learn-root .dec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learn-root .g-item{grid-template-columns:200px minmax(0,1fr)}.learn-root .g-item dd:last-child{grid-column:1/-1}}@media (max-width:860px){.learn-root :is(.pc-grid,.result,.dr-result,.pair,.fc-wrap,.st-grid),.learn-root .pc-q .options{grid-template-columns:minmax(0,1fr)}.learn-root :is(.pc-code,.verdict,.dr-result:not(.solo) .dr-why,.st-code){border-right:0;border-bottom:1px solid var(--learn-rule-strong)}.learn-root .pair>div+div{border-top:1px solid var(--learn-rule-strong);border-left:0}.learn-root :is(.pc-q,.verdict,.trace){padding:var(--learn-s5) var(--learn-s4) var(--learn-s6)}.learn-root .pc-head .step{margin-left:0}.learn-root .pc-q h3{font-size:18px}.learn-root .opt .lbl{font-size:14.5px}.learn-root .verdict .v-head{font-size:21px}.learn-root .dr-bar{padding:var(--learn-s3) var(--learn-s4)}.learn-root .readouts{justify-content:space-between;width:100%;margin-left:0}.learn-root .readout{text-align:left}.learn-root :is(.dr-q,.verdicts,.dr-why,.dr-keys,.st-note,.st-ctl){padding-left:var(--learn-s4);padding-right:var(--learn-s4)}.learn-root .options.quiz{padding:0 var(--learn-s4) var(--learn-s4)}.learn-root .search{width:100%;min-width:0}.learn-root .dec-grid,.learn-root .dec-open dl{grid-template-columns:minmax(0,1fr)}.learn-root .dec-open dd+dt{margin-top:var(--learn-s2)}.learn-root .card-face{padding:var(--learn-s5)}.learn-root .card-face .fc-term{font-size:28px}.learn-root .g-item{gap:var(--learn-s1);grid-template-columns:minmax(0,1fr)}.learn-root .st-tabs{margin:var(--learn-s3) var(--learn-s4)}.learn-root .st-var{grid-template-columns:minmax(0,1fr) auto}.learn-root .st-var dd:not(.st-chip){grid-area:2/1/auto/-1}}@media (prefers-reduced-motion:reduce){.learn-root :is(.pcard.is-answered .v-live,.v-actions,.dr-item,.dr-result){animation-name:learn-practice-fade}.learn-root .dec:hover,.learn-root .fc-inner,.learn-root .fc-stage[data-flipped] .fc-inner,.learn-root .card-face.back{transform:none}.learn-root .fc-stage:not([data-flipped]) .card-face.back,.learn-root .fc-stage[data-flipped] .card-face.front{opacity:0}}
