/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */:root{color-scheme:light;--color-neutral-0:oklch(95.2% .012 220);--color-neutral-50:oklch(92.4% .014 218);--color-neutral-100:oklch(88.5% .016 216);--color-neutral-200:oklch(80% .018 214);--color-neutral-300:oklch(68% .02 212);--color-neutral-500:oklch(52% .02 230);--color-neutral-600:oklch(42% .022 235);--color-neutral-800:oklch(30% .024 240);--color-neutral-900:oklch(24% .026 245);--color-neutral-950:oklch(20% .028 248);--color-slate-800:oklch(32% .034 240);--color-ink-900:oklch(26% .04 250);--color-night-950:oklch(18% .03 252);--color-oxid-500:oklch(64% .055 200);--color-oxid-700:oklch(36% .06 205);--color-phosphor-400:oklch(84% .13 132);--color-signal-600:oklch(55% .14 25);--color-success-600:oklch(46% .1 155);--color-danger-50:oklch(96% .02 25);--color-success-50:oklch(96% .02 155);--color-overlay-strong:oklch(16% .03 250/.78);--color-overlay-soft:oklch(16% .03 250/.4);--color-transparent:oklch(0% 0 0/0);--color-background-primary:var(--color-neutral-0);--color-background-secondary:var(--color-neutral-50);--color-background-muted:var(--color-neutral-100);--color-background-hover:var(--color-neutral-200);--color-background-inverse:var(--color-neutral-950);--color-foreground-primary:var(--color-neutral-950);--color-foreground-secondary:var(--color-neutral-600);--color-foreground-inverse:var(--color-neutral-0);--color-foreground-link:var(--color-oxid-700);--color-foreground-accent-on-dark:var(--color-phosphor-400);--color-border-default:var(--color-neutral-200);--color-border-strong:var(--color-neutral-300);--color-border-transparent:var(--color-transparent);--color-action-primary:var(--color-ink-900);--color-action-primary-hover:var(--color-night-950);--color-action-secondary:var(--color-neutral-950);--color-action-secondary-hover:var(--color-neutral-800);--color-focus-ring:var(--color-oxid-700);--color-state-danger:var(--color-signal-600);--color-state-danger-surface:var(--color-danger-50);--color-state-success:var(--color-success-600);--color-state-success-surface:var(--color-success-50);--color-selection-background:var(--color-ink-900);--color-selection-foreground:var(--color-neutral-0);--color-surface-dark:var(--color-slate-800);--color-surface-slate:var(--color-slate-800);--color-surface-ink:var(--color-ink-900);--color-surface-night:var(--color-night-950);--color-surface-oxid:var(--color-oxid-500);--color-surface-phosphor:var(--color-phosphor-400);--color-overlay-image:var(--color-overlay-strong);--color-overlay-image-soft:var(--color-overlay-soft);--shiki-foreground:var(--color-foreground-inverse);--shiki-background:var(--color-surface-night);--shiki-color-text:var(--shiki-foreground);--shiki-color-background:var(--shiki-background);--shiki-token-constant:oklch(78% .08 200);--shiki-token-string:oklch(80% .1 140);--shiki-token-comment:oklch(62% .02 230);--shiki-token-keyword:oklch(78% .1 300);--shiki-token-parameter:oklch(82% .06 80);--shiki-token-function:oklch(80% .09 220);--shiki-token-string-expression:oklch(80% .1 140);--shiki-token-punctuation:oklch(78% .02 230);--shiki-token-link:var(--color-phosphor-400);--font-family-display:var(--font-family-sans);--font-family-sans:var(--font-body-loaded,"IBM Plex Sans","Liberation Sans",arial),sans-serif,ui-sans-serif;--font-family-mono:var(--font-mono-loaded,"IBM Plex Mono","Liberation Mono"),ui-monospace,"SFMono-Regular",menlo,consolas,monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:clamp(1.5rem,2.6vw,2.25rem);--font-size-3xl:clamp(1.625rem,3vw,2.75rem);--font-size-hero:clamp(2rem,4vw,3.5rem);--font-weight-regular:400;--font-weight-medium:550;--font-weight-semibold:650;--line-height-tight:1.12;--line-height-heading:1.22;--line-height-label:1.4;--line-height-body:1.65;--letter-spacing-normal:0;--letter-spacing-tight:-.02em;--letter-spacing-label:.01em;--text-hero-font-family:var(--font-family-display);--text-hero-font-size:var(--font-size-hero);--text-hero-font-weight:var(--font-weight-medium);--text-hero-line-height:1.02;--text-hero-letter-spacing:var(--letter-spacing-tight);--text-display-font-family:var(--font-family-display);--text-display-font-size:var(--font-size-3xl);--text-display-font-weight:var(--font-weight-medium);--text-display-line-height:var(--line-height-tight);--text-display-letter-spacing:var(--letter-spacing-tight);--text-title-font-family:var(--font-family-display);--text-title-font-size:var(--font-size-2xl);--text-title-font-weight:var(--font-weight-medium);--text-title-line-height:var(--line-height-heading);--text-title-letter-spacing:var(--letter-spacing-tight);--text-heading-font-family:var(--font-family-sans);--text-heading-font-size:var(--font-size-xl);--text-heading-font-weight:var(--font-weight-semibold);--text-heading-line-height:var(--line-height-heading);--text-heading-letter-spacing:var(--letter-spacing-normal);--text-subheading-font-family:var(--font-family-sans);--text-subheading-font-size:var(--font-size-lg);--text-subheading-font-weight:var(--font-weight-semibold);--text-subheading-line-height:var(--line-height-heading);--text-subheading-letter-spacing:var(--letter-spacing-normal);--text-lead-font-family:var(--font-family-sans);--text-lead-font-size:var(--font-size-lg);--text-lead-font-weight:var(--font-weight-regular);--text-lead-line-height:var(--line-height-body);--text-lead-letter-spacing:var(--letter-spacing-normal);--text-body-font-family:var(--font-family-sans);--text-body-font-size:var(--font-size-md);--text-body-font-weight:var(--font-weight-regular);--text-body-line-height:var(--line-height-body);--text-body-letter-spacing:var(--letter-spacing-normal);--text-label-font-family:var(--font-family-sans);--text-label-font-size:var(--font-size-sm);--text-label-font-weight:var(--font-weight-semibold);--text-label-line-height:var(--line-height-label);--text-label-letter-spacing:var(--letter-spacing-label);--text-caption-font-family:var(--font-family-sans);--text-caption-font-size:var(--font-size-xs);--text-caption-font-weight:var(--font-weight-regular);--text-caption-line-height:var(--line-height-label);--text-caption-letter-spacing:var(--letter-spacing-normal);--text-code-font-family:var(--font-family-mono);--text-code-font-size:var(--font-size-sm);--text-code-font-weight:var(--font-weight-regular);--text-code-line-height:var(--line-height-body);--text-code-letter-spacing:var(--letter-spacing-normal);--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-section:clamp(4rem,10vw,8rem);--size-container:72rem;--size-reading:70ch;--size-control-sm:2.25rem;--size-control-md:2.75rem;--size-header:4.5rem;--size-header-stacked:6.25rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-pill:999rem;--border-width-thin:.0625rem;--shadow-overlay:0 .5rem 1.5rem oklch(20% .03 248/.14);--shadow-header:0 .25rem 1.25rem oklch(20% .03 248/.12);--shadow-text-on-image:0 .0625rem .125rem oklch(16% .03 250),0 .125rem .5rem oklch(16% .03 250/.92);--shadow-none:0 0 var(--color-transparent);--duration-reduced-motion:.01ms;--duration-fast:.12s;--duration-normal:.2s;--duration-loading:1.4s;--ease-out:cubic-bezier(.22,1,.36,1);--z-sticky:20;--z-content:1;--z-modal:40;--z-toast:50}@media layer(theme){
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */}@media layer(utilities){
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid}}}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.border-collapse{border-collapse:collapse}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}}@layer theme, reset, base, utilities;@layer reset{*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body,figure,h1,h2,h3,ol,p,ul{margin:var(--space-0)}ol,ul{padding:var(--space-0)}button,input,select,textarea{font:inherit}}@layer base{body,html{background-color:var(--color-background-primary)}body{min-block-size:100dvh;display:flex;flex-direction:column;color:var(--color-foreground-primary);font-family:var(--text-body-font-family);font-size:var(--text-body-font-size);font-weight:var(--text-body-font-weight);font-synthesis:none;letter-spacing:var(--text-body-letter-spacing);line-height:var(--text-body-line-height);text-rendering:optimizelegibility}main{flex:1}main:focus{outline:none}h1,h2,h3{overflow-wrap:break-word;line-height:var(--text-heading-line-height);text-wrap:balance}li,p{text-wrap:pretty}a{text-underline-offset:.18em}:focus-visible{outline:.1875rem solid var(--color-focus-ring);outline-offset:.1875rem}::selection{background-color:var(--color-selection-background);color:var(--color-selection-foreground)}}@layer utilities{.direction-contract{display:contents}.visually-hidden{position:absolute;inline-size:.0625rem;block-size:.0625rem;padding:var(--space-0);margin:-.0625rem;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:var(--duration-reduced-motion);animation-iteration-count:1;transition-duration:var(--duration-reduced-motion)}}.prose{max-inline-size:var(--size-reading);margin-inline:auto}.prose :where(p,li,dt,dd){line-height:var(--text-body-line-height)}.prose p{margin-block-end:var(--space-4)}.prose p:last-of-type{margin-block-end:var(--space-0)}.prose ol,.prose ul{margin-block:var(--space-4);padding-inline-start:var(--space-5)}.prose li{margin-block-end:var(--space-2)}.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin-block:var(--space-8) var(--space-4);margin-inline:var(--space-0);font-weight:var(--text-heading-font-weight);letter-spacing:var(--text-heading-letter-spacing)}.prose h2{font-family:var(--text-title-font-family);font-size:var(--text-title-font-size);line-height:var(--text-title-line-height)}.prose h3{font-family:var(--text-heading-font-family);font-size:var(--text-heading-font-size);line-height:var(--text-heading-line-height)}.prose h4{font-family:var(--text-subheading-font-family);font-size:var(--text-subheading-font-size);line-height:var(--text-subheading-line-height)}.prose h5,.prose h6{font-family:var(--text-body-font-family);font-size:var(--text-body-font-size);font-weight:var(--text-body-font-weight);letter-spacing:var(--text-body-letter-spacing);line-height:var(--text-body-line-height)}.prose a{color:var(--color-foreground-link);text-decoration:underline;text-underline-offset:.18em}.prose code{font-family:var(--text-code-font-family);font-size:var(--text-code-font-size);font-weight:var(--text-code-font-weight);letter-spacing:var(--text-code-letter-spacing);line-height:var(--text-code-line-height);padding-inline:var(--space-1);vertical-align:baseline;background-color:var(--color-background-muted)}.prose pre{overflow-x:auto;background-color:var(--color-surface-night);color:var(--color-foreground-inverse);padding:var(--space-4);white-space:pre}.prose pre code{padding-inline:var(--space-0);background-color:var(--color-border-transparent);color:inherit;line-height:var(--text-code-line-height)}.prose [data-language]:before{display:block;margin-block-end:var(--space-3);color:var(--color-foreground-secondary);content:attr(data-language);font-family:var(--text-caption-font-family);font-size:var(--text-caption-font-size);font-weight:var(--text-caption-font-weight);letter-spacing:var(--text-caption-letter-spacing);line-height:var(--text-caption-line-height)}.prose [data-rehype-pretty-code-figure] [data-language]:before{display:none}.prose [data-rehype-pretty-code-figure]>[data-language]:before{display:block}.prose blockquote{margin-block:var(--space-4);margin-inline:var(--space-0);padding-inline-start:var(--space-4);border-inline-start:var(--border-width-thin) solid var(--color-border-default);color:var(--color-foreground-secondary)}.prose hr{margin-block:var(--space-6);border:0;border-bottom:var(--border-width-thin) solid var(--color-border-default)}.prose img{max-inline-size:100%;height:auto}.prose figure{margin-block:var(--space-6)}[data-reading-surface] .prose>p:first-child{font-family:var(--text-lead-font-family);font-size:var(--text-lead-font-size);font-weight:var(--text-lead-font-weight);letter-spacing:var(--text-lead-letter-spacing);line-height:var(--text-lead-line-height)}.prose figcaption{color:var(--color-foreground-secondary);font-family:var(--text-caption-font-family);font-size:var(--text-caption-font-size);font-weight:var(--text-caption-font-weight);letter-spacing:var(--text-caption-letter-spacing);line-height:var(--text-caption-line-height)}.prose .table-wrap{max-inline-size:100%;margin-block:var(--space-4);overflow-x:auto}.prose table{inline-size:100%;border-collapse:collapse}.prose td,.prose th{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width-thin) solid var(--color-border-default);text-align:start;vertical-align:top}.prose thead th{background-color:var(--color-background-muted);font-family:var(--text-label-font-family);font-size:var(--text-label-font-size);font-weight:var(--text-label-font-weight);letter-spacing:var(--text-label-letter-spacing);line-height:var(--text-label-line-height)}.prose input[type=checkbox]{pointer-events:none}.prose [data-chapter-section=checklist]{padding:var(--space-6);background-color:var(--color-background-muted)}.prose [data-chapter-section=workbook]{padding:var(--space-6);background-color:var(--color-surface-oxid)}