/*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-outline-style:solid;--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-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:-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-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-xs:calc(var(--radius) - .375rem);--radius-sm:calc(var(--radius) - .25rem);--radius-md:calc(var(--radius) - .125rem);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + .25rem);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--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)}}@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]){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;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-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}*{border-color:var(--border);outline-color:var(--outline)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--outline) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground);color-scheme:light}body:where(.dark,.dark *){color-scheme:dark}button{cursor:pointer}input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select{appearance:none;--tw-shadow:0 0 #0000;background-color:#fff;border-width:1px;border-color:oklch(55.1% .027 264.364);border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem}:is(input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select):focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-color:oklch(54.6% .245 262.881);outline:2px solid #0000}input::placeholder,textarea::placeholder{color:oklch(55.1% .027 264.364);opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='oklch(55.1%25 0.027 264.364)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}select:where([multiple]),select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;print-color-adjust:unset;padding-right:.75rem}input:where([type=checkbox]),input:where([type=radio]){appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;vertical-align:middle;-webkit-user-select:none;user-select:none;color:oklch(54.6% .245 262.881);--tw-shadow:0 0 #0000;background-color:#fff;background-origin:border-box;border-width:1px;border-color:oklch(55.1% .027 264.364);flex-shrink:0;width:1rem;height:1rem;padding:0;display:inline-block}input:where([type=checkbox]){border-radius:0}input:where([type=radio]){border-radius:100%}input:where([type=checkbox]):focus,input:where([type=radio]):focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);outline:2px solid #0000}input:where([type=checkbox]):checked,input:where([type=radio]):checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}input:where([type=checkbox]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=checkbox]):checked{appearance:auto}}input:where([type=radio]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=radio]):checked{appearance:auto}}input:where([type=checkbox]):checked:hover,input:where([type=checkbox]):checked:focus,input:where([type=radio]):checked:hover,input:where([type=radio]):checked:focus{background-color:currentColor;border-color:#0000}input:where([type=checkbox]):indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}@media (forced-colors:active){input:where([type=checkbox]):indeterminate{appearance:auto}}input:where([type=checkbox]):indeterminate:hover,input:where([type=checkbox]):indeterminate:focus{background-color:currentColor;border-color:#0000}input:where([type=file]){background:unset;border-color:inherit;font-size:unset;line-height:inherit;border-width:0;border-radius:0;padding:0}input:where([type=file]):focus{outline:1px solid buttontext;outline:1px auto -webkit-focus-ring-color}}@layer components;@layer utilities{.\@container{container-type:inline-size}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.p-4{padding:calc(var(--spacing) * 4)}.text-wrap{text-wrap:wrap}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )}.accent-foreground{accent-color:var(--foreground)}.shadow{--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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-filter{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))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.paused{animation-play-state:paused}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root,.dark{--sidebar-background:var(--background);--sidebar-foreground:var(--foreground);--sidebar-primary:var(--foreground);--sidebar-primary-foreground:var(--background);--sidebar-accent:var(--accent);--sidebar-accent-foreground:var(--foreground);--sidebar-border:var(--border);--sidebar-outline:var(--outline)}:root{--background:#faf9f7;--foreground:#2b2721;--card:#faf9f7;--card-foreground:#2b2721;--popover:#fdfdfb;--popover-foreground:#2b2721;--primary:#006776;--primary-foreground:#fffaf2;--primary-accent:#006776;--primary-soft:#ddf1f5;--secondary:#eeede9;--secondary-foreground:#2b2721;--secondary-accent:#2b2721;--muted:#f1f0ed;--muted-foreground:#6a6153;--accent:#eeede9;--accent-foreground:#2b2721;--info:#f1f0ed;--info-foreground:#2b2721;--success:#f1f0ed;--success-foreground:#2b2721;--warning:#f1f0ed;--warning-foreground:#2b2721;--error:#ddf1f5;--error-foreground:#006776;--border:#e6e4e0;--input:#8f8471;--outline:#2b2721;--highlight:#bee8f1;--syntax-keyword:#006776;--syntax-string:#2b2721;--syntax-function:#2b2721;--syntax-constant:#006776;--syntax-type:#2b2721;--syntax-comment:#6a6153;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--radius:8px;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--shadow-float:0 2px 6px #2b27210f, 0 16px 40px -8px #2b272129;--focus-ring:0 0 0 2px #faf9f7, 0 0 0 4px #2b2721;--fs-display:clamp(2.125rem, 1.6rem + 2.4vw, 3rem);--fs-h1:clamp(1.75rem, 1.45rem + 1.4vw, 2.25rem);--fs-title:clamp(1.25rem, 1.1rem + .6vw, 1.5rem);--fs-body:1.0625rem;--fs-sm:.875rem;--lh-display:1.2;--lh-h1:1.3;--lh-title:1.45;--lh-body:1.75;--lh-sm:1.6;--measure:680px;--container:1120px;--gutter:24px;--gutter-sm:16px;--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--font-serif:"Source Serif 4", "Noto Serif SC", serif;--font-sans:"Source Sans 3", "Noto Sans SC", sans-serif;--font-mono:"Maple Mono", "Noto Sans SC", monospace;color-scheme:light}.dark,[data-theme=dark]{--background:#1b1915;--foreground:#ece6da;--card:#1b1915;--card-foreground:#ece6da;--popover:#26231e;--popover-foreground:#ece6da;--primary:#7cc5d3;--primary-foreground:#1b1915;--primary-accent:#7cc5d3;--primary-soft:#15272b;--secondary:#29251f;--secondary-foreground:#ece6da;--secondary-accent:#ece6da;--muted:#24211c;--muted-foreground:#a9a091;--accent:#29251f;--accent-foreground:#ece6da;--info:#24211c;--info-foreground:#ece6da;--success:#24211c;--success-foreground:#ece6da;--warning:#24211c;--warning-foreground:#ece6da;--error:#15272b;--error-foreground:#7cc5d3;--border:#2e2a24;--input:#7d7364;--outline:#ece6da;--highlight:#113f47;--syntax-keyword:#7cc5d3;--syntax-string:#ece6da;--syntax-function:#ece6da;--syntax-constant:#7cc5d3;--syntax-type:#ece6da;--syntax-comment:#a9a091;--shadow-float:0 16px 40px -8px #000000b3;--focus-ring:0 0 0 2px #1b1915, 0 0 0 4px #ece6da;color-scheme:dark}:root{--font-serif:var(--font-source-serif), var(--font-noto-serif-sc);--font-sans:var(--font-source-sans), var(--font-noto-sans-sc);--font-mono:var(--font-maple-mono), var(--font-noto-sans-sc)}body{color:var(--foreground);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-autospace:normal;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--background);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85 .55' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .4 0 0 0 0 .4 0 0 0 0 .4 0 0 0 .03 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");margin:0}[data-theme=dark] body,.dark body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85 .55' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .95 0 0 0 0 .9 0 0 0 0 .8 0 0 0 .035 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E")}:lang(zh-TW),:lang(zh-HK){--font-serif:"Source Serif 4", "Noto Serif TC", serif;--font-sans:"Source Sans 3", "Noto Sans TC", sans-serif}:lang(ja){--font-serif:"Source Serif 4", "Noto Serif JP", serif;--font-sans:"Source Sans 3", "Noto Sans JP", sans-serif}:lang(ko){--font-serif:"Source Serif 4", "Noto Serif KR", serif;--font-sans:"Source Sans 3", "Noto Sans KR", sans-serif}a{color:inherit}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{box-shadow:var(--focus-ring);outline:2px solid #0000}.or-icon{vertical-align:middle;flex:none;display:inline-block}:root{--dur-1:.15s;--dur-2:.2s;--dur-3:.3s;--dur-4:.4s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--page-top:clamp(32px, 5vw, 48px);--corner-k:1;--scrim:#1b191566}.or-container{max-width:var(--container);padding:0 var(--gutter);box-sizing:content-box;margin:0 auto}@media (width<=767px){.or-container{padding:0 var(--gutter-sm)}}.or-wordmark{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);color:var(--foreground);border-radius:var(--radius-sm);font-weight:600;text-decoration:none}.or-wordmark.is-small{font-size:var(--fs-title);line-height:var(--lh-title)}.or-wordmark-dot{color:var(--primary)}.or-btn{justify-content:center;align-items:center;gap:var(--space-2);box-sizing:border-box;font:inherit;white-space:nowrap;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-1), border-color var(--dur-1), color var(--dur-1);-webkit-tap-highlight-color:transparent;border:1px solid #0000;font-weight:500;text-decoration:none;display:inline-flex}.or-btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-btn-md{height:36px;padding:0 var(--space-4);font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-btn-lg{height:40px;padding:0 var(--space-6);font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-btn-icon{width:36px;height:36px;padding:0}.or-btn-icon-sm{width:32px;height:32px;padding:0}.or-btn-default{background:var(--foreground);color:var(--background)}.or-btn-default:hover{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.or-btn-default:hover{background:color-mix(in oklab, var(--foreground) 88%, var(--background))}}.or-btn-primary{background:var(--primary);color:var(--primary-foreground)}.or-btn-primary:hover{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.or-btn-primary:hover{background:color-mix(in oklab, var(--primary) 88%, var(--background))}}.or-btn-secondary{background:var(--secondary);color:var(--secondary-foreground)}.or-btn-secondary:hover{background:var(--accent)}.or-btn-outline{border-color:var(--input);color:var(--foreground);background:0 0}.or-btn-outline:hover{background:var(--accent)}.or-btn-ghost{color:var(--muted-foreground);background:0 0}.or-btn-ghost:hover{background:var(--accent);color:var(--foreground)}.or-btn .or-btn-trail{transition:transform var(--dur-2)}.or-btn:hover .or-btn-trail{transform:translate(2px)}.or-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.or-badge{height:24px;padding:0 var(--space-2);font-size:var(--fs-sm);border-radius:var(--radius-sm);transition:background-color var(--dur-1), color var(--dur-1);align-items:center;line-height:1;text-decoration:none;display:inline-flex}.or-badge-default{background:var(--muted);color:var(--muted-foreground)}a.or-badge-default:hover{background:var(--accent);color:var(--foreground)}.or-badge-primary{box-shadow:inset 0 0 0 1px var(--foreground);color:var(--foreground)}.or-badge-outline{border:1px solid var(--border);color:var(--muted-foreground)}.or-alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--foreground);grid-template-columns:18px 1fr;display:grid}.or-alert-icon{margin-top:5px}.or-alert-title{margin-bottom:2px;font-weight:600}.or-alert-desc>:first-child{margin-top:0}.or-alert-desc>:last-child{margin-bottom:0}.or-alert-default{background:var(--muted)}.or-alert-default .or-alert-icon{color:var(--muted-foreground)}.or-alert-info{background:var(--info)}.or-alert-info .or-alert-icon,.or-alert-info .or-alert-title{color:var(--info-foreground)}.or-alert-success{background:var(--success)}.or-alert-success .or-alert-icon,.or-alert-success .or-alert-title{color:var(--success-foreground)}.or-alert-warning{background:var(--warning)}.or-alert-warning .or-alert-icon,.or-alert-warning .or-alert-title{color:var(--warning-foreground)}.or-alert-error{background:var(--error)}.or-alert-error .or-alert-icon,.or-alert-error .or-alert-title{color:var(--error-foreground)}.or-dropdown{display:inline-block;position:relative}.or-lang-trigger{padding:0 var(--space-2);gap:2px}.or-lang-chev{opacity:.7}.or-menu{z-index:20;min-width:168px;padding:var(--space-1);background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);position:absolute;top:calc(100% + 6px);right:0}.or-menu-item{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;height:32px;padding:0 var(--space-2);font:inherit;font-size:var(--fs-sm);color:inherit;border-radius:calc(var(--radius-xl) - (1px + var(--space-1)) * var(--corner-k));cursor:pointer;text-align:left;line-height:var(--lh-sm);background:0 0;border:0;text-decoration:none;display:flex}.or-menu-item:hover{background:var(--accent)}.or-menu-item+.or-menu-item{margin-top:2px}.or-menu-item.is-current{color:var(--primary-accent);font-weight:500}.or-sheet .or-menu{inset:auto auto calc(100% + 6px) 0}.or-header{border-bottom:1px solid var(--border);position:relative;container-type:inline-size}.or-header-inner{box-sizing:content-box;max-width:var(--container);padding:var(--space-3) var(--gutter);align-items:center;gap:var(--space-8);grid-template-columns:1fr auto 1fr;margin:0 auto;display:grid}.or-header-inner>:first-child{justify-self:start}.or-nav{gap:var(--space-8);justify-content:center;display:flex}.or-nav-link{font-size:var(--fs-sm);color:var(--muted-foreground);transition:color var(--dur-1);border-radius:var(--radius-sm);line-height:36px;text-decoration:none;position:relative}.or-nav-link:hover,.or-nav-link.is-active{color:var(--foreground)}.or-nav-link.is-active:after{content:"";background:var(--foreground);height:1px;position:absolute;bottom:6px;left:0;right:0}.or-header-tools{align-items:center;gap:var(--space-1);justify-self:end;display:flex}.or-only-narrow{display:none}@container (width<=767px){.or-header-inner{padding:var(--space-2) var(--gutter-sm);display:flex}.or-header-tools{margin-left:auto}.or-nav,.or-only-wide{display:none}.or-only-narrow{display:inline-flex}}.or-sheet-wrap{z-index:50;position:fixed;inset:0}.or-sheet-overlay{background:var(--scrim);position:absolute;inset:0}.or-sheet{width:min(320px,86%);padding:var(--space-3) var(--space-4) var(--space-6);box-sizing:border-box;background:var(--popover);border-left:1px solid var(--border);box-shadow:var(--shadow-float);border-radius:0;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0}.or-sheet-head{justify-content:space-between;align-items:center;display:flex}.or-sheet-nav{gap:var(--space-1);margin-top:var(--space-6);flex-direction:column;display:flex}.or-sheet-link{min-height:48px;padding:0 var(--space-3);font-family:var(--font-serif);font-size:var(--fs-title);color:var(--muted-foreground);border-radius:var(--radius-md);font-weight:600;line-height:var(--lh-title);align-items:center;text-decoration:none;display:flex}.or-sheet-link:hover{background:var(--accent);color:var(--foreground)}.or-sheet-link.is-active{color:var(--foreground);background:var(--muted)}.or-sheet-link.is-active:before{content:"";width:6px;height:6px;margin-right:var(--space-3);background:var(--foreground);border-radius:50%}.or-sheet-foot{gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border);margin-top:auto;display:flex}.or-dialog{box-sizing:border-box;background:var(--popover);width:100%;max-width:560px;color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);overflow:hidden}.or-search-field{align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border);display:flex}.or-search-icon{color:var(--muted-foreground)}.or-search-input{min-width:0;height:48px;font:inherit;font-size:var(--fs-body);color:inherit;box-shadow:none;appearance:none;line-height:var(--lh-body);background:0 0;border:0;outline:none;flex:1;padding:0}.or-search-input:focus{box-shadow:none;outline:none}.or-search-input::placeholder{color:var(--muted-foreground)}.or-kbd{font-family:var(--font-sans);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--muted-foreground);background:var(--muted);border-radius:var(--radius-sm);padding:0 6px;line-height:20px}.or-search-results{padding:var(--space-1);flex-direction:column;gap:2px;max-height:360px;margin:0;list-style:none;display:flex;overflow:auto}.or-search-hit{align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:calc(var(--radius-xl) - (1px + var(--space-1)) * var(--corner-k));text-decoration:none;display:flex}.or-search-hit:hover,.or-search-hit.is-active{background:var(--accent)}.or-search-kind{color:var(--muted-foreground);margin-top:4px}.or-search-text{flex-direction:column;flex:1;min-width:0;display:flex}.or-search-title{font-weight:600;font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-search-excerpt{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.or-search-excerpt mark{background:var(--highlight);color:var(--foreground);border-radius:var(--radius-xs);padding:0 1px}.or-search-enter{color:var(--muted-foreground);margin-top:4px}.or-section-head{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.or-section-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-section-head .or-btn:hover .or-icon{color:var(--primary-accent)}.or-posts{border-bottom:1px solid var(--border)}.or-post{padding:var(--space-6) 0;border-top:1px solid var(--border)}.or-post-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-post-title a{background:linear-gradient(var(--primary), var(--primary)) no-repeat 0 100% / 0 1px;transition:background-size var(--dur-3);border-radius:var(--radius-xs);text-decoration:none}.or-post-title a:hover{background-size:100% 1px}.or-post-summary{margin:var(--space-2) 0 0;max-width:var(--measure);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-post-meta{margin-top:var(--space-3);align-items:center;gap:var(--space-2) var(--space-4);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.or-post-read{align-items:center;gap:var(--space-1);display:inline-flex}.or-post-tags{gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.or-post-tags .or-badge{height:22px}@media (width<=559px){.or-post{padding:var(--space-4) 0 var(--space-6)}}.or-project{color:var(--card-foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);transition:border-color var(--dur-1);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.or-project:hover{border-color:var(--input)}.or-project-cover{aspect-ratio:16/10;place-items:center;display:grid;overflow:hidden}.or-project-cover img{object-fit:cover;width:100%;height:100%;display:block}.or-tone-primary{background:var(--primary-soft);color:var(--primary-accent)}.or-tone-info{background:var(--info);color:var(--info-foreground)}.or-tone-success{background:var(--success);color:var(--success-foreground)}.or-project-glyph{font-family:var(--font-serif);font-size:var(--fs-display);letter-spacing:-.01em;font-weight:600;line-height:1}.or-project-text{padding:var(--space-4);flex-direction:column;flex:1;display:flex}.or-project-row{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.or-project-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-project-arrow{color:var(--muted-foreground);transition:transform var(--dur-2), color var(--dur-2)}.or-project:hover .or-project-arrow{color:var(--primary-accent);transform:translate(2px,-2px)}.or-project-summary{margin:var(--space-2) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-project-foot{padding-top:var(--space-3);justify-content:space-between;gap:var(--space-3);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-top:auto;display:flex}.or-project-stack{gap:0 var(--space-3);font-size:var(--fs-sm);line-height:var(--lh-sm);flex-wrap:wrap;display:inline-flex}.or-doc{gap:var(--space-4);padding:var(--space-4);color:var(--card-foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);transition:border-color var(--dur-1);align-items:flex-start;text-decoration:none;display:flex}.or-doc:hover{border-color:var(--input)}.or-doc-tile{width:48px;height:60px;font-family:var(--font-serif);font-size:var(--fs-title);border-radius:var(--radius-sm) var(--radius-md) var(--radius-md) var(--radius-sm);flex:none;place-items:center;font-weight:600;display:grid;box-shadow:inset 3px 0}@supports (color:color-mix(in lab, red, red)){.or-doc-tile{box-shadow:inset 3px 0 0 color-mix(in oklab, currentColor 18%, transparent)}}.or-doc-tile{transition:transform var(--dur-2)}.or-doc:hover .or-doc-tile{transform:translateY(-2px)}.or-doc-text{flex:1;min-width:0}.or-doc-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-doc-summary{margin:var(--space-2) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.or-doc-meta{margin-top:var(--space-3);gap:var(--space-4);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;display:flex}.or-doc-count{align-items:center;gap:var(--space-1);display:inline-flex}.or-side{font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-side-head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:0 var(--space-2);font-family:var(--font-serif);font-size:var(--fs-body);font-weight:600;line-height:var(--lh-body);display:flex}.or-side-head .or-icon{color:var(--primary-accent)}.or-side-group+.or-side-group{margin-top:var(--space-1)}.or-side-toggle{align-items:center;gap:var(--space-1);width:100%;height:32px;padding:0 var(--space-2);font:inherit;color:var(--foreground);border-radius:var(--radius-md);cursor:pointer;text-align:left;background:0 0;border:0;font-weight:600;display:flex}.or-side-toggle:hover{background:var(--accent)}.or-side-chev{color:var(--muted-foreground);transition:transform var(--dur-2)}.or-side-group.is-open .or-side-chev{transform:rotate(90deg)}.or-side-list{margin:2px 0 var(--space-2) 15px;padding:0 0 0 var(--space-2);border-left:1px solid var(--border);flex-direction:column;gap:2px;list-style:none;display:flex}.or-side-link{padding:5px var(--space-2);color:var(--muted-foreground);border-radius:var(--radius-md);transition:color var(--dur-1), background-color var(--dur-1);text-decoration:none;display:block}.or-side-link:hover{color:var(--foreground);background:var(--accent)}.or-side-link.is-active{color:var(--foreground);background:var(--accent);font-weight:600}.or-timeline{margin:0;padding:0;list-style:none;container-type:inline-size}.or-tl-item{gap:0 var(--space-4);padding-bottom:var(--space-6);grid-template-columns:128px 20px 1fr;display:grid;position:relative}.or-tl-item:last-child{padding-bottom:0}.or-tl-period{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;text-align:right;line-height:28px}.or-tl-mark{position:relative}.or-tl-mark:before{content:"";box-sizing:border-box;border:1.5px solid var(--input);background:var(--background);z-index:1;border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:9px;left:50%}.or-tl-mark:after{content:"";top:22px;left:50%;bottom:calc(-1 * var(--space-6) + 4px);background:var(--border);width:1px;position:absolute}.or-tl-item:last-child .or-tl-mark:after{display:none}.or-tl-item.is-current .or-tl-mark:before{background:var(--primary);border-color:var(--primary)}.or-tl-title{font-family:var(--font-serif);font-size:var(--fs-body);margin:0;font-weight:600;line-height:28px}.or-tl-org{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--primary-accent)}.or-tl-detail{margin:var(--space-1) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}@container (width<=559px){.or-tl-item{grid-template-columns:20px 1fr}.or-tl-period{text-align:left;grid-area:1/2;line-height:20px}.or-tl-mark{grid-area:1/1/span 2}.or-tl-mark:before{top:5px}.or-tl-mark:after{top:18px}.or-tl-body{grid-column:2}}.or-toc{font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-toc-glyph{color:var(--muted-foreground);margin:0 0 var(--space-3) 0}.or-toc-list{border-left:1px solid var(--border);margin:0;padding:0;list-style:none}.or-toc-item a{padding:5px 0 5px var(--space-4);color:var(--muted-foreground);transition:color var(--dur-1), border-color var(--dur-1);border-left:2px solid #0000;margin-left:-1px;text-decoration:none;display:block}.or-toc-item.is-sub a{padding-left:var(--space-8)}.or-toc-item a:hover{color:var(--foreground)}.or-toc-item a[aria-current=location]{color:var(--primary-accent);border-left-color:var(--primary)}.or-toc-bar,.or-toc-drop,.or-toc.is-bar .or-toc-rail{display:none}.or-toc.is-bar .or-toc-bar{align-items:center;gap:var(--space-2);width:100%;height:40px;padding:0 var(--space-3);box-sizing:border-box;font:inherit;font-size:var(--fs-sm);color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;line-height:var(--lh-sm);display:flex}.or-toc.is-bar .or-toc-bar>.or-icon:first-child{color:var(--primary-accent)}.or-toc-current{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.or-toc-chev{color:var(--muted-foreground);transition:transform var(--dur-2)}.or-toc.is-open .or-toc-chev{transform:rotate(180deg)}.or-toc.is-bar.is-open .or-toc-bar{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.or-toc.is-bar.is-open .or-toc-drop{padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:0;display:block}.or-prose{max-width:var(--measure);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--foreground);text-autospace:normal;line-break:strict;overflow-wrap:break-word;hanging-punctuation:first allow-end}.or-prose>*{margin:0}.or-prose>*+*{margin-top:var(--space-5)}.or-prose h2{margin-top:var(--space-12);font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);scroll-margin-top:80px;font-weight:600}.or-prose h3{margin-top:var(--space-8);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);scroll-margin-top:80px;font-weight:600}.or-prose h2+*{margin-top:var(--space-3)}.or-prose h3+*{margin-top:var(--space-2)}.or-prose :is(h2,h3) code{font-size:inherit;line-height:inherit}.or-prose a{color:var(--primary-accent);text-underline-offset:4px;border-radius:var(--radius-xs);text-decoration:underline 1px}.or-prose a:hover{text-decoration-thickness:2px}.or-prose strong{font-weight:600}.or-prose em{font-style:normal;font-weight:600}.or-prose em:is(:lang(zh),:lang(ja)){font-weight:inherit;text-emphasis:circle;text-emphasis-position:under}.or-prose mark{background:var(--highlight);color:var(--foreground);border-radius:var(--radius-xs);padding:0 2px}.or-prose blockquote{padding-left:var(--space-8);font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-body);position:relative}.or-prose blockquote:before{content:"“";font-size:var(--fs-h1);color:var(--primary);line-height:1;position:absolute;top:0;left:0}.or-prose ul,.or-prose ol{padding-left:1.4em}.or-prose ul{list-style:outside}.or-prose ol{list-style:decimal}.or-prose li+li{margin-top:var(--space-1)}.or-prose li::marker{color:var(--primary)}.or-prose code{font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--muted);border-radius:var(--radius-sm);line-height:var(--lh-sm);padding:1px 5px}.or-prose pre{padding:var(--space-4) var(--space-4);font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--muted);border-radius:var(--radius-lg);-webkit-overflow-scrolling:touch;line-height:1.7;overflow-x:auto}.or-prose pre code{background:0 0;padding:0}.or-prose hr{margin:var(--space-12) auto;background:var(--input);border:0;width:48px;height:1px}.or-prose img{border-radius:var(--radius-lg);max-width:100%;height:auto;display:block}.or-prose figcaption{margin-top:var(--space-2);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);text-align:center}.or-prose .or-table{overflow-x:auto}.or-prose table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);line-height:var(--lh-sm);font-variant-numeric:tabular-nums}.or-prose th{text-align:left;border-bottom:1px solid var(--input);font-weight:600}.or-prose td{border-bottom:1px solid var(--border)}.or-prose th,.or-prose td{padding:var(--space-2) var(--space-4) var(--space-2) 0;white-space:nowrap}.or-footer{border-top:1px solid var(--border)}.or-footer-inner{box-sizing:content-box;max-width:var(--container);padding:var(--space-6) var(--gutter);align-items:center;gap:var(--space-4);flex-wrap:wrap;margin:0 auto;display:flex}.or-footer-links{gap:var(--space-1);margin-left:auto;display:flex}.or-footer-note{gap:0 var(--space-4);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex-wrap:wrap;flex-basis:100%;margin:0;display:flex}@media (width<=767px){.or-footer-inner{padding:var(--space-6) var(--gutter-sm)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.or-brand{border-radius:var(--radius-md);width:32px;height:32px;color:var(--foreground);transition:background-color var(--dur-1), color var(--dur-1);background:0 0;flex:none;place-items:center;display:inline-grid}.or-brand.is-small{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--muted-foreground);background:0 0}.or-follow:hover .or-brand,.or-strip-item:hover .or-brand{color:var(--foreground)}.or-follow{align-items:center;gap:var(--space-3);box-sizing:border-box;width:100%;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2);font:inherit;text-align:left;color:var(--foreground);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-1);background:0 0;border:0;text-decoration:none;display:flex}.or-follow:hover{background:var(--accent)}.or-follow-text{flex:1;min-width:0;display:grid}.or-follow-name{font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:600}.or-follow-handle{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.or-follow-count{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--foreground);font-weight:600;line-height:var(--lh-sm)}.or-follow-arrow{color:var(--muted-foreground);transition:transform var(--dur-2) var(--ease-out), color var(--dur-1)}.or-follow:hover .or-follow-arrow{color:var(--primary-accent);transform:translate(2px,-2px)}.or-follow-wrap{position:relative}summary.or-follow{list-style:none}summary.or-follow::-webkit-details-marker{display:none}.or-qr{justify-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2) var(--space-4);font-size:var(--fs-sm);color:var(--muted-foreground);line-height:var(--lh-sm);margin:0;display:grid}.or-qr-code{color:#1b1915;border-radius:var(--radius-md);background:#fff;place-items:center;width:136px;height:136px;display:grid}.or-strip{gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.or-strip-item{align-items:center;gap:var(--space-1);height:36px;padding:0 var(--space-2) 0 0;color:var(--foreground);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;border-radius:var(--radius-md);font-weight:600;line-height:var(--lh-sm);text-decoration:none;display:inline-flex}.or-strip.is-lg{gap:var(--space-3)}.or-strip.is-lg .or-strip-item{height:40px;padding:0 var(--space-4) 0 var(--space-1);gap:var(--space-1);border:1px solid var(--border);transition:border-color var(--dur-1);background:0 0}.or-strip.is-lg .or-strip-item:hover{border-color:var(--input)}.or-strip.is-plain{gap:var(--space-2);margin-left:-6px}.or-strip.is-plain .or-strip-item{border-radius:var(--radius-md);width:36px;height:36px;transition:background-color var(--dur-1);justify-content:center;padding:0}.or-strip.is-plain .or-strip-item:hover{background:var(--accent)}.or-strip.is-plain .or-brand{color:var(--muted-foreground)}.or-strip.is-plain .or-strip-item:hover .or-brand{color:var(--foreground)}.or-strip-qr{position:relative}.or-strip-qr>summary{cursor:pointer;list-style:none}.or-strip-qr>summary::-webkit-details-marker{display:none}.or-strip-pop{z-index:20;padding:var(--space-3);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);margin:0;position:absolute;top:calc(100% + 6px);left:0}.or-strip-pop .or-qr-code{border-radius:max(var(--radius-xs), calc(var(--radius-xl) - (1px + var(--space-3)) * var(--corner-k)))}.or-strip.is-lg .or-strip-item.is-icon{justify-content:center;width:40px;padding:0}.or-news{gap:var(--space-2);max-width:460px;display:grid}.or-news-row{gap:var(--space-2);display:flex}.or-input-wrap{align-items:center;gap:var(--space-2);min-width:0;height:36px;padding:0 var(--space-3);background:var(--card);border:1px solid var(--input);border-radius:var(--radius-md);color:var(--muted-foreground);flex:1;display:flex}.or-input-wrap:focus-within{box-shadow:var(--focus-ring)}.or-input:focus-visible{box-shadow:none}.or-input{min-width:0;height:100%;font:inherit;font-size:var(--fs-sm);color:var(--foreground);line-height:var(--lh-sm);background:0 0;border:0;outline:none;flex:1}.or-input::placeholder{color:var(--muted-foreground)}.or-news-count{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm);align-items:center;gap:6px;display:inline-flex}.or-news-done,.or-form-sent{align-items:center;gap:var(--space-2);min-height:36px;color:var(--success-foreground);background:var(--success);border-radius:var(--radius-md);padding:0 var(--space-3);font-size:var(--fs-sm);line-height:var(--lh-sm);display:flex}.or-form-sent{padding:var(--space-4);border-radius:var(--radius-lg)}.or-stats{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.or-stat{padding:var(--space-6) var(--space-4) var(--space-6) 0;border-bottom:1px solid var(--border)}.or-stat dt{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);align-items:center;gap:6px;display:flex}.or-stat dd{margin:var(--space-2) 0 0;font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);font-variant-numeric:tabular-nums;font-weight:600}.or-stat dd small{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--muted-foreground);font-weight:400;line-height:var(--lh-sm);margin-left:4px}.or-form{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.or-field{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.or-field.is-wide{grid-column:1/-1}.or-field-label{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--foreground);padding:0;font-weight:600}.or-input-box{box-sizing:border-box;width:100%;height:36px;font-size:var(--fs-sm);padding:0 var(--space-3);background:var(--card);border:1px solid var(--input);border-radius:var(--radius-md);line-height:var(--lh-sm)}select.or-input-box{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 17px) 16px,calc(100% - 12px) 16px;background-repeat:no-repeat;background-size:5px 5px}.or-textarea{height:auto;min-height:112px;padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.6}.or-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.or-chip{height:32px;padding:0 var(--space-3);font:inherit;font-size:var(--fs-sm);color:var(--foreground);background:var(--card);border:1px solid var(--input);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-1), border-color var(--dur-1);line-height:var(--lh-sm)}.or-chip:hover{background:var(--accent)}.or-chip.is-on{background:var(--accent);border-color:var(--foreground);color:var(--foreground)}.or-btn-trail{margin-left:2px}@media (width<=559px){.or-form{grid-template-columns:1fr}}.or-home{max-width:var(--home-measure,1120px);padding:0 var(--gutter);box-sizing:content-box;margin:0 auto}@media (width<=767px){.or-home{padding:0 var(--gutter-sm)}}.or-hero{padding:0}.or-hero-kicker{margin:0 0 var(--space-3);font-size:var(--fs-sm);color:var(--primary-accent);font-weight:600;line-height:var(--lh-sm)}.or-hero-title{font-family:var(--font-serif);font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:-.01em;margin:0;font-weight:600}.or-dot{color:var(--primary)}.or-hero-lead{margin:var(--space-4) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-hero-follow{margin-top:var(--space-6)}.or-notfound{max-width:var(--measure,680px);padding:clamp(64px,12vh,128px) 0 clamp(80px,14vh,160px)}.or-notfound-actions{gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.or-hero-title{text-wrap:balance}.or-section{padding-top:clamp(48px,8vw,64px)}.or-doc-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=559px){.or-doc-grid{grid-template-columns:1fr}}.or-card-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.or-follow-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.or-follow-tile{padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-xl)}.or-follow-tile .or-follow{border-radius:calc(var(--radius-xl) - (1px + var(--space-1)) * var(--corner-k))}.or-newsblock{gap:var(--space-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:clamp(24px,5vw,32px);display:grid}.or-newsblock-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-newsblock-desc{margin:var(--space-2) 0 0;color:var(--muted-foreground);line-height:1.7}.or-cta{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-xl);color:inherit;transition:border-color var(--dur-1);text-decoration:none;display:flex}.or-cta:hover{border-color:var(--input)}.or-cta-icon{border-radius:var(--radius-lg);background:var(--primary-soft);width:40px;height:40px;color:var(--primary-accent);flex:none;place-items:center;display:grid}.or-cta-text{flex:1;gap:2px;min-width:0;display:grid}.or-cta-text strong{font-family:var(--font-serif);font-size:var(--fs-title);font-weight:600;line-height:var(--lh-title)}.or-cta-stats{gap:0 var(--space-4);flex-wrap:wrap;display:flex}.or-cta-text span{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm)}.or-cta-arrow{color:var(--muted-foreground);transition:transform var(--dur-2) var(--ease-out), color var(--dur-1)}.or-cta:hover .or-cta-arrow{color:var(--primary-accent);transform:translate(2px)}.or-endcard{padding-top:var(--space-6);border-top:1px solid var(--border);margin-top:56px}.or-endcard-title{margin:0 0 var(--space-4);font-family:var(--font-serif);font-size:var(--fs-title);font-weight:600;line-height:var(--lh-title)}.or-endcard-news{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border)}.or-endcard-news:first-child{border-top:0;margin-top:0;padding-top:0}.or-work{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}@media (width<=767px){.or-work{padding:0 var(--gutter-sm)}}.or-work-hero{max-width:720px;padding:clamp(48px,9vw,88px) 0 8px}.or-work-hero h1{font-family:var(--font-serif);font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:-.01em;margin:0;font-weight:600}.or-work-hero p{margin:var(--space-4) 0 var(--space-8);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-work-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.or-work-head h2{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-work-head span{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm)}.or-contact{gap:var(--space-12);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);grid-template-columns:minmax(0,320px) minmax(0,1fr);padding:clamp(24px,5vw,48px);display:grid}.or-contact-title{font-family:var(--font-serif);font-size:var(--fs-title);font-weight:600;line-height:var(--lh-title);margin:0}.or-contact-desc{margin:var(--space-2) 0 var(--space-5);color:var(--muted-foreground)}.or-contact-mail{align-items:center;gap:var(--space-2);color:var(--primary-accent);font-weight:600;text-decoration:none;display:inline-flex}.or-contact-mail:hover{text-underline-offset:4px;text-decoration:underline}@media (width<=767px){.or-contact{gap:var(--space-6);grid-template-columns:1fr}}.or-page-end{height:clamp(64px,10vw,96px)}.or-tone-ink{background:var(--muted);color:var(--foreground)}.or-pn{margin-top:48px;container-type:inline-size}.or-pn-row{gap:var(--space-3);display:flex}.or-pn-link{align-items:center;gap:var(--space-3);box-sizing:border-box;min-width:0;min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--dur-1);flex:1 1 0;text-decoration:none;display:flex}.or-pn-link:hover{border-color:var(--input)}.or-pn-link>.or-icon{color:var(--muted-foreground);transition:transform var(--dur-2) var(--ease-out), color var(--dur-1);flex:none}.or-pn-prev:hover>.or-icon{color:var(--primary-accent);transform:translate(-2px)}.or-pn-next:hover>.or-icon{color:var(--primary-accent);transform:translate(2px)}.or-pn-next{text-align:right;justify-content:flex-end}.or-pn-title{min-width:0;font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;font-weight:600;display:-webkit-box;overflow:hidden}@container (width<=559px){.or-pn-row{flex-direction:column-reverse}.or-pn-link{flex:none}.or-pn-title{white-space:nowrap;text-overflow:ellipsis;display:block}}.or-prose,.astro-code{--astro-code-foreground:var(--foreground);--astro-code-background:var(--muted);--astro-code-token-keyword:var(--syntax-keyword);--astro-code-token-string:var(--syntax-string);--astro-code-token-string-expression:var(--syntax-string);--astro-code-token-function:var(--syntax-function);--astro-code-token-constant:var(--syntax-constant);--astro-code-token-parameter:var(--foreground);--astro-code-token-comment:var(--syntax-comment);--astro-code-token-punctuation:var(--syntax-comment);--astro-code-token-link:var(--syntax-function);--shiki-foreground:var(--foreground);--shiki-background:var(--muted);--shiki-token-keyword:var(--syntax-keyword);--shiki-token-string:var(--syntax-string);--shiki-token-string-expression:var(--syntax-string);--shiki-token-function:var(--syntax-function);--shiki-token-constant:var(--syntax-constant);--shiki-token-parameter:var(--foreground);--shiki-token-comment:var(--syntax-comment);--shiki-token-punctuation:var(--syntax-comment);--shiki-token-link:var(--syntax-function)}.or-prose pre .tk-k{color:var(--shiki-token-keyword)}.or-prose pre .tk-s{color:var(--shiki-token-string)}.or-prose pre .tk-f{color:var(--shiki-token-function)}.or-prose pre .tk-c{color:var(--shiki-token-constant)}.or-prose pre .tk-t{color:var(--syntax-type)}.or-prose pre .tk-p{color:var(--shiki-token-punctuation)}.or-prose pre .tk-m{color:var(--shiki-token-comment)}@supports (corner-shape:squircle){:root{--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:13px;--radius-xl:19px;--radius-2xl:26px;--corner-k:1.6}[class*=or-],.or-prose pre,.or-prose code,.or-prose img{corner-shape:squircle}}.or-bento{padding:var(--page-top) 0 clamp(48px, 8vw, 88px);grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(32px,5vw,48px) clamp(32px,5vw,56px);display:grid;container:bento/inline-size}.or-cell{grid-column:1/-1;min-width:0}.or-cell>.or-section{padding-top:0}@container bento (width>=860px){.or-cell.is-main{grid-column:span 7}.or-cell.is-side{grid-column:span 5}.or-cell-intro.is-main{align-self:start}.or-cell-featured.is-side{align-self:center}}.or-cell .or-section-head{margin-bottom:var(--space-2)}.or-feature{gap:var(--space-3);box-sizing:border-box;height:100%;padding:var(--space-6) var(--space-6) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-xl);color:inherit;transition:border-color var(--dur-1);flex-direction:column;text-decoration:none;display:flex}.or-feature:hover{border-color:var(--input)}.or-feature-tags{gap:0 var(--space-3);font-size:var(--fs-sm);color:var(--primary-accent);font-weight:600;line-height:var(--lh-sm);flex-wrap:wrap;display:flex}.or-feature-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);text-wrap:balance;margin:0;font-weight:600}.or-feature-summary{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground);margin:0}.or-feature-meta{padding-top:var(--space-2);align-items:center;gap:var(--space-4);font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm);margin-top:auto;display:flex}.or-feature-arrow{transition:transform var(--dur-2) var(--ease-out), color var(--dur-1);margin-left:auto}.or-feature:hover .or-feature-arrow{color:var(--primary-accent);transform:translate(2px)}.or-post-row,.or-doc-row{align-items:center;gap:var(--space-4);border-top:1px solid var(--border);min-height:44px;color:inherit;padding:6px 0;text-decoration:none;display:flex}.or-post-row:first-child,.or-doc-row:first-child{border-top:0}.or-post-row-title,.or-doc-row-title{min-width:0;font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-body);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.or-post-row-title{background:linear-gradient(var(--primary), var(--primary)) no-repeat 0 100% / 0 1px;transition:background-size var(--dur-3);flex:0 auto;margin-right:auto}.or-post-row:hover .or-post-row-title{background-size:100% 1px}.or-post-row-date{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm);flex:none}.or-doc-row-tile{width:30px;height:38px;font-family:var(--font-serif);font-size:var(--fs-body);border-radius:var(--radius-xs) var(--radius-sm) var(--radius-sm) var(--radius-xs);flex:none;place-items:center;font-weight:600;display:grid;box-shadow:inset 2px 0}@supports (color:color-mix(in lab, red, red)){.or-doc-row-tile{box-shadow:inset 2px 0 0 color-mix(in oklab, currentColor 18%, transparent)}}.or-doc-row-tile{transition:transform var(--dur-2) var(--ease-out)}.or-doc-row:hover .or-doc-row-tile{transform:translateY(-2px)}.or-doc-row .or-doc-count{font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm);flex:none}@media (width<=559px){.or-feature{padding:var(--space-5) var(--space-4) var(--space-4)}.or-post-row,.or-doc-row{min-height:44px}.or-post-row-title,.or-doc-row-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.or-post-row{align-items:baseline}}.or-cell-featured .or-feature{height:auto}.or-cell-newsletter .or-newsblock,.or-cell-work-cta .or-cta{box-sizing:border-box;height:100%}.or-cell-newsletter>.or-section,.or-cell-work-cta>.or-section{flex-direction:column;height:100%;display:flex}.or-cell-newsletter>.or-section>*,.or-cell-work-cta>.or-section>*{flex:1}.or-cell-work-cta .or-cta{align-items:center}.or-icon-mask{background:currentColor;flex:none;display:inline-block;-webkit-mask:none 50%/contain no-repeat;mask:none 50%/contain no-repeat}.or-nav-ext{opacity:.6;vertical-align:-1px;margin-left:2px}.or-wordmark-logo{width:auto;height:28px;display:block}.or-wordmark.is-small .or-wordmark-logo{height:22px}.or-contact-list{margin:var(--space-4) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.or-contact-list .or-contact-mail{margin-top:0}.or-contact-list .or-follow-wrap{max-width:320px}.or-contact.is-list-only{grid-template-columns:1fr}.or-note{padding:var(--space-5) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-xl)}.or-note p{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--foreground);margin:0}.or-note-links{margin:var(--space-3) 0 0;gap:var(--space-2) var(--space-6);flex-wrap:wrap;padding:0;list-style:none;display:flex}.or-note-links a{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--foreground);text-decoration:underline;-webkit-text-decoration-color:var(--primary);-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);text-underline-offset:4px;line-height:var(--lh-sm);display:inline-flex}.or-note-links .or-icon{color:var(--muted-foreground)}.or-contact-list span.or-contact-mail{color:var(--foreground)}.or-article{grid-template-columns:minmax(0, 1fr) minmax(0, var(--measure,680px)) minmax(0, 1fr);padding:var(--page-top) 0 96px;column-gap:48px;display:grid}.or-article>article{grid-column:2;min-width:0}.or-article-aside{grid-area:1/3;align-self:start;max-width:200px;position:sticky;top:32px}.or-article-title{font-family:var(--font-serif);font-size:var(--fs-h1);line-height:var(--lh-h1);text-wrap:balance;letter-spacing:-.005em;margin:0;font-weight:600}.or-article-lead{margin:var(--space-4) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground);text-wrap:pretty}.or-article-meta{margin:var(--space-5) 0 var(--space-8)}.or-article-head.is-plain{margin-bottom:var(--space-8)}.or-article-tocbar{margin:-16px 0 32px;display:none}@media (width<=1179px){.or-article{grid-template-columns:minmax(0, var(--measure,680px));justify-content:center}.or-article>article{grid-column:1}.or-article-aside{display:none}.or-article-tocbar{display:block}}.or-list-page{max-width:var(--measure,680px);padding:var(--page-top) 0 96px;margin:0 auto}.or-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.or-list-title.or-sr-only+.or-list-tags,.or-list-title.or-sr-only+.or-doc-grid{margin-top:0}.or-list-title{font-family:var(--font-serif);font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:-.005em;margin:0;font-weight:600}.or-list-desc{margin:var(--space-4) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-list-page>.or-doc-grid,.or-list-page>.or-posts{margin-top:40px}.or-page-timeline>.or-timeline{margin-top:var(--space-6)}.or-list-tags{gap:var(--space-2);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.or-badge-count{font-variant-numeric:tabular-nums;margin-left:6px}.or-list-kicker{margin:0 0 var(--space-2);font-size:var(--fs-sm);color:var(--muted-foreground);font-weight:600;line-height:var(--lh-sm)}.or-list-year{margin:var(--space-12) 0 var(--space-2);font-family:var(--font-serif);font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-weight:600;line-height:var(--lh-sm)}.or-docs{box-sizing:content-box;max-width:1280px;padding:0 var(--gutter);grid-template-columns:240px minmax(0, var(--measure,680px)) 200px;justify-content:space-between;gap:48px;margin:0 auto;display:grid}.or-docs-left,.or-docs-right{box-sizing:border-box;height:100dvh;padding-top:var(--page-top);align-self:start;position:sticky;top:0}.or-docs-left{border-right:1px solid var(--border);flex-direction:column;padding-right:8px;display:flex}.or-docs-right{overscroll-behavior:contain;scrollbar-width:none;padding-bottom:var(--space-6);overflow-y:auto}.or-docs-right::-webkit-scrollbar{display:none}html:has(.or-docs){scroll-padding-top:0}.or-docs-mid{min-width:0;padding:var(--page-top) 0 96px}.or-docs .or-docs-mid>main{padding:0}.or-crumb{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);align-items:center;gap:6px;display:flex}.or-crumb a{color:inherit;text-decoration:none}.or-crumb a:hover{color:var(--foreground)}.or-docs-title{margin:var(--space-2) 0 0;font-family:var(--font-serif);font-size:var(--fs-h1);line-height:var(--lh-h1);text-wrap:balance;letter-spacing:-.005em;font-weight:600}.or-docs-meta{margin:var(--space-4) 0 var(--space-8)}.or-scrollbox{flex:1;min-height:0;position:relative}.or-scrollbox-view{box-sizing:border-box;height:100%;padding-bottom:var(--space-6);overscroll-behavior:contain;scrollbar-width:none;--fade-t0:0px;--fade-t1:0px;--fade-b0:0px;--fade-b1:0px;-webkit-mask-image:linear-gradient(to bottom, transparent var(--fade-t0), #000 var(--fade-t1), #000 calc(100% - var(--fade-b1)), transparent calc(100% - var(--fade-b0)));-webkit-mask-image:linear-gradient(to bottom, transparent var(--fade-t0), #000 var(--fade-t1), #000 calc(100% - var(--fade-b1)), transparent calc(100% - var(--fade-b0)));-webkit-mask-image:linear-gradient(to bottom, transparent var(--fade-t0), #000 var(--fade-t1), #000 calc(100% - var(--fade-b1)), transparent calc(100% - var(--fade-b0)));mask-image:linear-gradient(to bottom, transparent var(--fade-t0), #000 var(--fade-t1), #000 calc(100% - var(--fade-b1)), transparent calc(100% - var(--fade-b0)));overflow-y:auto}.or-scrollbox-view::-webkit-scrollbar{display:none}.or-scrollbox[data-more-above]>.or-scrollbox-view{--fade-t0:8px;--fade-t1:40px}.or-scrollbox[data-more-below]>.or-scrollbox-view{--fade-b0:12px;--fade-b1:56px}.or-scroll-arrow{z-index:1;width:28px;height:28px;color:var(--muted-foreground);background:var(--background);border:1px solid var(--border);cursor:pointer;transition:color var(--dur-1), border-color var(--dur-1);border-radius:50%;place-items:center;margin-left:-14px;padding:0;display:none;position:absolute;left:50%}.or-scroll-arrow:hover{color:var(--foreground);border-color:var(--input)}.or-scroll-arrow.is-up{top:2px}.or-scroll-arrow.is-up .or-icon{transform:rotate(180deg)}.or-scroll-arrow.is-down{bottom:4px}@media (hover:hover) and (pointer:fine){.or-scrollbox[data-more-above]>.or-scroll-arrow.is-up,.or-scrollbox[data-more-below]>.or-scroll-arrow.is-down{display:grid}}.or-docbar{display:none}.or-docbar-half{align-items:center;gap:var(--space-2);box-sizing:border-box;min-width:0;height:48px;padding:0 var(--space-4);font:inherit;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--foreground);cursor:pointer;text-align:left;transition:background-color var(--dur-1);background:0 0;border:0;flex:1 1 0;display:flex}.or-docbar-half:hover{background:var(--accent)}.or-docbar-half+.or-docbar-half{border-left:1px solid var(--border)}.or-docbar-half>.or-icon:first-child{color:var(--primary-accent)}.or-docbar-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.or-docbar-chev{color:var(--muted-foreground);transform:rotate(180deg)}@media (width<=1279px){.or-docs{grid-template-columns:220px minmax(0,1fr);gap:40px}.or-docs-right{display:none}.or-docbar:not(.no-toc){z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--background);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.or-docbar .or-docbar-half.is-pages{display:none}body:has(.or-docbar:not(.no-toc)){padding-bottom:calc(49px + env(safe-area-inset-bottom))}}@media (width<=767px){.or-docs{padding:0 var(--gutter-sm);grid-template-columns:minmax(0,1fr)}.or-docs-left{display:none}.or-docs-mid{padding-top:20px}.or-docbar,.or-docbar:not(.no-toc){z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--background);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.or-docbar .or-docbar-half.is-pages{display:flex}body:has(.or-docbar){padding-bottom:calc(49px + env(safe-area-inset-bottom))}}.or-docsheet{box-sizing:border-box;width:min(100%,640px);max-width:none;max-height:min(70dvh,560px);color:var(--popover-foreground);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-float);border-bottom:0;margin:auto auto 0;padding:0;overflow:hidden}.or-docsheet[open]{flex-direction:column;display:flex}.or-docsheet::backdrop{background:0 0}.or-docsheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-5);border-bottom:1px solid var(--border);flex:none;display:flex}.or-docsheet-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:600;overflow:hidden}.or-docsheet-body{overscroll-behavior:contain;padding:var(--space-3) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));overflow-y:auto}.or-docsheet .or-side-head{display:none}.or-docsheet .or-toc-list{font-size:var(--fs-sm);line-height:var(--lh-sm)}.or-docsheet .or-side-link,.or-docsheet .or-toc-item a{padding-top:11px;padding-bottom:11px}.or-docsheet .or-side-toggle{height:44px}.or-help{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-xl);margin-top:56px}.or-help-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-help-lead{margin:var(--space-2) 0 var(--space-4);color:var(--muted-foreground)}.or-help-list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.or-help-link{min-height:40px;padding:0 var(--space-4);font-size:var(--fs-sm);line-height:var(--lh-sm);text-decoration:none}.or-help-link>.or-icon{color:var(--muted-foreground)}.or-help-value{color:var(--muted-foreground);font-weight:400}.or-help+.or-pn,.or-help+.or-endcard{margin-top:var(--space-6)}.or-docnav .or-toc-bar{box-sizing:border-box;width:100%;height:40px;font:inherit;font-size:var(--fs-sm);color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;line-height:var(--lh-sm);align-items:center;gap:8px;padding:0 12px;display:flex}.or-docnav .or-toc-bar>.or-icon:first-child{color:var(--primary-accent)}.or-docnav.is-open .or-toc-bar{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.or-docnav.is-open .or-toc-chev{transform:rotate(180deg)}.or-docnav-drop{background:var(--card);border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:0;padding:12px}.or-side-group.is-flat>.or-side-list{margin-top:0}.or-search-modal{box-sizing:border-box;width:min(560px,100vw - 32px);max-width:none;max-height:calc(100dvh - 24vh);color:var(--foreground);background:0 0;border:0;margin:12vh auto auto;padding:0;overflow:visible}.or-search-modal::backdrop{background:var(--scrim)}.or-search-modal .or-search-results{max-height:min(420px,100dvh - 24vh - 64px)}.or-search-status{padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);margin:0}button.or-kbd{font-family:var(--font-sans);cursor:pointer;border:0}button.or-kbd:hover{color:var(--foreground)}.or-docs-notice{margin:0 0 32px}.or-page-split{padding:var(--page-top) 0 96px;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px clamp(40px,6vw,80px);display:grid}.or-page-aside{align-self:start;position:sticky;top:32px}.or-page-main{min-width:0}.or-intro-lead{max-width:22em;font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);color:var(--foreground);text-wrap:pretty;margin:0;font-weight:600}.or-intro-stats{gap:var(--space-8);margin:var(--space-6) 0 0;display:flex}.or-intro-stats>div{flex-direction:column-reverse;display:flex}.or-intro-stats dd{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);font-variant-numeric:tabular-nums;color:var(--foreground);margin:0;font-weight:600}.or-intro-stats dt{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--muted-foreground);margin-top:2px}.or-page-aside .or-list-tags,.or-intro-follow{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border)}.or-year+.or-year{margin-top:56px}.or-page-main .or-list-year{padding-bottom:var(--space-2);justify-content:space-between;align-items:baseline;margin:0;display:flex}.or-list-year-n{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:400;line-height:var(--lh-sm)}.or-page-main .or-post:first-child{border-top-color:var(--foreground)}.or-book{gap:var(--space-6);border-top:1px solid var(--border);grid-template-columns:72px minmax(0,1fr);padding:40px 0;display:grid}.or-book:first-child{border-top:0;padding-top:0}.or-book:last-child{padding-bottom:0}.or-book-tile{width:72px;height:96px;font-size:var(--fs-h1);text-decoration:none}.or-book:hover .or-book-tile{transform:translateY(-2px)}.or-book-title{font-family:var(--font-serif);font-size:var(--fs-title);line-height:var(--lh-title);margin:0;font-weight:600}.or-book-title a{background:linear-gradient(var(--primary), var(--primary)) no-repeat 0 100% / 0 1px;transition:background-size var(--dur-3);text-decoration:none}.or-book-title a:hover{background-size:100% 1px}.or-book-summary{margin:var(--space-2) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted-foreground)}.or-book .or-doc-meta{margin-top:var(--space-3)}.or-book-chapters{counter-reset:ch;gap:0 var(--space-6);margin:var(--space-4) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.or-book-chapters li{counter-increment:ch;min-width:0}.or-book-chapters a{align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--foreground);transition:color var(--dur-1);text-decoration:none;display:flex}.or-book-chapters a:before{content:counter(ch, decimal-leading-zero);font-size:var(--fs-sm);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:var(--lh-sm);flex:none}.or-book-chapters a:hover{color:var(--primary-accent)}.or-page-main>.or-prose,.or-page-main>.or-page-timeline{max-width:var(--measure,680px)}.or-page-main>.or-prose>:first-child{margin-top:0}@media (width<=860px){.or-page-split{grid-template-columns:minmax(0,1fr)}.or-page-aside{position:static}.or-intro-lead{max-width:none}}@media (width<=560px){.or-book{gap:var(--space-4);grid-template-columns:52px minmax(0,1fr)}.or-book-tile{width:52px;height:68px}.or-book-chapters{grid-template-columns:minmax(0,1fr)}}.or-menu:not(.is-open),.or-sheet-wrap:not(.is-open){display:none}@media (prefers-reduced-motion:no-preference){.or-btn,.or-menu-item,.or-side-link,.or-search-hit,.or-strip-item,.or-chip,.or-follow,.or-doc,.or-feature,.or-pn-link,.or-book-chapters a{transition-timing-function:var(--ease-out)}.or-btn{transition-property:background-color,border-color,color,transform;transition-duration:var(--dur-1)}.or-btn:active:not(:disabled){transform:scale(.97)}.or-menu{opacity:0;transform-origin:100% 0;transition:opacity var(--dur-1) var(--ease-in), transform var(--dur-1) var(--ease-in), display var(--dur-1) allow-discrete;display:none;transform:translateY(-4px)scale(.98)}.or-menu.is-open{opacity:1;transition-duration:var(--dur-2);transition-timing-function:var(--ease-out);display:block;transform:none}@starting-style{.or-menu.is-open{opacity:0;transform:translateY(-4px)scale(.98)}}.or-sheet .or-menu{transform-origin:0 100%}.or-sheet-wrap{transition:display var(--dur-3) allow-discrete}.or-sheet-overlay{opacity:0;transition:opacity var(--dur-3) var(--ease-out)}.or-sheet{transition:transform var(--dur-3) var(--ease-out);transform:translate(100%)}.or-sheet-wrap.is-open .or-sheet-overlay{opacity:1}.or-sheet-wrap.is-open .or-sheet{transform:none}@starting-style{.or-sheet-wrap.is-open .or-sheet-overlay{opacity:0}.or-sheet-wrap.is-open .or-sheet{transform:translate(100%)}}.or-sheet-wrap:not(.is-open) .or-sheet{transition-timing-function:var(--ease-in);transition-duration:var(--dur-2)}.or-search-modal,.or-search-modal::backdrop{transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out), display var(--dur-2) allow-discrete, overlay var(--dur-2) allow-discrete}.or-search-modal{opacity:0;transform:translateY(-6px)scale(.99)}.or-search-modal::backdrop{opacity:0}.or-search-modal[open],.or-search-modal[open]::backdrop{opacity:1;transform:none}@starting-style{.or-search-modal[open]{opacity:0;transform:translateY(-6px)scale(.99)}.or-search-modal[open]::backdrop{opacity:0}}.or-docsheet{opacity:0;transition:opacity var(--dur-2) var(--ease-in), transform var(--dur-2) var(--ease-in), display var(--dur-2) allow-discrete, overlay var(--dur-2) allow-discrete;transform:translateY(24px)}.or-docsheet[open]{opacity:1;transition-duration:var(--dur-3);transition-timing-function:var(--ease-out);transform:none}@starting-style{.or-docsheet[open]{opacity:0;transform:translateY(24px)}}.or-toc.is-bar.is-open .or-toc-drop,.or-docnav-drop,details[open]>.or-qr,details[open]>.or-strip-pop{animation:or-drop var(--dur-2) var(--ease-out)}.or-toc-chev,.or-lang-chev{transition:transform var(--dur-2) var(--ease-out)}html{scroll-behavior:smooth}@supports (animation-timeline:view()){.or-posts>.or-post,.or-book,.or-tl-item,.or-bento>.or-cell{animation:linear both or-rise view();animation-range:entry entry 40%}}}@keyframes or-drop{0%{opacity:0;transform:translateY(-4px)}}@keyframes or-rise{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}.or-header{view-transition-name:or-header}.or-docs-left{view-transition-name:or-docs-left}::view-transition-group(or-docs-left){animation-duration:0s}::view-transition-old(root){animation:var(--dur-1) var(--ease-in) both or-vt-out}::view-transition-new(root){animation:var(--dur-3) var(--ease-out) var(--dur-1) both or-vt-in}html.or-vt-up::view-transition-new(root){animation-name:or-vt-drop}::view-transition-group(or-title){animation-duration:var(--dur-4);animation-timing-function:var(--ease-out)}html.or-vt-morph::view-transition-new(root){animation:var(--dur-3) var(--ease-out) var(--dur-2) both or-vt-fade}html:not(.or-vt-morph)::view-transition-old(or-title){animation:var(--dur-1) var(--ease-in) both or-vt-out}}@keyframes or-vt-out{to{opacity:0}}@keyframes or-vt-in{0%{opacity:0;transform:translateY(6px)}}@keyframes or-vt-drop{0%{opacity:0;transform:translateY(-6px)}}.or-scrollbox-view{position:relative}.or-side-mark{z-index:-1;border-radius:var(--radius-md);background:var(--accent);pointer-events:none;position:absolute;top:0}.or-side-link.is-active.is-marking{background:0 0}.or-toc-rail{position:relative}.or-toc-ind{display:none}[data-or-ind]>.or-toc-ind{background:var(--primary);transform-origin:0 0;pointer-events:none;opacity:0;width:2px;height:1px;transition:transform var(--dur-3) var(--ease-out), opacity var(--dur-2) var(--ease-out);display:block;position:absolute;top:0;left:0}[data-or-ind] .or-toc-item a[aria-current]{border-left-color:#0000}.or-docbar-half,.or-toc-bar,:is(h1,h2,h3,h4).is-landed{position:relative}:is(h1,h2,h3,h4).is-landed:before{content:"";left:calc(-1 * var(--space-3));background:var(--primary);pointer-events:none;width:2px;animation:or-landed 1.2s var(--ease-out) both;border-radius:1px;position:absolute;top:.25em;bottom:.25em}@keyframes or-landed{0%{opacity:0;transform:scaleY(.3)}18%{opacity:1;transform:none}65%{opacity:1}to{opacity:0}}.or-theme-switching *,.or-theme-switching :before,.or-theme-switching :after{transition:none!important}.or-theme-switching::view-transition-old(root),.or-theme-switching::view-transition-new(root){animation:var(--dur-3) var(--ease-out) both or-vt-fade}@keyframes or-vt-fade{0%{opacity:0}}html.or-theme-switching::view-transition-old(root){opacity:1;animation-name:none}html{scrollbar-gutter:stable}body{flex-direction:column;min-height:100dvh;display:flex}body>main,body>.or-page,body>.or-nf-locale>main{flex:1 0 auto}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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-ease{syntax:"*";inherits:false}
