@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,wght@0,400;1,400&family=Manrope:wght@400;450;500;550;600;650;700;750&family=JetBrains+Mono:wght@400;500&display=swap";.lesson-screen{grid-template-rows:44px minmax(0,1fr) 28px;height:100dvh;display:grid}.lesson-screen .site-header,.lesson-screen .lesson-main,.lesson-screen footer,.lesson-extras{width:100%;max-width:1600px;margin:0 auto;padding-left:24px;padding-right:24px}.lesson-screen .site-header{height:auto;min-height:0}.lesson-screen .brand-description{font-size:10px}.lesson-screen .lesson-main{grid-template-rows:auto minmax(0,1fr);min-height:0;padding-bottom:10px;display:grid}.lesson-screen .intro{gap:0;min-width:0;padding:14px 0 12px}.lesson-screen .intro h1{letter-spacing:-1.2px;max-width:none;font-size:clamp(24px,2.5vw,36px);line-height:1.15}.lesson-screen .intro>div>p{max-width:none;margin-top:5px;font-size:12px;line-height:1.5}.lesson-screen .film{flex-direction:column;min-height:0;display:flex}.lesson-screen .chapters,.lesson-screen .film-toolbar,.lesson-screen .caption,.lesson-screen .transport{flex:none}.lesson-screen .chapters button{flex-direction:row;gap:8px;min-height:32px;padding:6px 10px;font-size:10px;line-height:1.5}.lesson-screen .film-toolbar{gap:10px;min-height:40px;padding:4px 14px}.lesson-screen .film-content{flex:1;grid-template-columns:minmax(0,1fr) clamp(340px,29vw,400px);min-height:0}.lesson-screen .visual-stage{justify-content:flex-start;min-height:0;padding:10px}.lesson-screen .stage-svg{aspect-ratio:auto;flex:1;width:100%;min-width:0;height:0;min-height:0}.lesson-screen .stage-legend{flex:none;min-width:0;padding:5px 8px 0}.lesson-screen .graph-note{flex:none;width:auto;min-height:0;padding:6px 8px 0;font-size:10px;line-height:1.5}.lesson-screen .narration{border-left:1px solid var(--border);min-height:0;padding:14px 16px}.lesson-screen .narration-bottom{margin:0;padding:0}.lesson-screen .narration-status{min-height:20px;margin-bottom:8px}.lesson-screen .narration>div>h2{letter-spacing:-.6px;font-size:22px;line-height:1.23}.lesson-screen .narration-body{margin-top:10px;font-size:13px;line-height:1.65}.lesson-screen .scene-actions{grid-template-columns:1fr;gap:6px;margin-top:12px}.lesson-screen .scene-actions button{min-height:36px;padding:8px 10px;font-size:11px;line-height:1.4}.lesson-screen .action-feedback{padding-top:12px;font-size:12px;line-height:1.6}.lesson-screen .action-feedback:empty{padding-top:0}.insight-button,.feedback-switch,.lesson-details-button{color:var(--ink-soft);background:0 0;border:0;border-radius:2px;font-size:10px}.insight-button{align-items:center;gap:5px;min-height:24px;margin-left:auto;padding:2px 0 2px 6px;display:inline-flex}.feedback-switch{text-underline-offset:3px;align-self:flex-start;min-height:24px;margin-top:8px;padding:2px 0;text-decoration:underline}.lesson-screen .caption{align-items:center;gap:10px;min-height:0;padding:7px 14px}.lesson-screen .caption-symbol{margin:0;font-size:18px}.lesson-screen .caption p{font-size:11px;line-height:1.5}.lesson-screen .transport{padding:7px 14px 4px}.lesson-screen .transport-controls{flex-wrap:nowrap;gap:6px}.lesson-screen .play-button{min-width:105px;min-height:32px;padding:6px 12px}.lesson-screen .transport .icon-button{min-width:32px;min-height:32px}.lesson-screen .film-scrubber{height:16px;margin:3px 0 0}.lesson-screen .scene-ticks button{gap:3px;min-height:23px;padding:2px 0}.lesson-screen .speed-select{padding:3px}.lesson-screen .timecode{margin-left:5px}.lesson-screen footer{flex-direction:row;align-items:center;gap:10px;height:auto;min-height:0;padding-top:0;padding-bottom:0}.lesson-details-button{min-height:24px;padding:2px 6px}.lesson-extras{padding-top:12px;padding-bottom:36px}.lesson-extras .experiment{margin-top:0}.pane-toggle,.mobile-scene-title{display:none}.player-dialog{border:1px solid var(--border);background:var(--ground);width:min(800px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:4px;margin:auto;padding:0}.player-dialog::backdrop{background:color-mix(in oklab, var(--ink) 28%, transparent)}.dialog-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.dialog-heading h2{font-size:18px;font-weight:550;line-height:1.4}.dialog-content{padding:20px;font-size:13px;line-height:1.8}.dialog-content .inspector{background:0 0;border:0;padding:0}.dialog-content .inspector>p{font-size:13px}.lesson-conclusion h3,.lesson-source-list h3{margin:0 0 8px;font-size:17px;font-weight:550}.lesson-source-list{margin-top:24px}.lesson-source-list a{color:var(--ink-soft);margin-top:10px;display:block}.lesson-screen .film:fullscreen{height:100dvh}.lesson-screen .film:fullscreen .stage-svg{height:0;max-height:none}@media (height<=800px) and (width>=901px){.lesson-screen .intro{padding-top:8px;padding-bottom:8px}.lesson-screen .intro h1{font-size:28px}.lesson-screen .narration{padding:10px 14px}.lesson-screen .narration>div>h2{font-size:20px}.lesson-screen .narration-body{margin-top:8px;font-size:12px;line-height:1.6}.lesson-screen .scene-actions{margin-top:10px}}@media (width<=900px){.lesson-screen{grid-template-rows:40px minmax(0,1fr) 28px}.lesson-screen .site-header,.lesson-screen .lesson-main,.lesson-screen footer,.lesson-extras{padding-left:12px;padding-right:12px}.lesson-screen .intro{padding:8px 0;display:block}.lesson-screen .intro h1{letter-spacing:-.9px;font-size:25px}.lesson-screen .intro>div>p{margin-top:4px;font-size:11px;line-height:1.4}.lesson-screen .brand-description,.lesson-screen .brand-divider,.lesson-screen .film-topic{display:none}.pane-toggle{gap:2px;display:flex}.pane-toggle button{white-space:nowrap;min-height:28px;color:var(--ink-soft);background:0 0;border:0;border-radius:2px;padding:4px 7px;font-size:10px}.pane-toggle button[aria-pressed=true]{background:var(--surface-raised);color:var(--ink)}.lesson-screen .film-toolbar{flex-wrap:wrap;gap:5px;min-height:36px;padding:3px 7px}.lesson-screen .film-toolbar .view-toggle{margin-left:auto}.lesson-screen .view-toggle button{min-height:26px;padding:4px 6px;font-size:9px}.lesson-screen .film[data-pane=text] .view-toggle{display:none}.lesson-screen .film-toolbar .fullscreen-button{min-height:26px;margin-left:auto}.lesson-screen .mobile-scene-title{letter-spacing:-.4px;border-bottom:1px solid var(--border);flex:none;padding:8px 12px;font-size:18px;font-weight:550;line-height:1.25;display:block}.lesson-screen .film-content{flex-direction:column;display:flex}.lesson-screen .film[data-pane=text] .visual-stage,.lesson-screen .film[data-pane=graph] .narration{display:none}.lesson-screen .visual-stage,.lesson-screen .narration{flex:1;min-height:0}.lesson-screen .visual-stage{border-bottom:0;padding:6px;overflow:visible}.lesson-screen .narration{border-left:0;padding:8px 12px}.lesson-screen .narration>div>h2{clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.lesson-screen .narration-status{margin-bottom:4px}.lesson-screen .narration-body{margin-top:4px;font-size:13px;line-height:1.6}.lesson-screen .scene-actions{margin-top:10px}.lesson-screen .scene-actions button{min-height:36px;padding:7px 10px;font-size:11px}.lesson-screen .caption{padding:6px 12px}.lesson-screen .caption p{font-size:10px;line-height:1.5}.lesson-screen .transport{padding:5px 10px 3px}.lesson-screen .play-button{min-width:90px;font-size:10px}.lesson-screen .timecode{margin-left:0;font-size:8px}.lesson-screen .scene-counter{font-size:9px}.lesson-screen footer>span{display:none}.lesson-screen footer>a{font-size:8px}.lesson-screen footer{justify-content:space-between}.lesson-screen .graph-note{font-size:10px}}@media (height<=700px) and (width<=900px){.lesson-screen .intro h1{font-size:22px}.lesson-screen .intro{padding-top:5px;padding-bottom:5px}.lesson-screen .mobile-scene-title{padding-top:6px;padding-bottom:6px;font-size:17px}.lesson-screen .narration-body{font-size:12px;line-height:1.55}.lesson-screen .scene-actions{gap:5px;margin-top:7px}.lesson-screen .action-feedback{padding-top:7px;font-size:11px;line-height:1.5}}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--color-orange-500:oklch(70.5% .213 47.604);--color-amber-400:oklch(82.8% .189 84.429);--color-emerald-400:oklch(76.5% .177 163.223);--color-sky-400:oklch(74.6% .16 232.661);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--spacing:.25rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--blur-xs:4px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Manrope", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:"JetBrains Mono", ui-monospace, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{transition:background-color .2s,color .2s}::selection{background-color:var(--accent-soft);color:var(--ink)}:focus-visible{outline:1.5px solid var(--accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}body{background-color:var(--ground);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-1{top:var(--spacing)}.top-2\.5{top:calc(var(--spacing) * 2.5)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-full{top:100%}.right-0{right:0}.left-0{left:0}.z-10{z-index:10}.z-50{z-index:50}.my-3{margin-block:calc(var(--spacing) * 3)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.aspect-\[16\/9\]{aspect-ratio:16/9}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-full{width:100%;height:100%}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-\[19px\]{height:19px}.h-full{height:100%}.h-px{height:1px}.min-h-\[100px\]{min-height:100px}.w-0\.5{width:calc(var(--spacing) * .5)}.w-\[240px\]{width:240px}.w-full{width:100%}.w-px{width:1px}.max-w-\[280px\]{max-width:280px}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.min-w-\[19px\]{min-width:19px}.min-w-\[140px\]{min-width:140px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.animate-ping{animation:var(--animate-ping)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.appearance-none{appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3\.5{column-gap:calc(var(--spacing) * 3.5)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-\[4px\]{border-radius:4px}.rounded-\[6px\]{border-radius:6px}.rounded-full{border-radius:9999px}.rounded-sm{border-radius:4px}.rounded-xs{border-radius:2px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent\/45{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-accent\/45{border-color:color-mix(in oklab, var(--accent) 45%, transparent)}}.border-accent\/60{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-accent\/60{border-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.border-border{border-color:var(--border)}.bg-accent{background-color:var(--accent)}.bg-accent-soft{background-color:var(--accent-soft)}.bg-accent\/10{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--accent) 10%, transparent)}}.bg-accent\/12{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/12{background-color:color-mix(in oklab, var(--accent) 12%, transparent)}}.bg-accent\/15{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/15{background-color:color-mix(in oklab, var(--accent) 15%, transparent)}}.bg-amber-400{background-color:var(--color-amber-400)}.bg-border{background-color:var(--border)}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-400\/10{background-color:#00d2941a}@supports (color:color-mix(in lab, red, red)){.bg-emerald-400\/10{background-color:color-mix(in oklab, var(--color-emerald-400) 10%, transparent)}}.bg-ground,.bg-ground\/60{background-color:var(--ground)}@supports (color:color-mix(in lab, red, red)){.bg-ground\/60{background-color:color-mix(in oklab, var(--ground) 60%, transparent)}}.bg-ground\/80{background-color:var(--ground)}@supports (color:color-mix(in lab, red, red)){.bg-ground\/80{background-color:color-mix(in oklab, var(--ground) 80%, transparent)}}.bg-ground\/85{background-color:var(--ground)}@supports (color:color-mix(in lab, red, red)){.bg-ground\/85{background-color:color-mix(in oklab, var(--ground) 85%, transparent)}}.bg-ink-soft\/40{background-color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.bg-ink-soft\/40{background-color:color-mix(in oklab, var(--ink-soft) 40%, transparent)}}.bg-ink\/12{background-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.bg-ink\/12{background-color:color-mix(in oklab, var(--ink) 12%, transparent)}}.bg-ink\/15{background-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.bg-ink\/15{background-color:color-mix(in oklab, var(--ink) 15%, transparent)}}.bg-ink\/30{background-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.bg-ink\/30{background-color:color-mix(in oklab, var(--ink) 30%, transparent)}}.bg-orange-500{background-color:var(--color-orange-500)}.bg-rose-400\/10{background-color:#ff667f1a}@supports (color:color-mix(in lab, red, red)){.bg-rose-400\/10{background-color:color-mix(in oklab, var(--color-rose-400) 10%, transparent)}}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-400\/10{background-color:#00bcfe1a}@supports (color:color-mix(in lab, red, red)){.bg-sky-400\/10{background-color:color-mix(in oklab, var(--color-sky-400) 10%, transparent)}}.bg-surface{background-color:var(--surface)}.bg-surface-inset{background-color:var(--surface-inset)}.bg-surface-raised,.bg-surface-raised\/60{background-color:var(--surface-raised)}@supports (color:color-mix(in lab, red, red)){.bg-surface-raised\/60{background-color:color-mix(in oklab, var(--surface-raised) 60%, transparent)}}.bg-surface-raised\/70{background-color:var(--surface-raised)}@supports (color:color-mix(in lab, red, red)){.bg-surface-raised\/70{background-color:color-mix(in oklab, var(--surface-raised) 70%, transparent)}}.bg-surface\/40{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/40{background-color:color-mix(in oklab, var(--surface) 40%, transparent)}}.bg-transparent{background-color:#0000}.fill-ink-soft{fill:var(--ink-soft)}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-3{padding:calc(var(--spacing) * 3)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-\[5px\]{padding-inline:5px}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.font-sans{font-family:Manrope,ui-sans-serif,system-ui,sans-serif}.font-serif{font-family:Fraunces,ui-serif,Georgia,serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.24em\]{--tw-tracking:.24em;letter-spacing:.24em}.tracking-\[0\.32em\]{--tw-tracking:.32em;letter-spacing:.32em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-accent{color:var(--accent)}.text-emerald-400{color:var(--color-emerald-400)}.text-ink{color:var(--ink)}.text-ink-faint{color:var(--ink-faint)}.text-ink-soft,.text-ink-soft\/60{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.text-ink-soft\/60{color:color-mix(in oklab, var(--ink-soft) 60%, transparent)}}.text-ink-soft\/70{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.text-ink-soft\/70{color:color-mix(in oklab, var(--ink-soft) 70%, transparent)}}.text-ink-soft\/75{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.text-ink-soft\/75{color:color-mix(in oklab, var(--ink-soft) 75%, transparent)}}.text-ink-soft\/80{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.text-ink-soft\/80{color:color-mix(in oklab, var(--ink-soft) 80%, transparent)}}.text-ink\/90{color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.text-ink\/90{color:color-mix(in oklab, var(--ink) 90%, transparent)}}.text-rose-400{color:var(--color-rose-400)}.text-sky-400{color:var(--color-sky-400)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.opacity-35{opacity:.35}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_1px_4px_rgba\(0\,0\,0\,0\.12\)\]{--tw-shadow:0 1px 4px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_4px_16px_rgba\(0\,0\,0\,0\.18\)\]{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000002e);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}.backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}.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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}:is(:where(.group):is([open],:popover-open,:open) .group-open\:rotate-180){rotate:180deg}@media (hover:hover){:is(:where(.group):hover .group-hover\:text-accent){color:var(--accent)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent:hover,.hover\:border-accent\/40:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--accent) 40%, transparent)}}.hover\:bg-surface-raised:hover,.hover\:bg-surface-raised\/60:hover{background-color:var(--surface-raised)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-raised\/60:hover{background-color:color-mix(in oklab, var(--surface-raised) 60%, transparent)}}.hover\:bg-surface\/40:hover{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface\/40:hover{background-color:color-mix(in oklab, var(--surface) 40%, transparent)}}.hover\:bg-surface\/50:hover{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface\/50:hover{background-color:color-mix(in oklab, var(--surface) 50%, transparent)}}.hover\:text-accent:hover{color:var(--accent)}.hover\:text-ink:hover{color:var(--ink)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-xs:hover{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus-visible\:text-accent:focus-visible{color:var(--accent)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-accent:focus-visible{--tw-ring-color:var(--accent)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}@media (width>=40rem){.sm\:gap-x-4{column-gap:calc(var(--spacing) * 4)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-\[12\.5px\]{font-size:12.5px}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--ground:oklch(96.4% .008 85);--surface:oklch(97.9% .006 85);--surface-raised:oklch(99.2% .004 85);--surface-inset:oklch(94% .01 85);--ink:oklch(26.5% .012 60);--ink-soft:oklch(42% .014 65);--ink-faint:oklch(48% .012 65);--accent:oklch(53% .135 42);--accent-soft:#ba5c201f;--border:oklch(26.5% .012 60/.1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}.dark{--ground:oklch(18.5% .008 65);--surface:oklch(23.5% .01 65);--surface-raised:oklch(27% .012 65);--surface-inset:oklch(15% .006 65);--ink:oklch(93% .008 75);--ink-soft:oklch(78% .012 75);--ink-faint:oklch(66% .012 75);--accent:oklch(72% .155 45);--accent-soft:#ffb26626;--border:oklch(100% 0 0/.1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font-size:14px;line-height:1.6}button,select,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;transition:background-color .2s,box-shadow .2s}button:disabled{opacity:.38;cursor:not-allowed}button:hover:not(:disabled){background:var(--surface-raised)}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--accent-soft)}.site-header,main,footer{max-width:1480px;margin:auto;padding-left:52px;padding-right:52px}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:87px;display:flex}.wordmark{align-items:center;gap:13px;font-size:12px;display:flex}.wordmark strong{font-weight:650}.header-actions{align-items:center;gap:20px;display:flex}.home-link{min-height:40px;color:var(--ink-soft);border-radius:2px;align-items:center;gap:7px;padding:0 7px;font-size:11px;transition:background-color .2s;display:inline-flex}.home-link:hover{background:var(--surface-raised)}@media (width<=520px){.header-actions{gap:7px}.home-link{gap:4px;padding:0 3px;font-size:10px}}.brand-mark{font-size:27px;line-height:1}.brand-divider{background:var(--border);width:1px;height:15px;margin:0 4px}.brand-description{color:var(--ink-soft);font-size:11px}.icon-button{background:0 0;border:0;border-radius:2px;justify-content:center;align-items:center;min-width:40px;min-height:40px;padding:0;display:inline-flex}.skip-link{z-index:30;background:var(--surface);padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.intro{justify-content:space-between;align-items:center;gap:40px;padding:46px 0 37px;display:flex}.intro h1{letter-spacing:-2.6px;max-width:940px;font-size:clamp(35px,3.8vw,58px);font-weight:550;line-height:1.17}.intro>div>p{color:var(--ink-soft);margin-top:18px;font-size:14px}.intro-note{border-left:1px solid var(--border);min-width:199px;padding-left:26px}.intro-note>span{font:9px var(--font-mono);color:var(--ink-faint)}.intro-note p{color:var(--ink-soft);margin:12px 0 10px;font-size:11px;line-height:1.9}.intro-note a{display:inline-flex}.film{border:1px solid var(--border);background:var(--ground);border-radius:4px;scroll-margin-top:18px;overflow:hidden}.chapters{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.chapters button{border:0;border-right:1px solid var(--border);color:var(--ink-faint);background:0 0;justify-content:center;align-items:center;gap:12px;padding:17px 10px;font-size:11px;display:flex;position:relative}.chapters button:last-child{border-right:0}.chapters button[aria-current]{color:var(--ink);background:var(--surface)}.chapter-index{font:9px var(--font-mono);color:var(--ink-faint)}.chapters button[aria-current] .chapter-index{color:var(--accent)}.chapter-active{background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.film-toolbar{border-bottom:1px solid var(--border);align-items:center;gap:15px;min-height:54px;padding:8px 24px;display:flex}.scene-counter{font:11px var(--font-mono);color:var(--accent);white-space:nowrap}.scene-counter>span{color:var(--ink-faint);font-size:9px}.film-topic{font:9px var(--font-mono);color:var(--ink-faint)}.view-toggle{background:var(--surface-inset);border-radius:2px;gap:2px;margin-left:auto;padding:3px;display:flex}.view-toggle button{min-height:30px;color:var(--ink-faint);background:0 0;border:0;border-radius:2px;padding:5px 12px;font-size:10px}.view-toggle button[aria-pressed=true]{background:var(--surface-raised);color:var(--ink)}.fullscreen-button{min-width:28px;min-height:30px;color:var(--ink-faint)}.player-notice{padding:8px 24px;font-size:11px}.film-content{grid-template-columns:minmax(0,1fr) 315px;display:grid}.visual-stage{flex-direction:column;justify-content:center;min-width:0;padding:16px 15px 14px;display:flex}.stage-svg{aspect-ratio:1000/535;width:100%;height:auto;min-height:300px;display:block;overflow:visible}.region-label{font:9px var(--font-mono);fill:var(--ink-faint);letter-spacing:.45px}.edge{color:var(--ink-faint);opacity:.68}.edge-accent{color:var(--accent);opacity:.9}.stage-node{cursor:pointer;outline:none}.node-surface{fill:var(--surface);stroke:var(--border);stroke-width:1px;transition:fill .2s}.stage-node:hover .node-surface{fill:var(--surface-raised)}.stage-node:focus-visible .node-surface,.node-selected .node-surface{stroke:var(--accent);stroke-width:2px}.contract .node-surface{fill:var(--ground);stroke-dasharray:4 3}.policy .node-surface{fill:var(--surface-inset)}.node-label{font:600 15px var(--font-sans);fill:var(--ink);letter-spacing:-.2px}.node-subtitle{font:11px var(--font-sans);fill:var(--ink-soft)}.node-body{font:500 13px var(--font-sans);fill:var(--ink)}.node-content-divider{stroke:var(--border);stroke-width:1px}.node-lines-label{font:10px var(--font-sans);fill:var(--ink-faint)}.node-code{font:10px var(--font-mono);fill:var(--ink-soft)}.node-icon{color:var(--ink-soft)}.contract .node-icon,.node-focus .node-icon{color:var(--accent)}.node-open{fill:var(--ink-faint);font-size:13px}.stage-legend{color:var(--ink-faint);align-items:center;gap:17px;padding:4px 16px 0;font-size:9px;display:flex}.stage-legend>span{align-items:center;gap:6px;display:inline-flex}.legend-square{border:1px solid var(--ink-faint);border-radius:1px;width:9px;height:9px}.contract-square{border-style:dashed}.inspect-hint{margin-left:auto}.mobile-stage-hint{display:none!important}@media (width<=520px){.mobile-stage-hint{margin-left:auto;display:inline-flex!important}}.graph-note{min-height:43px;color:var(--ink-faint);padding:13px 16px 2px;font-size:10px;line-height:1.8}.narration{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;min-height:450px;padding:25px 25px 20px;display:flex}.narration-status{min-height:18px;color:var(--ink-faint);align-items:center;gap:6px;margin-bottom:23px;font-size:9px;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:4px;height:4px}.narration h2{letter-spacing:-.85px;font-size:24px;font-weight:550;line-height:1.32}.narration-body{color:var(--ink-soft);margin-top:17px;font-size:12px;line-height:1.95}.scene-actions{gap:8px;margin-top:22px;display:grid}.scene-actions button{text-align:left;border:1px solid var(--border);background:var(--ground);border-radius:2px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px;font-size:10px;line-height:1.7;display:flex}.scene-actions button>span{color:var(--ink-faint);flex-shrink:0;display:flex}.scene-actions button[aria-pressed=true]>span{color:var(--accent)}.action-feedback{color:var(--ink-soft);padding-top:13px;font-size:10px;line-height:1.85}.action-feedback:empty{padding-top:0}.narration-bottom{margin-top:auto;padding-top:24px}.narration-bottom>p{color:var(--ink-faint);align-items:flex-start;gap:8px;font-size:9px;line-height:1.9;display:flex}.narration-bottom>p>svg{color:var(--accent);flex-shrink:0;margin-top:2px}.continue-button{border:0;border-top:1px solid var(--border);background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;margin-top:15px;padding:13px 0 0;font-size:10px;font-weight:600;display:flex}.caption{background:var(--surface-inset);border-top:1px solid var(--border);align-items:center;gap:17px;min-height:53px;padding:14px 25px;display:flex}.caption-symbol{color:var(--accent);font-size:21px;line-height:1}.caption p{font-size:11px;line-height:1.8}.transport{border-top:1px solid var(--border);background:var(--surface);padding:15px 25px 12px}.transport-controls{align-items:center;gap:9px;display:flex}.play-button{background:var(--ink);min-width:121px;min-height:39px;color:var(--ground);border:0;border-radius:2px;justify-content:center;align-items:center;gap:9px;padding:9px 18px;font-size:11px;font-weight:600;display:flex}.play-button:hover:not(:disabled){background:var(--ink-soft)}.timecode{font:10px var(--font-mono);color:var(--ink-soft);white-space:nowrap;margin-left:12px}.timecode span{color:var(--ink-faint)}.speed-select{font:10px var(--font-mono);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:8px}.speed-select option{background:var(--ground);color:var(--ink)}.film-scrubber{width:100%;height:18px;accent-color:var(--accent);cursor:pointer;margin:14px 0 3px;display:block}.scene-ticks{gap:6px;display:flex}.scene-ticks button{background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:5px;min-width:0;min-height:29px;padding:3px 0;display:flex}.scene-ticks button>span:first-child{background:var(--border);width:100%;height:2px;display:block}.scene-ticks button>.tick-done{background:var(--ink-faint)!important}.scene-ticks button[aria-current]>span:first-child{background:var(--accent)}.tick-index{font:8px var(--font-mono);color:var(--ink-faint)}.scene-ticks button[aria-current] .tick-index{color:var(--accent)}.inspector{border-top:1px solid var(--border);background:var(--surface-inset);padding:24px 28px}.inspector-title{justify-content:space-between;align-items:center;display:flex}.inspector-title>span{align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.inspector>p{color:var(--ink-soft);max-width:900px;font-size:12px;line-height:1.9}.inspector details{margin-top:14px}.inspector summary{cursor:pointer;font:10px var(--font-mono);color:var(--ink-soft)}.inspector pre,.artifacts pre{white-space:pre-wrap;overflow-wrap:anywhere;font:10px/1.9 var(--font-mono);color:var(--ink-soft);tab-size:2;max-height:330px;margin:16px 0 0;overflow:auto}.experiment{border:1px solid var(--border);border-radius:4px;margin:34px 0 0;padding:31px}.experiment-heading{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.experiment-heading h2{letter-spacing:-1px;font-size:28px;font-weight:550}.experiment-heading p{max-width:730px;color:var(--ink-soft);margin-top:10px;font-size:12px;line-height:1.9}.experiment-heading>svg{color:var(--accent);flex-shrink:0}.experiment-choices{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:25px;display:grid}.experiment-choices label{color:var(--ink-faint);font-size:10px}.experiment-choices select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);border-radius:2px;min-height:42px;margin-top:9px;padding:11px 8px;font-size:11px;display:block}.run-button{border:1px solid var(--border);background:var(--surface);border-radius:2px;align-items:center;gap:10px;margin-top:23px;padding:11px 14px;font-size:11px;display:inline-flex}.run-button svg:last-child{color:var(--ink-faint);margin-left:10px}.experiment-result{border-top:1px solid var(--border);margin-top:25px;padding-top:23px}.result-summary{align-items:center;gap:9px;font-size:12px;display:flex}.result-summary>svg{color:var(--accent);flex-shrink:0}.result-facts{grid-template-columns:repeat(3,1fr);gap:25px;margin-top:25px;display:grid}.result-facts>div{flex-direction:column;gap:4px;display:flex}.result-facts strong{font:24px var(--font-mono);font-weight:400}.result-facts span{color:var(--ink-faint);font-size:10px}.result-trace{color:var(--ink-faint);font:9px/1.8 var(--font-mono);flex-wrap:wrap;gap:8px;margin-top:23px;display:flex}.artifacts{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px;margin-top:24px;display:grid}.artifacts details{border-top:1px solid var(--border);min-width:0;padding-top:14px}.artifacts summary{cursor:pointer;font-size:11px;font-weight:600}.artifacts summary span{float:right;font:9px var(--font-mono);color:var(--ink-faint);margin-top:3px}.artifacts pre{margin-top:12px;font-size:9px}.afterword{justify-content:space-between;align-items:flex-start;gap:35px;padding:48px 0 26px;display:flex}.afterword h2{letter-spacing:-.8px;max-width:420px;font-size:24px;font-weight:550;line-height:1.4}.afterword p{color:var(--ink-soft);max-width:430px;font-size:12px;line-height:1.9}.afterword-arrow{color:var(--accent);font-size:23px}.sources{color:var(--ink-faint);margin-bottom:36px;font-size:10px}.sources summary{cursor:pointer;width:fit-content}.sources a{color:var(--ink-soft);margin-top:12px;display:block}footer{border-top:1px solid var(--border);min-height:82px;color:var(--ink-faint);justify-content:space-between;align-items:center;gap:20px;font-size:9px;display:flex}.keyboard-hint{font:8px var(--font-mono)}.film:fullscreen{background:var(--ground);border:0;border-radius:0;flex-direction:column;display:flex;overflow-y:auto}.film:fullscreen .film-content{flex:1}.film:fullscreen .visual-stage{max-height:none}.film:fullscreen .stage-svg{max-height:calc(100vh - 320px)}@media (width>=1600px){.site-header,main,footer{max-width:1580px;padding-left:60px;padding-right:60px}.intro{padding-top:55px;padding-bottom:43px}.intro h1{font-size:62px}.film-content{grid-template-columns:minmax(0,1fr) 350px}.narration{padding:30px}.narration h2{font-size:27px}.narration-body{font-size:13px}}@media (width<=1150px){.site-header,main,footer{padding-left:30px;padding-right:30px}.film-content{grid-template-columns:minmax(0,1fr) 285px}.narration{padding:24px 20px}.narration h2{font-size:22px}.narration-body{font-size:11px}.film-topic{display:none}.intro h1{font-size:46px}.intro-note{min-width:175px}.visual-stage{padding-left:8px;padding-right:8px}.stage-svg{min-height:280px}.keyboard-hint{display:none}}@media (width<=900px){.site-header,main,footer{padding-left:24px;padding-right:24px}.intro h1{letter-spacing:-1.8px;font-size:39px}.intro>div>p{font-size:12px}.intro-note{min-width:145px;padding-left:20px}.intro-note>span{font-size:8px}.intro-note p{font-size:10px}.film-content{grid-template-columns:1fr}.visual-stage{border-bottom:1px solid var(--border);padding:15px}.stage-svg{min-height:0}.narration{border-left:0;min-height:0;padding:24px}.narration-status{margin-bottom:13px}.narration h2{font-size:26px}.narration-body{max-width:700px;font-size:13px}.scene-actions{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:18px}.scene-actions button{min-height:47px;font-size:11px}.narration-bottom{padding-top:18px}.narration-bottom>p{font-size:10px}.continue-button{max-width:300px;min-height:44px;font-size:11px}.action-feedback{font-size:11px}.film-toolbar{padding-left:20px;padding-right:20px}.chapters button{font-size:10px}.experiment-choices{grid-template-columns:repeat(2,1fr)}.afterword{flex-wrap:wrap;gap:30px}.afterword h2{max-width:none;font-size:23px}.afterword p{max-width:480px}.afterword-arrow{margin-left:auto}}@media (width<=520px){.site-header,main,footer{padding-left:18px;padding-right:18px}.site-header{height:73px}.wordmark{gap:10px}.brand-description,.brand-divider{display:none}.intro{padding-top:30px;padding-bottom:28px;display:block}.intro h1{letter-spacing:-1.9px;max-width:350px;font-size:38px}.intro>div>p{max-width:320px;margin-top:15px;font-size:12px}.intro-note{display:none}.chapters button{flex-direction:column;gap:7px;padding:12px 4px;font-size:8px;line-height:1.7}.chapter-index{font-size:8px}.film-toolbar{gap:9px;min-height:52px;padding:8px 12px}.scene-counter{font-size:10px}.scene-counter>span{font-size:8px}.view-toggle{gap:0;padding:2px}.view-toggle button{min-height:31px;padding:6px 8px;font-size:8px}.fullscreen-button{min-width:23px}.visual-stage{padding:8px 8px 12px;overflow-x:auto}.stage-svg{width:620px;min-width:620px;min-height:330px}.stage-legend{gap:12px;min-width:310px;padding:8px 5px 0;font-size:8px}.inspect-hint{display:none!important}.graph-note{width:310px;max-width:100%;min-height:0;padding:10px 5px 0;font-size:9px}.narration{padding:21px 18px}.narration h2{font-size:25px}.narration-body{margin-top:15px;font-size:12px;line-height:1.9}.narration-status{font-size:9px}.scene-actions{grid-template-columns:1fr}.scene-actions button{padding:12px 11px;font-size:11px}.narration-bottom>p{font-size:9px}.continue-button{max-width:none}.caption{align-items:flex-start;gap:11px;padding:14px 18px}.caption p{font-size:10px;line-height:1.85}.caption-symbol{margin-top:2px;font-size:18px}.transport{padding:14px 15px 11px}.transport-controls{flex-wrap:wrap;gap:4px}.play-button{min-width:98px;min-height:38px;padding:8px 11px;font-size:10px}.transport .icon-button{min-width:30px;min-height:38px}.timecode{margin-left:5px;font-size:8px}.speed-select{padding:7px 3px;font-size:9px}.film-scrubber{margin-top:13px}.scene-ticks{gap:5px}.scene-ticks button{min-height:34px}.tick-index{font-size:7px}.inspector{padding:20px 18px}.inspector>p{font-size:11px}.inspector summary{overflow-wrap:anywhere;font-size:9px;line-height:1.9}.inspector pre{font-size:9px}.experiment{margin-top:24px;padding:22px 18px}.experiment-heading h2{font-size:25px}.experiment-heading p{font-size:11px}.experiment-heading>svg{width:20px}.experiment-choices{gap:17px 12px}.experiment-choices select{padding:10px 5px;font-size:10px}.experiment-choices label{font-size:9px}.result-summary{align-items:flex-start;font-size:11px;line-height:1.8}.result-summary>svg{margin-top:2px}.result-facts{gap:12px}.result-facts strong{font-size:22px}.result-facts span{font-size:8px;line-height:1.8}.result-trace{font-size:8px;line-height:1.9}.artifacts{grid-template-columns:1fr}.afterword{gap:16px;padding-top:35px}.afterword h2{font-size:24px}.afterword p{font-size:12px}.sources{margin-bottom:25px;font-size:9px}footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-height:86px;font-size:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}
