@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) 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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-outline-style:solid;--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:var(--font-geist), var(--font-frex-gb,ui-sans-serif), system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist), var(--font-frex-gb,ui-sans-serif), system-ui, sans-serif;--default-mono-font-family:var(--font-mono);--shadow-8:var(--shadow-8);--shadow-7:var(--shadow-7);--shadow-6:var(--shadow-6);--shadow-5:var(--shadow-5);--shadow-4:var(--shadow-4);--shadow-3:var(--shadow-3);--shadow-2:var(--shadow-2);--shadow-1:var(--shadow-1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:var(--font-geist), var(--font-frex-gb,ui-sans-serif), system-ui, sans-serif}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-4{top:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-\[var\(--z-card\)\]{z-index:var(--z-card)}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-24{margin-top:calc(var(--spacing) * 24)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-video{aspect-ratio:var(--aspect-video)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-11{height:calc(var(--spacing) * 11)}.h-24{height:calc(var(--spacing) * 24)}.h-\[3\.25rem\]{height:3.25rem}.min-h-\[calc\(100svh-3\.5rem\)\]{min-height:calc(100svh - 3.5rem)}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-11\/12{width:91.6667%}.w-24{width:calc(var(--spacing) * 24)}.w-56{width:calc(var(--spacing) * 56)}.w-\[10\.5rem\]{width:10.5rem}.w-full{width:100%}.w-max{width:max-content}.max-w-\[23rem\]{max-width:23rem}.max-w-\[31rem\]{max-width:31rem}.max-w-\[34rem\]{max-width:34rem}.max-w-\[37\.5rem\]{max-width:37.5rem}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-11{min-width:calc(var(--spacing) * 11)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-\[inherit\]{gap:inherit}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-8{row-gap:calc(var(--spacing) * 8)}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:calc(var(--radius) * 2.2)}.rounded-\[20px\]{border-radius:20px}.rounded-\[22px\]{border-radius:22px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-\[color\:var\(--focus-ring\)\]{border-color:var(--focus-ring)}.border-border{border-color:var(--border)}.bg-accent{background-color:var(--accent)}.bg-active{background-color:var(--active)}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/15{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/15{background-color:color-mix(in oklab, var(--destructive) 15%, transparent)}}.bg-destructive\/20{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/20{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.bg-destructive\/80{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/80{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.bg-foreground,.bg-foreground\/80{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/80{background-color:color-mix(in oklab, var(--foreground) 80%, transparent)}}.bg-hover{background-color:var(--hover)}.bg-muted,.bg-muted\/35{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/35{background-color:color-mix(in oklab, var(--muted) 35%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/45{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/45{background-color:color-mix(in oklab, var(--muted) 45%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/60{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/60{background-color:color-mix(in oklab, var(--muted) 60%, transparent)}}.bg-surface-1{background-color:var(--surface-1)}.bg-surface-2{background-color:var(--surface-2)}.bg-surface-3{background-color:var(--surface-3)}.bg-surface-4{background-color:var(--surface-4)}.bg-surface-5{background-color:var(--surface-5)}.bg-surface-6{background-color:var(--surface-6)}.bg-surface-7{background-color:var(--surface-7)}.bg-surface-8{background-color:var(--surface-8)}.bg-transparent{background-color:#0000}.p-1{padding:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[1\.125rem\]{padding-inline:1.125rem}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-geist), var(--font-frex-gb,ui-sans-serif), system-ui, sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.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)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-background{color:var(--background)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-white{color:var(--color-white)}.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,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.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)}.shadow-surface-1{--tw-shadow:var(--shadow-1);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-2{--tw-shadow:var(--shadow-2);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-3{--tw-shadow:var(--shadow-3);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-4{--tw-shadow:var(--shadow-4);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-5{--tw-shadow:var(--shadow-5);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-6{--tw-shadow:var(--shadow-6);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-7{--tw-shadow:var(--shadow-7);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-surface-8{--tw-shadow:var(--shadow-8);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[8px\]{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-\[12px\]{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[stroke-width\]{transition-property:stroke-width;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}.ease-\[ease\]{--tw-ease:ease;transition-timing-function:ease}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[text-box\:trim-both_cap_alphabetic\]{text-box:trim-both cap alphabetic}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\:bg-accent\/80:is(:where(.group):hover *){background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-accent\/80:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--accent) 80%, transparent)}}.group-hover\:bg-destructive\/10:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-destructive\/10:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.group-hover\:bg-destructive\/15:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-destructive\/15:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--destructive) 15%, transparent)}}.group-hover\:bg-destructive\/90:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-destructive\/90:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.group-hover\:bg-foreground\/90:is(:where(.group):hover *){background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-foreground\/90:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--foreground) 90%, transparent)}}.group-hover\:bg-hover:is(:where(.group):hover *){background-color:var(--hover)}.group-hover\:stroke-\[2\]:is(:where(.group):hover *){stroke-width:2px}}.group-active\:scale-\[0\.98\]:is(:where(.group):active *){scale:.98}.group-active\:bg-accent:is(:where(.group):active *){background-color:var(--accent)}.group-active\:bg-active:is(:where(.group):active *){background-color:var(--active)}.group-active\:bg-destructive\/15:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-active\:bg-destructive\/15:is(:where(.group):active *){background-color:color-mix(in oklab, var(--destructive) 15%, transparent)}}.group-active\:bg-destructive\/20:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-active\:bg-destructive\/20:is(:where(.group):active *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.group-active\:bg-destructive\/80:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-active\:bg-destructive\/80:is(:where(.group):active *){background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.group-active\:bg-foreground\/80:is(:where(.group):active *){background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.group-active\:bg-foreground\/80:is(:where(.group):active *){background-color:color-mix(in oklab, var(--foreground) 80%, transparent)}}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-x-0:before{content:var(--tw-content);inset-inline:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:left-1\/2:before{content:var(--tw-content);left:50%}.before\:h-11:before{content:var(--tw-content);height:calc(var(--spacing) * 11)}.before\:w-11:before{content:var(--tw-content);width:calc(var(--spacing) * 11)}.before\:-translate-x-1\/2:before{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.before\:-translate-y-1\/2:before{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-x-2:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -2)}.after\:-inset-y-3:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -3)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media (hover:hover){.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}}.focus-visible\:rounded-sm:focus-visible{border-radius:calc(var(--radius) * .6)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[color\:var\(--focus-ring\,\#6B97FF\)\]:focus-visible{--tw-ring-color:var(--focus-ring,#6b97ff)}.focus-visible\:outline:focus-visible,.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:order-first{order:-9999}.sm\:col-span-1{grid-column:span 1/span 1}.sm\:mx-0{margin-inline:0}.sm\:block{display:block}.sm\:w-60{width:calc(var(--spacing) * 60)}.sm\:max-w-\[19rem\]{max-width:19rem}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:pb-12{padding-bottom:calc(var(--spacing) * 12)}}.\[\&_svg\]\:h-3\.5 svg{height:calc(var(--spacing) * 3.5)}.\[\&_svg\]\:h-4 svg{height:calc(var(--spacing) * 4)}.\[\&_svg\]\:h-5 svg{height:calc(var(--spacing) * 5)}.\[\&_svg\]\:w-3\.5 svg{width:calc(var(--spacing) * 3.5)}.\[\&_svg\]\:w-4 svg{width:calc(var(--spacing) * 4)}.\[\&_svg\]\:w-5 svg{width:calc(var(--spacing) * 5)}.\[\&_svg\]\:stroke-\[1\.5\] svg{stroke-width:1.5px}.\[\&_svg\]\:transition-\[stroke-width\] svg{transition-property:stroke-width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[\&_svg\]\:duration-150 svg{--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){.group-hover\:\[\&_svg\]\:stroke-\[2\]:is(:where(.group):hover *) svg{stroke-width:2px}}}@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{--font-mono:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--background:#fff;--foreground:#0a0a0a;--card:#fff;--card-foreground:#0a0a0a;--popover:#fff;--popover-foreground:#0a0a0a;--primary:#171717;--primary-foreground:#fafafa;--secondary:#f5f5f5;--secondary-foreground:#171717;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#e40014;--border:#e5e5e5;--input:#e5e5e5;--ring:#a1a1a1;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--radius:.625rem;--sidebar:#fafafa;--sidebar-foreground:#0a0a0a;--sidebar-primary:#171717;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f5f5f5;--sidebar-accent-foreground:#171717;--sidebar-border:#e5e5e5;--sidebar-ring:#a1a1a1;--surface-1:#f7f7f7;--surface-2:#fafafa;--surface-3:var(--popover);--surface-4:var(--popover);--surface-5:var(--popover);--surface-6:var(--popover);--surface-7:var(--popover);--surface-8:var(--popover);--hover:var(--foreground)}@supports (color:lab(0% 0 0)){:root{--background:lab(100% 0 0);--foreground:lab(2.75381% 0 0);--card:lab(100% 0 0);--card-foreground:lab(2.75381% 0 0);--popover:lab(100% 0 0);--popover-foreground:lab(2.75381% 0 0);--primary:lab(7.78201% -.0000149012 0);--primary-foreground:lab(98.26% 0 0);--secondary:lab(96.52% -.0000298023 .0000119209);--secondary-foreground:lab(7.78201% -.0000149012 0);--muted:lab(96.52% -.0000298023 .0000119209);--muted-foreground:lab(48.496% 0 0);--accent:lab(96.52% -.0000298023 .0000119209);--accent-foreground:lab(7.78201% -.0000149012 0);--destructive:lab(48.4493% 77.4328 61.5452);--border:lab(90.952% 0 -.0000119209);--input:lab(90.952% 0 -.0000119209);--ring:lab(66.128% -.0000298023 .0000119209);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(98.26% 0 0);--sidebar-foreground:lab(2.75381% 0 0);--sidebar-primary:lab(7.78201% -.0000149012 0);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(96.52% -.0000298023 .0000119209);--sidebar-accent-foreground:lab(7.78201% -.0000149012 0);--sidebar-border:lab(90.952% 0 -.0000119209);--sidebar-ring:lab(66.128% -.0000298023 .0000119209);--surface-1:lab(97.1% -.0000298023 -.0000119209);--surface-2:lab(98.26% 0 0)}}@supports (color:color-mix(in lab, red, red)){:root{--hover:color-mix(in oklab, var(--foreground) 6%, transparent)}}:root{--active:var(--foreground)}@supports (color:color-mix(in lab, red, red)){:root{--active:color-mix(in oklab, var(--foreground) 10%, transparent)}}:root{--focus-ring:var(--ring);--shadow-color:#0000000d;--shadow-1:0 0 0 1px var(--shadow-color);--shadow-2:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color);--shadow-3:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color);--shadow-4:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color), 0 6px 6px -3px var(--shadow-color);--shadow-5:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color), 0 6px 6px -3px var(--shadow-color), 0 12px 12px -6px var(--shadow-color);--shadow-6:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color), 0 6px 6px -3px var(--shadow-color), 0 12px 12px -6px var(--shadow-color), 0 24px 24px -12px var(--shadow-color);--shadow-7:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color), 0 6px 6px -3px var(--shadow-color), 0 12px 12px -6px var(--shadow-color), 0 24px 24px -12px var(--shadow-color), 0 48px 48px -24px var(--shadow-color);--shadow-8:0 0 0 1px var(--shadow-color), 0 1px 1px -.5px var(--shadow-color), 0 3px 3px -1.5px var(--shadow-color), 0 6px 6px -3px var(--shadow-color), 0 12px 12px -6px var(--shadow-color), 0 24px 24px -12px var(--shadow-color), 0 48px 48px -24px var(--shadow-color), 0 96px 96px -48px var(--shadow-color)}.dark{--background:#0a0a0a;--foreground:#fafafa;--card:#171717;--card-foreground:#fafafa;--popover:#171717;--popover-foreground:#fafafa;--primary:#e5e5e5;--primary-foreground:#171717;--secondary:#262626;--secondary-foreground:#fafafa;--muted:#262626;--muted-foreground:#a1a1a1;--accent:#262626;--accent-foreground:#fafafa;--destructive:#ff6568;--border:#ffffff1a;--input:#ffffff26;--ring:#737373;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--sidebar:#171717;--sidebar-foreground:#fafafa;--sidebar-primary:#1447e6;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#262626;--sidebar-accent-foreground:#fafafa;--sidebar-border:#ffffff1a;--sidebar-ring:#737373;--surface-1:#0f0f0f;--surface-2:#141414;--surface-3:var(--popover);--surface-4:#1d1d1d;--surface-5:#222;--surface-6:#262626;--surface-7:#2b2b2b;--surface-8:#303030;--hover:var(--foreground)}@supports (color:lab(0% 0 0)){.dark{--background:lab(2.75381% 0 0);--foreground:lab(98.26% 0 0);--card:lab(7.78201% -.0000149012 0);--card-foreground:lab(98.26% 0 0);--popover:lab(7.78201% -.0000149012 0);--popover-foreground:lab(98.26% 0 0);--primary:lab(90.952% 0 -.0000119209);--primary-foreground:lab(7.78201% -.0000149012 0);--secondary:lab(15.204% 0 -.00000596046);--secondary-foreground:lab(98.26% 0 0);--muted:lab(15.204% 0 -.00000596046);--muted-foreground:lab(66.128% -.0000298023 .0000119209);--accent:lab(15.204% 0 -.00000596046);--accent-foreground:lab(98.26% 0 0);--destructive:lab(63.7053% 60.745 31.3109);--border:lab(100% 0 0/.1);--input:lab(100% 0 0/.15);--ring:lab(48.496% 0 0);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(7.78201% -.0000149012 0);--sidebar-foreground:lab(98.26% 0 0);--sidebar-primary:lab(36.9089% 35.0961 -85.6872);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(15.204% 0 -.00000596046);--sidebar-accent-foreground:lab(98.26% 0 0);--sidebar-border:lab(100% 0 0/.1);--sidebar-ring:lab(48.496% 0 0);--surface-1:lab(4.4379% 0 0);--surface-2:lab(6.19571% 0 0);--surface-4:lab(10.68% .00000745058 -.00000298023);--surface-5:lab(13% 0 0);--surface-6:lab(15.32% 0 0);--surface-7:lab(17.64% -.0000149012 0);--surface-8:lab(19.96% -.0000149012 0)}}@supports (color:color-mix(in lab, red, red)){.dark{--hover:color-mix(in oklab, var(--foreground) 8%, transparent)}}.dark{--active:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark{--active:color-mix(in oklab, var(--foreground) 13%, transparent)}}.dark{--focus-ring:var(--ring);--dm-hi-base:#ffffff03;--dm-hi-mid:#ffffff05;--dm-hi-high:#ffffff0a;--dm-hi-peak:#ffffff0f;--dm-ring-base:#ffffff05;--dm-ring-mid:#ffffff0a;--dm-ring-high:#ffffff0f;--dm-drop:#0000002e;--shadow-1:inset 0 0 0 1px var(--dm-ring-base);--shadow-2:inset 0 1px 0 0 var(--dm-hi-base), inset 0 0 0 1px var(--dm-ring-base), 0 1px 1px -.5px var(--dm-drop);--shadow-3:inset 0 1px 0 0 var(--dm-hi-mid), inset 0 0 0 1px var(--dm-ring-base), 0 0 0 1px #0000001f, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop);--shadow-4:inset 0 1px 0 0 var(--dm-hi-mid), inset 0 0 0 1px var(--dm-ring-mid), 0 0 0 1px #00000024, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop), 0 6px 6px -3px var(--dm-drop);--shadow-5:inset 0 1px 0 0 var(--dm-hi-high), inset 0 0 0 1px var(--dm-ring-mid), 0 0 0 1px #00000029, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop), 0 6px 6px -3px var(--dm-drop), 0 12px 12px -6px var(--dm-drop);--shadow-6:inset 0 1px 0 0 var(--dm-hi-high), inset 0 0 0 1px var(--dm-ring-high), 0 0 0 1px #0000002e, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop), 0 6px 6px -3px var(--dm-drop), 0 12px 12px -6px var(--dm-drop), 0 24px 24px -12px var(--dm-drop);--shadow-7:inset 0 1px 0 0 var(--dm-hi-peak), inset 0 0 0 1px var(--dm-ring-high), 0 0 0 1px #0003, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop), 0 6px 6px -3px var(--dm-drop), 0 12px 12px -6px var(--dm-drop), 0 24px 24px -12px var(--dm-drop), 0 48px 48px -24px var(--dm-drop);--shadow-8:inset 0 1px 0 0 var(--dm-hi-peak), inset 0 0 0 1px var(--dm-ring-high), 0 0 0 1px #00000038, 0 1px 1px -.5px var(--dm-drop), 0 3px 3px -1.5px var(--dm-drop), 0 6px 6px -3px var(--dm-drop), 0 12px 12px -6px var(--dm-drop), 0 24px 24px -12px var(--dm-drop), 0 48px 48px -24px var(--dm-drop), 0 96px 96px -48px var(--dm-drop)}:root{--ease-swift:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.22, 1, .36, 1);--duration-route-morph:.32s;--duration-post-meta:.25s;--delay-post-body:.52s;--shadow-small:0 5px 10px #0000001f;--shadow-medium:0 8px 30px #0000001f;--shadow-large:0 30px 60px #0000001f;--shadow-tooltip:0 4px 8px #0000000a, 0 1px 1px #00000005;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--border-hairline:1px;--z-nav:100;--z-card:200;--z-toast:300;--grain-opacity:.3;--guide-opacity:.5;--paper:#f9f8f5;--paper-ink:#6b6961}@supports (color:lab(0% 0 0)){:root{--paper:lab(97.7052% -.128865 1.51823);--paper-ink:lab(44.3918% -.324577 4.59862)}}@media only screen and (min-resolution:192dpi){:root{--border-hairline:.5px}}.dark{--grain-opacity:.22;--guide-opacity:.4}.public-site{--gray-1:#fcfcfb;--gray-2:#f7f7f6;--gray-3:#efeeed;--gray-4:#e2e1df;--gray-5:#cececb;--gray-6:#b5b4b2;--gray-7:#969592;--gray-8:#767472;--gray-9:#5c5a58;--gray-10:#464542;--gray-11:#32302e;--gray-12:#1e1d1b;--selection-highlight:#efe34594;--signal:#d55c13;--ghost-ink:var(--foreground)}@supports (color:lab(0% 0 0)){.public-site{--gray-1:lab(98.8464% -.0331104 .379002);--gray-2:lab(97.1095% -.0494123 .568664);--gray-3:lab(94.2127% -.0655949 .75841);--gray-4:lab(89.5742% -.0372529 .951779);--gray-5:lab(82.6144% .0269115 1.14328);--gray-6:lab(73.3336% .115126 1.32879);--gray-7:lab(61.7318% .226974 1.50577);--gray-8:lab(48.9698% .274837 1.49692);--gray-9:lab(38.5288% .364229 1.67308);--gray-10:lab(29.2465% .418156 1.65967);--gray-11:lab(19.9642% .472784 1.64503);--gray-12:lab(10.6818% .529245 1.63014);--selection-highlight:lab(89.3556% -8.40396 73.8026/.58);--signal:lab(54.6853% 46.4496 59.8946)}}@supports (color:color-mix(in lab, red, red)){.public-site{--ghost-ink:color-mix(in oklab, var(--foreground) 5%, transparent)}}.public-site{--background:var(--gray-1);--foreground:var(--gray-12);--card:var(--gray-2);--card-foreground:var(--gray-12);--popover:var(--gray-2);--popover-foreground:var(--gray-12);--primary:var(--gray-12);--primary-foreground:var(--gray-1);--secondary:var(--gray-3);--secondary-foreground:var(--gray-11);--muted:var(--gray-3);--muted-foreground:var(--gray-8);--accent:var(--gray-3);--accent-foreground:var(--gray-11);--border:var(--gray-4);--input:var(--gray-4);--ring:var(--gray-8);--focus-ring:var(--gray-9);--surface-1:#f5f4f3;--surface-2:#f8f8f6}@supports (color:lab(0% 0 0)){.public-site{--surface-1:lab(96.2994% -.059098 .682473);--surface-2:lab(97.4581% -.0526011 .606573)}}.dark.public-site{--gray-1:#0f0d0a;--gray-2:#151310;--gray-3:#1d1a16;--gray-4:#292622;--gray-5:#36322d;--gray-6:#4b4741;--gray-7:#66635c;--gray-8:#86837d;--gray-9:#a19e98;--gray-10:#b9b7b2;--gray-11:#d6d4cf;--gray-12:#ecebe7;--selection-highlight:#cbc24a47;--signal:#f0772d;--ghost-ink:var(--foreground)}@supports (color:lab(0% 0 0)){.dark.public-site{--gray-1:lab(3.70862% .237852 1.28007);--gray-2:lab(6.21011% .390157 2.10783);--gray-3:lab(9.53956% .524275 3.05792);--gray-4:lab(15.3424% .582039 3.43849);--gray-5:lab(21.1453% .640765 3.8159);--gray-6:lab(30.4285% .693038 4.18848);--gray-7:lab(42.0345% .547081 4.19754);--gray-8:lab(54.7968% .363529 3.81957);--gray-9:lab(65.2377% .211656 3.44069);--gray-10:lab(74.5174% .0874102 3.05892);--gray-11:lab(84.9561% -.0108778 2.67435);--gray-12:lab(93.0737% -.0831783 2.28829);--selection-highlight:lab(77.6126% -7.32335 59.3622/.28);--signal:lab(64.085% 44.295 60.0106)}}@supports (color:color-mix(in lab, red, red)){.dark.public-site{--ghost-ink:color-mix(in oklab, var(--foreground) 6.5%, transparent)}}.dark.public-site{--surface-1:#14120f;--surface-2:#191714;--surface-4:#201e1a;--surface-5:#25221e;--surface-6:#2a2723;--surface-7:#2f2c28;--surface-8:#34312c}@supports (color:lab(0% 0 0)){.dark.public-site{--surface-1:lab(5.73215% .340819 1.85995);--surface-2:lab(7.79906% .448689 2.46284);--surface-4:lab(11.2799% .518993 3.05771);--surface-5:lab(13.6012% .549704 3.24747);--surface-6:lab(15.9225% .58049 3.43726);--surface-7:lab(18.2428% .574783 3.43284);--surface-8:lab(20.5642% .605762 3.62282)}}.public-site ::selection{background:var(--selection-highlight)}.hairline-top{border-top:var(--border-hairline) solid var(--border)}.hidden-list-stage{isolation:isolate;position:relative}.hidden-list-stage-content{position:relative}.hidden-list-stage-field{contain:layout paint;color:var(--foreground);pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;display:block;position:absolute;inset:0;overflow:hidden}.projects-hidden-stage .hidden-list-stage-field{transition:opacity var(--list-stage-exit-ms) var(--ease-swift), transform var(--list-stage-exit-ms) var(--ease-swift);transform:scale(.985)}.writing-hidden-stage .hidden-list-stage-field{transition:opacity var(--list-stage-exit-ms) var(--ease-swift)}.hidden-list-stage[data-active=true] .hidden-list-stage-field{opacity:1}.projects-hidden-stage[data-active=true] .hidden-list-stage-field{transform:scale(1)}@keyframes projects-blueprint-enter{0%{opacity:0;transform:scale(.985)}}@keyframes writing-ink-enter{0%{opacity:0}}.projects-hidden-stage[data-active=true][data-motion=true] .hidden-list-stage-field{animation:projects-blueprint-enter .26s var(--ease-swift) backwards}.writing-hidden-stage[data-active=true][data-motion=true] .hidden-list-stage-field{animation:writing-ink-enter .18s var(--ease-swift) backwards}.hidden-list-stage[data-motion=false] .hidden-list-stage-field,.hidden-list-stage[data-motion=false] .hidden-list-shader-shell{transition:none}.hidden-list-stage-shader,.hidden-list-shader-shell,.hidden-list-shader-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.hidden-list-shader-shell{opacity:0}.hidden-list-shader-shell[data-ready=true]{opacity:1}.projects-blueprint-static{background-image:linear-gradient(currentColor var(--border-hairline), transparent var(--border-hairline)), linear-gradient(90deg, currentColor var(--border-hairline), transparent var(--border-hairline));position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.projects-blueprint-static{background-image:linear-gradient(color-mix(in oklab, currentColor 35%, transparent) var(--border-hairline), transparent var(--border-hairline)), linear-gradient(90deg, color-mix(in oklab, currentColor 35%, transparent) var(--border-hairline), transparent var(--border-hairline))}}.projects-blueprint-static{opacity:.1;background-size:24px 24px}.projects-hidden-stage .hidden-list-stage-shader{opacity:.14}.projects-registration-mark{opacity:.26;width:58px;height:58px;transform:translate3d(var(--list-stage-target-x), var(--list-stage-target-y), 0) translate(-50%, -50%);position:absolute;top:0;left:0;overflow:visible}.projects-registration-mark circle,.projects-registration-mark path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:var(--border-hairline)}.writing-ink-current-target{width:var(--list-stage-target-width);height:var(--list-stage-target-height);transform:translate3d(var(--list-stage-target-x), var(--list-stage-target-y), 0);display:block;position:absolute;top:0;left:0;overflow:hidden}.writing-ink-static{fill:none;opacity:.12;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.writing-ink-static path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round}.writing-hidden-stage .hidden-list-stage-shader{opacity:.2}.dark .projects-blueprint-static{opacity:.12}.dark .projects-registration-mark{opacity:.3}.dark .projects-hidden-stage .hidden-list-stage-shader{opacity:.12}.dark .writing-ink-static{opacity:.1}.dark .writing-hidden-stage .hidden-list-stage-shader{opacity:.17}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.hidden-list-stage-field,.hidden-list-shader-shell{transition:none;animation:none}}.project-row{grid-template-columns:2.75rem minmax(0,9rem) minmax(0,1fr);align-items:start;gap:.25rem 1rem;min-height:4.75rem;padding-block:.875rem;font-size:.875rem;display:grid}.page-introduction{color:var(--gray-10,var(--foreground));font-size:.875rem;line-height:1.7}.project-row:focus-visible{outline:1px solid var(--focus-ring);outline-offset:3px;border-radius:2px}.project-icon-frame{isolation:isolate;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:relative}.project-icon-frame:before{color:var(--foreground);background:linear-gradient(currentColor, currentColor) left top / 7px var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) left top / var(--border-hairline) 7px no-repeat, linear-gradient(currentColor, currentColor) right top / 7px var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) right top / var(--border-hairline) 7px no-repeat, linear-gradient(currentColor, currentColor) left bottom / 7px var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) left bottom / var(--border-hairline) 7px no-repeat, linear-gradient(currentColor, currentColor) right bottom / 7px var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) right bottom / var(--border-hairline) 7px no-repeat;content:"";opacity:0;transition:opacity .15s ease, transform .3s var(--ease-spring);position:absolute;inset:0;transform:scale(.82)}.project-icon{z-index:1;object-fit:cover;width:2.25rem;height:2.25rem;box-shadow:0 0 0 var(--border-hairline) var(--foreground);border-radius:.5rem;position:relative}@supports (color:color-mix(in lab, red, red)){.project-icon{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab, var(--foreground) 10%, transparent)}}.project-icon{transition:transform .3s var(--ease-spring)}.project-identity{flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0;line-height:1.4;display:flex}.project-name{max-width:100%;color:var(--gray-11,var(--foreground));text-wrap:balance}.project-domain{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:color .15s;overflow:hidden}.project-description{min-width:0;color:var(--gray-8,var(--muted-foreground));text-wrap:balance;line-height:1.55}@media (hover:hover) and (pointer:fine){.project-row:hover .project-icon-frame:before{opacity:.34;transform:scale(1)}.project-row:hover .project-icon{transform:translateY(-1px)}.project-row:hover .project-domain{color:var(--foreground)}}.project-row:focus-visible .external-label .external-mark{opacity:.6;transition:none}@media (max-width:39.99rem){.project-row{grid-template-columns:2.75rem minmax(0,1fr);align-items:start;row-gap:.375rem;min-height:0;padding-block:1rem}.project-icon-frame{grid-row:1/span 2}.project-identity,.project-description{grid-column:2}.project-domain{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.project-icon-frame:before,.project-icon,.project-domain{transition:none}.project-row:hover .project-icon,.project-row:hover .project-icon-frame:before{transform:none}}.error-sheet{place-items:center;min-height:calc(100svh - 3.5rem);padding-block:2rem 4rem;display:grid}.error-proof{isolation:isolate;width:100%;min-height:34rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--border);background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);padding:1.25rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.error-proof{background-image:linear-gradient(to right, color-mix(in oklab, var(--border) 45%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklab, var(--border) 45%, transparent) 1px, transparent 1px)}}.error-proof{background-size:24px 24px}.error-proof:before,.error-proof:after{content:"";pointer-events:none;position:absolute}.error-proof:before{height:var(--border-hairline);background:var(--border);inset:3.5rem 1.25rem auto}.error-proof:after{height:var(--border-hairline);background:var(--border);inset:auto 1.25rem 3.5rem}.error-proof-meta,.error-proof-footer{z-index:2;color:var(--foreground);justify-content:space-between;gap:1rem;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.error-proof-meta,.error-proof-footer{color:color-mix(in oklab, var(--foreground) 30%, transparent)}}.error-proof-meta,.error-proof-footer{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:-.011em;font-size:.875rem}.error-proof-footer{position:absolute;bottom:1.25rem;left:1.25rem;right:1.25rem}.error-registration{aspect-ratio:1;border:var(--border-hairline) solid var(--muted-foreground);width:min(26rem,74%);position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.error-registration{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.error-registration{pointer-events:none;border-radius:50%;transform:translate(-50%,-54%)}.error-registration:before,.error-registration:after,.error-registration span:before,.error-registration span:after{content:"";background:var(--muted-foreground);position:absolute}@supports (color:color-mix(in lab, red, red)){.error-registration:before,.error-registration:after,.error-registration span:before,.error-registration span:after{background:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.error-registration:before{height:var(--border-hairline);top:50%;left:-2rem;right:-2rem}.error-registration:after{width:var(--border-hairline);top:-2rem;bottom:-2rem;left:50%}.error-registration span:before{width:1.5rem;height:1.5rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--muted-foreground);background:0 0;border-radius:50%;inset:50% auto auto 50%}@supports (color:color-mix(in lab, red, red)){.error-registration span:before{box-shadow:inset 0 0 0 var(--border-hairline) color-mix(in oklab, var(--muted-foreground) 42%, transparent)}}.error-registration span:before{transform:translate(-50%,-50%)}.error-registration span:after{width:.3rem;height:.3rem;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.error-code{z-index:1;color:var(--muted-foreground);font-size:clamp(7.5rem,30vw,13.5rem);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;letter-spacing:-.13em;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;margin-top:4.8rem;line-height:.72;display:flex;position:relative}.error-code span{transform-origin:50%;transition:transform .35s var(--ease-spring), text-shadow .35s var(--ease-swift);display:block}.error-code span:first-child{text-shadow:.025em 0 var(--muted-foreground);transform:translate(-.03em,-.04em)rotate(-1.5deg)}@supports (color:color-mix(in lab, red, red)){.error-code span:first-child{text-shadow:.025em 0 color-mix(in oklab, var(--muted-foreground) 24%, transparent)}}.error-code span:nth-child(2){text-shadow:-.02em 0 var(--muted-foreground);transform:translateY(.035em)rotate(1deg)}@supports (color:color-mix(in lab, red, red)){.error-code span:nth-child(2){text-shadow:-.02em 0 color-mix(in oklab, var(--muted-foreground) 24%, transparent)}}.error-code span:nth-child(3){text-shadow:0 .025em var(--muted-foreground);transform:translate(.02em,-.015em)rotate(2deg)}@supports (color:color-mix(in lab, red, red)){.error-code span:nth-child(3){text-shadow:0 .025em color-mix(in oklab, var(--muted-foreground) 24%, transparent)}}.error-loose-pixel{z-index:2;background:var(--foreground);pointer-events:none;width:.45rem;height:.45rem;animation:2.8s steps(4,end) infinite error-pixel-wander;position:absolute}.error-loose-pixel-a{top:26%;left:16%}.error-loose-pixel-b{animation-delay:-.9s;top:42%;right:13%}.error-loose-pixel-c{width:.3rem;height:.3rem;animation-delay:-1.8s;top:18%;right:28%}@keyframes error-pixel-wander{0%,to{opacity:.35;transform:translate(0)}25%{opacity:.8;transform:translate(7px,-5px)}50%{opacity:.5;transform:translate(-4px,7px)}75%{opacity:1;transform:translate(5px,4px)}}.error-message{z-index:2;margin-top:4rem;position:relative}.error-actions{z-index:2;margin-top:1.25rem;position:relative}@media (hover:hover) and (pointer:fine){.error-proof:hover .error-code span{text-shadow:0 0 #0000;transform:none}}@media (max-width:30rem){.error-sheet{padding-block:1rem 3rem}.error-proof{min-height:32rem;padding:1rem}.error-proof:before{inset-inline:1rem}.error-code{margin-top:5.25rem;font-size:clamp(6.75rem,35vw,9rem)}.error-message{margin-top:4.5rem}.error-proof-footer{left:1rem;right:1rem}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.error-code span{transition:none}.error-loose-pixel{animation:none}}.paper-grain{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='128' height='128' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:128px 128px;position:fixed;inset:0}.column-guides{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--guide-opacity);position:fixed;inset:0}.column-guide-v{background:repeating-linear-gradient(to bottom, var(--muted-foreground) 0, var(--muted-foreground) 2px, transparent 2px, transparent 4px);width:1px;position:absolute;top:0;bottom:0}@supports (color:color-mix(in lab, red, red)){.column-guide-v{background:repeating-linear-gradient(to bottom, color-mix(in oklab, var(--muted-foreground) 45%, transparent) 0, color-mix(in oklab, var(--muted-foreground) 45%, transparent) 2px, transparent 2px, transparent 4px)}}.column-guide-v:first-of-type{left:max(16px,50% - 18.75rem)}.column-guide-v:last-of-type{right:max(16px,50% - 18.75rem)}.column-guide-v:after{content:"";width:9px;height:9px;color:var(--muted-foreground);position:absolute;top:14px;left:-4px}@supports (color:color-mix(in lab, red, red)){.column-guide-v:after{color:color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.column-guide-v:after{background:linear-gradient(currentColor, currentColor) center / 9px var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) center / var(--border-hairline) 9px no-repeat}.calibration-corners{--corner-arm:9px;pointer-events:none;-webkit-user-select:none;user-select:none;color:var(--foreground);background:linear-gradient(currentColor, currentColor) left top / var(--corner-arm) var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) left top / var(--border-hairline) var(--corner-arm) no-repeat, linear-gradient(currentColor, currentColor) right top / var(--corner-arm) var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) right top / var(--border-hairline) var(--corner-arm) no-repeat, linear-gradient(currentColor, currentColor) left bottom / var(--corner-arm) var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) left bottom / var(--border-hairline) var(--corner-arm) no-repeat, linear-gradient(currentColor, currentColor) right bottom / var(--corner-arm) var(--border-hairline) no-repeat, linear-gradient(currentColor, currentColor) right bottom / var(--border-hairline) var(--corner-arm) no-repeat}.photo-frame .calibration-corners{opacity:0;transition:opacity .15s ease, transform .3s var(--ease-swift);position:absolute;inset:6px;transform:scale(1.05)}@media (hover:hover) and (pointer:fine){.photo-frame:hover .calibration-corners,.photo-frame:focus-within .calibration-corners{opacity:.62;transform:none}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.photo-frame .calibration-corners{transition:none;transform:none}}.ghost-schematic{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;color:var(--ghost-ink);position:absolute}@media (hover:hover) and (pointer:fine){.focus-list>li{transition:opacity .18s var(--ease-swift)}.focus-list:hover>li:not(:hover):not(:focus-within){opacity:.44}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.focus-list>li,.focus-list:hover>li:not(:hover):not(:focus-within){opacity:1;transition:none}}.polaroid{background:var(--paper);padding:2% 2% 0;box-shadow:0 0 0 1px #0000000a,0 2px 4px -1px #0000002e}.polaroid-photo{display:block;position:relative}.polaroid-photo:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 2px #00000024}.polaroid-caption{letter-spacing:.08em;min-height:1.75rem;color:var(--paper-ink);-webkit-user-select:none;user-select:none;align-items:center;padding:.2rem .125rem;font-size:.75rem;display:flex}.polaroid-tilted{transform:rotate(var(--tilt,0deg))}@media (hover:hover) and (pointer:fine){.polaroid-tilted{transition:transform .3s var(--ease-spring), box-shadow .3s var(--ease-spring)}.group:hover .polaroid-tilted{transform:rotate(calc(var(--tilt,0deg) + 1.2deg)) scale(1.03);box-shadow:0 0 0 1px #0000000a, var(--shadow-medium)}.group:active .polaroid-tilted{transform:rotate(calc(var(--tilt,0deg) + 1.2deg)) scale(.94)}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.polaroid-tilted{transition:none}}.prose{color:var(--gray-10,var(--foreground));font-size:.875rem;line-height:1.72}.prose:lang(zh-CN),.prose:lang(zh){line-height:1.9}.prose>*+*{margin-top:1.25em}.prose{counter-reset:prose-section prose-figure}.prose h2{color:var(--gray-12,var(--foreground));font-size:1.125rem;line-height:1.35;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;text-wrap:balance;counter-increment:prose-section;margin-top:2.5em}.prose h2:before{content:counter(prose-section, decimal-leading-zero) / "";border:var(--border-hairline) solid var(--muted-foreground);margin-right:.625rem;padding:.1875rem 1.1875rem .1875rem .4375rem;display:inline-block}@supports (color:color-mix(in lab, red, red)){.prose h2:before{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.prose h2:before{background:repeating-linear-gradient(-45deg, var(--muted-foreground) 0, var(--muted-foreground) 1px, transparent 1px, transparent 3.5px) right center / .75rem 100% no-repeat, linear-gradient(var(--muted-foreground), var(--muted-foreground)) calc(100% - .75rem) 0 / var(--border-hairline) 100% no-repeat}@supports (color:color-mix(in lab, red, red)){.prose h2:before{background:repeating-linear-gradient(-45deg, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 0, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 1px, transparent 1px, transparent 3.5px) right center / .75rem 100% no-repeat, linear-gradient(color-mix(in oklab, var(--muted-foreground) 45%, transparent), color-mix(in oklab, var(--muted-foreground) 45%, transparent)) calc(100% - .75rem) 0 / var(--border-hairline) 100% no-repeat}}.prose h2:before{color:var(--muted-foreground);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;font-variant-numeric:tabular-nums;vertical-align:.125em;line-height:1}.prose h3{color:var(--gray-12,var(--foreground));font-size:1rem;line-height:1.45;font-weight:var(--font-weight-semibold);letter-spacing:-.01em;text-wrap:balance;margin-top:2em}.prose a{color:var(--gray-10,var(--foreground));text-underline-offset:.16em;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:.1em}@supports (color:color-mix(in lab, red, red)){.prose a{-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);text-decoration-color:color-mix(in oklab, currentColor 38%, transparent)}}.prose a{text-decoration-skip-ink:auto;overflow-wrap:anywhere;transition:color .15s,text-decoration-color .15s}@media (hover:hover) and (pointer:fine){.prose a:hover{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}}.prose a:focus-visible{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}.prose strong{color:var(--gray-12,var(--foreground));font-weight:var(--font-weight-semibold)}.post-title-card h1{color:var(--gray-12,var(--foreground));letter-spacing:-.03em;font-size:clamp(1.75rem,4vw,2rem);line-height:1.18}.post-title-meta{color:var(--gray-8,var(--muted-foreground))}.post-title-card .spec-plate{margin-top:1.5rem}.spec-plate{border-top:var(--border-hairline) solid var(--border);border-bottom:var(--border-hairline) solid var(--border);font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem 1rem;margin:0;padding:.625rem 0;display:grid}@media (min-width:28rem){.spec-plate{grid-template-columns:repeat(4,minmax(0,1fr))}}.spec-plate dt{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.spec-plate dt{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}.spec-plate dt{letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem}.spec-plate dd{color:var(--gray-9,var(--muted-foreground));letter-spacing:.02em;white-space:nowrap;margin:.1875rem 0 0;font-size:.8125rem}.spec-signal{vertical-align:.09em;background:var(--signal);width:5px;height:5px;margin-right:.375rem;display:inline-block}.spec-plate-flow{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.section-tag{color:var(--gray-8,var(--muted-foreground));font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;font-size:.75rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;text-transform:uppercase;align-items:stretch;gap:0;display:inline-flex}.section-tag-index{border:var(--border-hairline) solid var(--muted-foreground);align-items:center;padding:.0625rem .375rem;display:flex}@supports (color:color-mix(in lab, red, red)){.section-tag-index{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.section-tag-index{font-variant-numeric:tabular-nums;font-size:.6875rem}.section-tag-hatch{border:var(--border-hairline) solid var(--muted-foreground);width:.75rem}@supports (color:color-mix(in lab, red, red)){.section-tag-hatch{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.section-tag-hatch{background:repeating-linear-gradient(-45deg, var(--muted-foreground) 0, var(--muted-foreground) 1px, transparent 1px, transparent 3.5px);border-left:none}@supports (color:color-mix(in lab, red, red)){.section-tag-hatch{background:repeating-linear-gradient(-45deg, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 0, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 1px, transparent 1px, transparent 3.5px)}}.section-tag-label{align-self:center;padding-left:.625rem}.quiet-selection{--hover:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.quiet-selection{--hover:color-mix(in oklab, var(--foreground) 4%, transparent)}}.quiet-selection{--active:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.quiet-selection{--active:color-mix(in oklab, var(--foreground) 7%, transparent)}}.dark .quiet-selection{--hover:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark .quiet-selection{--hover:color-mix(in oklab, var(--foreground) 5%, transparent)}}.dark .quiet-selection{--active:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark .quiet-selection{--active:color-mix(in oklab, var(--foreground) 9%, transparent)}}.step-index{border:var(--border-hairline) solid var(--muted-foreground);justify-content:center;align-items:center;min-width:1.25rem;padding:.125rem 0;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.step-index{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.step-index{color:var(--muted-foreground);font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;font-size:.6875rem;line-height:1}.footer-geo{color:var(--muted-foreground);align-items:center;gap:.5rem;display:flex}@supports (color:color-mix(in lab, red, red)){.footer-geo{color:color-mix(in oklab, var(--muted-foreground) 88%, transparent)}}.footer-geo{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.footer-geo-globe{fill:none;stroke:currentColor;stroke-width:.7px;opacity:.5;flex:none;width:1.375rem;height:1.375rem}.footer-geo-lines{color:var(--muted-foreground);flex-direction:column;gap:.0625rem;display:flex}@supports (color:color-mix(in lab, red, red)){.footer-geo-lines{color:color-mix(in oklab, var(--muted-foreground) 90%, transparent)}}.footer-geo-lines{font-variant-numeric:tabular-nums;font-size:.75rem}.footer-braille{color:var(--muted-foreground);margin-top:.25rem}@supports (color:color-mix(in lab, red, red)){.footer-braille{color:color-mix(in oklab, var(--muted-foreground) 55%, transparent)}}.footer-braille{letter-spacing:.05em;font-size:.75rem;line-height:1}.barcode{color:currentColor;-webkit-user-select:none;user-select:none;display:inline-block}.barcode svg{height:1.5rem;display:block}.barcode-label{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.14em;margin-top:.25rem;font-size:.625rem;display:block}.error-barcode{z-index:2;color:var(--foreground);position:absolute;bottom:3.25rem;left:1.25rem}@supports (color:color-mix(in lab, red, red)){.error-barcode{color:color-mix(in oklab, var(--foreground) 38%, transparent)}}.ghost-folio{z-index:-1;color:var(--ghost-ink);letter-spacing:.04em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:4.5rem;line-height:1;position:absolute;top:-.75rem;right:0}.pixel-cluster{-webkit-user-select:none;user-select:none;grid-template-rows:5px 5px;grid-template-columns:5px 5px;gap:1px;display:grid}.pixel-cluster .pc-cell{display:block}.pixel-cluster .pc-s{background:var(--signal)}.pixel-cluster .pc-a{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.pixel-cluster .pc-a{background:color-mix(in oklab, var(--foreground) 26%, transparent)}}.pixel-cluster .pc-b{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.pixel-cluster .pc-b{background:color-mix(in oklab, var(--foreground) 11%, transparent)}}.page-eyebrow{color:var(--gray-8,var(--muted-foreground));font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;font-size:.75rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;text-transform:uppercase}.page-eyebrow:before{content:"// " / "";color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.page-eyebrow:before{color:color-mix(in oklab, var(--muted-foreground) 55%, transparent)}}.post-related{margin-top:4rem;padding-top:1rem}.post-related-label{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.post-related-label{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}.post-related-label{font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;font-size:.6875rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.prose ul{padding-left:1.375rem}.prose ol{padding-left:1.75rem}.prose ul>li{list-style:none;position:relative}.prose ul>li:before{content:"";background:var(--muted-foreground);width:5px;height:5px;position:absolute;top:calc(.875em - 2.5px);left:-1.375rem}.prose ol{counter-reset:prose-step;list-style:none}.prose ol>li{counter-increment:prose-step;position:relative}.prose ol>li:before{content:counter(prose-step, decimal-leading-zero);border:var(--border-hairline) solid var(--muted-foreground);place-items:center;min-width:1.25rem;padding:.125rem 0;display:inline-grid;position:absolute;top:.1875rem;left:-1.75rem}@supports (color:color-mix(in lab, red, red)){.prose ol>li:before{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.prose ol>li:before{color:var(--muted-foreground);font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;font-size:.6875rem;line-height:1}.prose li+li,.prose li>ul,.prose li>ol{margin-top:.5em}.prose blockquote{color:var(--muted-foreground);padding-left:1.25rem;position:relative}.prose blockquote:before{content:"";border:var(--border-hairline) solid var(--muted-foreground);width:.375rem;position:absolute;top:.25em;bottom:.25em;left:0}@supports (color:color-mix(in lab, red, red)){.prose blockquote:before{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.prose blockquote:before{background:repeating-linear-gradient(-45deg, var(--muted-foreground) 0, var(--muted-foreground) 1px, transparent 1px, transparent 3.5px)}@supports (color:color-mix(in lab, red, red)){.prose blockquote:before{background:repeating-linear-gradient(-45deg, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 0, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 1px, transparent 1px, transparent 3.5px)}}.prose .zoom-trigger img{background:var(--surface-1);box-shadow:0 0 0 var(--border-hairline) var(--border);border-radius:2px}.prose figcaption,.prose .post-figcaption{text-align:left;font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.02em;color:var(--muted-foreground);margin-top:.625rem;font-size:.75rem;line-height:1.5}.prose .post-figure{counter-increment:prose-figure}.prose .post-figcaption:before{content:"FIG. " counter(prose-figure, decimal-leading-zero) " — " / "";color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.prose .post-figcaption:before{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}.prose .post-figcaption:before{letter-spacing:.08em}[data-locale=zh] .prose .post-figcaption:before{content:"图 " counter(prose-figure, decimal-leading-zero) " — " / ""}.prose code:not(pre code){background:var(--muted);border-radius:2px;padding:.125rem .375rem;font-size:.875em}figure[data-rehype-pretty-code-figure]{border:var(--border-hairline) solid var(--border)}.code-frame{background:var(--surface-1);--scroll-fade-surface:var(--surface-1);position:relative}.code-frame pre{width:max-content;min-width:100%;padding:1rem;font-size:.8125rem;line-height:1.6}.scroll-area-x{position:relative}.scroll-area-x-viewport{overflow-x:auto}.scroll-area-x-viewport::-webkit-scrollbar{height:8px}.scroll-area-x-viewport::-webkit-scrollbar-thumb{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.scroll-area-x-viewport::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--foreground) 20%, transparent)}}.scroll-area-x-viewport::-webkit-scrollbar-thumb{border-radius:4px}.scroll-area-x-fade{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;width:2.5rem;transition:opacity .15s;position:absolute;top:0;bottom:0}.scroll-area-x-fade-start{background:linear-gradient(to right, var(--scroll-fade-surface,var(--background)), transparent);left:0}.scroll-area-x-fade-end{background:linear-gradient(to left, var(--scroll-fade-surface,var(--background)), transparent);right:0}.scroll-area-x-fade[data-visible]{opacity:1}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.scroll-area-x-fade{transition:none}}.scroll-area-y{flex-direction:column;display:flex;position:relative}.scroll-area-y-viewport{flex:auto;min-height:0;overflow-y:auto}.scroll-area-y-viewport::-webkit-scrollbar{width:8px}.scroll-area-y-viewport::-webkit-scrollbar-thumb{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.scroll-area-y-viewport::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--foreground) 20%, transparent)}}.scroll-area-y-viewport::-webkit-scrollbar-thumb{border-radius:4px}.scroll-area-y-fade{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;height:2.5rem;transition:opacity .15s;position:absolute;left:0;right:0}.scroll-area-y-fade-start{background:linear-gradient(to bottom, var(--scroll-fade-surface,var(--background)), transparent);top:0}.scroll-area-y-fade-end{background:linear-gradient(to top, var(--scroll-fade-surface,var(--background)), transparent);bottom:0}.scroll-area-y-fade[data-visible]{opacity:1}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.scroll-area-y-fade{transition:none}}.mermaid-frame{border:var(--border-hairline) solid var(--border);background:var(--surface-1);--scroll-fade-surface:var(--surface-1)}.mermaid-sheet{justify-content:center;width:max-content;min-width:100%;padding:.5rem;display:flex}.mermaid-sheet svg{--line:initial;--accent:initial;--muted:initial;--surface:initial;--border:initial;display:block}.mermaid-sheet svg text{font-family:var(--font-sans)}.mermaid-sheet svg .mono{font-family:var(--font-geist-mono), var(--font-frex-gb), ui-monospace, monospace}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title]{border-bottom:var(--border-hairline) solid var(--border);text-align:left;font-family:var(--font-mono,monospace);letter-spacing:.04em;color:var(--muted-foreground);align-items:center;gap:.75rem;margin:0;padding:.5rem 1rem;font-size:.6875rem;line-height:1.4;display:flex}@supports (color:color-mix(in lab, red, red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title]{color:color-mix(in oklab, var(--muted-foreground) 88%, transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{content:attr(data-language);border:var(--border-hairline) solid var(--muted-foreground);margin-left:auto;padding:.0625rem .375rem}@supports (color:color-mix(in lab, red, red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;user-select:none;font-size:.625rem}code[data-theme] span{color:var(--shiki-light)}.dark code[data-theme] span{color:var(--shiki-dark)}pre[data-theme],.dark pre[data-theme]{background:0 0}.code-copy{width:1.75rem;height:1.75rem;color:var(--muted-foreground);background:0 0;border-radius:2px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:absolute;top:.5rem;right:.5rem}.code-copy:after{content:"";position:absolute;inset:-.5rem}@media (hover:hover) and (pointer:fine){.code-copy:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.code-copy:hover{background:color-mix(in oklab, var(--foreground) 8%, transparent)}}}.code-copy:active{transform:scale(.97)}.code-copy[data-copied]{color:var(--foreground)}.tweet-card{border:var(--border-hairline) solid var(--border);background:var(--surface-1);transition:border-color .15s,background-color .15s;display:block;text-decoration:none!important}@media (hover:hover) and (pointer:fine){.tweet-card:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.tweet-card:hover{border-color:color-mix(in oklab, var(--foreground) 25%, transparent)}}.tweet-card:hover{background:var(--surface-2)}}.tweet-card-head{border-bottom:var(--border-hairline) solid var(--border);align-items:center;gap:.625rem;padding:.75rem 1rem;display:flex}.tweet-card-avatar{background:var(--muted);width:2.25rem;height:2.25rem;box-shadow:inset 0 0 0 1px var(--border);font-size:1rem;font-weight:var(--font-weight-medium);color:var(--muted-foreground);-webkit-user-select:none;user-select:none;border-radius:999px;place-items:center;display:grid}img.tweet-card-avatar{object-fit:cover;background:0 0}.tweet-card-names{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.tweet-card-name{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground)}.tweet-card-handle{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.tweet-card-handle{color:color-mix(in oklab, var(--muted-foreground) 85%, transparent)}}.tweet-card-handle{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.02em;font-size:.75rem}.tweet-card-x{color:var(--muted-foreground);transition:color .15s}@media (hover:hover) and (pointer:fine){.tweet-card:hover .tweet-card-x{color:var(--foreground)}}.tweet-card-body{letter-spacing:-.011em;color:var(--foreground);padding:.875rem 1rem;font-size:.875rem;line-height:1.6;display:block}.tweet-card-body>span+span{margin-top:.75em}.tweet-card-foot{border-top:var(--border-hairline) solid var(--border);color:var(--muted-foreground);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.tweet-card-foot{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}.tweet-card-foot{font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums;font-size:.6875rem}.tweet-card-mark{opacity:.6;margin-left:auto;transition:opacity .18s,translate .18s}@media (hover:hover) and (pointer:fine){.tweet-card:hover .tweet-card-mark{opacity:.95;translate:1.5px -1.5px}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.tweet-card-mark{transition:none}}.theme-toggle{box-shadow:0 0 0 1px var(--border);border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.theme-toggle button{width:1.5rem;height:1.5rem;color:var(--muted-foreground);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:relative}.theme-toggle button:after{content:"";position:absolute;inset:-.625rem 0}@media (hover:hover) and (pointer:fine){.theme-toggle button:hover{color:var(--foreground)}}.theme-toggle button:active{transform:scale(.97)}.theme-toggle button[data-active]{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.theme-toggle button[data-active]{background:color-mix(in oklab, var(--foreground) 8%, transparent)}}.zoom-trigger{cursor:zoom-in;width:100%;display:block}.zoom-trigger[data-zoomed] img{visibility:hidden}.zoom-overlay{z-index:var(--z-toast);cursor:zoom-out;outline:none;position:fixed;inset:0}.zoom-overlay-backdrop{background:var(--background);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.zoom-overlay-backdrop{background:color-mix(in oklab, var(--background) 94%, transparent)}}.zoom-overlay-backdrop{opacity:0;transition:opacity .3s var(--ease-swift)}.zoom-overlay[data-state=open] .zoom-overlay-backdrop{opacity:1}.zoom-overlay img{background:var(--surface-1);will-change:transform;transition:transform .3s var(--ease-swift), box-shadow .3s var(--ease-swift);border-radius:2px;position:fixed}.zoom-overlay[data-state=open] img{box-shadow:var(--shadow-large)}.zoom-overlay-marks{opacity:0;transition:opacity .12s;position:fixed}.zoom-overlay[data-state=open] .zoom-overlay-marks{opacity:.55;transition:opacity .2s .14s}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.zoom-overlay-backdrop,.zoom-overlay img,.zoom-overlay-marks{transition:none}}.avatar-flip{width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px var(--border);-webkit-user-select:none;user-select:none;border-radius:999px;display:block;position:relative;overflow:hidden}.avatar-flip img{object-fit:cover;border-radius:999px;width:100%;height:100%;position:absolute;inset:0}@keyframes enter-develop{0%{opacity:0;filter:blur(4px)}}@keyframes polaroid-pop{0%{opacity:0;transform:rotate(calc(var(--tilt,0deg) + 1.5deg)) scale(.85)}}.enter{animation:enter-develop .35s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}.enter-polaroid .polaroid{animation:polaroid-pop .35s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}html[data-visited] .enter-polaroid .polaroid{animation:none}.reveal-pending{opacity:0;filter:blur(2px);transform:translateY(5px)}@keyframes reveal-develop{0%{opacity:0;filter:blur(2px);transform:translateY(5px)}}.reveal-in{animation:reveal-develop .3s var(--ease-swift) backwards;animation-delay:var(--reveal-delay,0s)}@keyframes img-develop{0%{opacity:0;filter:blur(4px);transform:rotate(calc(var(--img-tilt,0deg) + 1.2deg)) scale(.9)}}.reveal-in .zoom-trigger{animation:img-develop .3s var(--ease-swift) backwards;animation-delay:calc(var(--reveal-delay,0s) + .25s)}.post-loading-cover{view-transition-name:var(--post-cover-transition-name,none)}.post-loading-title{view-transition-name:var(--post-title-transition-name,none)}@keyframes vt-defocus{to{opacity:0;filter:blur(2px)}}@keyframes vt-focus{0%{opacity:0;filter:blur(2px)}}::view-transition-group(root){animation:none}::view-transition-old(root){display:none}::view-transition-new(root){animation:none}::view-transition-old(.route-content){animation:vt-defocus .25s var(--ease-swift) both}::view-transition-new(.route-content){animation:vt-focus .3s var(--ease-swift) both}::view-transition-group(*){animation-duration:var(--duration-route-morph);animation-timing-function:var(--ease-swift)}html[data-route-motion=none]::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-image-pair(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}.post-title-meta{animation:enter-develop var(--duration-post-meta) var(--ease-swift) backwards;animation-delay:var(--duration-route-morph)}.post-body-stage{--enter-delay:var(--delay-post-body)}.prose ul.reveal-in,.prose ol.reveal-in{animation:none}.prose ul.reveal-in>li,.prose ol.reveal-in>li{animation:reveal-develop .3s var(--ease-swift) backwards;animation-delay:calc(var(--reveal-delay,0s) + var(--li,0) * 45ms)}.prose ul.reveal-in>li:nth-child(2),.prose ol.reveal-in>li:nth-child(2){--li:1}.prose ul.reveal-in>li:nth-child(3),.prose ol.reveal-in>li:nth-child(3){--li:2}.prose ul.reveal-in>li:nth-child(4),.prose ol.reveal-in>li:nth-child(4){--li:3}.prose ul.reveal-in>li:nth-child(5),.prose ol.reveal-in>li:nth-child(5){--li:4}.prose ul.reveal-in>li:nth-child(6),.prose ol.reveal-in>li:nth-child(6){--li:5}.prose ul.reveal-in>li:nth-child(7),.prose ol.reveal-in>li:nth-child(7){--li:6}.prose ul.reveal-in>li:nth-child(8),.prose ol.reveal-in>li:nth-child(8){--li:7}.prose ul.reveal-in>li:nth-child(9),.prose ol.reveal-in>li:nth-child(9){--li:8}.prose ul.reveal-in>li:nth-child(n+10),.prose ol.reveal-in>li:nth-child(n+10){--li:9}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.enter,.enter-polaroid .polaroid,.post-title-meta,.reveal-in,.prose ul.reveal-in>li,.prose ol.reveal-in>li{animation:none}.reveal-pending{opacity:1;filter:none;transform:none}.reveal-in .zoom-trigger{animation:none}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-image-pair(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}}.external-label{display:inline}.external-mark{opacity:.6;vertical-align:-.125em;width:1rem;height:1rem;margin-inline-start:.08em;transition:opacity .15s;display:inline-block}.external-label-text{min-width:0}@media (hover:hover) and (pointer:fine){.external-label .external-mark{transition:opacity .15s,transform .18s}a:hover .external-label .external-mark{opacity:.95;transform:translate(1.5px,-1.5px)}}a:focus-visible .external-label .external-mark{opacity:.95;transition:none}.home-introduction p{color:var(--gray-10,var(--muted-foreground));font-size:.875rem;line-height:1.72}.home-intro-trigger{white-space:nowrap;touch-action:manipulation;align-items:baseline;gap:.18em;display:inline-flex}.home-design-mark,.home-details-mark{width:1.125rem;height:1.125rem;color:var(--foreground);pointer-events:none;-webkit-user-select:none;user-select:none;vertical-align:-.25em;flex:none;align-self:center;display:inline-block}.home-design-label,.home-detail-units{color:var(--foreground);position:relative}.home-design-label:after,.home-detail-units:after{content:"";pointer-events:none;height:1px;position:absolute;bottom:-.08em;left:0;right:0}.home-design-label:after{opacity:.5;background:linear-gradient(90deg,#ff5c5c,#f6b73c,#44c77a,#4aa8ff,#b56cff)}.home-details-mark{color:var(--signal);filter:drop-shadow(0 0 4px var(--signal))}@supports (color:color-mix(in lab, red, red)){.home-details-mark{filter:drop-shadow(0 0 4px color-mix(in oklab, var(--signal) 40%, transparent))}}.home-design-laptop,.home-design-sparkle,.home-zolplay-link .external-link>img{transform-box:fill-box;transform-origin:50%}.home-design-laptop,.home-zolplay-link .external-link>img{transition:transform .15s var(--ease-swift)}.home-detail-units{letter-spacing:.035em;align-items:baseline;display:inline-flex}.home-detail-units:after{background:var(--signal);opacity:.62}.home-detail-words .home-detail-unit+.home-detail-unit{margin-inline-start:.22em}.home-detail-unit{transform-origin:bottom;transition:color .15s;display:inline-block}.home-detail-period{display:inline-block}.home-design-sparkle{opacity:.72}.home-intro-trigger.home-intro-tap .home-design-laptop{animation:home-intro-laptop-tap .22s var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-a{animation:home-intro-twinkle .22s var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-b{animation:home-intro-twinkle .22s 45ms var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-dot{animation:home-intro-twinkle .18s 90ms var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-detail-unit{animation:home-detail-hop 1s var(--ease-spring)}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(2){animation-delay:80ms}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(3){animation-delay:.16s}.home-intro-trigger.home-intro-tap .home-detail-unit:first-child{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger.home-intro-tap .home-detail-unit:first-child{color:color-mix(in oklch, var(--foreground) 35%, #ff7a59)}}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(2){color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(2){color:color-mix(in oklch, var(--foreground) 35%, #44c77a)}}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(3){color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(3){color:color-mix(in oklch, var(--foreground) 35%, #4aa8ff)}}.home-zolplay-link{white-space:nowrap;touch-action:manipulation}.home-zolplay-link .external-link,.home-contact-link{color:var(--gray-10,var(--foreground));text-underline-offset:.16em;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:.1em}@supports (color:color-mix(in lab, red, red)){.home-zolplay-link .external-link,.home-contact-link{-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentColor 38%, transparent);text-decoration-color:color-mix(in oklab, currentColor 38%, transparent)}}.home-zolplay-link .external-link,.home-contact-link{text-decoration-skip-ink:auto}.home-zolplay-link .external-link{transition:color .15s,text-decoration-color .15s}.home-contact-link{touch-action:manipulation;transition:color .15s,text-decoration-color .15s}.home-contact-link .external-label{white-space:nowrap}@media (hover:hover) and (pointer:fine){.home-zolplay-link .external-link:hover,.home-contact-link:hover{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}}.home-zolplay-link:active .external-link>img{transform:translateY(-1px)rotate(-4deg)}.home-zolplay-link .external-mark{transition:opacity .15s,transform .18s}.home-zolplay-link:active .external-mark{opacity:.95;transform:translate(1.5px,-1.5px)}@media (hover:hover) and (pointer:fine){.home-intro-trigger:hover .home-design-label{color:#0000;background-image:linear-gradient(100deg, var(--foreground), var(--foreground), var(--foreground), var(--foreground), var(--foreground))}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger:hover .home-design-label{background-image:linear-gradient(100deg, color-mix(in oklch, var(--foreground) 35%, #ff5c5c), color-mix(in oklch, var(--foreground) 35%, #f6b73c), color-mix(in oklch, var(--foreground) 35%, #44c77a), color-mix(in oklch, var(--foreground) 35%, #4aa8ff), color-mix(in oklch, var(--foreground) 35%, #b56cff))}}.home-intro-trigger:hover .home-design-label{-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.home-intro-trigger:hover .home-detail-unit{animation:home-detail-hop 1s var(--ease-spring)}.home-intro-trigger:hover .home-detail-unit:nth-child(2){animation-delay:80ms}.home-intro-trigger:hover .home-detail-unit:nth-child(3){animation-delay:.16s}.home-intro-trigger:hover .home-detail-unit:first-child{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger:hover .home-detail-unit:first-child{color:color-mix(in oklch, var(--foreground) 35%, #ff7a59)}}.home-intro-trigger:hover .home-detail-unit:nth-child(2){color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger:hover .home-detail-unit:nth-child(2){color:color-mix(in oklch, var(--foreground) 35%, #44c77a)}}.home-intro-trigger:hover .home-detail-unit:nth-child(3){color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.home-intro-trigger:hover .home-detail-unit:nth-child(3){color:color-mix(in oklch, var(--foreground) 35%, #4aa8ff)}}.home-intro-trigger:hover .home-design-laptop{transform:translateY(1.5px)}.home-intro-trigger:hover .home-design-sparkle-a{animation:home-intro-twinkle .22s var(--ease-swift)}.home-intro-trigger:hover .home-design-sparkle-b{animation:home-intro-twinkle .22s 45ms var(--ease-swift)}.home-intro-trigger:hover .home-design-sparkle-dot{animation:home-intro-twinkle .18s 90ms var(--ease-swift)}.home-zolplay-link:hover .external-link>img{transform:translateY(-1px)rotate(-4deg)}}@keyframes home-detail-hop{0%{transform:translateY(0)scale(1)}28%{animation-timing-function:var(--ease-spring);transform:translateY(-5px)scale(1.03)}to{transform:translateY(0)scale(1)}}@keyframes home-intro-laptop-tap{0%,to{transform:translateY(0)}45%{transform:translateY(1.5px)}}@keyframes home-intro-twinkle{0%,to{opacity:.72;transform:scale(1)}45%{opacity:1;transform:scale(1.22)}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.external-label .external-mark{transition:none}a:hover .external-label .external-mark{transform:none}.home-design-laptop,.home-design-sparkle,.home-detail-unit,.home-zolplay-link .external-link>img,.home-intro-trigger:is(:hover,:active) .home-design-laptop,.home-intro-trigger:is(:hover,:active) .home-design-sparkle,.home-intro-trigger:is(:hover,:active) .home-detail-unit,.home-intro-trigger.home-intro-tap .home-design-laptop,.home-intro-trigger.home-intro-tap .home-design-sparkle,.home-intro-trigger.home-intro-tap .home-detail-unit,.home-zolplay-link:is(:hover,:active) .external-link>img,.home-zolplay-link:is(:hover,:active) .external-mark{transition:none;animation:none;transform:none}.home-zolplay-link,.home-contact-link{transition:none}}.external-link img{vertical-align:-.125em;-webkit-user-select:none;user-select:none;border-radius:3px;width:14px;height:14px;margin-right:.3em;display:inline-block}.link-card{pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--surface-3);width:16rem;box-shadow:0 0 0 1px var(--border), var(--shadow-tooltip), var(--shadow-medium);transform-origin:var(--transform-origin);backface-visibility:hidden;z-index:var(--z-card);opacity:1;transition:opacity .2s var(--ease-swift), transform .2s var(--ease-swift);border-radius:2px;flex-direction:column;gap:.375rem;padding:.625rem .75rem;display:flex;transform:scale(1)}.link-card-with-image{padding:.625rem}.link-card-image-frame{aspect-ratio:16/9;background:var(--muted);border-radius:2px;flex:none;width:100%;display:block;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.link-card-image-frame{background:color-mix(in oklch, var(--muted) 72%, var(--paper))}}.link-card-image-frame{box-shadow:inset 0 0 0 1px var(--border)}.link-card-image{object-fit:cover;width:100%;height:100%;display:block}.external-link img[data-failed],.link-card img[data-failed]{visibility:hidden}.external-link img[data-tone=light-mono],.link-card-site img[data-tone=light-mono],.dark .external-link img[data-tone=dark-mono],.dark .link-card-site img[data-tone=dark-mono]{filter:invert()}.dark .external-link img[data-tone=light-mono],.dark .link-card-site img[data-tone=light-mono]{filter:none}.external-link img[data-tone=light],.link-card-site img[data-tone=light],.dark .external-link img[data-tone=dark],.dark .link-card-site img[data-tone=dark]{box-sizing:border-box;background:var(--primary);padding:2px}@supports (color:color-mix(in lab, red, red)){.external-link img[data-tone=light],.link-card-site img[data-tone=light],.dark .external-link img[data-tone=dark],.dark .link-card-site img[data-tone=dark]{background:color-mix(in oklab, var(--primary) 88%, var(--background))}}.dark .external-link img[data-tone=light],.dark .link-card-site img[data-tone=light]{background:0 0;padding:0}.external-link img[data-tone=flat],.link-card-site img[data-tone=flat]{box-shadow:inset 0 0 0 1px var(--border)}.dark .external-link img[data-tone=flat],.dark .link-card-site img[data-tone=flat]{box-shadow:none}.link-card[data-starting-style]{opacity:0;transform:scale(.95)}.link-card[data-ending-style]{opacity:0;transition-duration:.13s;transform:scale(.97)}.link-card.preview-card-instant,.link-card.preview-card-instant[data-starting-style],.link-card.preview-card-instant[data-ending-style]{opacity:1;transition:none;transform:none}.link-card-site{color:var(--muted-foreground);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.02em;align-items:center;gap:.375rem;font-size:.75rem;display:flex}.link-card-site img{border-radius:2px}.link-card-title{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.link-card-description{color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}[data-halftone]{aspect-ratio:1;-webkit-user-select:none;user-select:none;display:block;position:relative}.halftone-fallback{object-fit:contain;width:100%;height:100%;transition:opacity .4s var(--ease-swift);position:absolute;inset:0}.dark .halftone-fallback{content:url(/images/abel-avatar-halftone-dark.webp)}.halftone-canvas{width:100%;height:100%;color:var(--foreground);opacity:0;position:absolute;inset:0}@keyframes halftone-reveal{0%{opacity:0}to{opacity:1}}[data-halftone][data-ready] .halftone-canvas{animation:halftone-reveal .4s var(--ease-swift) both}[data-halftone][data-ready] .halftone-fallback{opacity:0}[data-portrait-stage]{isolation:isolate;aspect-ratio:1;display:block;position:relative}.portrait-hidden-stage-trigger{z-index:1;width:100%;height:100%;color:inherit;font:inherit;cursor:default;touch-action:manipulation;appearance:none;transform-origin:50% 62%;background:0 0;border:0;border-radius:2px;margin:0;padding:0;animation:8s ease-in-out infinite portrait-ambient-breathe;display:block;position:relative}@keyframes portrait-ambient-breathe{0%,to{transform:translateY(0)rotate(0)scale(1)}48%{transform:translateY(-1.5px)rotate(.18deg)scale(1.006)}72%{transform:translateY(-.5px)rotate(-.08deg)scale(1.002)}}@keyframes portrait-ambient-ink{0%,to{opacity:1}50%{opacity:.965}}[data-portrait-stage][data-active=true] .portrait-hidden-stage-trigger{animation-play-state:paused}.portrait-hidden-stage-trigger:focus-visible{outline:1px solid var(--foreground);outline-offset:4px}.portrait-hidden-stage-field{z-index:0;contain:layout paint;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .32s var(--ease-swift), transform .32s var(--ease-swift);position:absolute;inset:-28% -36% -28% -20%;transform:scale(.94);-webkit-mask-image:radial-gradient(at 45% 49%,#0000 0 25%,#00000061 36%,#000 48%,#000000d1 61%,#0000 78%);mask-image:radial-gradient(at 45% 49%,#0000 0 25%,#00000061 36%,#000 48%,#000000d1 61%,#0000 78%)}[data-portrait-stage][data-motion=false] .portrait-hidden-stage-field,[data-portrait-stage][data-motion=false] .portrait-hidden-stage-shader-shell{transition:none}[data-portrait-stage][data-active=true] .portrait-hidden-stage-field{opacity:1;transform:scale(1)}[data-portrait-stage][data-motion=true] .portrait-hidden-stage-field{will-change:transform, opacity}.portrait-hidden-stage-fallback,.portrait-hidden-stage-shader,.portrait-hidden-stage-shader-shell,.portrait-hidden-stage-canvas{width:100%;height:100%;position:absolute;inset:0}.portrait-hidden-stage-fallback{color:var(--foreground);opacity:.028;overflow:visible;transform:rotate(-5deg)}.portrait-hidden-stage-fallback path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round}.portrait-hidden-stage-shader{opacity:.1}.portrait-hidden-stage-shader-shell{opacity:0;transition:opacity .18s var(--ease-swift)}.portrait-hidden-stage-shader-shell[data-ready=true]{opacity:1}.dark .portrait-hidden-stage-fallback{opacity:.026}.dark .portrait-hidden-stage-shader{opacity:.09}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){[data-halftone][data-ready] .halftone-canvas{opacity:1;animation:none}.portrait-hidden-stage-field,.portrait-hidden-stage-shader-shell{transition:none}}@keyframes enter-swing{0%{opacity:0;filter:blur(2px);transform:translateY(12px)rotate(-2deg)}}.enter-swing{animation:enter-swing .4s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.enter-swing{animation:none}}.column-rulers{z-index:95;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--guide-opacity);mix-blend-mode:difference;position:fixed;inset:0}.column-ruler-arc{position:absolute;left:0}.column-ruler-arc-top{top:0}.column-ruler-arc-bottom{bottom:0}.zoom-trigger{transform:rotate(var(--img-tilt,0deg));transition:transform .3s var(--ease-swift)}@media (hover:hover) and (pointer:fine){.zoom-trigger:hover{transform:rotate(0)scale(1.02)}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.zoom-trigger{transition:none}}.viewport-edge-fade{z-index:90;pointer-events:none;-webkit-user-select:none;user-select:none;height:4.5rem;position:fixed;left:0;right:0}.viewport-edge-fade-top{background:linear-gradient(to bottom, var(--background), transparent);top:0;-webkit-mask-image:linear-gradient(#000 15%,#0000);mask-image:linear-gradient(#000 15%,#0000)}@supports (color:color-mix(in lab, red, red)){.viewport-edge-fade-top{background:linear-gradient(to bottom, color-mix(in oklab, var(--background) 62%, transparent), transparent)}}.viewport-edge-fade-bottom{background:linear-gradient(to top, var(--background), transparent);bottom:0;-webkit-mask-image:linear-gradient(#0000,#000 85%);mask-image:linear-gradient(#0000,#000 85%)}@supports (color:color-mix(in lab, red, red)){.viewport-edge-fade-bottom{background:linear-gradient(to top, color-mix(in oklab, var(--background) 62%, transparent), transparent)}}.viewport-edge-fade-bottom:before{-webkit-mask-image:linear-gradient(#0000 55%,#000);mask-image:linear-gradient(#0000 55%,#000)}.dither-veil{opacity:1;width:100%;height:100%;transition:opacity .3s var(--ease-swift);position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.group:hover .dither-veil{opacity:0}}.group:focus-visible .dither-veil{opacity:0}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.dither-veil{transition:none}}.social-media-marquee{border-block:var(--border-hairline) solid var(--border);width:min(37.5rem,100vw - 2rem);padding-block:1rem;position:relative;left:50%;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.social-media-marquee{border-block:var(--border-hairline) solid color-mix(in oklab, var(--border) 82%, transparent)}}.social-media-marquee{background:linear-gradient(90deg, transparent, var(--foreground) 48%, transparent), radial-gradient(circle, var(--muted-foreground) 0 .55px, transparent .75px)}@supports (color:color-mix(in lab, red, red)){.social-media-marquee{background:linear-gradient(90deg, transparent, color-mix(in oklab, var(--foreground) 2.5%, transparent) 48%, transparent), radial-gradient(circle, color-mix(in oklab, var(--muted-foreground) 26%, transparent) 0 .55px, transparent .75px)}}.social-media-marquee{background-size:auto,12px 12px;transform:translate(-50%)}.social-media-marquee:before,.social-media-marquee:after{z-index:1;pointer-events:none;content:"";width:3.5rem;position:absolute;top:0;bottom:0}.social-media-marquee:before{background:linear-gradient(to right, var(--background), transparent);left:0}.social-media-marquee:after{background:linear-gradient(to left, var(--background), transparent);right:0}.social-media-motion{flex-direction:column;gap:.625rem;display:flex}.social-media-heading-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.social-media-row{overflow:hidden}.social-media-track{will-change:transform;width:max-content;display:flex}.social-media-row[data-direction=left] .social-media-track{animation:28s linear infinite social-media-scroll-left}.social-media-row[data-direction=right] .social-media-track{animation:31s linear infinite social-media-scroll-right}.social-media-marquee[data-playing=false] .social-media-track{animation-play-state:paused}.social-media-set{flex:none;gap:.625rem;padding-right:.625rem;display:flex}.social-media-card{border:var(--border-hairline) solid var(--muted-foreground);flex:none;align-items:center;gap:.625rem;width:9rem;height:3.125rem;padding:.5rem .625rem;display:flex}@supports (color:color-mix(in lab, red, red)){.social-media-card{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 34%, transparent)}}.social-media-card{color:var(--gray-9,var(--muted-foreground));background:var(--background);border-radius:.25rem}@supports (color:color-mix(in lab, red, red)){.social-media-card{background:color-mix(in oklab, var(--background) 92%, var(--foreground) 8%)}}.social-media-card{box-shadow:var(--shadow-2);transition:border-color .18s var(--ease-swift), color .18s var(--ease-swift), background-color .18s var(--ease-swift), transform .18s var(--ease-swift), box-shadow .18s var(--ease-swift)}.social-media-logo{border:var(--border-hairline) solid var(--muted-foreground);flex:none;place-items:center;width:2rem;height:2rem;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.social-media-logo{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 38%, transparent)}}.social-media-logo{color:var(--foreground);background:var(--background);border-radius:50%}.social-media-logo svg,.social-media-brand-image{object-fit:contain;width:1rem;height:1rem}.social-media-logo[data-brand=youtube]{border-radius:.55rem}.dark .social-media-logo[data-brand=x] .social-media-brand-image,.dark .social-media-logo[data-brand=tiktok] .social-media-brand-image{filter:invert()}.social-media-name{letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.75rem;font-weight:500;overflow:hidden}@media (hover:hover) and (pointer:fine){.social-media-motion:hover .social-media-track{animation-play-state:paused}.social-media-card:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.social-media-card:hover{border-color:color-mix(in oklab, var(--foreground) 58%, transparent)}}.social-media-card:hover{color:var(--foreground);background:var(--background);box-shadow:var(--shadow-4);transform:translateY(-2px)}}@keyframes social-media-scroll-left{to{transform:translate(-50%)}}@keyframes social-media-scroll-right{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (max-width:30rem){.social-media-marquee:before,.social-media-marquee:after{width:2rem}.social-media-card{width:8rem}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.social-media-track{will-change:auto}.social-media-card{transition:none}}.showcase-carousel{width:min(37.5rem,100vw - 2rem);position:relative;left:50%;transform:translate(-50%)}.showcase-carousel-toolbar{justify-content:space-between;align-items:center;min-height:1.75rem;margin-bottom:.625rem;display:flex}.showcase-carousel-count{color:var(--gray-8,var(--muted-foreground));font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;font-variant-numeric:tabular-nums;letter-spacing:.08em;margin-left:clamp(.5rem,50vw - 18.25rem,1.5rem);font-size:.6875rem}.showcase-carousel-actions{align-items:center;gap:1.25rem;display:flex}.showcase-card{--showcase-accent:var(--signal);border:var(--border-hairline) solid var(--muted-foreground);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.showcase-card{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 34%, transparent)}}.showcase-card{background:radial-gradient(circle, var(--muted-foreground) 0 .5px, transparent .75px), var(--background);border-radius:.375rem}@supports (color:color-mix(in lab, red, red)){.showcase-card{background:radial-gradient(circle, color-mix(in oklab, var(--muted-foreground) 17%, transparent) 0 .5px, transparent .75px), var(--background)}}.showcase-card{box-shadow:var(--shadow-2);transition:border-color .22s var(--ease-swift), box-shadow .22s var(--ease-swift), transform .22s var(--ease-swift);background-size:12px 12px,auto}.showcase-card:before{z-index:2;background:var(--showcase-accent);content:"";height:2px;position:absolute;top:0;left:0;right:0}.recommendation-card{min-height:12.25rem;animation:showcase-card-enter .48s var(--ease-swift) both;grid-template-columns:minmax(8.75rem,.38fr) minmax(0,1fr);display:grid}.recommendation-card-logo{border-right:var(--border-hairline) solid var(--muted-foreground);place-items:center;min-height:100%;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.recommendation-card-logo{border-right:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 28%, transparent)}}.recommendation-card-logo{color:var(--showcase-accent);background:linear-gradient(145deg, var(--showcase-accent), transparent 72%), var(--surface-1)}@supports (color:color-mix(in lab, red, red)){.recommendation-card-logo{background:linear-gradient(145deg, color-mix(in oklab, var(--showcase-accent) 15%, var(--background)), transparent 72%), var(--surface-1)}}.recommendation-card-logo:before,.recommendation-card-logo:after{border-color:var(--showcase-accent);width:3rem;height:3rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.recommendation-card-logo:before,.recommendation-card-logo:after{border-color:color-mix(in oklab, var(--showcase-accent) 48%, transparent)}}.recommendation-card-logo:before,.recommendation-card-logo:after{content:"";opacity:.5;border-style:solid}.recommendation-card-logo:before{border-width:var(--border-hairline) 0 0 var(--border-hairline);top:.75rem;left:.75rem}.recommendation-card-logo:after{border-width:0 var(--border-hairline) var(--border-hairline) 0;bottom:.75rem;right:.75rem}.recommendation-brand-mark{place-items:center;width:4.5rem;height:4.5rem;display:grid}.recommendation-brand-image{object-fit:contain;width:100%;height:100%;display:block}.recommendation-brand-mark[data-brand=infini]{width:5.5rem;height:2.5rem}.dark .recommendation-brand-mark[data-brand=okx] .recommendation-brand-image,.dark .recommendation-brand-mark[data-brand=infini] .recommendation-brand-image{filter:invert()}.recommendation-card-register,.product-showcase-index{color:var(--foreground);position:absolute}@supports (color:color-mix(in lab, red, red)){.recommendation-card-register,.product-showcase-index{color:color-mix(in oklab, var(--foreground) 48%, transparent)}}.recommendation-card-register,.product-showcase-index{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.08em;font-size:.5625rem}.recommendation-card-register{bottom:.625rem;right:.75rem}.recommendation-card-copy{flex-direction:column;justify-content:center;min-width:0;padding:1.125rem 1.25rem 1.25rem;display:flex}.showcase-card-category{color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.showcase-card-category{color:color-mix(in oklab, var(--showcase-accent) 74%, var(--foreground))}}.showcase-card-category{font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;font-size:.625rem}.showcase-card-title{letter-spacing:-.025em;margin-top:.5rem;font-size:1.125rem;font-weight:620;line-height:1.2}.showcase-card-title a{transition:color .16s var(--ease-swift)}.showcase-card-subtitle{color:var(--foreground);margin-top:.45rem;font-size:.8125rem;font-weight:510;line-height:1.45}.showcase-card-description{color:var(--gray-9,var(--muted-foreground));margin-top:.4rem;font-size:.75rem;line-height:1.55}.recommendation-logo-rail{grid-template-columns:repeat(5,minmax(0,1fr));gap:.375rem;margin-top:.5rem;display:grid}.recommendation-logo-rail-item{appearance:none;border:var(--border-hairline) solid var(--muted-foreground);place-items:center;height:2.75rem;padding:0;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.recommendation-logo-rail-item{border:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 26%, transparent)}}.recommendation-logo-rail-item{cursor:pointer;color:var(--muted-foreground);border-radius:.25rem}@supports (color:color-mix(in lab, red, red)){.recommendation-logo-rail-item{color:color-mix(in oklab, var(--muted-foreground) 66%, transparent)}}.recommendation-logo-rail-item{font:inherit;background:var(--background);transition:border-color .2s var(--ease-swift), color .2s var(--ease-swift), background-color .2s var(--ease-swift), transform .2s var(--ease-swift)}.recommendation-logo-rail-item[data-active=true]{border-color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.recommendation-logo-rail-item[data-active=true]{border-color:color-mix(in oklab, var(--showcase-accent) 58%, transparent)}}.recommendation-logo-rail-item[data-active=true]{color:var(--showcase-accent);background:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.recommendation-logo-rail-item[data-active=true]{background:color-mix(in oklab, var(--showcase-accent) 9%, var(--background))}}.recommendation-logo-rail-item[data-active=true]{transform:translateY(-1px)}.recommendation-logo-rail-item:focus-visible{outline:1px solid var(--focus-ring,#6b97ff);outline-offset:2px}.recommendation-logo-rail-item .recommendation-brand-mark{width:1.125rem;height:1.125rem}.recommendation-logo-rail-item .recommendation-brand-mark[data-brand=infini]{width:1.75rem;height:.75rem}.showcase-carousel-progress{background:var(--muted-foreground);height:1px;margin-top:.625rem;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.showcase-carousel-progress{background:color-mix(in oklab, var(--muted-foreground) 20%, transparent)}}.showcase-carousel-progress>span{transform-origin:0;background:var(--foreground);height:100%;display:block}@supports (color:color-mix(in lab, red, red)){.showcase-carousel-progress>span{background:color-mix(in oklab, var(--foreground) 62%, transparent)}}.showcase-carousel-progress>span{transition:transform .42s var(--ease-swift)}.showcase-disclaimer{color:var(--gray-8,var(--muted-foreground));margin-top:.5rem;font-size:.6875rem;line-height:1.45}.recommendation-directory{flex-direction:column;display:flex}.recommendation-directory-row{--showcase-accent:var(--signal);transition:color .16s var(--ease-swift)}.recommendation-directory-icon{color:var(--showcase-accent);background:var(--showcase-accent);border-radius:.5rem}@supports (color:color-mix(in lab, red, red)){.recommendation-directory-icon{background:color-mix(in oklab, var(--showcase-accent) 7%, var(--background))}}.recommendation-directory-brand-image{object-fit:contain;box-shadow:none;padding:.3rem}.recommendation-directory-icon[data-brand=infini] .recommendation-directory-brand-image{padding:.48rem .22rem}.dark .recommendation-directory-icon:is([data-brand=okx],[data-brand=infini]) .recommendation-directory-brand-image{filter:invert()}.recommendation-directory-category{color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.recommendation-directory-category{color:color-mix(in oklab, var(--showcase-accent) 65%, var(--muted-foreground))}}.recommendation-directory-category{font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.625rem}.recommendation-directory-copy{flex-direction:column;gap:.15rem;display:flex}.recommendation-directory-subtitle{color:var(--gray-10,var(--foreground));font-size:.8125rem;font-weight:510}.recommendation-directory-summary{color:var(--gray-8,var(--muted-foreground));-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;display:-webkit-box;overflow:hidden}.recommendation-directory-disclaimer{margin-top:.75rem}.product-showcase-grid{animation:showcase-page-enter .52s var(--ease-swift) both;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.product-showcase-card{flex-direction:column;min-width:0;display:flex}.product-showcase-media{aspect-ratio:16/10;border-bottom:var(--border-hairline) solid var(--muted-foreground);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.product-showcase-media{border-bottom:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 27%, transparent)}}.product-showcase-media{background:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.product-showcase-media{background:color-mix(in oklab, var(--showcase-accent) 10%, var(--background))}}.product-showcase-media img{object-fit:cover;transition:transform .42s var(--ease-swift)}.product-showcase-media[data-fit=contain] img{object-fit:contain;padding:1.125rem}.product-showcase-index{background:var(--background);padding:.125rem .25rem;bottom:.5rem;right:.625rem}@supports (color:color-mix(in lab, red, red)){.product-showcase-index{background:color-mix(in oklab, var(--background) 86%, transparent)}}.product-showcase-index{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.product-showcase-copy{flex-direction:column;min-height:8.4rem;padding:.875rem .9rem 1rem;display:flex}.product-showcase-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (hover:hover) and (pointer:fine){.recommendation-logo-rail-item:hover:not([data-active=true]){border-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.recommendation-logo-rail-item:hover:not([data-active=true]){border-color:color-mix(in oklab, var(--muted-foreground) 48%, transparent)}}.recommendation-logo-rail-item:hover:not([data-active=true]){color:var(--foreground);transform:translateY(-1px)}.showcase-card:hover{border-color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.showcase-card:hover{border-color:color-mix(in oklab, var(--showcase-accent) 58%, var(--border))}}.showcase-card:hover{box-shadow:var(--shadow-4);transform:translateY(-2px)}.showcase-card:hover .showcase-card-title a{color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.showcase-card:hover .showcase-card-title a{color:color-mix(in oklab, var(--showcase-accent) 68%, var(--foreground))}}.recommendation-directory-row:hover .project-name{color:var(--showcase-accent)}@supports (color:color-mix(in lab, red, red)){.recommendation-directory-row:hover .project-name{color:color-mix(in oklab, var(--showcase-accent) 68%, var(--foreground))}}.product-showcase-card:hover .product-showcase-media img{transform:scale(1.025)}}@keyframes showcase-card-enter{0%{opacity:0;filter:blur(1px);transform:translate(10px)}}@keyframes showcase-page-enter{0%{opacity:0;filter:blur(1px);transform:translateY(7px)}}@keyframes showcase-fade-enter{0%{opacity:.72}}@media (max-width:30rem){.recommendation-card{grid-template-columns:1fr}.recommendation-card-logo{border-right:0;border-bottom:var(--border-hairline) solid var(--muted-foreground);min-height:7.75rem}@supports (color:color-mix(in lab, red, red)){.recommendation-card-logo{border-bottom:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 28%, transparent)}}.recommendation-card-logo>.recommendation-brand-mark{width:3.5rem;height:3.5rem}.recommendation-card-logo>.recommendation-brand-mark[data-brand=infini]{width:4.5rem;height:2rem}.recommendation-card-copy{padding:1rem}.product-showcase-grid{grid-template-columns:1fr}.product-showcase-card{flex-direction:column;display:flex}.product-showcase-media{aspect-ratio:16/9;border-right:0;border-bottom:var(--border-hairline) solid var(--muted-foreground);width:100%;height:auto;min-height:0}@supports (color:color-mix(in lab, red, red)){.product-showcase-media{border-bottom:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 27%, transparent)}}.product-showcase-copy{min-height:0;padding:.875rem .9rem 1rem}.product-showcase-description{-webkit-line-clamp:4}}.experience-row{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:1rem;padding:.625rem 0;display:grid}.experience-details{flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0;display:flex}.experience-company,.experience-role{overflow-wrap:anywhere;min-width:0;max-width:100%}.experience-date{white-space:nowrap}.service-card{gap:.5rem}.service-card[data-starting-style]{transform:scale(.92)translateY(4px)}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.link-card,.link-card[data-starting-style],.link-card[data-ending-style],.service-card[data-starting-style]{opacity:1;transition:none;transform:none}}.service-card-glyph{color:var(--muted-foreground);flex-shrink:0;align-self:flex-start;margin-left:auto}.service-card-stat .service-card-glyph{align-self:center}.service-card-head{align-items:center;gap:.625rem;display:flex}.service-card-avatar{object-fit:cover;width:2.5rem;height:2.5rem;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px}.service-card-names{flex-direction:column;line-height:1.3;display:flex}.service-card-name{color:var(--foreground);font-size:.875rem;font-weight:var(--font-weight-medium)}.service-card-sub{color:var(--muted-foreground);font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.02em;font-size:.75rem}.service-card-bio{color:var(--foreground);white-space:pre-line;font-size:.875rem;line-height:1.5}.service-card-stat{border-top:var(--border-hairline) solid var(--border);color:var(--muted-foreground);font-family:var(--font-geist-mono), var(--font-frex-gb,ui-monospace), ui-monospace, monospace;letter-spacing:.02em;font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.125rem .25rem;margin-top:.125rem;padding-top:.5rem;font-size:.6875rem;display:flex}.service-card-stat>span{white-space:nowrap}.service-card-stat b{font-weight:var(--font-weight-medium);color:var(--foreground)}.x-profile-card{pointer-events:auto;-webkit-user-select:text;user-select:text;gap:.4375rem;width:min(18.5rem,100vw - 1.5rem);padding:.5rem .625rem}.x-profile-card .service-card-head{gap:.5rem}.x-profile-card .service-card-avatar{width:2rem;height:2rem}.x-profile-card .service-card-name{font-size:.8125rem}.x-profile-bio{color:var(--foreground);flex-direction:column;gap:.125rem;display:flex}@supports (color:color-mix(in lab, red, red)){.x-profile-bio{color:color-mix(in oklab, var(--foreground) 82%, var(--muted-foreground))}}.x-profile-bio{white-space:normal;font-size:.75rem;line-height:1.4}.x-profile-bio>span{display:block}.x-profile-wallet-link{color:var(--foreground);font-weight:var(--font-weight-medium);text-decoration:underline;-webkit-text-decoration-color:var(--foreground);-webkit-text-decoration-color:var(--foreground);-webkit-text-decoration-color:var(--foreground);text-decoration-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.x-profile-wallet-link{-webkit-text-decoration-color:color-mix(in oklab, var(--foreground) 35%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--foreground) 35%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--foreground) 35%, transparent);text-decoration-color:color-mix(in oklab, var(--foreground) 35%, transparent)}}.x-profile-wallet-link{text-underline-offset:.18em;transition:color .16s var(--ease-swift), text-decoration-color .16s var(--ease-swift)}.x-profile-wallet-link:hover,.x-profile-wallet-link:focus-visible{color:var(--signal);text-decoration-color:currentColor}.x-profile-motto{letter-spacing:-.01em;line-height:1.45}.x-profile-stats{flex-wrap:nowrap;justify-content:space-between;gap:0;padding-top:.375rem;display:flex}.x-profile-stats>.x-profile-stat{text-align:left;white-space:nowrap;flex:auto;justify-content:center;align-items:baseline;gap:.1875rem;min-width:0;padding-inline:.375rem;display:flex}.x-profile-stats>.x-profile-stat:first-child{padding-left:0}.x-profile-stats>.x-profile-stat:last-child{padding-right:0}.x-profile-stats>.x-profile-stat+.x-profile-stat{border-left:var(--border-hairline) solid var(--border)}.contrib-grid{gap:2px;display:flex}.contrib-col{flex-direction:column;gap:2px;display:flex}@keyframes contrib-cell-in{0%{opacity:0;transform:translateY(4px)scale(.92)}}.contrib-grid i{background:var(--foreground);border-radius:2px;width:7px;height:7px}@supports (color:color-mix(in lab, red, red)){.contrib-grid i{background:color-mix(in oklab, var(--foreground) 7%, transparent)}}.contrib-grid i{animation:contrib-cell-in .48s var(--ease-swift) backwards;animation-delay:calc(var(--ci,0) * 2ms)}.link-card.preview-card-instant .contrib-grid i{animation:none}.contrib-grid i[data-level="1"]{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.contrib-grid i[data-level="1"]{background:color-mix(in oklab, var(--foreground) 30%, transparent)}}.contrib-grid i[data-level="2"]{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.contrib-grid i[data-level="2"]{background:color-mix(in oklab, var(--foreground) 52%, transparent)}}.contrib-grid i[data-level="3"]{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.contrib-grid i[data-level="3"]{background:color-mix(in oklab, var(--foreground) 74%, transparent)}}.contrib-grid i[data-level="4"]{background:var(--foreground)}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.contrib-grid i{animation:none}}.blog-row{align-items:center;gap:.75rem;padding:.5rem 0;font-size:.9375rem;display:flex}.blog-row-date{letter-spacing:.01em;font-size:.8125rem}.print-pile{isolation:isolate;pointer-events:none;-webkit-user-select:none;user-select:none;flex:none;width:4rem;height:2.75rem;display:block;position:relative}.print-pile-sheet{background:var(--paper);box-shadow:0 0 0 1px var(--paper-ink);border-radius:3px;position:absolute;inset:1px}@supports (color:color-mix(in lab, red, red)){.print-pile-sheet{box-shadow:0 0 0 1px color-mix(in oklab, var(--paper-ink) 22%, transparent)}}.print-pile-sheet:first-child{opacity:.62;transform:translate(-2px,1px)rotate(-1.6deg)}.print-pile-sheet:nth-child(2){opacity:.82;transform:translate(2px,-1px)rotate(1.1deg)}.print-thumb{width:4rem;height:2.75rem;box-shadow:0 0 0 1px var(--border);border-radius:3px;flex-shrink:0;display:block;position:relative;overflow:hidden}.print-thumb-img{object-fit:cover;width:100%;height:100%}.print-thumb-empty{background:var(--muted)}.blog-row-title{min-width:0;color:var(--gray-11,var(--foreground));font-weight:var(--font-weight-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:39.99rem){.blog-row-title{-webkit-line-clamp:2;line-clamp:2;white-space:normal;text-wrap:balance;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}}.blog-row-leader{background:radial-gradient(circle, var(--muted-foreground) .5px, transparent .5px) 0 0 / 6px 1px repeat-x;flex:1;align-self:center;min-width:1.5rem;height:1px}@supports (color:color-mix(in lab, red, red)){.blog-row-leader{background:radial-gradient(circle, color-mix(in oklab, var(--muted-foreground) 41%, transparent) .5px, transparent .5px) 0 0 / 6px 1px repeat-x}}.btn-cta{background:var(--foreground);height:2.25rem;color:var(--background);font-size:.875rem;font-weight:var(--font-weight-medium);touch-action:manipulation;border-radius:999px;outline:none;justify-content:center;align-items:center;padding-inline:1.125rem;transition:transform .1s,background-color .15s;display:inline-flex;position:relative}.btn-cta:before{content:"";inset-inline:0;height:2.75rem;position:absolute;top:50%;transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.btn-cta:hover{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.btn-cta:hover{background:color-mix(in oklab, var(--foreground) 90%, var(--background))}}}.btn-cta:active{transform:scale(.97)}.btn-cta:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 3px var(--focus-ring,var(--foreground))}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.btn-cta{transition:none}.btn-cta:active{transform:none}}.locale-suggestion-positioner{z-index:var(--z-toast);top:env(safe-area-inset-top);pointer-events:none;width:100%;position:fixed;left:0}.locale-suggestion-positioner:before,.locale-suggestion-positioner:after{content:"";z-index:1;background:var(--muted-foreground);opacity:.52;pointer-events:none;position:absolute;left:50%}.locale-suggestion-positioner:before{width:var(--border-hairline);height:.625rem;bottom:-.3125rem}.locale-suggestion-positioner:after{width:.5625rem;height:var(--border-hairline);bottom:-.0625rem;transform:translate(-50%)}.locale-suggestion{isolation:isolate;border-bottom:var(--border-hairline) solid var(--border);background:var(--surface-2);pointer-events:auto;width:100%;animation:locale-suggestion-enter .15s var(--ease-swift) backwards;position:relative}.locale-suggestion-inner{border-right:var(--border-hairline) solid var(--border);border-left:var(--border-hairline) solid var(--border);grid-template-columns:.75rem 3rem minmax(0,1fr) auto .75rem;align-items:center;width:min(37.5rem,100vw - 1rem);min-height:2.75rem;margin:0 auto;display:grid}.locale-suggestion-screw{background:var(--surface-1);width:.5rem;height:.5rem;box-shadow:0 0 0 var(--border-hairline) var(--border), inset .0625rem .0625rem 0 #ffffff61;border-radius:50%;justify-self:center;position:relative}@supports (color:lab(0% 0 0)){.locale-suggestion-screw{box-shadow:0 0 0 var(--border-hairline) var(--border), inset .0625rem .0625rem 0 lab(100% -.0000298023 .0000119209/.38)}}.locale-suggestion-screw:after{content:"";width:.3125rem;height:var(--border-hairline);background:var(--muted-foreground);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-42deg)}.locale-suggestion-hatch{border-right:var(--border-hairline) solid var(--border);background:repeating-linear-gradient(-45deg, var(--muted-foreground) 0, var(--muted-foreground) 1px, transparent 1px, transparent 3.5px);align-self:stretch}@supports (color:color-mix(in lab, red, red)){.locale-suggestion-hatch{background:repeating-linear-gradient(-45deg, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 0, color-mix(in oklab, var(--muted-foreground) 55%, transparent) 1px, transparent 1px, transparent 3.5px)}}.locale-suggestion-hatch{-webkit-user-select:none;user-select:none}.locale-suggestion-copy{letter-spacing:-.011em;text-wrap:balance;min-width:0;margin:0;padding:.625rem .875rem;font-size:.8125rem;line-height:1.4}.locale-suggestion-actions{border-left:var(--border-hairline) solid var(--border);flex-shrink:0;justify-content:flex-end;align-self:stretch;align-items:center;gap:1rem;padding:.625rem;display:flex}@keyframes locale-suggestion-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:39.999rem){.locale-suggestion-inner{grid-template-columns:.625rem 2.625rem minmax(0,1fr) auto .625rem}.locale-suggestion-copy{padding-inline:.625rem}.locale-suggestion-actions{padding-inline:.375rem}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.locale-suggestion,.locale-suggestion :where(a,button,[aria-hidden]){transition:none;animation:none}.locale-suggestion :is(a,button):active>[aria-hidden]{transform:none}}[data-en],html[data-locale=en] [data-zh]{display:none}html[data-locale=en] [data-en]{display:inline}.locale-toggle{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.875rem;transition:color .15s}@media (hover:hover) and (pointer:fine){.locale-toggle:hover{color:var(--foreground)}}.locale-toggle:active{transform:scale(.97)}.post-minimap-root{--post-minimap-width:15rem}.post-minimap-backdrop{display:none}.post-minimap-island{display:contents}.post-minimap{z-index:var(--z-nav);width:var(--post-minimap-width);max-height:calc(100dvh - 9.5rem);color:var(--muted-foreground);opacity:0;visibility:hidden;overscroll-behavior-y:contain;scrollbar-width:none;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;padding:0 .5rem 1rem 0;transition:opacity .2s;display:flex;position:fixed;top:8rem;left:1.5rem;overflow-y:auto}.post-minimap::-webkit-scrollbar{display:none}.post-minimap-root[data-open] .post-minimap{opacity:1;visibility:visible;pointer-events:auto}@media (min-width:40rem) and (max-width:63.99rem){.post-minimap-backdrop{z-index:90;background:radial-gradient(ellipse 115% 80% at 0 50%, var(--background) 0 58%, transparent 100%);width:19rem;display:block;position:fixed;inset:0 auto 0 0}@supports (color:color-mix(in lab, red, red)){.post-minimap-backdrop{background:radial-gradient(ellipse 115% 80% at 0 50%, color-mix(in oklab, var(--background) 68%, transparent) 0 58%, transparent 100%)}}.post-minimap-backdrop{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s var(--ease-swift), visibility 0s linear .18s;-webkit-mask-image:radial-gradient(115% 80% at 0,#000 0 58%,#0000 100%);mask-image:radial-gradient(115% 80% at 0,#000 0 58%,#0000 100%)}.post-minimap-root[data-open] .post-minimap-backdrop{opacity:1;visibility:visible;transition:opacity .18s var(--ease-swift), visibility 0s}}@media (min-width:64rem){.post-minimap{transition:opacity 1ms linear .279s,visibility 1ms linear .279s}.post-minimap-root[data-open] .post-minimap{transition:opacity .2s var(--ease-swift)}}.post-minimap-nodes{flex-direction:column;gap:.5rem;padding-top:.5rem;display:flex}.post-minimap-clip{display:contents}.post-minimap-phone-surface{display:none}.post-minimap-utilities{z-index:1;flex:none;justify-content:flex-start;align-items:center;gap:.75rem;min-height:2.75rem;padding-right:.5rem;display:flex;position:relative}.post-minimap-utilities-top{margin-bottom:1.25rem}.post-minimap-utilities-bottom{justify-content:flex-end;margin-top:1.25rem}.post-minimap-utility{min-width:2.75rem;min-height:2.75rem;color:var(--muted-foreground);align-items:center;gap:.375rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.post-minimap-utility{color:color-mix(in oklab, var(--muted-foreground) 82%, transparent)}}.post-minimap-utility{white-space:nowrap;touch-action:manipulation;outline:none;font-size:.8125rem;line-height:1;transition:color .15s,opacity .15s}.post-minimap-utility:after{content:"";border-radius:.375rem;position:absolute;inset:0 -.5rem}.post-minimap-utility:focus-visible:after{outline:1px solid var(--focus-ring);outline-offset:-2px}.post-minimap-back-to-top{opacity:0;visibility:hidden;pointer-events:none;justify-content:flex-end}.post-minimap-back-to-top[data-visible]{opacity:1;visibility:visible;pointer-events:auto}@media (min-width:40rem){.post-minimap-utilities-bottom,.post-minimap-back-to-top{justify-content:flex-start}}.post-minimap-node{opacity:1;flex:none;align-items:center;height:1px;display:flex;transform:none}.post-minimap-root:not([data-open]) .post-minimap-node{opacity:0;transform:translateY(12px)rotate(-2deg)}.post-minimap-node[data-kind=landmark]{align-items:center;height:1px;min-height:0}.post-minimap-node>a{width:100%;min-width:0;height:1px;min-height:0;color:var(--muted-foreground);align-items:flex-start;gap:.5rem;font-size:.875rem;line-height:1rem;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.post-minimap-node>a{color:color-mix(in oklab, var(--muted-foreground) 76%, transparent)}}.post-minimap-node>a{outline:none;transition:color .15s}.post-minimap-node>a:after{content:"";border-radius:.375rem;position:absolute;inset:-.875rem 0}.post-minimap-node>a:focus-visible:after{outline:1px solid var(--focus-ring);outline-offset:-2px}.post-minimap-tick{background:var(--muted-foreground);flex:none;width:1.25rem;height:1px;display:block}@supports (color:color-mix(in lab, red, red)){.post-minimap-tick{background:color-mix(in oklab, var(--muted-foreground) 55%, transparent)}}.post-minimap-tick{transform-origin:0;transition:transform .15s,background-color .15s}.post-minimap-node>.post-minimap-tick{opacity:.55}.post-minimap-label{white-space:normal;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:flex-start;max-width:11rem;height:auto;max-height:2rem;line-height:1rem;transition:transform .15s;display:-webkit-box;position:relative;top:-.5rem;overflow:hidden;transform:translate(0)}.post-minimap-node>a[data-variant=title]{font-weight:var(--font-weight-medium)}.post-minimap-node>a[aria-current=location]{color:var(--foreground)}.post-minimap-node>a[aria-current=location] .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-node>a[aria-current=location] .post-minimap-label,.post-minimap-node>a:focus-visible .post-minimap-label{transform:translate(.5rem)}.post-minimap-node>a:focus-visible{color:var(--foreground)}.post-minimap-node>a:focus-visible .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-toggle{z-index:var(--z-nav);width:2.75rem;height:2.75rem;color:var(--muted-foreground);justify-content:center;align-items:center;transition:color .15s;display:flex;position:fixed;top:4.875rem;left:.625rem}.post-minimap-toggle-icon{width:.75rem;height:.75rem;display:block}.post-minimap-progress,.post-minimap-toggle-label,.post-minimap-island-chevron{display:none}.post-minimap-progress{flex:none;overflow:visible;transform:rotate(-90deg)}.post-minimap-progress-track,.post-minimap-progress-value{fill:none;stroke-width:1.5px;stroke-linecap:round}.post-minimap-progress-track{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.post-minimap-progress-track{stroke:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.post-minimap-progress-value{stroke:currentColor}@media (min-width:64rem){.post-minimap-progress{width:1.5rem;height:1.5rem;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.post-minimap-toggle-icon{z-index:1;position:relative}}.post-minimap-toggle-panel{transform-origin:3.75px 6px;transition:opacity .15s ease, transform .2s var(--ease-swift)}.post-minimap-toggle-chevron{transform-origin:7.5px 6px;transition:transform .2s var(--ease-swift);transform:scaleX(-1)}.post-minimap-root[data-open] .post-minimap-toggle-chevron{transform:scaleX(1)}.post-minimap-root:not([data-open]) .post-minimap-toggle-panel{opacity:.55;transform:scaleY(.72)}@media (hover:hover) and (pointer:fine){.post-minimap-node>a:hover,.post-minimap-toggle:hover,.post-minimap-utility:hover{color:var(--foreground)}.post-minimap-node>a:hover .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-node>a:hover .post-minimap-label{transform:translate(.5rem)}}@media (max-width:39.99rem){.post-minimap-island{top:max(1.5rem, env(safe-area-inset-top));z-index:var(--z-nav);width:min(18.75rem,100vw - 2rem);max-height:calc(100dvh - 7.5rem - env(safe-area-inset-bottom));color:var(--muted-foreground);background:var(--popover);flex-direction:column;display:flex;position:fixed;left:50%;overflow:visible}@supports (color:color-mix(in lab, red, red)){.post-minimap-island{background:color-mix(in oklab, var(--popover) 88%, transparent)}}.post-minimap-island{box-shadow:0 0 0 var(--border-hairline) var(--foreground), 0 8px 24px -12px #00000052;border-radius:1.375rem}@supports (color:color-mix(in lab, red, red)){.post-minimap-island{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab, var(--foreground) 12%, transparent), 0 8px 24px -12px #00000052}}.post-minimap-island{isolation:isolate;opacity:0;pointer-events:none;transform:translate(-50%,-1rem)scale(.96)}.post-minimap-root[data-island-visible] .post-minimap-island{opacity:1;pointer-events:auto;transform:translate(-50%)scale(1)}.post-minimap{z-index:1;width:100%;max-height:calc(100dvh - 10.25rem - env(safe-area-inset-bottom));box-shadow:0 0 0 var(--border-hairline) var(--foreground), 0 16px 40px -18px #0000006b;border-radius:1rem;flex-direction:column;padding:2.75rem 1rem 0;display:flex;position:absolute;top:0;left:0}@supports (color:color-mix(in lab, red, red)){.post-minimap{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab, var(--foreground) 14%, transparent), 0 16px 40px -18px #0000006b}}.post-minimap{opacity:0;visibility:hidden;pointer-events:none;transform-origin:top;transition:visibility 1ms linear .28s;overflow:hidden;transform:translateY(-.75rem)scale(.96)}.post-minimap-root[data-open] .post-minimap{opacity:1;visibility:visible;pointer-events:auto;transition:visibility 1ms linear;transform:none}.post-minimap-phone-surface{z-index:0;background:var(--popover);border-radius:1rem;display:block;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.post-minimap-phone-surface{background:color-mix(in oklab, var(--popover) 94%, transparent)}}.post-minimap-phone-surface{pointer-events:none}.post-minimap-root:not([data-open]) .post-minimap-node{filter:blur(2px)}.post-minimap-clip{z-index:1;flex:1;min-height:0;display:block;position:relative;overflow:hidden}.post-minimap-root[data-open] .post-minimap-clip{overscroll-behavior-y:contain;scrollbar-width:none;overflow-y:auto}.post-minimap-clip::-webkit-scrollbar{display:none}.post-minimap-nodes{padding-bottom:1rem}.post-minimap-utilities{margin:0;padding-inline:.25rem}.post-minimap-utilities-top{display:none}.post-minimap-utilities-bottom{padding-bottom:.5rem}.post-minimap-toggle{z-index:2;width:100%;height:2.75rem;color:var(--foreground);touch-action:manipulation;flex:none;justify-content:flex-start;gap:.5rem;padding:0 .75rem;position:relative;top:auto;left:auto;transform:none}.post-minimap-toggle-icon{display:none}.post-minimap-progress{width:1.25rem;height:1.25rem;display:block}.post-minimap-toggle-label{min-width:0;font-size:.875rem;font-weight:var(--font-weight-medium);text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;line-height:1rem;display:block;overflow:hidden}.post-minimap-island-chevron{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;transform-origin:50%;width:.75rem;height:.75rem;transition:transform .26s var(--ease-swift);flex:none;display:block}.post-minimap-root[data-open] .post-minimap-island-chevron{transition-duration:.28s;transform:rotate(180deg)}}@media (any-pointer:coarse){.post-minimap-nodes{gap:.625rem;padding-block:1.34375rem}.post-minimap-node>a{touch-action:manipulation}.post-minimap-node>a:after{inset-block:-1.34375rem}}.post-minimap-root[data-toggle-motion=instant] .post-minimap-backdrop,.post-minimap-root[data-toggle-motion=instant] .post-minimap,.post-minimap-root[data-toggle-motion=instant] .post-minimap-toggle-panel,.post-minimap-root[data-toggle-motion=instant] .post-minimap-toggle-chevron,.post-minimap-root[data-toggle-motion=instant] .post-minimap-island-chevron,.post-minimap-root[data-toggle-motion=instant] .post-minimap-node>a,.post-minimap-root[data-toggle-motion=instant] .post-minimap-tick,.post-minimap-root[data-toggle-motion=instant] .post-minimap-label,.post-minimap-root[data-scroll-motion=instant] .post-minimap-back-to-top{transition:none}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.post-minimap-backdrop,.post-minimap,.post-minimap-node>a,.post-minimap-tick,.post-minimap-label,.post-minimap-island,.post-minimap-toggle,.post-minimap-toggle-panel,.post-minimap-toggle-chevron,.post-minimap-island-chevron,.post-minimap-utility{transition:none}}.prose h2,.prose h3{scroll-margin-top:4.5rem}.footer-tree ul{flex-direction:column;display:flex}.footer-label{font-size:.875rem;font-weight:var(--font-weight-medium);letter-spacing:-.011em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.375rem}@supports (color:color-mix(in lab, red, red)){.footer-label{color:color-mix(in oklab, var(--muted-foreground) 75%, transparent)}}.footer-label{-webkit-user-select:none;user-select:none}.footer-tree li{align-items:center;min-height:1.75rem;padding-left:1.125rem;display:flex;position:relative}.footer-tree li:before{content:"";background:var(--muted-foreground);width:1px;position:absolute;top:0;bottom:0;left:0}@supports (color:color-mix(in lab, red, red)){.footer-tree li:before{background:color-mix(in oklab, var(--muted-foreground) 22%, transparent)}}.footer-tree li:last-child:before{height:50%;bottom:auto}.footer-tree li:after{content:"";background:var(--muted-foreground);width:.625rem;height:1px;position:absolute;top:50%;left:0}@supports (color:color-mix(in lab, red, red)){.footer-tree li:after{background:color-mix(in oklab, var(--muted-foreground) 22%, transparent)}}.footer-tree li>*{flex:1;min-width:0}@media (max-width:39.99rem){.footer-tree li>*{flex:0 auto}}.footer-tree-link{transition:color .15s}@media (hover:hover) and (pointer:fine){.footer-tree-link:hover{color:var(--foreground)}}.footer-colophon{text-align:left;letter-spacing:-.011em;color:var(--muted-foreground);grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;align-items:center;gap:1.5rem;font-size:.875rem;display:grid}@supports (color:color-mix(in lab, red, red)){.footer-colophon{color:color-mix(in oklab, var(--muted-foreground) 85%, transparent)}}.footer-colophon{font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.footer-colophon .footer-local-time{justify-self:end}@media (min-width:40rem){.footer-colophon{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.625rem;display:flex}.footer-colophon .footer-local-time{justify-self:auto}}.footer-local-time{min-height:1.375rem;color:var(--muted-foreground);align-items:center;gap:.5rem;display:flex}@supports (color:color-mix(in lab, red, red)){.footer-local-time{color:color-mix(in oklab, var(--muted-foreground) 88%, transparent)}}.footer-local-time{font-variant-numeric:tabular-nums;letter-spacing:-.011em;text-align:left;font-size:.875rem;line-height:1}.footer-local-clock{fill:none;stroke:currentColor;flex:none;width:1.375rem;height:1.375rem;overflow:visible}.footer-clock-ring,.footer-clock-ticks{opacity:.28;stroke-width:1px}.footer-clock-ticks,.footer-clock-hour,.footer-clock-minute,.footer-clock-second{stroke-linecap:round}.footer-clock-hour{opacity:.78;stroke-width:1.6px}.footer-clock-minute{opacity:.72;stroke-width:1.2px}.footer-clock-second{opacity:.42;stroke-width:.75px}.footer-clock-pin{fill:currentColor;stroke:none}.footer-time-readout{flex-direction:column;gap:.125rem;display:flex}.footer-time-readout>span{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.footer-time-readout>span{color:color-mix(in oklab, var(--muted-foreground) 72%, transparent)}}.footer-time-readout>span{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.08em;font-size:.75rem}.footer-time-readout time{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.footer-time-readout time{color:color-mix(in oklab, var(--muted-foreground) 90%, transparent)}}.footer-time-readout time{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.02em;white-space:nowrap;min-width:8ch;font-size:.75rem;display:block}.dock{z-index:var(--z-nav);background:var(--background);border-radius:999px;align-items:center;gap:.25rem;height:3.5rem;padding:.375rem;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.dock{background:color-mix(in oklab, var(--background) 68%, transparent)}}.dock{box-shadow:0 0 0 1px var(--border), var(--shadow-medium)}@media (max-width:39.99rem){.dock{bottom:max(.5rem, env(safe-area-inset-bottom,0px))}}.liquid-glass{border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #fff3,inset 0 -1px #ffffff0f}.dock-item{width:2.75rem;height:2.75rem;color:var(--muted-foreground);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:relative}@media (hover:hover) and (pointer:fine){.dock-item:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dock-item:hover{background:color-mix(in oklab, var(--foreground) 6%, transparent)}}}.dock-item:active{transform:scale(.97)}.dock-item[data-active]{color:var(--foreground)}.dock-active-indicator{--dock-indicator-x:0px;z-index:1;background:var(--foreground);opacity:0;pointer-events:none;width:4px;height:4px;transform:translate3d(calc(var(--dock-indicator-x) - 50%), 0, 0);transition:transform .22s var(--ease-swift), opacity .12s ease;will-change:transform;border-radius:999px;position:absolute;bottom:8px;left:0}.dock-active-indicator[data-ready]{opacity:1}.dock-active-indicator[data-instant]{transition:none}.dock-avatar{width:1.625rem;height:1.625rem;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px;display:block;overflow:hidden}.dock-avatar img{object-fit:cover;width:100%;height:100%}.dock-rule{background:var(--foreground);width:1px;height:1.125rem;margin:0 .125rem;position:relative}@supports (color:color-mix(in lab, red, red)){.dock-rule{background:color-mix(in oklab, var(--foreground) 16%, transparent)}}.dock-tip{border-radius:calc(var(--radius) * .6);background:var(--popover);box-shadow:0 0 0 1px var(--border), var(--shadow-tooltip);white-space:nowrap;color:var(--foreground);opacity:0;pointer-events:none;transition:opacity .15s var(--ease-swift), transform .15s var(--ease-swift);align-items:center;gap:.375rem;padding:.25rem .375rem .25rem .5rem;font-size:.875rem;display:inline-flex;position:absolute;bottom:calc(100% + .625rem);left:50%;transform:translate(-50%)scale(.95)}.dock-tip-label{min-width:0}.dock-tip-keys{align-items:center;gap:.1875rem;display:inline-flex}.dock-tip-key{border:1px solid var(--foreground);justify-content:center;align-items:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.dock-tip-key{border:1px solid color-mix(in oklab, var(--foreground) 18%, transparent)}}.dock-tip-key{background:var(--border);color:var(--muted-foreground);font-variant-numeric:tabular-nums;border-radius:.25rem;font-family:inherit;font-size:.6875rem;font-weight:500;line-height:1}@media (hover:hover) and (pointer:fine){.dock-item:hover .dock-tip{opacity:1;transform:translate(-50%)scale(1)}}.dock-item:focus-visible .dock-tip{opacity:1;transform:translate(-50%)scale(1)}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.dock-tip,.dock-item,.dock-active-indicator{transition:none}}.prefs-panel{flex-direction:column;gap:.25rem;padding:.5rem;display:flex}.prefs-row{justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.prefs-row-label{color:var(--muted-foreground);-webkit-user-select:none;user-select:none;font-size:.875rem}.prefs-panel [data-tabs-indicator=selected]{display:none}@media (hover:hover) and (pointer:fine){.prefs-panel [role=tab]{min-width:2.5rem;height:2rem}}.prefs-panel [role=tab][aria-selected=true]{background:var(--foreground);border-radius:999px}.prefs-panel [role=tab][aria-selected=true] svg,.prefs-panel [role=tab][aria-selected=true] [data-tab-label]{color:var(--background)!important}.nav-cards{border-top:var(--border-hairline) solid var(--border);border-bottom:var(--border-hairline) solid var(--border);grid-template-columns:repeat(3,1fr);margin-top:3.5rem;margin-left:-1.5rem;margin-right:-1.5rem;display:grid}.nav-card{flex-direction:column;align-items:center;gap:.25rem;padding:1.5rem .75rem 1.25rem;display:flex}.nav-card+.nav-card{border-left:var(--border-hairline) solid var(--border)}.nav-card:active{transform:scale(.985)}.nc-vignette{place-items:center;width:100%;height:3.5rem;margin-bottom:.375rem;display:grid;position:relative}.nc-sheets span{width:2.375rem;height:2.875rem;transition:transform .3s var(--ease-spring);background:repeating-linear-gradient(to bottom, transparent 0 7px, var(--paper-ink) 7px 7.5px) 50% 60% / 70% 60% no-repeat, var(--paper);position:absolute}@supports (color:color-mix(in lab, red, red)){.nc-sheets span{background:repeating-linear-gradient(to bottom, transparent 0 7px, color-mix(in oklab, var(--paper-ink) 35%, transparent) 7px 7.5px) 50% 60% / 70% 60% no-repeat, var(--paper)}}.nc-sheets span{box-shadow:0 0 0 1px #00000014,0 1px 2px #0000001f}.nc-sheets span:first-child{transform:rotate(-7deg)translate(-9px)}.nc-sheets span:nth-child(2){transform:rotate(4deg)translate(9px)}.nc-sheets span:nth-child(3){transform:rotate(-1deg)translateY(-2px)}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-sheets span:first-child{transform:rotate(-13deg)translate(-16px)translateY(-2px)}.nav-card:hover .nc-sheets span:nth-child(2){transform:rotate(9deg)translate(16px)translateY(-1px)}.nav-card:hover .nc-sheets span:nth-child(3){transform:rotate(-2deg)translateY(-5px)}}.nc-recommendation-logo{border:var(--border-hairline) solid var(--nav-accent);place-items:center;width:2.5rem;height:2.5rem;padding:.45rem;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.nc-recommendation-logo{border:var(--border-hairline) solid color-mix(in oklab, var(--nav-accent) 38%, var(--border))}}.nc-recommendation-logo{background:linear-gradient(145deg, var(--nav-accent), var(--background) 72%);border-radius:.45rem}@supports (color:color-mix(in lab, red, red)){.nc-recommendation-logo{background:linear-gradient(145deg, color-mix(in oklab, var(--nav-accent) 11%, var(--background)), var(--background) 72%)}}.nc-recommendation-logo{box-shadow:var(--shadow-2);transform:rotate(calc(var(--i) * 8deg - 8deg)) translateX(calc(var(--i) * 1.25rem - 1.25rem));transition:transform .3s var(--ease-spring)}.nc-recommendation-logo img{object-fit:contain;width:100%;height:100%}.dark .nc-recommendation-logo[data-brand=okx] img{filter:invert()}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-recommendation-logo{transform:rotate(calc(var(--i) * 13deg - 13deg)) translateX(calc(var(--i) * 1.75rem - 1.75rem)) translateY(-2px)}}.nc-project-icon{isolation:isolate;border:var(--border-hairline) solid var(--foreground);width:3.25rem;height:3.25rem;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab, red, red)){.nc-project-icon{border:var(--border-hairline) solid color-mix(in oklab, var(--foreground) 20%, var(--border))}}.nc-project-icon{background:var(--foreground);border-radius:.75rem}@supports (color:color-mix(in lab, red, red)){.nc-project-icon{background:color-mix(in oklab, var(--foreground) 4%, var(--background))}}.nc-project-icon{box-shadow:var(--shadow-3);transition:transform .3s var(--ease-spring)}@media (max-width:39.99rem){.nav-card{gap:.125rem;min-width:0;padding:1.25rem .375rem 1rem}.nc-vignette{min-width:0;max-width:100%;height:3.25rem;margin-bottom:.25rem}}.nc-construction-guides{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.nc-guide-solid{stroke:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.nc-guide-solid{stroke:color-mix(in oklab, var(--foreground) 25%, transparent)}}.nc-guide-solid{stroke-width:.65px;vector-effect:non-scaling-stroke}.nc-project-mark{z-index:2;width:30px;height:30px;color:var(--foreground);position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.nc-project-mark{color:color-mix(in oklab, var(--foreground) 84%, var(--muted-foreground))}}.nc-project-mark{overflow:visible;transform:translate(-50%,-50%)}.nc-explode-a,.nc-explode-b,.nc-explode-c{transform-box:fill-box;transform-origin:50%;transition:transform .3s var(--ease-spring)}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-project-icon{transform:translate(-50%,calc(-50% - 2px))}.nav-card:hover .nc-explode-a{transform:translate(1.5px,-1.5px)rotate(3deg)}.nav-card:hover .nc-explode-b{transform:translate(-2.5px,-2px)rotate(-6deg)}.nav-card:hover .nc-explode-c{transform:translate(2px,2.5px)rotate(5deg)}}.nc-label{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground)}.nc-sub{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.875rem}@media (max-width:39.99rem){.nc-label{font-size:.8125rem;line-height:1.25}.nc-sub{white-space:nowrap;font-size:.75rem;line-height:1.25}}@media (prefers-reduced-motion:reduce) and (prefers-reduced-motion:no-preference){.nc-sheets span,.nc-recommendation-logo,.nc-project-icon,.nc-explode-a,.nc-explode-b,.nc-explode-c{transition:none}.nav-card:hover .nc-project-icon{transform:translate(-50%,-50%)}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.social-media-marquee[data-playing=true] .social-media-row[data-direction=left] .social-media-track{animation:56s linear infinite social-media-scroll-left!important}.social-media-marquee[data-playing=true] .social-media-row[data-direction=right] .social-media-track{animation:62s linear infinite social-media-scroll-right!important}}.dialog-glass{background:var(--surface-5)}@supports (color:color-mix(in lab, red, red)){.dialog-glass{background:color-mix(in oklab, var(--surface-5) 82%, transparent)}}.dialog-glass{-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dialog-glass{background:var(--surface-5)}}.section-tag-hatch:first-child{border-left:var(--border-hairline) solid var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.section-tag-hatch:first-child{border-left:var(--border-hairline) solid color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}@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-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-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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
