/*! 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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,"SF Mono","SFMono-Regular","Cascadia Code","Menlo","Consolas","Hiragino Kaku Gothic ProN",monospace;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--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-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--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-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--leading-loose:2;--radius-md:.375rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-paper:#fafaf8;--color-paper-card:#fff;--color-sumi:#1a1a1a;--color-sumi-soft:#555;--color-sumi-faint:#6f6f69;--color-line:#dcdcd4;--color-line-strong:#1a1a1a;--color-accent:#0d7a6a;--color-accent-dark:#095c50;--color-accent-soft:#e4f2ef;--color-measure:#d97706;--color-measure-soft:#fdf3e6;--font-handwriting:var(--font-sans)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}a{color:var(--color-accent-dark)}}@layer components;@layer utilities{.relative{position:relative}.sticky{position:sticky}.top-8{top:calc(var(--spacing) * 8)}.col-span-1{grid-column:span 1/span 1}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mt-auto{margin-top:auto}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-8{height:calc(var(--spacing) * 8)}.h-\[76px\]{height:76px}.max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.min-h-screen{min-height:100vh}.w-8{width:calc(var(--spacing) * 8)}.w-\[76px\]{width:76px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.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-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * 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)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent{border-color:var(--color-accent)}.border-line{border-color:var(--color-line)}.border-measure{border-color:var(--color-measure)}.border-sumi{border-color:var(--color-sumi)}.border-l-accent{border-left-color:var(--color-accent)}.border-l-measure{border-left-color:var(--color-measure)}.bg-accent{background-color:var(--color-accent)}.bg-measure-soft{background-color:var(--color-measure-soft)}.bg-paper{background-color:var(--color-paper)}.bg-paper-card{background-color:var(--color-paper-card)}.bg-sumi{background-color:var(--color-sumi)}.bg-\[repeating-linear-gradient\(45deg\,\#efece3\,\#efece3_6px\,\#e3dfd2_6px\,\#e3dfd2_12px\)\]{background-image:repeating-linear-gradient(45deg,#efece3,#efece3 6px,#e3dfd2 6px 12px)}.p-0{padding:0}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-7{padding-top:calc(var(--spacing) * 7)}.pr-7{padding-right:calc(var(--spacing) * 7)}.pb-7{padding-bottom:calc(var(--spacing) * 7)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.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-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.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-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.text-accent{color:var(--color-accent)}.text-accent-dark{color:var(--color-accent-dark)}.text-measure{color:var(--color-measure)}.text-paper-card{color:var(--color-paper-card)}.text-sumi{color:var(--color-sumi)}.text-sumi-faint{color:var(--color-sumi-faint)}.text-sumi-soft{color:var(--color-sumi-soft)}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.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))}.duration-150{--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){.group-hover\:text-accent-dark:is(:where(.group):hover *){color:var(--color-accent-dark)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-accent:hover{border-color:var(--color-accent)}.hover\:bg-accent-dark:hover{background-color:var(--color-accent-dark)}.hover\:bg-accent-soft:hover{background-color:var(--color-accent-soft)}.hover\:bg-sumi\/90:hover{background-color:#1a1a1ae6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-sumi\/90:hover{background-color:color-mix(in oklab,var(--color-sumi) 90%,transparent)}}.hover\:text-accent-dark:hover{color:var(--color-accent-dark)}}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:mt-20{margin-top:calc(var(--spacing) * 20)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-12{padding-inline:calc(var(--spacing) * 12)}.sm\:py-14{padding-block:calc(var(--spacing) * 14)}.sm\:py-16{padding-block:calc(var(--spacing) * 16)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-\[15px\]{font-size:15px}}@media (min-width:64rem){.lg\:mx-0{margin-inline:0}.lg\:mt-8{margin-top:calc(var(--spacing) * 8)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:max-w-none{max-width:none}.lg\:grid-cols-\[1\.3fr_1fr\]{grid-template-columns:1.3fr 1fr}.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.lg\:items-center{align-items:center}}}html{color-scheme:light}*,:after,:before{box-sizing:border-box}body{background-color:var(--color-paper);color:var(--color-sumi);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:linear-gradient(#1a1a1a0b 1px,#0000 0),linear-gradient(90deg,#1a1a1a0b 1px,#0000 0);background-position:-1px -1px;background-size:24px 24px}::selection{background:var(--color-accent);color:var(--color-paper-card)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.lab-card{background:var(--color-paper-card);border:1px solid var(--color-line);box-shadow:0 1px #1a1a1a0a}.dim-rule{background:var(--color-line-strong);height:1px;margin:3rem 0;position:relative}.dim-rule:after,.dim-rule:before{content:"";background:var(--color-line-strong);width:1px;height:11px;position:absolute;top:-5px}.dim-rule:before{left:0}.dim-rule:after{right:0}.lab-numbered{counter-reset:lab-section}.lab-numbered h2{counter-increment:lab-section;padding-left:3.1em;position:relative}.lab-numbered h2:before{content:counter(lab-section,decimal-leading-zero) " /";font-family:var(--font-mono);color:var(--color-accent);letter-spacing:.02em;font-size:.62em;font-weight:700;position:absolute;top:.35em;left:0}.stamp-chip{border:1px solid var(--color-accent);letter-spacing:.03em;color:var(--color-accent-dark);background:var(--color-accent-soft);white-space:nowrap;border-radius:2px;align-items:center;gap:.35em;padding:.18em .6em;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.stamp-chip:hover{background:var(--color-accent);color:var(--color-paper-card)}.measure-pending{border:1px dashed var(--color-measure);background:var(--color-measure-soft);color:#92590a;white-space:normal;border-radius:3px;align-items:center;gap:.35em;padding:.1em .55em;font-size:.88em;display:inline-flex}.measure-pending__icon{font-size:.95em;line-height:1}.measure-pending__text{font-family:var(--font-mono)}.type-cursor{background:var(--color-accent);width:.55em;margin-left:.15em;animation:lab-blink 1.1s step-end infinite;display:inline-block}.grow-line{transform-origin:0;animation:lab-grow 1.1s cubic-bezier(.22,.61,.36,1) both}@keyframes lab-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes lab-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.type-cursor{opacity:1;animation:none}.grow-line{animation:none;transform:scaleX(1)}}.notebook-parallax{--rx:0deg;--ry:0deg}.notebook-parallax.is-parallaxing>.notebook-hero{transform:perspective(1200px) rotateX(var(--rx)) rotateY(var(--ry))}@media (prefers-reduced-motion:reduce){.notebook-parallax.is-parallaxing>.notebook-hero{transform:none}}.notebook-hero{isolation:isolate;--p:1;--tilt-max:24deg;perspective:1500px;--book-inset:clamp(20px,3.2vw,34px);--mat-edge:clamp(9px,1.4vw,16px);--notebook-paper:#fbf9f2;--notebook-rule:#1a1a1a17;--notebook-rule-strong:#1a1a1a38;background-blend-mode:normal,normal,soft-light,normal,normal,normal;background-color:#2f2118;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27300%27%20height%3D%27300%27%3E%3Cfilter%20id%3D%27wg%27%3E%3CfeTurbulence%20type%3D%27fractalNoise%27%20baseFrequency%3D%270.006%200.3%27%20numOctaves%3D%272%27%20seed%3D%2711%27%20stitchTiles%3D%27stitch%27%20result%3D%27t%27%2F%3E%3CfeColorMatrix%20in%3D%27t%27%20type%3D%27matrix%27%20values%3D%270%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200.42%200%27%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%27300%27%20height%3D%27300%27%20filter%3D%27url%28%23wg%29%27%2F%3E%3C%2Fsvg%3E),radial-gradient(130% 95% at 50% 42%,#0000 42%,#0a05029e 100%),linear-gradient(135deg,#ffdcac38,#ffdcac00 30%),linear-gradient(#0a060347,#0a060300 40% 70%,#0003),linear-gradient(#d2965c00 58%,#d2965c24),linear-gradient(135deg,#4a3426,#3a2919 45%,#4a3426 70%,#2f2118);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;background-size:300px 300px,cover,cover,cover,cover,cover;border-radius:12px;width:100%;max-width:840px;height:460px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 26px 46px #0a060266,inset 0 0 0 1px #ffe6c31a}@media (max-width:768px){.notebook-hero{--tilt-max:8deg;--book-inset:18px;--mat-edge:8px;max-width:440px;height:640px}}.notebook-mat{inset:calc(var(--book-inset) - var(--mat-edge));background-color:#1d1a17;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27140%27%20height%3D%27140%27%3E%3Cfilter%20id%3D%27mg%27%3E%3CfeTurbulence%20type%3D%27fractalNoise%27%20baseFrequency%3D%270.9%27%20numOctaves%3D%272%27%20seed%3D%274%27%20stitchTiles%3D%27stitch%27%20result%3D%27t%27%2F%3E%3CfeColorMatrix%20in%3D%27t%27%20type%3D%27matrix%27%20values%3D%270%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200.16%200%27%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%27140%27%20height%3D%27140%27%20filter%3D%27url%28%23mg%29%27%2F%3E%3C%2Fsvg%3E),radial-gradient(120% 130% at 30% 12%,#ffffff0f,#0000 60%),linear-gradient(160deg,#211d19,#17140f 60%,#100e0b);background-repeat:repeat,no-repeat,no-repeat;background-size:140px 140px,cover,cover;border-radius:10px;position:absolute;box-shadow:inset 0 0 0 1px #ffffff0f,inset 0 1px #ffffff17,0 14px 26px #00000073}.notebook-tilt{z-index:1;transform-style:preserve-3d;transform-origin:50% 82%;transform:rotateX(calc(var(--tilt-max,15deg) * (1 - var(--p))));position:absolute;inset:0}.notebook-hero.is-resting-open .notebook-tilt{transform:none}.notebook-book{inset:var(--book-inset);--cover-edge:clamp(6px,1vw,10px);perspective:2400px;--shadow-reach:calc(16px + (1 - var(--p)) * 13px);filter:drop-shadow(0 2px 3px #00000080) drop-shadow(0 var(--shadow-reach) calc(var(--shadow-reach) * 1.4) #00000061);background:radial-gradient(120% 160% at 20% 0,#ffffff1a,#0000 55%),linear-gradient(155deg,#22322c,#182420 55%,#101917);border-radius:4px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff12}@media (max-width:768px){.notebook-book{perspective:1800px;--cover-edge:6px}}.notebook-stack{inset:var(--cover-edge);z-index:1;position:absolute}.notebook-stack span{background:var(--notebook-paper);border:1px solid var(--color-line);border-radius:1px;position:absolute;inset:0}.notebook-stack span:first-child{z-index:1;transform:translate(2px,3px)}.notebook-stack span:nth-child(2){z-index:0;background:#ece7d6;transform:translate(4px,6px)}.notebook-spread{inset:var(--cover-edge);z-index:2;border:1px solid var(--color-line);background:var(--notebook-paper);border-radius:1px;display:flex;position:absolute;box-shadow:0 16px 34px #0000004d,0 1px #1a1a1a0f,inset 1px 0 #ffffff8c,inset -1px 0 #ffffff8c}.notebook-page{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 29px,var(--notebook-rule) 29px,var(--notebook-rule) 30px);background-position:0 96px;background-repeat:repeat-y;flex:50%;min-width:0;padding:34px 28px 22px;position:relative}.notebook-spine{background:linear-gradient(90deg,rgba(26,26,26,calc(.02 + var(--p) * .03)),rgba(26,26,26,calc(.1 + var(--p) * .16)) 50%,rgba(26,26,26,calc(.02 + var(--p) * .03)));flex:0 0 18px}@media (max-width:768px){.notebook-page--left,.notebook-spine{display:none}.notebook-page--right{flex:100%;padding-right:52px}}.notebook-ribbon{z-index:2;transform-origin:top;clip-path:polygon(0 0,100% 0,100% 86%,50% 100%,0 86%);background:linear-gradient(#9a3a26,#82301f 55%,#6d2818);width:10px;position:absolute;top:36%;bottom:0;left:calc(50% - 5px);transform:rotate(-1.2deg);box-shadow:1px 3px 5px #0006}.notebook-ribbon:after{content:"";pointer-events:none;background:linear-gradient(90deg,#ffffff38,#0000 60%);position:absolute;inset:0 3px 0 1px}@media (max-width:768px){.notebook-ribbon{left:auto;right:34px}}.notebook-hand{font-family:var(--font-handwriting),var(--font-sans);color:var(--color-accent-dark);border-bottom:1px solid var(--notebook-rule-strong);margin:0 0 .5rem;padding-bottom:.15rem;font-size:1.2rem;font-weight:600;line-height:1.3}.notebook-hand--sm{margin-top:1.6rem;font-size:1.05rem}.notebook-toc-title{color:var(--color-sumi)}.notebook-memo{font-family:var(--font-handwriting),var(--font-sans);color:var(--color-sumi-soft);margin:0;font-size:.95rem;font-weight:400;line-height:1.8}.notebook-loglist{margin:.3rem 0 0;padding:0;list-style:none}.notebook-loglist li{font-family:var(--font-handwriting),var(--font-sans);color:var(--color-sumi);align-items:baseline;gap:.55em;margin-top:.5rem;font-size:.92rem;line-height:1.5;display:flex}.notebook-loglist__no{color:var(--color-sumi-faint);flex:none;font-size:.68rem}.notebook-toc{flex-direction:column;gap:1.35rem;margin-top:.9rem;display:flex}.notebook-navlink{width:fit-content;color:var(--color-sumi);align-items:center;gap:.4em;padding:.3em .2em .35em;text-decoration:none;display:inline-flex;position:relative}.notebook-navlink__arrow{flex:none;width:1.5em;height:1em;overflow:visible}.notebook-navlink__arrow path{fill:none;stroke:var(--color-sumi-soft);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--tx-arrow-draw,1))}.notebook-navlink__label{font-family:var(--font-handwriting),var(--font-sans);letter-spacing:.01em;font-size:1.3rem;font-weight:600;transition:color .2s;position:relative}.notebook-navlink__underline{width:calc(100% - .4em);height:10px;position:absolute;bottom:.15em;left:.2em;overflow:visible}.notebook-navlink__underline path{fill:none;stroke:var(--color-sumi);stroke-width:2.4px;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--tx-underline-draw,1));vector-effect:non-scaling-stroke;transition:stroke .2s}.notebook-navlink:focus-visible .notebook-navlink__label,.notebook-navlink:hover .notebook-navlink__label{color:var(--color-accent-dark)}.notebook-navlink:focus-visible .notebook-navlink__underline path,.notebook-navlink:hover .notebook-navlink__underline path{stroke:var(--color-accent-dark)}.notebook-navlink:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.notebook-tabs{top:calc(var(--book-inset) + 22px);right:calc(var(--book-inset) - 14px);z-index:6;flex-direction:column;gap:12px;display:flex;position:absolute}@media (max-width:768px){.notebook-tabs{top:calc(var(--book-inset) + 16px);right:calc(var(--book-inset) - 10px);gap:10px}}.notebook-tab{width:32px;height:auto;min-height:58px;color:var(--notebook-paper);font-family:var(--font-handwriting),var(--font-sans);letter-spacing:.06em;writing-mode:vertical-rl;text-orientation:mixed;--reveal:clamp(0,(var(--p) - var(--tab-start,.16))/.3,1);opacity:var(--reveal);transform:translateX(calc((1 - var(--reveal)) * 22px));background-image:linear-gradient(90deg,#00000052,#0000 3px),linear-gradient(270deg,#ffffff38,#fff0 3px);border-radius:3px 9px 9px 3px;justify-content:center;align-items:center;padding:11px 7px;font-size:.7rem;font-weight:600;line-height:1.35;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;box-shadow:2px 2px 5px #00000059}.notebook-tab:first-child{z-index:3;--tab-start:.16}.notebook-tab:nth-child(2){z-index:2;--tab-start:.24;margin-left:4px}.notebook-tab:nth-child(3){z-index:1;--tab-start:.32;margin-left:8px}.notebook-tab:focus-visible,.notebook-tab:hover{transform:translate(4px);box-shadow:3px 3px 7px #0006}.notebook-hero.is-cover-closed .notebook-tab{pointer-events:none}.notebook-tab:focus-visible{outline:2px solid var(--notebook-paper);outline-offset:-4px}.notebook-tab--accent{background-color:#17544e}.notebook-tab--measure{background-color:#b06a1f}.notebook-tab--info{background-color:#2b4470}.notebook-page-shadow{z-index:3;--shadow-k:sin(180deg * var(--p));--shadow-w:calc(10% + var(--shadow-k) * 30%);background:linear-gradient(100deg,#0000 0,rgba(0,0,0,calc(var(--shadow-k) * .34)) calc(50% - var(--shadow-w)),rgba(0,0,0,calc(var(--shadow-k) * .34)) calc(50% + var(--shadow-w)),#0000 100%);opacity:1;transform:translateX(calc((var(--p) - .5) * 130%));mix-blend-mode:multiply;border-radius:2px}.notebook-fold,.notebook-page-shadow{pointer-events:none;position:absolute;inset:0}.notebook-fold{transform-style:preserve-3d;transform-origin:0;transform:rotateY(calc(var(--total-deg) * var(--p)))}.notebook-fold--cover{z-index:5;transform:rotate(-.4deg) rotateY(calc(var(--total-deg) * var(--p)));inset:0 5px 5px 0}.notebook-fold--flyleaf{z-index:4}.notebook-fold__back,.notebook-fold__face{backface-visibility:hidden;border-radius:2px;position:absolute;inset:0;overflow:hidden}.notebook-fold__face{border:1px solid #1a1a1a33;justify-content:center;align-items:center;display:flex;box-shadow:0 18px 38px #1a1a1a3d,inset 0 0 0 1px #fff6}.notebook-fold--cover .notebook-fold__face{background:radial-gradient(130% 160% at 22% 10%,#ffffff1f,#0000 55%),linear-gradient(155deg,#22322c,#182420 55%,#101917);border-color:#00000059}.notebook-fold--flyleaf .notebook-fold__face{background:#f1eee2;border-color:#1a1a1a1a;position:relative;box-shadow:0 10px 22px #1a1a1a24}.notebook-fold--flyleaf .notebook-fold__face:after,.notebook-fold--flyleaf .notebook-fold__face:before{content:"";pointer-events:none;position:absolute}.notebook-fold--flyleaf .notebook-fold__face:before{background:repeating-linear-gradient(#fbf7ea 0 2px,#e7dfc4 2px 3px);width:6px;top:0;bottom:6px;right:0;box-shadow:inset 1px 0 #1a1a1a2e}.notebook-fold--flyleaf .notebook-fold__face:after{background:repeating-linear-gradient(90deg,#fbf7ea 0 2px,#e7dfc4 2px 3px);height:6px;bottom:0;left:0;right:6px;box-shadow:inset 0 1px #1a1a1a2e}.notebook-fold__back{transform:rotateY(180deg)}.notebook-fold--cover .notebook-fold__back{background:linear-gradient(160deg,#2a3b34,#1c2925 55%,#131c19);border:1px solid #0000004d}.notebook-fold--flyleaf .notebook-fold__back{background:linear-gradient(160deg,#f6f3e8,#ece6d4 60%,#e2dabf);border:1px solid #1a1a1a14}.notebook-fold__texture{position:absolute;inset:0}.notebook-fold__seg{width:100%;height:100%;transform-style:preserve-3d;transform-origin:0;--seg-curl:sin(180deg * clamp(0,(var(--p) - var(--seg-start))/var(--seg-range),1));transform:rotateY(calc(var(--bend-max) * var(--seg-weight) * var(--seg-curl))) translateZ(calc(var(--lift-max) * var(--seg-weight) * var(--seg-curl)));background-repeat:no-repeat;position:absolute;top:0;left:0}.notebook-fold__seg--child{left:100%}.notebook-fold--cover .notebook-fold__seg{background-image:radial-gradient(120% 140% at 28% 18%,#ffffff38,#0000 55%),repeating-linear-gradient(135deg,#ffffff08 0 2px,#0000 2px 5px),linear-gradient(160deg,#263a33,#1a2621 55%,#101917)}.notebook-fold--flyleaf .notebook-fold__seg{background-image:linear-gradient(160deg,#faf8f2,#f1eee2 60%,#e9e4d2)}.notebook-fold__sheen{pointer-events:none;background:linear-gradient(100deg,#0000 32%,#fff9 48%,#0000 64%) 0 0/280% 100%;background-position:calc(88% - var(--p) * 176%) 0;opacity:calc(sin(180deg * var(--p)) * .85);mix-blend-mode:soft-light;position:absolute;inset:0}.notebook-cover__label{z-index:1;font-family:var(--font-sans);letter-spacing:.03em;text-align:center;color:#ecdfc0;text-shadow:0 1px #0000008c,0 -1px #ffffff1a;transform:skewY(calc(var(--p) * -3deg));opacity:calc(1 - var(--p) * .15);background:#ffffff0d;border:1px solid #e8dcbe8c;padding:.9em 1.5em;font-size:1.15rem;font-weight:800;line-height:1.65;position:relative}@media (max-width:768px){.notebook-cover__label{padding:.8em 1.1em;font-size:1rem}}.notebook-fold__handle{z-index:2;cursor:grab;pointer-events:auto;touch-action:none;clip-path:polygon(100% 0,100% 100%,0 100%);filter:drop-shadow(-2px -2px 3px #1a1a1a4d);background:linear-gradient(135deg,#0000 48%,#ffffffbf 50%,#ffffff40 62%,#0000 64%);width:36px;height:36px;transition:transform .15s;position:absolute;bottom:0;right:0}.notebook-fold__handle:hover{transform:scale(1.08)}.notebook-fold__handle:active{cursor:grabbing}.notebook-fold__handle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.notebook-cover-clicktarget{z-index:6;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;margin:0;padding:0;position:absolute;inset:0}.notebook-cover-clicktarget:focus-visible{outline:2px solid var(--color-accent);outline-offset:-4px}.notebook-cover__hint{z-index:7;color:var(--color-sumi-soft);letter-spacing:.03em;white-space:nowrap;pointer-events:none;opacity:calc(clamp(0, 1 - var(--p) * 12, 1));background:#ffffff8c;border:1px solid #1a1a1a2e;border-radius:2px;margin:0;padding:.35em .85em;font-size:.72rem;position:absolute;bottom:13%;left:50%;transform:translate(-50%)}.notebook-cover__hint-text{animation:notebook-hint-blink 1.8s ease-in-out infinite;display:inline-block}@keyframes notebook-hint-blink{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.notebook-cover__hint-text{opacity:.85;animation:none}}.notebook-open-btn{z-index:7;background:var(--color-accent-dark);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;border-radius:3px;padding:.85em 1.7em;font-size:.95rem;font-weight:700;transition:transform .15s,background-color .15s;animation:notebook-btn-in .4s both;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 20px #1a1a1a47}.notebook-open-btn:focus-visible,.notebook-open-btn:hover{background:var(--color-accent);transform:translate(-50%,-50%)scale(1.04)}.notebook-open-btn:focus-visible{outline-offset:3px;outline:2px solid #fff}@keyframes notebook-btn-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.92)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.notebook-hero .notebook-fold__handle{pointer-events:none;cursor:default}.notebook-hero .notebook-page-shadow{opacity:0!important}.notebook-hero .notebook-open-btn{animation:none!important}.notebook-hero .notebook-navlink__underline path{transition:none}}.stamp-tag{z-index:1;font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-paper-card);white-space:nowrap;padding:.25em .85em;font-size:.72rem;font-weight:700;position:absolute;top:-.7em;left:2.2rem}.stamp-tag--measure{background:var(--color-measure)}.stamp-tag--accent{background:var(--color-accent);top:-.65em;left:auto;right:1.5rem}.board-h1{letter-spacing:.01em;color:var(--color-sumi);font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:1.55}.board-h1,.board-h2{font-family:var(--font-handwriting),var(--font-sans);font-weight:600}.board-h2{line-height:1.5;display:block}.dim-bracket-group{position:absolute}.dim-bracket-group--v{width:.9rem;top:.6rem;bottom:1.7rem;right:-.1rem}.dim-bracket-group--h{height:.9rem;bottom:-.1rem;left:.6rem;right:1.7rem}.dim-bracket{pointer-events:none;position:absolute;inset:0;overflow:visible}.dim-bracket path{fill:none;stroke:var(--color-accent-dark);stroke-width:1.4px;vector-effect:non-scaling-stroke}.dim-tag{font-family:var(--font-mono);color:var(--color-accent-dark);background:var(--color-paper-card);white-space:nowrap;padding:0 .35em;font-size:.62rem;position:absolute}.dim-tag--v{transform-origin:50%;top:50%;right:-1.6rem;transform:translateY(-50%)rotate(90deg)}.dim-tag--h{bottom:-.75rem;left:50%;transform:translate(-50%)}.ink-armed [data-ink].ink-stamp{opacity:0;transform:scale(1.06)}.ink-armed [data-ink].ink-stamp.is-inked{opacity:1;transition:opacity .12s,transform .12s;transform:scale(1)}.ink-armed [data-ink].dim-bracket-group .dim-bracket path{stroke-dasharray:1;stroke-dashoffset:1px}.ink-armed [data-ink].dim-bracket-group .dim-tag{opacity:0}.ink-armed [data-ink].dim-bracket-group.is-inked .dim-bracket path{stroke-dashoffset:0;transition:stroke-dashoffset .6s}.ink-armed [data-ink].dim-bracket-group.is-inked .dim-tag{opacity:1;transition:opacity .3s .4s}.ink-armed [data-ink].ink-steps li{clip-path:inset(0 100% 0 0)}.ink-armed [data-ink].ink-steps.is-inked li{clip-path:inset(0);transition:clip-path .45s}.ink-armed [data-ink].ink-steps.is-inked li:first-child{transition-delay:0s}.ink-armed [data-ink].ink-steps.is-inked li:nth-child(2){transition-delay:.11s}.ink-armed [data-ink].ink-steps.is-inked li:nth-child(3){transition-delay:.22s}.ink-armed [data-ink].ink-steps.is-inked li:nth-child(4){transition-delay:.33s}@media (prefers-reduced-motion:reduce){.ink-armed [data-ink]{opacity:1!important;clip-path:none!important;transform:none!important}}.article-body{max-width:68ch;color:var(--color-sumi);font-size:17px;line-height:1.9}.article-body h2{letter-spacing:-.01em;border-bottom:2px solid var(--color-sumi);color:var(--color-sumi);margin-top:2.6em;margin-bottom:.9em;padding-bottom:.5em;font-size:1.4em;font-weight:800}.article-body h3{color:var(--color-sumi);margin-top:2em;margin-bottom:.6em;font-size:1.15em;font-weight:700}.article-body ol,.article-body p,.article-body ul{margin-top:1.2em;margin-bottom:1.2em}.article-body ol,.article-body ul{padding-left:1.6em}.article-body li{margin-top:.4em}.article-body ul{list-style:outside}.article-body ol{list-style:decimal}.article-body blockquote{border-left:3px solid var(--color-accent);color:var(--color-sumi-soft);background:var(--color-accent-soft);margin:1.6em 0;padding:.2em 1.2em}.article-body code{background:var(--color-accent-soft);font-size:.9em;font-family:var(--font-mono);border-radius:4px;padding:.15em .4em}.article-body pre{background:var(--color-sumi);color:var(--color-paper);border-radius:8px;margin:1.6em 0;padding:1em;overflow-x:auto}.article-body pre code{background:0 0;padding:0}.article-body a{text-underline-offset:2px;text-decoration:underline}.article-body hr{border:none;border-top:1px solid var(--color-line);margin:2.4em 0}.article-body table{-webkit-overflow-scrolling:touch;border-collapse:collapse;white-space:nowrap;width:100%;max-width:100%;margin:1.8em 0;font-size:.92em;display:block;overflow-x:auto}.article-body td,.article-body th{border:1px solid var(--color-line);text-align:left;padding:.6em .9em}.article-body thead{display:table-row-group}.article-body th{background:var(--color-accent);color:var(--color-paper-card);white-space:nowrap;font-weight:700}.article-body tr:nth-child(2n) td{background:#f5f5f2}.article-body td[style*=right],.article-body th[style*=right]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.article-body .measure-pending{white-space:normal}.notebook-scene3d{touch-action:pan-y;background:#2f2118;border-radius:12px;width:100%;max-width:840px;height:460px;margin:0 auto;position:relative;overflow:hidden}.notebook-scene3d canvas{display:block;width:100%!important;height:100%!important}@media (max-width:768px){.notebook-scene3d{max-width:440px;height:640px}}.notebook-reveal{aspect-ratio:960/540;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#2f2118;border-radius:12px;outline:none;width:100%;max-width:840px;margin:0 auto;position:relative;overflow:hidden}.notebook-reveal.is-dragging{cursor:grabbing}.notebook-reveal.is-open-mode{cursor:pointer}.notebook-reveal.is-orbit-loading{cursor:default}.notebook-reveal:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.notebook-reveal img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.notebook-reveal__l0{opacity:1}.notebook-reveal__reveal{opacity:0;will-change:opacity}.notebook-reveal.is-revealing .notebook-reveal__l0{opacity:0}.notebook-reveal.is-revealing .notebook-reveal__reveal{opacity:1}.notebook-reveal__hires{opacity:0;will-change:opacity;transition:opacity .16s}.notebook-reveal.is-reduced-motion .notebook-reveal__hires,.notebook-reveal.is-reduced-motion .notebook-reveal__l0,.notebook-reveal.is-reduced-motion .notebook-reveal__reveal{transition:none!important;animation:none!important}.notebook-reveal__hint{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#efe9df;letter-spacing:.03em;pointer-events:none;opacity:0;z-index:4;background:#0a0a088c;border-radius:999px;padding:7px 14px;font-size:12px;transition:opacity .25s;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.notebook-reveal__loading{color:#cfc6b6;z-index:5;background:#2f2118;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;display:none;position:absolute;inset:0}.notebook-reveal__bar-track{background:#ffffff24;border-radius:999px;width:160px;height:4px;overflow:hidden}.notebook-reveal__bar-fill{background:var(--color-accent);width:0;height:100%;transition:width .15s}@media (max-width:768px){.notebook-reveal{max-width:440px}}@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-duration{syntax:"*";inherits:false}@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}@font-face{font-family:handwriting;src:url(/_next/static/media/5b9a181f4529cab1-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:handwriting;src:url(/_next/static/media/b56552bf80517072-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:handwriting Fallback;src:local("Arial");ascent-override:108.50%;descent-override:26.94%;line-gap-override:0.00%;size-adjust:106.91%}.__className_e10378{font-family:handwriting,handwriting Fallback}.__variable_e10378{--font-handwriting:"handwriting","handwriting Fallback"}