/*! tailwindcss v4.0.12 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:system-ui,-apple-system,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans CJK SC",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--radius-xs:.25rem;--radius-sm:.5rem;--radius-lg:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-font-feature-settings:var(--font-sans--font-feature-settings);--default-font-variation-settings:var(--font-sans--font-variation-settings);--default-mono-font-family:var(--font-mono);--default-mono-font-feature-settings:var(--font-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-mono--font-variation-settings);--font-code:"MapleMono","SFMono-Regular","Cascadia Code",monospace;--text-title-lg:1.375rem;--text-title:1.0625rem;--text-body:1.0625rem;--text-label:.875rem;--ease-emphasized:cubic-bezier(.2,0,0,1);--ease-standard:cubic-bezier(.2,0,0,1);--ease-spring:cubic-bezier(.34,1.56,.64,1)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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}body{line-height:inherit}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{-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1;color:color-mix(in oklab,currentColor 50%,transparent)}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{-webkit-text-size-adjust:100%;background:var(--surface)}@media (prefers-reduced-motion:no-preference){html:has(:target){scroll-behavior:smooth}}body{color:var(--on-surface);font-family:var(--font-sans);font-size:var(--text-body);background:0 0;line-height:1.7}body:after,body:before{content:"";pointer-events:none;position:fixed;inset:0}body:before{z-index:-2;filter:blur(var(--backdrop-blur))saturate(1.05);background:url(/background.jpg) 50%/cover no-repeat;transform:scale(1.08)}body:after{z-index:-1;background:var(--backdrop-scrim)}h1,h2,h3,h4{letter-spacing:-.01em;text-wrap:balance;line-height:1.25}a{color:inherit}:focus-visible{outline:3px solid var(--primary);outline-offset:2px}::selection{background:var(--primary-container);color:var(--on-primary-container)}code,kbd,pre,samp{font-family:var(--font-code);font-variant-ligatures:none}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--outline-variant);border:3px solid var(--surface);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--outline)}}@layer components{.elevation-0{box-shadow:none}.elevation-1{box-shadow:var(--elevation-1)}.elevation-2{box-shadow:var(--elevation-2)}.elevation-3{box-shadow:var(--elevation-3)}.state-layer{isolation:isolate;position:relative}.state-layer:after{content:"";z-index:-1;border-radius:inherit;opacity:0;transition:opacity .2s var(--ease-standard);pointer-events:none;background:currentColor;position:absolute;inset:0}.state-layer:hover:after{opacity:.08}.state-layer:focus-visible:after{opacity:.1}.state-layer:active:after{opacity:.12}.glass{background:color-mix(in srgb,var(--surface)68%,transparent);-webkit-backdrop-filter:blur(22px)saturate(1.5)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background:color-mix(in srgb,var(--surface)94%,transparent)}}.card-lift{transition:box-shadow .35s var(--ease-emphasized),transform .35s var(--ease-spring),background-color .3s var(--ease-standard)}.card-lift:focus-within,.card-lift:hover{box-shadow:var(--elevation-2);transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.card-lift:focus-within,.card-lift:hover{transform:none}}.marquee{-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.marquee-track{animation:marquee 38s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}}@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-2{top:calc(var(--spacing)*2)}.top-16{top:calc(var(--spacing)*16)}.top-20{top:calc(var(--spacing)*20)}.right-2{right:calc(var(--spacing)*2)}.right-5{right:calc(var(--spacing)*5)}.bottom-5{bottom:calc(var(--spacing)*5)}.left-0{left:calc(var(--spacing)*0)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.-mx-3{margin-inline:calc(var(--spacing)*-3)}.mx-auto{margin-inline:auto}.prose{color:var(--tw-prose-body);--tw-prose-body:oklch(.373 .034 259.733);--tw-prose-headings:oklch(.21 .034 264.665);--tw-prose-lead:oklch(.446 .03 256.802);--tw-prose-links:oklch(.21 .034 264.665);--tw-prose-bold:oklch(.21 .034 264.665);--tw-prose-counters:oklch(.551 .027 264.364);--tw-prose-bullets:oklch(.872 .01 258.338);--tw-prose-hr:oklch(.928 .006 264.531);--tw-prose-quotes:oklch(.21 .034 264.665);--tw-prose-quote-borders:oklch(.928 .006 264.531);--tw-prose-captions:oklch(.551 .027 264.364);--tw-prose-kbd:oklch(.21 .034 264.665);--tw-prose-kbd-shadows:NaN NaN NaN;--tw-prose-code:oklch(.21 .034 264.665);--tw-prose-pre-code:oklch(.928 .006 264.531);--tw-prose-pre-bg:oklch(.278 .033 256.848);--tw-prose-th-borders:oklch(.872 .01 258.338);--tw-prose-td-borders:oklch(.928 .006 264.531);--tw-prose-invert-body:oklch(.872 .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(.707 .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(.707 .022 261.325);--tw-prose-invert-bullets:oklch(.446 .03 256.802);--tw-prose-invert-hr:oklch(.373 .034 259.733);--tw-prose-invert-quotes:oklch(.967 .003 264.542);--tw-prose-invert-quote-borders:oklch(.373 .034 259.733);--tw-prose-invert-captions:oklch(.707 .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(.872 .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(.446 .03 256.802);--tw-prose-invert-td-borders:oklch(.373 .034 259.733);max-width:65ch;font-size:1rem;line-height:1.75}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-1{margin-top:calc(var(--spacing)*1)}.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-7{margin-top:calc(var(--spacing)*7)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-20{margin-top:calc(var(--spacing)*20)}.mt-auto{margin-top:auto}.mb-5{margin-bottom:calc(var(--spacing)*5)}.-ml-3{margin-left:calc(var(--spacing)*-3)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-3{margin-left:calc(var(--spacing)*3)}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-3,.line-clamp-4{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-14{width:calc(var(--spacing)*14);height:calc(var(--spacing)*14)}.h-1{height:calc(var(--spacing)*1)}.h-16{height:calc(var(--spacing)*16)}.h-full{height:100%}.min-h-svh{min-height:100svh}.w-full{width:100%}.w-max{width:max-content}.max-w-\[24ch\]{max-width:24ch}.max-w-measure{max-width:40rem}.max-w-none{max-width:none}.max-w-wide{max-width:75rem}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-left{transform-origin:0}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0)}.translate-y-0,.translate-y-4{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing)*4)}.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}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-10{gap:calc(var(--spacing)*10)}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-x-4{column-gap:calc(var(--spacing)*4)}.gap-x-16{column-gap:calc(var(--spacing)*16)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.gap-y-2{row-gap:calc(var(--spacing)*2)}.gap-y-8{row-gap:calc(var(--spacing)*8)}.overflow-hidden{overflow:hidden}.rounded-\[1\.25rem\]{border-radius:1.25rem}.rounded-full{border-radius:3.40282e+38px}.rounded-md{border-radius:.75rem}.rounded-xl{border-radius:1.75rem}.rounded-t-2xl{border-top-left-radius:2.25rem;border-top-right-radius:2.25rem}.rounded-r-full{border-top-right-radius:3.40282e+38px;border-bottom-right-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-outline{border-color:var(--outline)}.bg-error-container{background-color:var(--error-container)}.bg-on-error-container{background-color:var(--on-error-container)}.bg-primary{background-color:var(--primary)}.bg-primary-container{background-color:var(--primary-container)}.bg-secondary-container{background-color:var(--secondary-container)}.bg-surface-container{background-color:var(--surface-container)}.bg-surface-high{background-color:var(--surface-container-high)}.bg-surface-low{background-color:var(--surface-container-low)}.bg-tertiary-container{background-color:var(--tertiary-container)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-7{padding-inline:calc(var(--spacing)*7)}.px-gutter{padding-inline:clamp(1rem,3.5vw,2rem)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-9{padding-block:calc(var(--spacing)*9)}.py-10{padding-block:calc(var(--spacing)*10)}.py-16{padding-block:calc(var(--spacing)*16)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-10{padding-top:calc(var(--spacing)*10)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pb-10{padding-bottom:calc(var(--spacing)*10)}.pl-5{padding-left:calc(var(--spacing)*5)}.text-center{text-align:center}.text-display{font-size:clamp(2.5rem,1.6rem + 4vw,3.75rem)}.text-headline{font-size:clamp(1.75rem,1.4rem + 1.6vw,2.25rem)}.text-label{font-size:.875rem}.text-label-sm{font-size:.75rem}.text-title{font-size:1.0625rem}.text-title-lg{font-size:1.375rem}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-error-container{color:var(--error-container)}.text-on-error-container{color:var(--on-error-container)}.text-on-primary{color:var(--on-primary)}.text-on-primary-container{color:var(--on-primary-container)}.text-on-secondary-container{color:var(--on-secondary-container)}.text-on-surface-variant{color:var(--on-surface-variant)}.text-on-tertiary-container{color:var(--on-tertiary-container)}.text-primary{color:var(--primary)}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-100{opacity:1}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-\[opacity\,transform\,border-radius\]{transition-property:opacity,transform,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-\[var\(--ease-spring\)\]{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}@media (hover:hover){.group-hover\:text-primary:is(:where(.group):hover *){color:var(--primary)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing)*0)}@media (hover:hover){.hover\:rounded-full:hover{border-radius:3.40282e+38px}.hover\:text-primary:hover{color:var(--primary)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:opacity-100:focus-visible{opacity:1}@media (width>=40rem){.sm\:inline-flex{display:inline-flex}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:gap-1{gap:calc(var(--spacing)*1)}.sm\:gap-5{gap:calc(var(--spacing)*5)}.sm\:p-7{padding:calc(var(--spacing)*7)}.sm\:px-4{padding-inline:calc(var(--spacing)*4)}.sm\:px-7{padding-inline:calc(var(--spacing)*7)}.sm\:px-10{padding-inline:calc(var(--spacing)*10)}.sm\:px-12{padding-inline:calc(var(--spacing)*12)}.sm\:py-11{padding-block:calc(var(--spacing)*11)}.sm\:py-12{padding-block:calc(var(--spacing)*12)}.sm\:py-14{padding-block:calc(var(--spacing)*14)}.sm\:py-24{padding-block:calc(var(--spacing)*24)}.sm\:text-right{text-align:right}}@media (width>=48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:mt-0{margin-top:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:grid{display:grid}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1fr\)_15rem\]{grid-template-columns:minmax(0,1fr) 15rem}.lg\:items-start{align-items:flex-start}.lg\:gap-6{gap:calc(var(--spacing)*6)}}@media (prefers-reduced-motion:no-preference){[data-reveal]{animation:reveal-in .5s var(--ease-emphasized)backwards;animation-delay:var(--reveal-delay,0s)}}@keyframes reveal-in{0%{opacity:0;transform:translateY(1rem)}}}@font-face{font-family:MapleMono;src:url(/fonts/MapleMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:MapleMono;src:url(/fonts/MapleMono-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{color-scheme:light;--primary:#2d6a6b;--on-primary:#fff;--primary-container:#d6e4e4db;--on-primary-container:#16292a;--secondary:#556566;--on-secondary:#fff;--secondary-container:#dde5e5db;--on-secondary-container:#1a2728;--tertiary:#91484c;--on-tertiary:#fff;--tertiary-container:#eadddddb;--on-tertiary-container:#33211f;--error:#ba1a1a;--on-error:#fff;--error-container:#ffdad6e6;--on-error-container:#410002;--surface:#f2f8f8;--on-surface:#171d1e;--on-surface-variant:#3f484a;--surface-dim:#d8e0e0;--surface-bright:#f7fcfc;--surface-container-lowest:#ffffffc2;--surface-container-low:#eef5f5d1;--surface-container:#e8f0f0d6;--surface-container-high:#e2eaeadb;--surface-container-highest:#dce4e4e0;--outline:#6f797a;--outline-variant:#bfc8c9;--inverse-surface:#2b3232;--inverse-on-surface:#eff5f5;--inverse-primary:#80d4da;--backdrop-scrim:#f0f6f6a3;--backdrop-blur:16px;--elevation-1:0 1px 2px 0 #00000024,0 1px 3px 1px #00000012;--elevation-2:0 1px 2px 0 #00000024,0 2px 6px 2px #00000012;--elevation-3:0 4px 8px 3px #00000012,0 1px 3px 0 #00000024;--code-bg:#e2ecece6;--code-ink:#2b3232;--code-keyword:#8a4c56;--code-string:#3c6b5a;--code-number:#7d5a3c;--code-comment:#6f797a;--code-name:#3f6478}.dark{color-scheme:dark;--primary:#93c5c6;--on-primary:#003739;--primary-container:#263738db;--on-primary-container:#cfe3e3;--secondary:#b4c1c2;--on-secondary:#1b3436;--secondary-container:#2d3536db;--on-secondary-container:#dde5e5;--tertiary:#d9a6a6;--on-tertiary:#5f1120;--tertiary-container:#3f2c2ddb;--on-tertiary-container:#ead6d6;--error:#ffb4ab;--on-error:#690005;--error-container:#93000ae6;--on-error-container:#ffdad6;--surface:#0e1415;--on-surface:#dee3e4;--on-surface-variant:#bec8c9;--surface-dim:#0e1415;--surface-bright:#343b3c;--surface-container-lowest:#090f10bd;--surface-container-low:#161d1ecc;--surface-container:#1a2122d1;--surface-container-high:#252c2dd6;--surface-container-highest:#2f3738db;--outline:#899293;--outline-variant:#3f484a;--inverse-surface:#dee3e4;--inverse-on-surface:#2b3232;--inverse-primary:#00696e;--backdrop-scrim:#0a10119e;--elevation-1:0 1px 2px 0 #00000080,0 1px 3px 1px #0000004d;--elevation-2:0 1px 2px 0 #00000080,0 2px 6px 2px #0000004d;--elevation-3:0 4px 8px 3px #0000004d,0 1px 3px 0 #00000080;--code-bg:#0d1415e0;--code-ink:#dee3e4;--code-keyword:#d8a2a8;--code-string:#9cc2b3;--code-number:#ceae8e;--code-comment:#7d8a8b;--code-name:#9dbcc8}.prose-post{--tw-prose-body:var(--on-surface);--tw-prose-headings:var(--on-surface);--tw-prose-lead:var(--on-surface-variant);--tw-prose-links:var(--primary);--tw-prose-bold:var(--on-surface);--tw-prose-counters:var(--on-surface-variant);--tw-prose-bullets:var(--outline-variant);--tw-prose-hr:var(--outline-variant);--tw-prose-quotes:var(--on-surface);--tw-prose-quote-borders:var(--primary);--tw-prose-captions:var(--on-surface-variant);--tw-prose-code:var(--on-surface);--tw-prose-pre-code:var(--code-ink);--tw-prose-pre-bg:var(--code-bg);--tw-prose-th-borders:var(--outline-variant);--tw-prose-td-borders:var(--outline-variant);font-size:var(--text-body);line-height:1.8}.prose-post :where(h2){font-size:var(--text-title-lg);margin-top:2.5em;margin-bottom:.7em;scroll-margin-top:6rem}.prose-post :where(h3){font-size:var(--text-title);margin-top:2em;margin-bottom:.6em;scroll-margin-top:6rem;font-weight:700}.prose-post :where(blockquote){background:var(--surface-container);border-left:4px solid var(--primary);border-radius:var(--radius-sm);quotes:none;margin-inline:0;padding:.9rem 1.25rem;font-style:normal}.prose-post :where(blockquote p:first-of-type):before,.prose-post :where(blockquote p:last-of-type):after{content:none}.prose-post :where(img){border-radius:var(--radius-lg);width:100%;height:auto;margin-block:2rem}.prose-post :where(:not(pre)>code){background:var(--surface-container-high);color:var(--on-surface);border-radius:var(--radius-xs);padding:.15em .4em;font-size:.9em;font-weight:400}.prose-post :where(:not(pre)>code):after,.prose-post :where(:not(pre)>code):before{content:none}.prose-post :where(pre){background:var(--code-bg);color:var(--code-ink);border-radius:var(--radius-lg);padding:1.1rem 1.25rem;font-size:.9375rem;line-height:1.6}.prose-post :where(a){text-underline-offset:.2em;text-decoration-thickness:1px}.prose-post :where(hr){border-color:var(--outline-variant)}.prose-post :where(table){font-size:var(--text-label)}.prose-post :where(ul.contains-task-list){padding-left:0;list-style:none}.prose-post :where(li.task-list-item){color:var(--tw-prose-body);padding-left:1.65em}.prose-post :where(input[type=checkbox]){appearance:none;vertical-align:-.17em;border:2px solid var(--outline);opacity:1;cursor:default;width:1.05em;height:1.05em;transition:background-color .2s var(--ease-standard),border-color .2s var(--ease-standard);background:0 0;border-radius:.25em;margin:0 .6em 0 -1.65em;position:relative}.prose-post :where(input[type=checkbox]:checked){background:var(--primary);border-color:var(--primary)}.prose-post :where(input[type=checkbox]:checked):after{content:"";border:solid var(--on-primary);border-width:0 2px 2px 0;width:28%;height:58%;position:absolute;top:6%;left:32%;transform:rotate(45deg)}.prose-post :where(li.task-list-item:has(>input[type=checkbox]:checked,>p>input[type=checkbox]:checked)){color:var(--on-surface-variant)}.hljs-keyword,.hljs-literal,.hljs-selector-tag,.hljs-type{color:var(--code-keyword)}.hljs-addition,.hljs-regexp,.hljs-string{color:var(--code-string)}.hljs-attr,.hljs-attribute,.hljs-number,.hljs-template-variable,.hljs-variable{color:var(--code-number)}.hljs-comment,.hljs-meta,.hljs-quote{color:var(--code-comment);font-style:italic}.hljs-function .hljs-title,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-title{color:var(--code-name)}.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic}@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-rotate-x{syntax:"*";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"*";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"*";inherits:false;initial-value:rotateZ(0)}@property --tw-skew-x{syntax:"*";inherits:false;initial-value:skewX(0)}@property --tw-skew-y{syntax:"*";inherits:false;initial-value:skewY(0)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}